Install x11/kdelibs4's headers into include/kde4 instead of include (which
consequently causes several other ports to have their installation paths
changed too).
The idea behind this is to reduce path conflicts between KDE4 ports and the
upcoming KDE Frameworks 5 ports that will be installed into include/KF5. If
we continue installing the KDE4 headers into include/, we can end up in a
situation like this:
c++ [...] -I/usr/local/include -I/usr/local/include/KF5 file.cpp
If the KDE4 and KF5 versions of a port have the same headers, the KDE4 port
will unintentionally be picked up first and the build will fail.
Most of this huge patch is just PORTREVISION bumps, pkg-plist changes and a
few patches to FooConfig.cmake files to make them look into the kde4/
subdirectory in include/.
Changes which don't fit into the above are:
- deskutils/kdepimlibs4: Import an upstream patch to remove some double
semicolons that cause base GCC to fail. They have always been present, but
since the faulty header was referenced via -isystem /usr/local/include
this never caused any problems.
- devel/subversion, devel/subversion18: Update patch-configure. The current
kwallet changes there date back to 2011 (r272490), at a time when the
build could fail when both KDE3 and KDE4 were installed. Replace those
bits with a change I've submitted upstream to use the kde4-config program
to determine where KDE4's headers and libraries are installed instead of
assuming the headers are always in include/.
Once again, huge thanks to Tobias Berner <tcberner@gmail.com> for being the
first one to notice this problem when working on the KDE Frameworks 5 ports,
coming up with the solution and bugging me until I had time to work on this
and ask for the exp-run :-)
PR: 207906 (exp-run)
Bug 200018 is caused by the .pyc/.pyo files installed by devel/py-pykde4
containing references to the stage directory in them. When
editors/kate-plugin-pate is built by a user with write-access to those
PyKDE4 .pyc/.pyo files, they are rewritten automatically by Python to point
to their current location, which most of the times is different from the
staging location of where devel/py-pykde4 was built. This at the very least
leads to a filesystem violation in Poudriere.
The fix I landed upstream involves making kdelibs's PythonCompile.py accept
a --destination-dir parameter with the directory we want to register in the
.pyc/.pyo files, just like several ports do in their build or post-install
targets by calling Python's compileall.py module with -d.
The patches in files/ look somewhat confusing because we already patch
PythonMacros.cmake to build .pyo files and had to integrate the other
patches into it. At least I have added some context to
patch-cmake_modules_PythonMacros.cmake to reduce the confusion.
Bump PORTREVISION in affected ports:
- devel/py-pykde4: Install .pyc/.pyo files with ${STAGEDIR} in them.
- games/kajongg: The plist now includes .pyo files, and was adjusted to work
with Python 3 in the future if necessary.
- x11/kdelibs4: Install new CMake files.
- x11/plasma-scriptengine-python: Install .pyc/.pyo files with ${STAGEDIR}
in them.
PR: 200018
MFH: 2015Q4
Unconditionally including ciso646 in qglobal.h to check for libc++ makes
including qglobal.h from C programs fail.
qglobal.h is not supposed to be used in C programs, but kdelibs4's
FindQt.cmake ends up calling CHECK_SYMBOL_EXISTS() instead of
CHECK_CXX_SYMBOL_EXISTS() to check if some macros are defined. Since
kdelibs4 is in maintenance mode, our changes to it can be avoided if we just
check for __cplusplus before including ciso646 (<initializer_list> is not
available in C anyway).
According to upstream, this is the last planned Qt4 release.
A list of changes since 4.8.6 can be found here:
<http://download.qt.io/official_releases/qt/4.8/4.8.7/changes-4.8.7>
Porting notes and changes:
- Remove several patches that have been upstreamed.
- Make Uses/qmake.mk pass the contents of LIBS to the qmake environment. [1]
- Repurpose devel/qt4/files/extrapatch-src-corelib-global-qglobal.h now the
original patch is part of the release (curiously enough, the original
patch was never actually used, as the ?= assignment in r362837 after
r362770 was never possible).
This works around the way compiler support for C++11 features is detected
in Qt 4.8.7: while it originally only uses the compiler to determine if
something is supported or not, the initializer lists feature also depends
on the C++ standard library being used. It's a problem in FreeBSD 9.x,
where USES=compiler:c++0x or USES=compiler:c++11-lang means we will use
clang to build a port but use libstdc++ from base (GCC 4.2). The latter
obviously does not support initializer lists, and the build fails because
Qt tries to include headers that do not exist (<initializer_list>).
Since detecting libstdc++'s version is not trivial (we need to include a
non-lightweight header like cstdio and then check for __GLIBCXX__), we
just enable Q_COMPILER_INITIALIZER_LISTS support only when libc++ is used
(there should be no reason for someone to be using clang with GCC 4.8's
libstdc++, for example).
x11/kdelibs4's FindQt4.cmake had to include a backported change from the
upstream FindQt4.cmake in CMake itself to use a C++ compiler to detect
flags like Q_WS_X11, otherwise the inclusion of <ciso646> in qglobal.h
makes the build fail.
This patch contains changes by me, makc@ and alonso@.
PR: 202552 [1]
PR: 202808 [exp-run]
Submitted by: pawel@ [1]
The kde@ team presents KDE SC 4.14.3, the last planed release
of the KDE SC 4 series.
In addition to the updates provided by the KDE SC developers, this
update also addresses numerous FreeBSD and PORTS specific
issues, found and solved by the kde@ team and area51 testers,
most notorously Tobias C. Berner <tcberner@gmail.com>
PR: 197751
PR: 197871
PR: 184996
Reviewed by: rakuco (mentor)
Differential: https://reviews.freebsd.org/D1950
the 32 ports that still use it. Bump PORTREVISION on their dependent
ports except the ones that depend on these:
audio/libogg
audio/libvorbis
devel/pcre
ftp/curl
graphics/jpeg
graphics/libart_lgpl
graphics/tiff
textproc/expat2
textproc/libxslt
In these cases the same trick as in the recent gettext update is used.
The ports install a symlink with the old library version. When enough
of their dependent ports have had regular updates the remaining ones can
get a PORTREVISION bump and the links can be removed.
Also remove the devel/pcre dependency from USE_GNOME=glib20. It causes
over 2200 packages to depend on devel/pcre while less than 200 actually
link with it. The glib20 package still depends on devel/pcre so this
should not make a difference for ports with USE_GNOME=glib20. Also,
libdata/pkgconfig/glib-2.0.pc lists pcre as a private library so
USE_GNOME=glib20 should not propagate it.
PR: 195724
Exp-run by: antoine
Approved by: portmgr (antoine)
mDNSResponder was abbandoned by upstream and replaced by discoveryd, which is
not open source. As kdelibs already depends on AVAHI being installed, remove
the option for the zeroconf backend and always use AVAHI.
Also, port option processing is broken, and AVAHI is used even if
mDNSResponder is chosen as backend, so bump PORTREVISION as the old package
invalidly tracks an unreferenced mDNSResponder library package dependency.
Approved by: rakuco (mentor)
USE_KDE4=kdehier component has been deprecated, new components added:
baloo - Baloo core libraries
baloo-widgets - Baloo widgets library
kfilemetadata - KDE library for extracting file metadata
New ports:
graphics/kqtquickcharts - QtQuick plugin to render interactive charts
misc/artikulate - Pronunciation trainer for KDE
(not usable currently, links to both
GStreamer 1.x and 0.10.x via dependencies)
sysutils/baloo[-widgets] - KDE framework for searching and
managing user metadata
sysutils/kfilemetadata - Library for extracting file metadata
l10n ports:
- Farsi (Persian) and Indonesian translations has been readded
- Vietnamese didn't pass threshold for inclusion into release
astro/kstars:
- switch dependency from math/eigen2 to math/eigen3
- add PYKDE option for updating supernovae data
deskutils/kdepim4:
- update dependencies: add libkgapi and baloo,
remove now needless clucene, link-grammar, strigi
- add patch to fix build with gcc42
- update COMMENT and description for all KDE PIM ports
devel/ruby-krossruby:
- remove BROKEN, it builds with ruby 2.x now
editors/kate:
- add patch to disable memory-hungry build of the kate tests [1]
graphics/okular:
- add dependency on graphics/libkscreen
math/cantor:
- add optional dependency on lang/luajit for LuaJIT backend
- fix gfortran detection [2]
misc/kdehier4:
- adapt to new pkg world. Now the purpose of kdehier4 only
to link some stuff between KDE4_PREFIX and LOCALBASE.
science/kalzium:
- switch dependency from math/eigen2 to math/eigen3
- add dependence on science/chemical-mime-data
x11-themes/kdeartwork4
- switch dependency from math/eigen2 to math/eigen3
among other changes:
- drop deprecated USE_KDE4=kdehier
- drop @dirrm from plist
- clean up pkg-descr
- convert to options helpers
- other portlint fixes
The area51 repository features commits by alonso, rakuco and myself.
PR: 187150 [1]
Reported by: pe.freethread@live.com
Patch by: Tobias Berner <tcberner@gmail.com>
PR: 180674 [2]
Reported by: torsten.eichstaedt@web.de
PR: 194316
Exp-run: antoine
GCC 4.2 in FreeBSD 8.X/9.X base is now too old to compile OpenEXR, so
GCC-based systems will upgrade to the default ports compiler (GCC 4.7
currently.)
Add two patches to OpenEXR to permit building it in a live system with
the older OpenEXR version installed. Bug report filed to upstream Github
at https://github.com/openexr/openexr/issues/130
Couple OpenEXR more tightly to ilmbase and require its exact .so
version.
Add UPDATING note, and bump PORTREVISION of all dependent ports.
Proto-STAGE hugin-devel, and mark it IGNORE because hugin is newer.
Approved by: portmgr (implicit for bumping PORTREVISION on unstaged ports)
a zeising, kwm production, with help from dumbbell, bdrewery:
NEW XORG ON FREEBSD 9-STABLE AND 10-STABLE
This update switches over to use the new xorg stack by default on FreeBSD 9
and 10 stable, on osversions where vt(9) is available.
It is still possible to use the old stack by specifying WITHOUT_NEW_XORG in
/etc/make.conf .
FreeBSD 8-STABLE and released versions of FreeBSD still use
the old version.
A package repository with binary packages for new xorg will
be available soon.
This patch also contains updates of libxcb and related ports, pixman, as well
as some drivers and utilities.
Bump portrevisions for xf86-* ports, as well as virtualbox-ose-additions due
to xserver version change.
Apart from these updates, the way shared libraries are handled has been
changed for all xorg ports, as well as libxml2 and freetype, which means
ltverhack is gone and as a consequence shared libraries have been bumped.
The plan is that this change will make library bumps less likely in the
future.
All affected ports have had their portrevisions bumped as a consequence of
this.
Fix some issues where WITH_NEW_XORG weren't detected properly on CURRENT.
Update instructions, hardware support, and more notes can be found on
https://wiki.freebsd.org/Graphics
Thanks to: all testers, bdrewery and the FreeBSD x11@ team
exp-run by: bdrewery [1]
PR: ports/187602 [1]
Approved by: portmgr (bdrewery), core (jhb)
KDE ports:
- Convert to USES=tar:xz
devel/p5-perlqt, multimedia/kdemultimedia4-ffmpegthumbs:
- Convert LIB_DEPENDS to new style
devel/p5-perlqt, devel/p5-perlkde:
- Don't remove directories installed by perl port
net/kdnssd:
- moved to net/zeroconf-ioslave (renamed upstream)
x11/kdelibs4:
- Clean up non-standard shared mime files and directories after deinstall
The area51 repository features commits by Alonso Schaich
<alonsoschaich@fastmail.fm> and makc.
deskutils/kdepim4:
- Add depedency on coreutils, kleopatra needs md5sum and sha1sum programs [1]
misc/kdehier4:
- add tests directory (r343428 commit to Templates/BSD.local.dist)
security/kwallet:
- moved to security/kwalletmanager (renamed upstream)
x11/kdelibs:
- remove workaround, which is not needed after global fix in
Mk/bsd.kde4.mk (r315373)
PR: ports/187259 [1]
Submitted by: Tobias Berner <tcberner@gmail.com>
Among changes:
- Switch KDE4_PREFIX to ${LOCALBASE}
- Remove now needless misc/kde4-shared-mime-info port
- Add stage support
- Remove ancient CONFLICTS (KDE 4.9 and less) and LATEST_LINK
- Squeeze MASTER_SITES/MASTER_SITE_SUBDIR
- Convert LIB_DEPENDS to new style
- Use options helpers
- Drop support for FreeBSD 7.x
- Remove Qt/KDE 3 related workarounds
- Remove local patches and use upstream version scheme for libraries
- sysutils/kdeadmin4, net/kdenetwork4, devel/kdesdk4,
and x11-clocks/kdetoys4 ports have been split.
- devel/kcachegrind is now a part of KDE SC [1]
- more logs in area51 repo...
New ports:
devel/kde-dev-scripts: KDE development scripts
devel/kde-dev-utils: KDE development utilities
games/klickety: Tetris themed solitaire
games/picmi: Single player logic-based puzzle game
textproc/libkomparediff2: Library to compare files and strings
The area51 repository features commits by Schaich Alonso, avilla, rakuco
and myself.
PR: ports/186491
Exp-run: by bdrewery
Approved by: beat (former maintainer) [1]
Proudly brought to you by the KDE on FreeBSD team. We're sorry to ship two
KDE updates in just a few days, but the work on 4.10.5 was very light
compared to 4.10.4 so it was ready much faster.
The release announcement can be found in [1].
[1] http://www.kde.org/announcements/announce-4.10.5.php
The biggest news for us on FreeBSD is that the Ruby bindings should work
with Ruby 1.9 now.
I will probably add a note to UPDATING later about this, but as avilla@
pointed out, the clang support we mentioned that was improved in 4.10.4
requires a rebuild of the ports that depend on kdelibs4. Most of them are
covered by this update, but those which are not part of the Software
Compilation need to be rebuilt manually to make sure the previous issues
(proper symbol visibility being the most annoying of them) are solved.
With commits from avilla@, makc@, rakuco@ and Schaich Alonso.
The upstream announcement can be found in [1].
[1] http://www.kde.org/announcements/announce-4.10.4.php
clang support should be more stable now, with clang being recognized by
kdelibs4 and being passed the correct flags to build other ports.
Additionally, all ports being committed have been verified to build with
-CURRENT's clang 3.3 on an amd64 tinderbox (special thanks go to swills@ for
providing it).
Work on the newly-released 4.10.5 will begin shortly.
- kdegames4 port has been split.
- kdeutils4-printer-applet and system-config-printer-kde have been
replaced by print/kde4-print-manager.
- Recover misc/kde4-l10n-mr from attic.
- New USE_KDE4 components: kactivities, libkdegames, nepomuk-core,
and nepomuk-widgets.
- Provide sharedmime component with magic: ports don't need to
run update-mime-database themselves now.
- Switch some ports to out-of-source build.
- Update port comments.
- Adjust dependence on Qt4 components.
- x11/kde4 installs modern kdepim4 now.
- Remove redundant aspell and hspell from kdelibs4, both
can be enabled in textproc/enchant if needed.
- Remove stale bits from bsd.kde4.mk
The area51 repository features commits by Schaich Alonso and myself.
Contributors:
- Tobias Berner
- Don't set CMAKE_BUILD_TYPE for debug builds (cmake.mk already handles it)
- Don't set WITH_DEBUG for unstable branch (KDE4_BRANCH)
- Remove now useless KDE4_BUILDENV
KDE SC ports:
- Chase KDE4_BUILDENV removal: replace 'KDE4_BUILDENV= yes' with
'USES= cmake:outsource' and add USE_LDCONFIG if needed
- kdebindings ports have been renamed to match upstream.
- kdemultimedia and kdenetwork have been split.
- New port games/pairs added.
- Trim Makefile header
- Convert to new option framework
- New USE_KDE4 components: libkcddb, libkcompactdisc
- Update:
databases/akonadi to 1.9.0
devel/grantlee to 0.3.0
textproc/rasqal to 0.9.30
textproc/redland-bindings to 1.0.16.1
textproc/soprano to 2.9.0
x11-toolkits/attica to 0.4.1
The area51 repository features commits by Schaich Alonso, avilla, dbn,
jhale, makc and rakuco.
Contributors:
- Oleg Sidorkin
- Tobias Berner
- Kurt Jaeger