| 1 | # Copyright 1999-2011 Gentoo Foundation |
1 | # Copyright 1999-2012 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.114 2012/01/01 18:12:03 pesa Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.119 2012/02/28 18:19:29 pesa 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. |
| … | |
… | |
| 44 | !>x11-libs/qt-gui-${PV}-r9999 |
44 | !>x11-libs/qt-gui-${PV}-r9999 |
| 45 | !<x11-libs/qt-multimedia-${PV} |
45 | !<x11-libs/qt-multimedia-${PV} |
| 46 | !>x11-libs/qt-multimedia-${PV}-r9999 |
46 | !>x11-libs/qt-multimedia-${PV}-r9999 |
| 47 | !<x11-libs/qt-opengl-${PV} |
47 | !<x11-libs/qt-opengl-${PV} |
| 48 | !>x11-libs/qt-opengl-${PV}-r9999 |
48 | !>x11-libs/qt-opengl-${PV}-r9999 |
|
|
49 | !<x11-libs/qt-openvg-${PV} |
|
|
50 | !>x11-libs/qt-openvg-${PV}-r9999 |
| 49 | !<x11-libs/qt-phonon-${PV} |
51 | !<x11-libs/qt-phonon-${PV} |
| 50 | !>x11-libs/qt-phonon-${PV}-r9999 |
52 | !>x11-libs/qt-phonon-${PV}-r9999 |
| 51 | !<x11-libs/qt-qt3support-${PV} |
53 | !<x11-libs/qt-qt3support-${PV} |
| 52 | !>x11-libs/qt-qt3support-${PV}-r9999 |
54 | !>x11-libs/qt-qt3support-${PV}-r9999 |
| 53 | !<x11-libs/qt-script-${PV} |
55 | !<x11-libs/qt-script-${PV} |
| … | |
… | |
| 109 | QT4_EXTRACT_DIRECTORIES="src/gui/kernel/qapplication_mac.mm |
111 | QT4_EXTRACT_DIRECTORIES="src/gui/kernel/qapplication_mac.mm |
| 110 | ${QT4_EXTRACT_DIRECTORIES}" |
112 | ${QT4_EXTRACT_DIRECTORIES}" |
| 111 | fi |
113 | fi |
| 112 | |
114 | |
| 113 | # Make sure ebuilds use the required EAPI |
115 | # Make sure ebuilds use the required EAPI |
| 114 | if [[ ${EAPI} != [23] ]]; then |
116 | if [[ ${EAPI} != [234] ]]; then |
| 115 | eerror "The qt4-build eclass requires EAPI=2 or EAPI=3, but this ebuild is using" |
117 | eerror "The qt4-build eclass requires EAPI 2,3 or 4 but this ebuild is using" |
| 116 | eerror "EAPI=${EAPI:-0}. The ebuild author or editor failed. This ebuild needs to be" |
118 | eerror "EAPI=${EAPI:-0}. The ebuild author or editor failed. This ebuild needs to be" |
| 117 | eerror "fixed. Using qt4-build eclass without EAPI=2 or EAPI=3 will fail." |
119 | eerror "fixed. Using qt4-build eclass without EAPI 2,3 or 4 will fail." |
| 118 | die "qt4-build eclass requires EAPI=2 or EAPI=3" |
120 | die "qt4-build eclass requires EAPI 2,3 or 4" |
| 119 | fi |
121 | fi |
| 120 | |
122 | |
| 121 | if ! version_is_at_least 4.1 $(gcc-version); then |
123 | if ! version_is_at_least 4.1 $(gcc-version); then |
| 122 | ewarn "Using a GCC version lower than 4.1 is not supported!" |
124 | ewarn "Using a GCC version lower than 4.1 is not supported!" |
| 123 | fi |
125 | fi |
| … | |
… | |
| 380 | |
382 | |
| 381 | # @FUNCTION: qt4-build_src_test |
383 | # @FUNCTION: qt4-build_src_test |
| 382 | # @DESCRIPTION: |
384 | # @DESCRIPTION: |
| 383 | # Runs tests only in target directories. |
385 | # Runs tests only in target directories. |
| 384 | qt4-build_src_test() { |
386 | qt4-build_src_test() { |
|
|
387 | # QtMultimedia does not have any test suite (bug #332299) |
|
|
388 | [[ ${PN} == "qt-multimedia" ]] && return |
|
|
389 | |
| 385 | for dir in ${QT4_TARGET_DIRECTORIES}; do |
390 | for dir in ${QT4_TARGET_DIRECTORIES}; do |
| 386 | emake -j1 check -C ${dir} |
391 | emake -j1 check -C ${dir} |
| 387 | done |
392 | done |
| 388 | } |
393 | } |
| 389 | |
394 | |
| … | |
… | |
| 460 | # Sets up some standard configure options, like libdir (if necessary), whether |
465 | # Sets up some standard configure options, like libdir (if necessary), whether |
| 461 | # debug info is wanted or not. |
466 | # debug info is wanted or not. |
| 462 | standard_configure_options() { |
467 | standard_configure_options() { |
| 463 | local myconf="-prefix ${QTPREFIXDIR} -bindir ${QTBINDIR} -libdir ${QTLIBDIR} |
468 | local myconf="-prefix ${QTPREFIXDIR} -bindir ${QTBINDIR} -libdir ${QTLIBDIR} |
| 464 | -docdir ${QTDOCDIR} -headerdir ${QTHEADERDIR} -plugindir ${QTPLUGINDIR} |
469 | -docdir ${QTDOCDIR} -headerdir ${QTHEADERDIR} -plugindir ${QTPLUGINDIR} |
| 465 | -importdir ${QTIMPORTDIR} -datadir ${QTDATADIR} -translationdir ${QTTRANSDIR} |
470 | $(version_is_at_least 4.7 && echo -importdir ${QTIMPORTDIR}) |
|
|
471 | -datadir ${QTDATADIR} -translationdir ${QTTRANSDIR} -sysconfdir ${QTSYSCONFDIR} |
| 466 | -sysconfdir ${QTSYSCONFDIR} -examplesdir ${QTEXAMPLESDIR} -demosdir ${QTDEMOSDIR} |
472 | -examplesdir ${QTEXAMPLESDIR} -demosdir ${QTDEMOSDIR} |
| 467 | -opensource -confirm-license -shared -fast -largefile -stl -verbose |
473 | -opensource -confirm-license -shared -fast -largefile -stl -verbose |
| 468 | -platform $(qt_mkspecs_dir) -nomake examples -nomake demos" |
474 | -platform $(qt_mkspecs_dir) -nomake examples -nomake demos" |
| 469 | |
475 | |
| 470 | [[ $(get_libdir) != lib ]] && myconf+=" -L${EPREFIX}/usr/$(get_libdir)" |
476 | [[ $(get_libdir) != lib ]] && myconf+=" -L${EPREFIX}/usr/$(get_libdir)" |
| 471 | |
477 | |
| … | |
… | |
| 779 | elif [[ ${CXX} == *icpc* ]]; then |
785 | elif [[ ${CXX} == *icpc* ]]; then |
| 780 | spec+=-icc |
786 | spec+=-icc |
| 781 | else |
787 | else |
| 782 | die "Unknown compiler '${CXX}'" |
788 | die "Unknown compiler '${CXX}'" |
| 783 | fi |
789 | fi |
| 784 | if [[ -n ${LIBDIR/lib} ]]; then |
|
|
| 785 | spec+=-${LIBDIR/lib} |
|
|
| 786 | fi |
|
|
| 787 | |
790 | |
| 788 | # Add -64 for 64bit profiles |
791 | # Add -64 for 64bit profiles |
| 789 | if use x64-freebsd || |
792 | if use x64-freebsd || |
| 790 | use amd64-linux || |
793 | use amd64-linux || |
| 791 | use x64-macos || |
794 | use x64-macos || |