| 1 | # Copyright 1999-2011 Gentoo Foundation |
1 | # Copyright 1999-2011 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.100 2011/11/19 20:31:12 pesa Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.104 2011/12/16 20:02:48 abcd Exp $ |
| 4 | |
4 | |
| 5 | # @ECLASS: qt4-build.eclass |
5 | # @ECLASS: qt4-build.eclass |
| 6 | # @MAINTAINER: |
6 | # @MAINTAINER: |
| 7 | # Qt herd <qt@gentoo.org> |
7 | # Qt herd <qt@gentoo.org> |
| 8 | # @BLURB: Eclass for Qt4 split ebuilds. |
8 | # @BLURB: Eclass for Qt4 split ebuilds. |
| … | |
… | |
| 12 | inherit base eutils multilib toolchain-funcs flag-o-matic versionator |
12 | inherit base eutils multilib toolchain-funcs flag-o-matic versionator |
| 13 | |
13 | |
| 14 | MY_PV=${PV/_/-} |
14 | MY_PV=${PV/_/-} |
| 15 | MY_P=qt-everywhere-opensource-src-${MY_PV} |
15 | MY_P=qt-everywhere-opensource-src-${MY_PV} |
| 16 | |
16 | |
| 17 | HOMEPAGE="http://qt.nokia.com/" |
17 | HOMEPAGE="http://qt.nokia.com/ http://qt-project.org/" |
| 18 | SRC_URI="http://get.qt.nokia.com/qt/source/${MY_P}.tar.gz" |
18 | SRC_URI="http://get.qt.nokia.com/qt/source/${MY_P}.tar.gz" |
| 19 | LICENSE="|| ( LGPL-2.1 GPL-3 )" |
19 | LICENSE="|| ( LGPL-2.1 GPL-3 )" |
| 20 | |
20 | |
| 21 | IUSE="aqua debug pch" |
21 | IUSE="aqua debug pch" |
| 22 | |
22 | |
| … | |
… | |
| 26 | |
26 | |
| 27 | if version_is_at_least 4.7.99999999; then |
27 | if version_is_at_least 4.7.99999999; then |
| 28 | IUSE+=" c++0x qpa" |
28 | IUSE+=" c++0x qpa" |
| 29 | fi |
29 | fi |
| 30 | |
30 | |
|
|
31 | DEPEND="dev-util/pkgconfig" |
| 31 | RDEPEND=" |
32 | RDEPEND=" |
| 32 | !<x11-libs/qt-assistant-${PV} |
33 | !<x11-libs/qt-assistant-${PV} |
| 33 | !>x11-libs/qt-assistant-${PV}-r9999 |
34 | !>x11-libs/qt-assistant-${PV}-r9999 |
| 34 | !<x11-libs/qt-core-${PV} |
35 | !<x11-libs/qt-core-${PV} |
| 35 | !>x11-libs/qt-core-${PV}-r9999 |
36 | !>x11-libs/qt-core-${PV}-r9999 |
| … | |
… | |
| 448 | QTPCDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig |
449 | QTPCDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig |
| 449 | QTDATADIR=${EPREFIX}/usr/share/qt4 |
450 | QTDATADIR=${EPREFIX}/usr/share/qt4 |
| 450 | QTDOCDIR=${EPREFIX}/usr/share/doc/qt-${PV} |
451 | QTDOCDIR=${EPREFIX}/usr/share/doc/qt-${PV} |
| 451 | QTHEADERDIR=${EPREFIX}/usr/include/qt4 |
452 | QTHEADERDIR=${EPREFIX}/usr/include/qt4 |
| 452 | QTPLUGINDIR=${QTLIBDIR}/plugins |
453 | QTPLUGINDIR=${QTLIBDIR}/plugins |
|
|
454 | QTIMPORTDIR=${QTLIBDIR}/imports |
| 453 | QTSYSCONFDIR=${EPREFIX}/etc/qt4 |
455 | QTSYSCONFDIR=${EPREFIX}/etc/qt4 |
| 454 | QTTRANSDIR=${QTDATADIR}/translations |
456 | QTTRANSDIR=${QTDATADIR}/translations |
| 455 | QTEXAMPLESDIR=${QTDATADIR}/examples |
457 | QTEXAMPLESDIR=${QTDATADIR}/examples |
| 456 | QTDEMOSDIR=${QTDATADIR}/demos |
458 | QTDEMOSDIR=${QTDATADIR}/demos |
| 457 | QT_INSTALL_PREFIX=${EPREFIX}/usr/$(get_libdir)/qt4 |
459 | QT_INSTALL_PREFIX=${EPREFIX}/usr/$(get_libdir)/qt4 |
| … | |
… | |
| 487 | use aqua && myconf+=" -no-framework" |
489 | use aqua && myconf+=" -no-framework" |
| 488 | |
490 | |
| 489 | # ARCH is set on Gentoo. Qt now falls back to generic on an unsupported |
491 | # ARCH is set on Gentoo. Qt now falls back to generic on an unsupported |
| 490 | # $(tc-arch). Therefore we convert it to supported values. |
492 | # $(tc-arch). Therefore we convert it to supported values. |
| 491 | case "$(tc-arch)" in |
493 | case "$(tc-arch)" in |
| 492 | amd64|x64-*) myconf+=" -arch x86_64" ;; |
494 | amd64|x64-*) myconf+=" -arch x86_64" ;; |
| 493 | ppc-macos) myconf+=" -arch ppc" ;; |
495 | ppc-macos) myconf+=" -arch ppc" ;; |
| 494 | ppc|ppc64|ppc-*) myconf+=" -arch powerpc" ;; |
496 | ppc|ppc64|ppc-*) myconf+=" -arch powerpc" ;; |
| 495 | sparc|sparc-*) myconf+=" -arch sparc" ;; |
497 | sparc|sparc-*|sparc64-*) myconf+=" -arch sparc" ;; |
| 496 | x86-macos) myconf+=" -arch x86" ;; |
498 | x86-macos) myconf+=" -arch x86" ;; |
| 497 | x86|x86-*) myconf+=" -arch i386" ;; |
499 | x86|x86-*) myconf+=" -arch i386" ;; |
| 498 | alpha|arm|ia64|mips|s390|sparc) myconf+=" -arch $(tc-arch)" ;; |
500 | alpha|arm|ia64|mips|s390) myconf+=" -arch $(tc-arch)" ;; |
| 499 | hppa|sh) myconf+=" -arch generic" ;; |
501 | hppa|sh) myconf+=" -arch generic" ;; |
| 500 | *) die "$(tc-arch) is unsupported by this eclass. Please file a bug." ;; |
502 | *) die "$(tc-arch) is unsupported by this eclass. Please file a bug." ;; |
| 501 | esac |
503 | esac |
| 502 | |
504 | |
| 503 | # exceptions USE flag |
505 | # exceptions USE flag |
| 504 | local exceptions="-exceptions" |
506 | local exceptions="-exceptions" |
| … | |
… | |
| 514 | myconf+=" -platform $(qt_mkspecs_dir) -stl -verbose -largefile -confirm-license |
516 | myconf+=" -platform $(qt_mkspecs_dir) -stl -verbose -largefile -confirm-license |
| 515 | -prefix ${QTPREFIXDIR} -bindir ${QTBINDIR} -libdir ${QTLIBDIR} |
517 | -prefix ${QTPREFIXDIR} -bindir ${QTBINDIR} -libdir ${QTLIBDIR} |
| 516 | -datadir ${QTDATADIR} -docdir ${QTDOCDIR} -headerdir ${QTHEADERDIR} |
518 | -datadir ${QTDATADIR} -docdir ${QTDOCDIR} -headerdir ${QTHEADERDIR} |
| 517 | -plugindir ${QTPLUGINDIR} -sysconfdir ${QTSYSCONFDIR} |
519 | -plugindir ${QTPLUGINDIR} -sysconfdir ${QTSYSCONFDIR} |
| 518 | -translationdir ${QTTRANSDIR} -examplesdir ${QTEXAMPLESDIR} |
520 | -translationdir ${QTTRANSDIR} -examplesdir ${QTEXAMPLESDIR} |
| 519 | -demosdir ${QTDEMOSDIR} -silent -fast -opensource |
521 | -demosdir ${QTDEMOSDIR} -importdir ${QTIMPORTDIR} -silent -fast -opensource |
| 520 | ${exceptions} |
522 | ${exceptions} |
| 521 | -nomake examples -nomake demos" |
523 | -nomake examples -nomake demos" |
| 522 | |
524 | |
| 523 | echo "${myconf}" |
525 | echo "${myconf}" |
| 524 | } |
526 | } |
| … | |
… | |
| 533 | einfo "Running qmake in: ${x}" |
535 | einfo "Running qmake in: ${x}" |
| 534 | # avoid running over the maximum argument number, bug #299810 |
536 | # avoid running over the maximum argument number, bug #299810 |
| 535 | { |
537 | { |
| 536 | echo "${S}"/mkspecs/common/*.conf |
538 | echo "${S}"/mkspecs/common/*.conf |
| 537 | find "${S}" -name '*.pr[io]' |
539 | find "${S}" -name '*.pr[io]' |
| 538 | } | xargs sed -i -e "s:\$\$\[QT_INSTALL_LIBS\]:${EPREFIX}/usr/$(get_libdir)/qt4:g" || die |
540 | } | xargs sed -i \ |
|
|
541 | -e "s:\$\$\[QT_INSTALL_LIBS\]:${QTLIBDIR}:g" \ |
|
|
542 | -e "s:\$\$\[QT_INSTALL_PLUGINS\]:${QTPLUGINDIR}:g" \ |
|
|
543 | || die |
| 539 | "${S}"/bin/qmake "LIBS+=-L${QTLIBDIR}" "CONFIG+=nostrip" || die "qmake failed" |
544 | "${S}"/bin/qmake "LIBS+=-L${QTLIBDIR}" "CONFIG+=nostrip" || die "qmake failed" |
| 540 | popd >/dev/null |
545 | popd >/dev/null |
| 541 | done |
546 | done |
| 542 | } |
547 | } |
| 543 | |
548 | |