summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2020-12-06 21:35:00 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2020-12-07 00:48:47 +0100
commitd42b913b939d25ea762dcc6f0735ed1e30f55054 (patch)
tree9ef5f5cbf8170819b8c0ff279d7c56660404ff8e
parentapp-text/poppler: Drop 0.61.1 (r0) (diff)
downloadkde-sunset-d42b913b939d25ea762dcc6f0735ed1e30f55054.tar.gz
kde-sunset-d42b913b939d25ea762dcc6f0735ed1e30f55054.tar.bz2
kde-sunset-d42b913b939d25ea762dcc6f0735ed1e30f55054.zip
kde-frameworks/kdelibs: EAPI-7 bump, use cmake.eclass
- FindPopplerQt4.cmake: Find Gentoo-slotted poppler - Switch docbundledir (HTML_INSTALL_DIR) to /usr/share/help - Install api doc to /usr/share/doc/${PF}/html where it should be Package-Manager: Portage-3.0.11, Repoman-3.0.2 RepoMan-Options: --force Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--kde-frameworks/kdelibs/files/kdelibs-4.14.38-CVE-2019-14744.patch11
-rw-r--r--kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-docbundledir.patch72
-rw-r--r--kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-slotted-FindPopplerQt4.patch26
-rw-r--r--kde-frameworks/kdelibs/files/kdelibs-4.14.38-library-doc-policy-links.patch56
-rw-r--r--kde-frameworks/kdelibs/kdelibs-4.14.38-r1.ebuild286
5 files changed, 446 insertions, 5 deletions
diff --git a/kde-frameworks/kdelibs/files/kdelibs-4.14.38-CVE-2019-14744.patch b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-CVE-2019-14744.patch
index bc71dc0f..95c6d160 100644
--- a/kde-frameworks/kdelibs/files/kdelibs-4.14.38-CVE-2019-14744.patch
+++ b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-CVE-2019-14744.patch
@@ -1,7 +1,8 @@
From 2c3762feddf7e66cf6b64d9058f625a715694a00 Mon Sep 17 00:00:00 2001
From: Kai Uwe Broulik <kde@privat.broulik.de>
Date: Wed, 7 Aug 2019 09:47:46 +0200
-Subject: Security: remove support for $(...) in config keys with [$e] marker.
+Subject: [PATCH] Security: remove support for $(...) in config keys with [$e]
+ marker.
It is very unclear at this point what a valid use case for this feature
would possibly be. The old documentation only mentions $(hostname) as
@@ -23,7 +24,7 @@ Differential Revision: https://phabricator.kde.org/D22989
3 files changed, 2 insertions(+), 48 deletions(-)
diff --git a/kdecore/config/kconfig.cpp b/kdecore/config/kconfig.cpp
-index 7ea26a5..b30584b 100644
+index 7ea26a5480..b30584b302 100644
--- a/kdecore/config/kconfig.cpp
+++ b/kdecore/config/kconfig.cpp
@@ -160,37 +160,7 @@ QString KConfigPrivate::expandString(const QString& value)
@@ -66,7 +67,7 @@ index 7ea26a5..b30584b 100644
// the next character is not $
QString aVarName;
diff --git a/kdecore/doc/README.kiosk b/kdecore/doc/README.kiosk
-index b95002d..d902c61 100644
+index b95002d040..d902c61ea9 100644
--- a/kdecore/doc/README.kiosk
+++ b/kdecore/doc/README.kiosk
@@ -640,18 +640,6 @@ The following syntax is also supported:
@@ -89,7 +90,7 @@ index b95002d..d902c61 100644
==========================
diff --git a/kdecore/tests/kconfigtest.cpp b/kdecore/tests/kconfigtest.cpp
-index 78e6ad1..37ea3c2 100644
+index 78e6ad180e..37ea3c2825 100644
--- a/kdecore/tests/kconfigtest.cpp
+++ b/kdecore/tests/kconfigtest.cpp
@@ -479,12 +479,8 @@ void KConfigTest::testPath()
@@ -107,5 +108,5 @@ index 78e6ad1..37ea3c2 100644
QCOMPARE(group.readEntry("noeol", QString()), QString("foo"));
}
--
-cgit v1.1
+2.29.2
diff --git a/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-docbundledir.patch b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-docbundledir.patch
new file mode 100644
index 00000000..00eb10d1
--- /dev/null
+++ b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-docbundledir.patch
@@ -0,0 +1,72 @@
+From c7159b51b4b78d4fd81f886be7b476d143f78869 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 6 Dec 2020 21:16:00 +0100
+Subject: [PATCH] Switch HTML_INSTALL_DIR over to /usr/share/help
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ cmake/modules/FindKDE4Internal.cmake | 6 +++---
+ cmake/modules/FindPyKDE4.cmake | 2 +-
+ kdecore/kernel/kstandarddirs_win.cpp | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/cmake/modules/FindKDE4Internal.cmake b/cmake/modules/FindKDE4Internal.cmake
+index c345eca36f..d436ec7756 100644
+--- a/cmake/modules/FindKDE4Internal.cmake
++++ b/cmake/modules/FindKDE4Internal.cmake
+@@ -164,7 +164,7 @@
+ #
+ #
+ # The following variable is provided, but seem to be unused:
+-# LIBS_HTML_INSTALL_DIR /share/doc/HTML CACHE STRING "Is this still used ?")
++# LIBS_HTML_INSTALL_DIR /share/help CACHE STRING "Is this still used ?")
+ #
+ # The following user adjustable options are provided:
+ #
+@@ -773,7 +773,7 @@ if (WIN32)
+ set(IMPORTS_INSTALL_DIR "${PLUGIN_INSTALL_DIR}/imports" ) # "The subdirectory relative to the install prefix where imports will be installed
+ set(CONFIG_INSTALL_DIR "share/config" ) # The config file install dir
+ set(DATA_INSTALL_DIR "share/apps" ) # The parent directory where applications can install their data
+- set(HTML_INSTALL_DIR "share/doc/HTML" ) # The HTML install dir for documentation
++ set(HTML_INSTALL_DIR "share/help" ) # The HTML install dir for documentation
+ set(ICON_INSTALL_DIR "share/icons" ) # The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)
+ set(KCFG_INSTALL_DIR "share/config.kcfg" ) # The install dir for kconfig files
+ set(LOCALE_INSTALL_DIR "share/locale" ) # The install dir for translations
+@@ -846,7 +846,7 @@ else (WIN32)
+ _set_fancy(IMPORTS_INSTALL_DIR "${PLUGIN_INSTALL_DIR}/imports" "The subdirectory relative to the install prefix where imports will be installed")
+ _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir")
+ _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data")
+- _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation")
++ _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/help" "The HTML install dir for documentation")
+ _set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)")
+ _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files")
+ _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations")
+diff --git a/cmake/modules/FindPyKDE4.cmake b/cmake/modules/FindPyKDE4.cmake
+index 9b1379486d..9569864aa5 100644
+--- a/cmake/modules/FindPyKDE4.cmake
++++ b/cmake/modules/FindPyKDE4.cmake
+@@ -70,7 +70,7 @@ IF(PYTHONINTERP_FOUND)
+ _set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)")
+ _set_fancy(CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir")
+ _set_fancy(DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data")
+- _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/HTML" "The HTML install dir for documentation")
++ _set_fancy(HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/help" "The HTML install dir for documentation")
+ _set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)")
+ _set_fancy(KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for kconfig files")
+ _set_fancy(LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations")
+diff --git a/kdecore/kernel/kstandarddirs_win.cpp b/kdecore/kernel/kstandarddirs_win.cpp
+index b47aa152ef..aebb57138c 100644
+--- a/kdecore/kernel/kstandarddirs_win.cpp
++++ b/kdecore/kernel/kstandarddirs_win.cpp
+@@ -58,7 +58,7 @@ QString KStandardDirs::installPath(const char *type)
+ break;
+ case 'h':
+ if (strcmp("html", type) == 0)
+- return share() + QLatin1String("doc/HTML/");
++ return share() + QLatin1String("help/");
+ break;
+ case 'i':
+ if (strcmp("icon", type) == 0)
+--
+2.29.2
+
diff --git a/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-slotted-FindPopplerQt4.patch b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-slotted-FindPopplerQt4.patch
new file mode 100644
index 00000000..750a17ba
--- /dev/null
+++ b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-gentoo-slotted-FindPopplerQt4.patch
@@ -0,0 +1,26 @@
+From c1ee468c3588b517f8373e650b8b81fe54b583f7 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 6 Dec 2020 20:22:56 +0100
+Subject: [PATCH] FindPopplerQt4.cmake: Find Gentoo "0-qt4"-slotted poppler
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ cmake/modules/FindPopplerQt4.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/FindPopplerQt4.cmake b/cmake/modules/FindPopplerQt4.cmake
+index 95b75295cb..e1a85eee96 100644
+--- a/cmake/modules/FindPopplerQt4.cmake
++++ b/cmake/modules/FindPopplerQt4.cmake
+@@ -24,7 +24,7 @@ set(POPPLER_QT4_DEFINITIONS ${PC_POPPLERQT4_CFLAGS_OTHER})
+ find_path(POPPLER_QT4_INCLUDE_DIR
+ NAMES poppler-qt4.h
+ HINTS ${PC_POPPLERQT4_INCLUDEDIR}
+- PATH_SUFFIXES poppler/qt4 poppler
++ PATH_SUFFIXES poppler0-qt4/qt4 poppler/qt4 poppler
+ )
+
+ find_library(POPPLER_QT4_LIBRARY
+--
+2.29.2
+
diff --git a/kde-frameworks/kdelibs/files/kdelibs-4.14.38-library-doc-policy-links.patch b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-library-doc-policy-links.patch
new file mode 100644
index 00000000..41a3b8fe
--- /dev/null
+++ b/kde-frameworks/kdelibs/files/kdelibs-4.14.38-library-doc-policy-links.patch
@@ -0,0 +1,56 @@
+From 12a8bb503351b98869f722ba932f822e3c495883 Mon Sep 17 00:00:00 2001
+From: Ben Cooksley <bcooksley@kde.org>
+Date: Mon, 5 Aug 2019 15:41:05 +1200
+Subject: [PATCH] Correct links to Library Documentation Policy.
+
+Fixes T11309
+
+CCMAIL: kossebau@kde.org
+---
+ doc/common/README.Doxygen | 2 +-
+ doc/common/footer.html | 2 +-
+ doc/common/mainfooter.html | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/doc/common/README.Doxygen b/doc/common/README.Doxygen
+index 3c46a51bd0..24df4fe2ef 100644
+--- a/doc/common/README.Doxygen
++++ b/doc/common/README.Doxygen
+@@ -29,7 +29,7 @@ The tool for generating dox lives in admin/ :
+
+
+ Writing dox is beyond the scope of this README -- see the notes at
+-http://techbase.kde.org/Policies/Library_Documentation_Policy .
++https://community.kde.org/Policies/Library_Documentation_Policy .
+ You can generate dox by hand -- without even having a configured
+ build directory -- as explained below. There is also documentation
+ for the special tags you can enter in Makefile.am anywhere
+diff --git a/doc/common/footer.html b/doc/common/footer.html
+index 3b609f00e6..91cdb9711e 100644
+--- a/doc/common/footer.html
++++ b/doc/common/footer.html
+@@ -5,7 +5,7 @@ Generated on $datetime by
+ <a href="http://www.doxygen.org/index.html">doxygen</a> $doxygenversion written
+ by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, &copy;&nbsp;1997-2006
+ <p>
+-KDE's <a href="http://techbase.kde.org/Policies/Library_Documentation_Policy">Doxygen guidelines</a> are available online.
++KDE's <a href="https://community.kde.org/Policies/Library_Documentation_Policy">Doxygen guidelines</a> are available online.
+ </p>
+ </div>
+ </div>
+diff --git a/doc/common/mainfooter.html b/doc/common/mainfooter.html
+index b129193292..a644603fa8 100644
+--- a/doc/common/mainfooter.html
++++ b/doc/common/mainfooter.html
+@@ -5,7 +5,7 @@ Generated on $datetime by
+ <a href="http://www.doxygen.org/index.html">doxygen</a> $doxygenversion written
+ by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, &copy;&nbsp;1997-2006
+ <p>
+-KDE's <a href="http://techbase.kde.org/Policies/Library_Documentation_Policy">Doxygen guidelines</a> are available online.
++KDE's <a href="https://community.kde.org/Policies/Library_Documentation_Policy">Doxygen guidelines</a> are available online.
+ </p>
+ </div>
+ </div>
+--
+2.29.2
+
diff --git a/kde-frameworks/kdelibs/kdelibs-4.14.38-r1.ebuild b/kde-frameworks/kdelibs/kdelibs-4.14.38-r1.ebuild
new file mode 100644
index 00000000..a24a7f49
--- /dev/null
+++ b/kde-frameworks/kdelibs/kdelibs-4.14.38-r1.ebuild
@@ -0,0 +1,286 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+QT_MINIMAL="4.8.7"
+inherit cmake flag-o-matic toolchain-funcs xdg-utils
+
+DESCRIPTION="Libraries needed for programs by KDE"
+HOMEPAGE="https://kde.org/"
+SRC_URI="mirror://kde/stable/applications/17.08.3/src/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="4/4.14"
+KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
+IUSE="cpu_flags_x86_3dnow acl altivec +bzip2 debug doc fam +handbook kerberos
+libressl lzma cpu_flags_x86_mmx nls openexr opengl +plasma +policykit qt3support spell
+test cpu_flags_x86_sse cpu_flags_x86_sse2 ssl +udev +udisks +upower webkit zeroconf"
+
+REQUIRED_USE="
+ opengl? ( plasma )
+ udisks? ( udev )
+ upower? ( udev )
+"
+
+# needs the kate regression testsuite from svn
+RESTRICT="test"
+
+COMMON_DEPEND="
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xsl-stylesheets
+ dev-lang/perl
+ >=dev-libs/libattica-0.4.2
+ dev-libs/libdbusmenu-qt[qt4(-)]
+ dev-libs/libpcre[unicode]
+ dev-libs/libxml2
+ dev-libs/libxslt
+ >=dev-qt/designer-${QT_MINIMAL}:4
+ >=dev-qt/qtcore-${QT_MINIMAL}:4[qt3support?,ssl]
+ >=dev-qt/qtdbus-${QT_MINIMAL}:4
+ >=dev-qt/qtdeclarative-${QT_MINIMAL}:4
+ >=dev-qt/qtgui-${QT_MINIMAL}:4[accessibility,dbus(+)]
+ >=dev-qt/qtscript-${QT_MINIMAL}:4
+ >=dev-qt/qtsvg-${QT_MINIMAL}:4
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/giflib:=
+ media-libs/libpng:0=
+ media-libs/phonon:0-qt4
+ sys-libs/libutempter
+ sys-libs/zlib
+ virtual/jpeg:0
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXcursor
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXft
+ x11-libs/libXpm
+ x11-libs/libXrender
+ x11-libs/libXScrnSaver
+ x11-libs/libXtst
+ x11-misc/shared-mime-info
+ acl? ( virtual/acl )
+ bzip2? ( app-arch/bzip2 )
+ fam? ( virtual/fam )
+ kerberos? ( virtual/krb5 )
+ openexr? (
+ media-libs/ilmbase:=
+ media-libs/openexr:=
+ )
+ opengl? ( >=dev-qt/qtopengl-${QT_MINIMAL}:4 )
+ plasma? (
+ app-crypt/qca:2-qt4
+ >=dev-qt/qtsql-${QT_MINIMAL}:4[qt3support?]
+ )
+ policykit? ( sys-auth/polkit-qt:0-qt4 )
+ spell? ( app-text/enchant:= )
+ ssl? (
+ libressl? ( dev-libs/libressl:0= )
+ !libressl? ( dev-libs/openssl:0= )
+ )
+ udev? ( virtual/udev )
+ webkit? ( >=dev-qt/qtwebkit-${QT_MINIMAL}:4 )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-qt/qttest-${QT_MINIMAL}:4
+ test? ( dev-util/cppunit )
+"
+RDEPEND="${COMMON_DEPEND}
+ !dev-qt/qtphonon
+ >=app-crypt/gnupg-2.0.11
+ app-misc/ca-certificates
+ kde-frameworks/kdelibs-env:4
+ kde-frameworks/oxygen-icons
+ sys-apps/dbus[X]
+ x11-apps/iceauth
+ x11-apps/rgb
+ x11-misc/xdg-utils
+ plasma? ( !sci-libs/plasma )
+ udev? ( app-misc/media-player-info )
+ udisks? ( sys-fs/udisks:2 )
+ upower? ( >=sys-power/upower-0.9.23 )
+"
+BDEPEND="
+ doc? ( app-doc/doxygen )
+ nls? ( virtual/libintl )
+"
+PDEPEND="
+ dev-util/automoc
+ virtual/pkgconfig
+ x11-base/xorg-proto
+ >=x11-libs/libXtst-1.1.0
+ x11-misc/xdg-utils
+ handbook? ( kde-apps/khelpcenter:* )
+ policykit? ( kde-plasma/polkit-kde-agent:* )
+"
+
+DOCS=( AUTHORS README{,-WIN32.TXT} TODO )
+
+PATCHES=(
+ "${FILESDIR}/dist/01_gentoo_set_xdg_menu_prefix-1.patch"
+ "${FILESDIR}/dist/02_gentoo_append_xdg_config_dirs-1.patch"
+ "${FILESDIR}/${PN}-4.14.5-fatalwarnings.patch"
+ "${FILESDIR}/${PN}-4.14.5-mimetypes.patch"
+ "${FILESDIR}/${PN}-4.4.90-xslt.patch"
+ "${FILESDIR}/${PN}-4.6.3-no_suid_kdeinit.patch"
+ "${FILESDIR}/${PN}-4.8.1-norpath.patch"
+ "${FILESDIR}/${PN}-4.9.3-werror.patch"
+ "${FILESDIR}/${PN}-4.10.0-udisks.patch"
+ "${FILESDIR}/${PN}-4.14.20-FindQt4.patch"
+ "${FILESDIR}/${PN}-4.14.22-webkit.patch"
+ "${FILESDIR}/${PN}-4.14.35-3dnow.patch"
+ "${FILESDIR}/${PN}-4.14.35-kde3support.patch"
+ "${FILESDIR}/${PN}-4.14.35-plasma4.patch"
+ "${FILESDIR}/${PN}-4.14.37-exiv2-cmake.patch"
+ "${FILESDIR}/${P}-CVE-2019-14744.patch"
+ "${FILESDIR}/${P}-kio-tls1x.patch"
+ "${FILESDIR}/${P}-narrowing-warning.patch"
+ "${FILESDIR}/${P}-openssl-1.1.patch"
+ "${FILESDIR}/${P}-qiodevice.patch"
+ "${FILESDIR}/${P}-library-doc-policy-links.patch"
+ "${FILESDIR}/${P}-gentoo-slotted-FindPopplerQt4.patch"
+ "${FILESDIR}/${P}-gentoo-docbundledir.patch" # bug 667138
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ # Rename applications.menu (needs 01_gentoo_set_xdg_menu_prefix-1.patch to work)
+ sed -e 's|FILES[[:space:]]applications.menu|FILES applications.menu RENAME kde-4-applications.menu|g' \
+ -i kded/CMakeLists.txt || die "Sed on CMakeLists.txt for applications.menu failed."
+
+ if ! use opengl; then
+ sed -i -e "/if/ s/QT_QTOPENGL_FOUND/FALSE/" \
+ plasma/CMakeLists.txt plasma/tests/CMakeLists.txt includes/CMakeLists.txt \
+ || die "failed to sed out QT_QTOPENGL_FOUND"
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_HSPELL=OFF
+ -DWITH_ASPELL=OFF
+ -DKDE_DEFAULT_HOME=.kde4
+ -DKDE_DISTRIBUTION_TEXT=Gentoo
+ -DKDE4_BUILD_TESTS=OFF
+ -DKAUTH_BACKEND=POLKITQT-1
+ -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
+ -DWITH_Soprano=OFF
+ -DWITH_SharedDesktopOntologies=OFF
+ -DCMAKE_DISABLE_FIND_PACKAGE_Strigi=ON
+ -DBUILD_doc=$(usex handbook)
+ -DHAVE_X86_3DNOW=$(usex cpu_flags_x86_3dnow)
+ -DHAVE_PPC_ALTIVEC=$(usex altivec)
+ -DHAVE_X86_MMX=$(usex cpu_flags_x86_mmx)
+ -DHAVE_X86_SSE=$(usex cpu_flags_x86_sse)
+ -DHAVE_X86_SSE2=$(usex cpu_flags_x86_sse2)
+ -DWITH_ACL=$(usex acl)
+ -DWITH_BZip2=$(usex bzip2)
+ -DWITH_FAM=$(usex fam)
+ -DWITH_Jasper=OFF
+ -DWITH_GSSAPI=$(usex kerberos)
+ -DWITH_LibLZMA=$(usex lzma)
+ -DWITH_Libintl=$(usex nls)
+ -DWITH_OpenEXR=$(usex openexr)
+ -DWITH_PLASMA4SUPPORT=$(usex plasma)
+ -DWITH_QCA2=$(usex plasma)
+ -DWITH_PolkitQt-1=$(usex policykit)
+ -DWITH_KDE3SUPPORT=$(usex qt3support)
+ -DWITH_ENCHANT=$(usex spell)
+ -DWITH_OpenSSL=$(usex ssl)
+ -DWITH_UDev=$(usex udev)
+ -DWITH_SOLID_UDISKS2=$(usex udisks)
+ -DWITH_KDEWEBKIT=$(usex webkit)
+ -DWITH_Avahi=$(usex zeroconf)
+ )
+
+ use zeroconf || mycmakeargs+=( -DWITH_DNSSD=OFF )
+
+ if use debug; then
+ # Set "real" debug mode
+ CMAKE_KDE_BUILD_TYPE="Debugfull"
+ else
+ # Handle common release builds
+ append-cppflags -DQT_NO_DEBUG
+ fi
+
+ tc-is-cross-compiler || cmakeargs+=( -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr" )
+ #qmake -query QT_INSTALL_LIBS unavailable when cross-compiling
+ tc-is-cross-compiler && cmakeargs+=( -DQT_LIBRARY_DIR="${ROOT}"/usr/$(get_libdir)/qt4 )
+ #kde-config -path data unavailable when cross-compiling
+ tc-is-cross-compiler && cmakeargs+=( -DKDE4_DATA_DIR="${ROOT}"/usr/share/apps/ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ # The building of apidox is not managed anymore by the build system
+ if use doc; then
+ einfo "Building API documentation"
+ cd "${S}"/doc/api/ || die
+ ./doxygen.sh "${S}" || die "APIDOX generation failed"
+ fi
+}
+
+src_install() {
+ for doc in "${S}"/*/{AUTHORS,ChangeLog*,README*,TODO}; do
+ [[ -f ${doc} && -s ${doc} ]] && newdoc "${doc}" "$(basename $(dirname ${doc})).$(basename ${doc})"
+ done
+
+ cmake_src_install
+
+ # use system certificates
+ rm -f "${ED}"/usr/share/apps/kssl/ca-bundle.crt || die
+ dosym ../../../../etc/ssl/certs/ca-certificates.crt /usr/share/apps/kssl/ca-bundle.crt
+
+ if use doc; then
+ einfo "Installing API documentation. This could take a bit of time."
+ cd "${S}"/doc/api/ || die
+ docinto html
+ dodoc -r ${P}-apidocs/.
+ fi
+
+ # We don't package it, so don't install headers
+ rm -r "${ED}"/usr/include/KDE/Nepomuk || die
+
+ einfo Installing environment file.
+ # Since 44qt4 is sourced earlier QT_PLUGIN_PATH is defined.
+ echo "COLON_SEPARATED=QT_PLUGIN_PATH" > "${T}/77kde"
+ echo "QT_PLUGIN_PATH=${EPREFIX}/usr/$(get_libdir)/kde4/plugins" >> "${T}/77kde"
+ doenvd "${T}/77kde"
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+
+ if use zeroconf; then
+ elog
+ elog "To make zeroconf support available in applications make sure that the avahi daemon"
+ elog "is running."
+ elog
+ elog "If you also want to use zeroconf for hostname resolution, emerge sys-auth/nss-mdns"
+ elog "and enable multicast dns lookups by editing the 'hosts:' line in /etc/nsswitch.conf"
+ elog "to include 'mdns', e.g.:"
+ elog " hosts: files mdns dns"
+ elog
+ fi
+}
+
+pkg_prerm() {
+ # Remove ksycoca4 global database
+ rm -f "${EROOT}"/usr/share/kde4/services/ksycoca4 || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}