From d74a7a852727ea816746737d9fd109e0edf870bb Mon Sep 17 00:00:00 2001 From: wbrana Date: Sun, 10 Feb 2013 11:20:15 +0100 Subject: [x11-libs/qt-core] sync with portage --- x11-libs/qt-core/Manifest | 6 +- x11-libs/qt-core/files/CVE-2013-0254.patch | 66 ++++++++ x11-libs/qt-core/files/qt-cxxflags.patch | 4 +- ...-config-locations-directly-to-install-dir.patch | 60 +++++++ x11-libs/qt-core/qt-core-4.8.4-r121.ebuild | 182 -------------------- x11-libs/qt-core/qt-core-4.8.4-r131.ebuild | 184 +++++++++++++++++++++ 6 files changed, 316 insertions(+), 186 deletions(-) create mode 100644 x11-libs/qt-core/files/CVE-2013-0254.patch create mode 100644 x11-libs/qt-core/files/set-pkg-config-locations-directly-to-install-dir.patch delete mode 100644 x11-libs/qt-core/qt-core-4.8.4-r121.ebuild create mode 100644 x11-libs/qt-core/qt-core-4.8.4-r131.ebuild diff --git a/x11-libs/qt-core/Manifest b/x11-libs/qt-core/Manifest index f001c30..4593bf2 100644 --- a/x11-libs/qt-core/Manifest +++ b/x11-libs/qt-core/Manifest @@ -1,5 +1,7 @@ +AUX CVE-2013-0254.patch 2694 SHA256 708714e387b607e4c28182420af42f9169c632c909feef6224190053da0c869f SHA512 227ed44a8e90eb63402cd6658bff1244e3684c4f9757aa9c3cf53e60127f6324a978d82f2de25e6a718b88392d51641e9b8010d313a25a0154f871c0dcc94182 WHIRLPOOL 472b5ca7da456ae9e6c62072be6f6c1fb71c13450d8108745a7f14d5f7511e299377a7cd88f6bf5e03b906259a0a6961115e7012e998878ba306d8a67b4fc935 AUX moc-workaround-for-boost-1.48.patch 571 SHA256 f8c10e753515cf77a606c88bc97e1536526b1b15431fd1c7c8eb78f28aa49771 SHA512 b192108be3328637bd30279e61104abbdaec8bcc66962a1081abde1188d4d2f67c0674ed12280bad630849d8d748cb9bbc4178878b96e87ae67d8531aae13701 WHIRLPOOL 5e9df8db26a2e4fe60cd8c0483ec39825deb520f9a370a3ccc2723bf6f017c23e8c3d86295f1e5d7fba44ea1d7f0465e6d039066622ebdb39f5d8524b0016cba AUX qt-ccache.patch 2126 SHA256 f300bf8c218060111b7b9d3abaf50802eeb0cba11b7a284e7d5f9be9c5e9eaf1 SHA512 34c66ed9810848f7ed5a21a6f106904a9731a9c32efedf9ab6bc0b8226470522c7d111297c6fdb6f6db7b8f52087745cb38ec85c0d2e6dd0f042cba3b0d79d4f WHIRLPOOL 5d358be55fcd6671c5b1793027f17859449e623fe91e39f695fddb6e4766c0a2e2f2354265796c23322dc0334fcdb8b3e03e7eec6ca3c5945999516922e88060 -AUX qt-cxxflags.patch 791 SHA256 f2a7391dd78f152f1cd90cd62b84e4001be2176addfe1e3ca7c50c09b3a686fd SHA512 5bcdfc5ef0e7f0a2d388f13348ac66a6c0acbed7c043eef77e299d4cbb5e7d36cd172b585e560d96ee21de5482c4c31473ce9cee21525f301d8d659d68974b5d WHIRLPOOL aec5f5103302a3d8253ef904aace2e65f594c36e30a5584ea93406a770372757432ec5ec9e43105b8f7e113e8937d1f1fcbc7c1f7e7c8af0a10fb4b50d9cea9b +AUX qt-cxxflags.patch 799 SHA256 c2daf63c38bf018b66e054b44b2d87e459d18e48d66b13d130fa58d9fc8a4f21 SHA512 4080116da656d83f44c69c4f89b7e74855341db9b556d551fdc55941ba384b766ec0d1da75d3b6d6bfc4f77c1c16416dcd8bb46fa39a012c8a24c448fb511ae3 WHIRLPOOL ae0a015bc6168645fcdb26e64b8b9a92d99da24d787d0fde511b310398f2fd2e46913dd06e106860610e9a3fac22e3278e77cea56fb794acbf02a3f6805e048d +AUX set-pkg-config-locations-directly-to-install-dir.patch 2048 SHA256 862b2be51a7bff1e97be70f1bcdc9b6bbbfbea3f7b7de5805e7320c401103cc5 SHA512 0cdc8ff580ee2b291764615dc9f05f0d8078e0baeedc8e5869f843c11db2755a2c2f2c757dca1ffccb8a3dc07cbdb9c46c1a2e9f6791edb4f1e20675c9bbd9d0 WHIRLPOOL 93da7613c1cc5004bee55dbe4decccebf1c10db2be695ddc80bc5407a097b7a18f58ec31d481d76d7f1ca71f4f7a8dbeeea5108aecea06d50f625896e1a742c6 DIST qt-everywhere-opensource-src-4.8.4.tar.gz 236593028 SHA256 33b0e38ba4c54a0cf8a4be8ca5a4584f1c2e0adfecb57b21d9d1d267b0093270 SHA512 472972b63b5cad83b4c4656b23e95b6d4923cc31a518138e25d5921982b14abc835883356c2b779a7972cb77cf73fe25b46630be7c6a86a917b364186aa17496 WHIRLPOOL 9d250ee9ddd0431eeabc22ea598eda2bc74ee7ee6c5329522c479143d6c38fa17ae545541b4e3220b05d493c1a5d407c70980d0d1ffa49d2f83dedc1774cfa79 -EBUILD qt-core-4.8.4-r121.ebuild 5096 SHA256 c82379b303336bce8b2cd917db2b5feecfada87e1122880a0cee1c51a4625d8f SHA512 af90c8afdf0d8cbfae3584e253c81f3a6962d49754bb2bc1bd964a2c53bf92ceb54f72066c3537a18fec676495c3437377959c5c16937bf767903edca2d9f9c2 WHIRLPOOL 22463382abf0cdc6ef996c468d3e34dd1ea18c6e12e2f700f8e8998d2de0faa43115833263a0f69324170c7e587ca157e351baddb3020abda491dc9d43735479 +EBUILD qt-core-4.8.4-r131.ebuild 5207 SHA256 fb70a31d1a26e9e4b51c2224a6fc2eb50696a9b225e7300fa25faaf9d8f94ace SHA512 c07b1bac710771b120da13301897b356d61be9006b1ebe4c9647111c1ffae022e853b728c8651ef33a2efc7647c84381cebc46b877447aeaaa33da597cf03f10 WHIRLPOOL abea91bd217f1738138c99d652f5ac9e1eed67339d4a0dca46c6158f3fb77b443feb623d39edcc6d688dce80c3bb4a787cf3b4d9916d038def89d4dff40215e6 diff --git a/x11-libs/qt-core/files/CVE-2013-0254.patch b/x11-libs/qt-core/files/CVE-2013-0254.patch new file mode 100644 index 0000000..48cc05f --- /dev/null +++ b/x11-libs/qt-core/files/CVE-2013-0254.patch @@ -0,0 +1,66 @@ +From 20b26bdb3dd5e46b01b9a7e1ce8342074df3c89c Mon Sep 17 00:00:00 2001 +From: Thiago Macieira +Date: Sat, 22 Dec 2012 08:32:12 -0800 +Subject: [PATCH] Change all shmget calls to user-only memory + +Drop the read and write permissions for group and other users in the +system. + +Change-Id: I8fc753f09126651af3fb82df3049050f0b14e876 +(cherry-picked from Qt 5 commit 856f209fb63ae336bfb389a12d2a75fa886dc1c5) +Reviewed-by: Richard J. Moore +--- + src/corelib/kernel/qsharedmemory_unix.cpp | 6 +++--- + src/corelib/kernel/qsystemsemaphore_unix.cpp | 4 ++-- + +diff --git a/src/corelib/kernel/qsharedmemory_unix.cpp b/src/corelib/kernel/qsharedmemory_unix.cpp +index 20d76e3..4cf3acf 100644 +--- a/src/corelib/kernel/qsharedmemory_unix.cpp ++++ b/src/corelib/kernel/qsharedmemory_unix.cpp +@@ -238,7 +238,7 @@ bool QSharedMemoryPrivate::create(int size) + } + + // create +- if (-1 == shmget(unix_key, size, 0666 | IPC_CREAT | IPC_EXCL)) { ++ if (-1 == shmget(unix_key, size, 0600 | IPC_CREAT | IPC_EXCL)) { + QString function = QLatin1String("QSharedMemory::create"); + switch (errno) { + case EINVAL: +@@ -293,7 +293,7 @@ bool QSharedMemoryPrivate::attach(QSharedMemory::AccessMode mode) + { + #ifndef QT_POSIX_IPC + // grab the shared memory segment id +- int id = shmget(unix_key, 0, (mode == QSharedMemory::ReadOnly ? 0444 : 0660)); ++ int id = shmget(unix_key, 0, (mode == QSharedMemory::ReadOnly ? 0400 : 0600)); + if (-1 == id) { + setErrorString(QLatin1String("QSharedMemory::attach (shmget)")); + return false; +@@ -381,7 +381,7 @@ bool QSharedMemoryPrivate::detach() + size = 0; + + // Get the number of current attachments +- int id = shmget(unix_key, 0, 0444); ++ int id = shmget(unix_key, 0, 0400); + cleanHandle(); + + struct shmid_ds shmid_ds; +diff --git a/src/corelib/kernel/qsystemsemaphore_unix.cpp b/src/corelib/kernel/qsystemsemaphore_unix.cpp +index fad9acc..e77456b 100644 +--- a/src/corelib/kernel/qsystemsemaphore_unix.cpp ++++ b/src/corelib/kernel/qsystemsemaphore_unix.cpp +@@ -153,10 +153,10 @@ key_t QSystemSemaphorePrivate::handle(QSystemSemaphore::AccessMode mode) + } + + // Get semaphore +- semaphore = semget(unix_key, 1, 0666 | IPC_CREAT | IPC_EXCL); ++ semaphore = semget(unix_key, 1, 0600 | IPC_CREAT | IPC_EXCL); + if (-1 == semaphore) { + if (errno == EEXIST) +- semaphore = semget(unix_key, 1, 0666 | IPC_CREAT); ++ semaphore = semget(unix_key, 1, 0600 | IPC_CREAT); + if (-1 == semaphore) { + setErrorString(QLatin1String("QSystemSemaphore::handle")); + cleanHandle(); +-- +1.7.1 + diff --git a/x11-libs/qt-core/files/qt-cxxflags.patch b/x11-libs/qt-core/files/qt-cxxflags.patch index 2a19359..2fa0ce6 100644 --- a/x11-libs/qt-core/files/qt-cxxflags.patch +++ b/x11-libs/qt-core/files/qt-cxxflags.patch @@ -5,7 +5,7 @@ QMAKE_CFLAGS_WARN_ON += -Wall -W QMAKE_CFLAGS_WARN_OFF += -w -QMAKE_CFLAGS_RELEASE += -O2 -+QMAKE_CFLAGS_RELEASE += ++QMAKE_CFLAGS_RELEASE += -O3 QMAKE_CFLAGS_DEBUG += -g QMAKE_CFLAGS_SHLIB += -fPIC QMAKE_CFLAGS_STATIC_LIB += -fPIC @@ -16,7 +16,7 @@ QMAKE_LINK_C_SHLIB = $$QMAKE_CC -QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g -+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -g ++QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O3 -g QMAKE_CXX = g++ diff --git a/x11-libs/qt-core/files/set-pkg-config-locations-directly-to-install-dir.patch b/x11-libs/qt-core/files/set-pkg-config-locations-directly-to-install-dir.patch new file mode 100644 index 0000000..46b9c28 --- /dev/null +++ b/x11-libs/qt-core/files/set-pkg-config-locations-directly-to-install-dir.patch @@ -0,0 +1,60 @@ +From 87fa0250081cffb6e413fec7957f5ac4add6cdd1 Mon Sep 17 00:00:00 2001 +From: Oswald Buddenhagen +Date: Tue, 8 Jan 2013 16:34:26 +0100 +Subject: [PATCH] set pkg-config *_location directly to install dir + +qmake tries to replace all occurrences of the install prefix with a +literal ${prefix}. of course this would mess up build paths which happen +to live under the prefix (this is untypical, but still), which would +break the sed magic in the subsequent install step. as qmake itself has +no use for the .pc files, it's ok to target them directly for the +install dir. we do the same with the include and lib dirs already. + +qt5 is already doing the right thing. + +Task-number: QTBUG-28807 +Change-Id: I82c17284d1dbac4a96845db2ddec9680e251e7a5 +Reviewed-by: Davide Pesavento +Reviewed-by: Oswald Buddenhagen + +diff --git a/src/qbase.pri b/src/qbase.pri +index 991c888..feec9d6 100644 +--- a/src/qbase.pri ++++ b/src/qbase.pri +@@ -166,23 +166,25 @@ DEFINES *= QT_USE_QSTRINGBUILDER + + TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #do this towards the end + +-qtPrepareTool(QMAKE_LUPDATE, lupdate) +-qtPrepareTool(QMAKE_LRELEASE, lrelease) +- ++QMAKE_MOC_PC = $$[QT_INSTALL_BINS]/moc + moc_dir.name = moc_location +-moc_dir.variable = QMAKE_MOC ++moc_dir.variable = QMAKE_MOC_PC + ++QMAKE_UIC_PC = $$[QT_INSTALL_BINS]/uic + uic_dir.name = uic_location +-uic_dir.variable = QMAKE_UIC ++uic_dir.variable = QMAKE_UIC_PC + ++QMAKE_RCC_PC = $$[QT_INSTALL_BINS]/rcc + rcc_dir.name = rcc_location +-rcc_dir.variable = QMAKE_RCC ++rcc_dir.variable = QMAKE_RCC_PC + ++QMAKE_LUPDATE_PC = $$[QT_INSTALL_BINS]/lupdate + lupdate_dir.name = lupdate_location +-lupdate_dir.variable = QMAKE_LUPDATE ++lupdate_dir.variable = QMAKE_LUPDATE_PC + ++QMAKE_LRELEASE_PC = $$[QT_INSTALL_BINS]/lrelease + lrelease_dir.name = lrelease_location +-lrelease_dir.variable = QMAKE_LRELEASE ++lrelease_dir.variable = QMAKE_LRELEASE_PC + + QMAKE_PKGCONFIG_VARIABLES += moc_dir uic_dir rcc_dir lupdate_dir lrelease_dir + +-- +1.8.1.1 + diff --git a/x11-libs/qt-core/qt-core-4.8.4-r121.ebuild b/x11-libs/qt-core/qt-core-4.8.4-r121.ebuild deleted file mode 100644 index 3f8d255..0000000 --- a/x11-libs/qt-core/qt-core-4.8.4-r121.ebuild +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt-core/qt-core-4.8.4.ebuild,v 1.1 2012/12/05 03:14:14 yngwin Exp $ - -EAPI=4 - -inherit qt4-build - -DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework" -SLOT="4" -if [[ ${QT4_BUILD_TYPE} == live ]]; then - KEYWORDS="" -else - KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" -fi -IUSE="+glib iconv icu qt3support ssl" - -DEPEND=" - sys-libs/zlib - glib? ( dev-libs/glib:2 ) - icu? ( >=dev-libs/icu-49 ) - ssl? ( dev-libs/openssl ) - !> "${S}"/src/plugins/codecs/${i}/${i}.pro - done - - qt4-build_src_prepare - - # bug 172219 - sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \ - "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CXXFLAGS failed" - sed -i -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \ - "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix LDFLAGS failed" - - # bug 427782 - sed -i -e "/^CPPFLAGS/s/-g//" \ - "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CPPFLAGS failed" - sed -i -e "s/setBootstrapVariable QMAKE_CFLAGS_RELEASE/QMakeVar set QMAKE_CFLAGS_RELEASE/" \ - -e "s/setBootstrapVariable QMAKE_CXXFLAGS_RELEASE/QMakeVar set QMAKE_CXXFLAGS_RELEASE/" \ - "${S}/configure" || die "sed configure setBootstrapVariable failed" -} - -src_configure() { - myconf+=" - -no-accessibility -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon - -no-phonon-backend -no-svg -no-webkit -no-script -no-scripttools -no-declarative - -system-zlib -no-gif -no-libtiff -no-libpng -no-libmng -no-libjpeg - -no-cups -no-dbus -no-gtkstyle -no-nas-sound -no-opengl -no-openvg - -no-sm -no-xshape -no-xvideo -no-xsync -no-xinerama -no-xcursor -no-xfixes - -no-xrandr -no-xrender -no-mitshm -no-fontconfig -no-freetype -no-xinput -no-xkb - $(qt_use glib) - $(qt_use iconv) - $(qt_use icu) - $(use ssl && echo -openssl-linked || echo -no-openssl) - $(qt_use qt3support)" - - qt4-build_src_configure -} - -src_install() { - dobin bin/{qmake,moc,rcc,uic,lconvert,lrelease,lupdate} - - install_directories src/{corelib,xml,network,plugins/codecs} - - emake INSTALL_ROOT="${D}" install_mkspecs - - # install private headers - insinto "${QTHEADERDIR#${EPREFIX}}"/QtCore/private - find "${S}"/src/corelib -type f -name "*_p.h" -exec doins {} + - - # use freshly built libraries - local DYLD_FPATH= - [[ -d "${S}"/lib/QtCore.framework ]] \ - && DYLD_FPATH=$(for x in "${S}"/lib/*.framework; do echo -n ":$x"; done) - DYLD_LIBRARY_PATH="${S}/lib${DYLD_FPATH}" \ - LD_LIBRARY_PATH="${S}/lib" \ - "${S}"/bin/lrelease translations/*.ts \ - || die "generating translations failed" - insinto "${QTTRANSDIR#${EPREFIX}}" - doins translations/*.qm - - setqtenv - fix_library_files - - # List all the multilib libdirs - local libdirs= - for libdir in $(get_all_libdirs); do - libdirs+=":${EPREFIX}/usr/${libdir}/qt4" - done - - cat <<-EOF > "${T}"/44qt4 - LDPATH="${libdirs:1}" - EOF - doenvd "${T}"/44qt4 - - dodir "${QTDATADIR#${EPREFIX}}"/mkspecs/gentoo - mv "${D}/${QTDATADIR}"/mkspecs/qconfig.pri "${D}${QTDATADIR}"/mkspecs/gentoo \ - || die "failed to move qconfig.pri" - - # Framework hacking - if use aqua && [[ ${CHOST#*-darwin} -ge 9 ]]; then - # TODO: do this better - sed -i -e '2a#include \n' \ - "${D}${QTLIBDIR}"/QtCore.framework/Headers/qconfig.h \ - || die "sed for qconfig.h failed." - dosym "${QTHEADERDIR#${EPREFIX}}"/Gentoo "${QTLIBDIR#${EPREFIX}}"/QtCore.framework/Headers/Gentoo - else - sed -i -e '2a#include \n' \ - "${D}${QTHEADERDIR}"/QtCore/qconfig.h \ - "${D}${QTHEADERDIR}"/Qt/qconfig.h \ - || die "sed for qconfig.h failed" - fi - - QCONFIG_DEFINE="QT_ZLIB" - install_qconfigs - - # remove .la files - prune_libtool_files - - keepdir "${QTSYSCONFDIR#${EPREFIX}}" - - # Framework magic - fix_includes -} diff --git a/x11-libs/qt-core/qt-core-4.8.4-r131.ebuild b/x11-libs/qt-core/qt-core-4.8.4-r131.ebuild new file mode 100644 index 0000000..2220775 --- /dev/null +++ b/x11-libs/qt-core/qt-core-4.8.4-r131.ebuild @@ -0,0 +1,184 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt-core/qt-core-4.8.4-r2.ebuild,v 1.3 2013/02/09 20:11:34 ago Exp $ + +EAPI=5 + +inherit qt4-build + +DESCRIPTION="The Qt toolkit is a comprehensive C++ application development framework" +SLOT="4" +if [[ ${QT4_BUILD_TYPE} == live ]]; then + KEYWORDS="" +else + KEYWORDS="~alpha amd64 ~arm ~hppa ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +fi +IUSE="+glib iconv icu qt3support ssl" + +DEPEND=" + sys-libs/zlib + glib? ( dev-libs/glib:2 ) + icu? ( >=dev-libs/icu-49:= ) + ssl? ( dev-libs/openssl ) + !> "${S}"/src/plugins/codecs/${i}/${i}.pro + done + + qt4-build_src_prepare + + # bug 172219 + sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \ + "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CXXFLAGS failed" + sed -i -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \ + "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix LDFLAGS failed" + + # bug 427782 + sed -i -e "/^CPPFLAGS/s/-g//" \ + "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CPPFLAGS failed" + sed -i -e "s/setBootstrapVariable QMAKE_CFLAGS_RELEASE/QMakeVar set QMAKE_CFLAGS_RELEASE/" \ + -e "s/setBootstrapVariable QMAKE_CXXFLAGS_RELEASE/QMakeVar set QMAKE_CXXFLAGS_RELEASE/" \ + "${S}/configure" || die "sed configure setBootstrapVariable failed" +} + +src_configure() { + myconf+=" + -no-accessibility -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon + -no-phonon-backend -no-svg -no-webkit -no-script -no-scripttools -no-declarative + -system-zlib -no-gif -no-libtiff -no-libpng -no-libmng -no-libjpeg + -no-cups -no-dbus -no-gtkstyle -no-nas-sound -no-opengl -no-openvg + -no-sm -no-xshape -no-xvideo -no-xsync -no-xinerama -no-xcursor -no-xfixes + -no-xrandr -no-xrender -no-mitshm -no-fontconfig -no-freetype -no-xinput -no-xkb + $(qt_use glib) + $(qt_use iconv) + $(qt_use icu) + $(use ssl && echo -openssl-linked || echo -no-openssl) + $(qt_use qt3support)" + + qt4-build_src_configure +} + +src_install() { + dobin bin/{qmake,moc,rcc,uic,lconvert,lrelease,lupdate} + + install_directories src/{corelib,xml,network,plugins/codecs} + + emake INSTALL_ROOT="${D}" install_mkspecs + + # install private headers + insinto "${QTHEADERDIR#${EPREFIX}}"/QtCore/private + find "${S}"/src/corelib -type f -name "*_p.h" -exec doins {} + + + # use freshly built libraries + local DYLD_FPATH= + [[ -d "${S}"/lib/QtCore.framework ]] \ + && DYLD_FPATH=$(for x in "${S}"/lib/*.framework; do echo -n ":$x"; done) + DYLD_LIBRARY_PATH="${S}/lib${DYLD_FPATH}" \ + LD_LIBRARY_PATH="${S}/lib" \ + "${S}"/bin/lrelease translations/*.ts \ + || die "generating translations failed" + insinto "${QTTRANSDIR#${EPREFIX}}" + doins translations/*.qm + + setqtenv + fix_library_files + + # List all the multilib libdirs + local libdirs= + for libdir in $(get_all_libdirs); do + libdirs+=":${EPREFIX}/usr/${libdir}/qt4" + done + + cat <<-EOF > "${T}"/44qt4 + LDPATH="${libdirs:1}" + EOF + doenvd "${T}"/44qt4 + + dodir "${QTDATADIR#${EPREFIX}}"/mkspecs/gentoo + mv "${D}/${QTDATADIR}"/mkspecs/qconfig.pri "${D}${QTDATADIR}"/mkspecs/gentoo \ + || die "failed to move qconfig.pri" + + # Framework hacking + if use aqua && [[ ${CHOST#*-darwin} -ge 9 ]]; then + # TODO: do this better + sed -i -e '2a#include \n' \ + "${D}${QTLIBDIR}"/QtCore.framework/Headers/qconfig.h \ + || die "sed for qconfig.h failed." + dosym "${QTHEADERDIR#${EPREFIX}}"/Gentoo "${QTLIBDIR#${EPREFIX}}"/QtCore.framework/Headers/Gentoo + else + sed -i -e '2a#include \n' \ + "${D}${QTHEADERDIR}"/QtCore/qconfig.h \ + "${D}${QTHEADERDIR}"/Qt/qconfig.h \ + || die "sed for qconfig.h failed" + fi + + QCONFIG_DEFINE="QT_ZLIB" + install_qconfigs + + # remove .la files + prune_libtool_files + + keepdir "${QTSYSCONFDIR#${EPREFIX}}" + + # Framework magic + fix_includes +} -- cgit v1.2.3-65-gdbad