Qt is a cross-platform application and UI framework for developers
using C++ or QML, a CSS/JavaScript-like language.
With Qt, code can be reused efficiently to target multiple platforms
with one code base. The modular C++ class library and developer tools
easily enables developers to create applications for one platform and
easily build and run to deploy on another platform.
Qt5: Update to 5.15.17 (getting down to the end)
Upstream standard support for Qt5 is officially over. [1] In short,
that means get your ports off of Qt5 ASAP, especially end-user
applications. FreeBSD deprecation of Qt5 is coming soon! It will likely
be a year of lead time, but please help in the meantime and remove qt5
flavors and child ports whenever possible.
www/qt5-webengine has been updated to 5.15.19 with security patches up to
Chromium 135.0.7049.95. It's unclear at this point if further security
patches will be publically available. The Qt5 WebEngine component,
however, is and forever will be based on Chromium 87.0.4280.144, which
is over 4 years old. Props to upstream for their backports over all
these years and making them publically available (probably more to do
with licensing constraints than anything, but hey).
We otherwise depend on KDE as our direct upstream to roll our distfiles,
which we have been hosting locally for over 3 years. Since Qt upstream
drops the LGPL releases of Qt 5.15.x a year later, there's no guarantee
KDE will rebase their patchset over the next year for the remaining two
.18 and .19 releases. This might be the last update for Qt5 on FreeBSD.
[1]
https://www.qt.io/blog/qt-5.15-extended-support-for-subscription-license-holders
Qt5: Update to 5.15.16
Update devel/pyside2* and devel/shiboken2 to 5.15.16
Update www/qt5-webengine to include the latest security fixes in
the chromium submodule [1]
Release note:
https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/5.15.16/release-note.md
MFH: 2024Q4
Security: 16e472d5-a8aa-11ef-b680-4ccc6adda413 [1]
Qt5: Update to 5.15.15
Update devel/pyside2* and devel/shiboken2 to 5.15.15
Update www/qt5-webengine to include the latest security fixes in
the chromium submodule
Release note:
https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/5.15.15/release-note.md
MFH: 2024Q3
Security: 66907dab-6bb2-11ef-b813-4ccc6adda413
qt5: Update Qt to 5.15.5 (KDE patched)
- update patch-collection diff to be at the highest patch-level
- update patch-collection diff to be against 5.15.5 instead of 5.15.2
- update devel/qt5-script to 5.15.10
- libressl support by Felix Palmen <felix@palmen-it.de>
PR: 264944
Exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D35619
Qt: Switch Qt5 to use KDE's Qt patch collection
From [1]
What's this?
This is a set of git repositories based on the last public
commits available for Qt 5.15 branches with a curated collection
of patches on top to ensure open source products can be used
comfortably until users transition to their Qt 6-based ports.
Which patches does it include?
This collection of patches includes patches that fix at least
one of the following:
(Only the first 15 lines of the commit message are shown above )
Update Qt/PySide2 to 5.15.2 / PyQt to 5.15.1 / SIP to 5.4.0
This commit combines several updates.
- Update Qt to 5.12.2
- Update PyQt to 5.15.1
- Since PySide 5.15.1 is broken with Qt 5.15.2, so PySide and Shiboken are also
updated to 5.15.2.
- Update sip to 5.4.0
SIP is a collection of tools to create Python bindings for C and C++ libraries
and used by PyQt and wxPython. There are some changes with sip5 [1]:
- python 3.5+ is required
- sip drops support of old deprecated methods as sipdistutils & cie.
- this version breaks also PyQt5 extension ABI. SIP files will be installed in
${PYTHON_SITELIBDIR}/PyQt${_PYQT_VERSION}/bindings
- some ports will use the new pyqtbuilder package with the pyproject.toml setup.
Instead if the project have a setup.py, you should use sip-build to build it.
- if a port needs sip, it should also needs pysip. BTW, py-qt5-core requires
pysip, so that should be enough for PyQt packages.
(Only the first 15 lines of the commit message are shown above )
Update Qt5 to 5.15
This is a major upgrade of the Qt libraries [1], [2].
* People that use upgrading mechanisms with incomplete dependency handling
(portmaster & Co) should make sure to manually remove the existing Qt
packages to guarantee a safe upgrade. Keep in mind, that Qt does not like if
you have an incomplete upgrade.
* This version of Qt drops support for OpenSSL 1.0 -- this means that there
won't be any binary packages for Qt5 provided by the FreeBSD package builders
for FreeBSD 11.x anymore -- and the same for *all* the ports depending on
net/qt5-network [3]. If you cannot upgrade to a more recent FreeBSD
version (12.x, 13.x), you will need to build Qt5 from ports while switching
to an SSL implementation from ports.
(Only the first 15 lines of the commit message are shown above )
Update Qt5 to 5.14.2
Very big thanks go again to kai@ who provided the www/qt5-webengine upgrade (to
5.14.0).
Notably, video capture support was re-enabled.
Announcement:
https://www.qt.io/blog/qt-5.14-has-released
PR: 244964
Exp-run by: antoine
misc/qtchooser: do not create unnecessary wrappers
misc/qtchooser provides a wrapper binary bin/qtchooser, that when called with
name foo, will lauch the corresponding binary from
lib/qt${current_qt_version}/bin/foo.
Previously qtchooser would install a list of 30-ish symlinks to itself
automatically.
Now we switch this around.
qt-dist ports that define QT_BINARIES will now have a @postexec and @postunexec
entry added to their plist to run the shell-script update-qtchooser-wrapper
(installed by qtchooser).
update-qtchooser-wrapper removes all symlinks to bin/qtcreator that have no
corresponding binary in lib/qt*/bin, and readds links that are missing.
Exp-run by: antoine
PR: 242905
PR: 243443
Reported by: grarpamp@gmail.com
Reviewed by: adridg
Differential Revision: https://reviews.freebsd.org/D22991
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Update Qt5 to 5.12.1
Release announcement:
https://blog.qt.io/blog/2019/02/01/qt-5-12-1-released/
Changelog:
https://wiki.qt.io/Qt_5.12.1_Change_Files
- A change was required to qt-dist.mk to always pass LOCALBASE to qmake,
as Qt5 has been installed to a prefix for some time now, there should
not be any harm in that, with respect to it picking up installed versions
of itself during build.
PR: 235622
Exp-run by: antoine
Fix Qt5 symbol version scripts to put the catch-all clause first. When
a symbol matches multiple clauses the last one takes precedence. If the
catch-all is last it captures everything. In the case of Qt5 libraries
this caused all symbols to have a Qt_5 label while some should have
Qt_5_PRIVATE_API. This only affects lld because GNU ld always gives the
catch-all lowest priority.
Older versions of Qt5Webengine exported some memory allocation symbols from
the bundled Chromium. Version 5.9 stopped exporting these [1] but the
symbols were kept as weak wrappers for the standard allocation functions to
maintain binary compatibility. [2][3] The problem is that the call to the
standard function in these weak wrappers is only resolved to the standard
function if there's a call to this standard function in other parts of
Qt5Webengine, because only then is there a non-weak symbol that takes
precedence over the weak one. If there's no such non-weak symbol the call
(Only the first 15 lines of the commit message are shown above )
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Replace bsd.qt.mk by Uses/qt.mk and Uses/qt-dist.mk
From now on, ports that depend on Qt4 will have to set
USES= qt:4
USE_QT= foo bar
ports depending on Qt5 will use
USES= qt:5
USE_QT= foo bar
PR: 229225
Exp-run by: antoine
Reviewed by: mat
Approved by: portmgr (antoine)
Differential Revision: -https://reviews.freebsd.org/D15540
Update the Qt5 ports to 5.10.1.
The work was done by tcberner and myself, with thanks to antoine for the
exp-run.
Not a lot to report compared to other Qt5 updates:
* net/qt5-network is still broken with LibreSSL. I said this in a commit
message ages ago but it bears repeating: upstream is open to adding support
for LibreSSL, but someone needs to step up to maintain it upstream, otherwise
things will continue to be broken all the time.
* www/qt5-webengine is a huge monster that is terrible to update, just like
www/chromium itself is. We (kde@) have decided to keep using the 5.9 series
for the time being, as it should be compatible with the rest of Qt anyway. It
was updated to 5.9.5, the latest 5.9 release at the time of writing.
PR: 228213
Fix permissions in installed Qt5 header files
For the qt5-* ports bsd.qt.mk sets EXTRACT_AFTER_ARGS, and
thereby does not get the normal default value of
--no-same-owner --no-same-permissions
passed when extracting. This lead to for example header files
being installed (i.e. copied), with permissions group write
permissions.
Manually append that to the bsd.qt.mk shenanigans (also do the
same in www/qt5-webchannel, which opts out of the bsd.qt.mk value)
PR: 227027
Reported by: grarpamp@gmail.com
Add two new ports: sysutils/qt5-qtdiag and sysutils/qt5-qtplugininfo
* qtdiag outputs diagnostics on the current Qt installation and can be helpful
to find issues.
* qtpluginfo is useful while writing plugins for Qt5/KDE Plasma
Reviewed by: rakuco, mat
Differential Revision: https://reviews.freebsd.org/D11280