1 | # Copyright 1999-2013 Gentoo Foundation |
1 | # Copyright 1999-2013 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.152 2013/10/14 17:29:55 pesa Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.153 2013/10/20 21:45:31 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. |
… | |
… | |
41 | SRC_URI="http://download.qt-project.org/official_releases/qt/${PV%.*}/${PV}/${MY_P}.tar.gz" |
41 | SRC_URI="http://download.qt-project.org/official_releases/qt/${PV%.*}/${PV}/${MY_P}.tar.gz" |
42 | ;; |
42 | ;; |
43 | esac |
43 | esac |
44 | |
44 | |
45 | IUSE="aqua debug pch" |
45 | IUSE="aqua debug pch" |
|
|
46 | if ! version_is_at_least 4.8.5; then |
46 | [[ ${CATEGORY}/${PN} != dev-qt/qtwebkit ]] && IUSE+=" c++0x" |
47 | [[ ${CATEGORY}/${PN} != dev-qt/qtwebkit ]] && IUSE+=" c++0x" |
|
|
48 | fi |
47 | [[ ${CATEGORY}/${PN} != dev-qt/qtxmlpatterns ]] && IUSE+=" +exceptions" |
49 | [[ ${CATEGORY}/${PN} != dev-qt/qtxmlpatterns ]] && IUSE+=" +exceptions" |
48 | |
50 | |
49 | DEPEND="virtual/pkgconfig" |
51 | DEPEND="virtual/pkgconfig" |
50 | if [[ ${QT4_BUILD_TYPE} == live ]]; then |
52 | if [[ ${QT4_BUILD_TYPE} == live ]]; then |
51 | DEPEND+=" dev-lang/perl" |
53 | DEPEND+=" dev-lang/perl" |
… | |
… | |
55 | |
57 | |
56 | # @FUNCTION: qt4-build_pkg_setup |
58 | # @FUNCTION: qt4-build_pkg_setup |
57 | # @DESCRIPTION: |
59 | # @DESCRIPTION: |
58 | # Sets up PATH and LD_LIBRARY_PATH. |
60 | # Sets up PATH and LD_LIBRARY_PATH. |
59 | qt4-build_pkg_setup() { |
61 | qt4-build_pkg_setup() { |
60 | # Protect users by not allowing downgrades between releases. |
62 | # Warn users of possible breakage when downgrading to a previous release. |
61 | # Downgrading revisions within the same release should be allowed. |
63 | # Downgrading revisions within the same release is safe. |
62 | if has_version ">${CATEGORY}/${P}-r9999:4"; then |
64 | if has_version ">${CATEGORY}/${P}-r9999:4"; then |
63 | if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then |
65 | ewarn |
64 | eerror " *** Sanity check to keep you from breaking your system ***" |
|
|
65 | eerror "Downgrading Qt is completely unsupported and will break your system!" |
|
|
66 | die "aborting to save your system" |
|
|
67 | else |
|
|
68 | ewarn "Downgrading Qt is completely unsupported and will break your system!" |
66 | ewarn "Downgrading Qt is completely unsupported and can break your system!" |
69 | fi |
67 | ewarn |
70 | fi |
68 | fi |
71 | |
69 | |
72 | PATH="${S}/bin${PATH:+:}${PATH}" |
70 | PATH="${S}/bin${PATH:+:}${PATH}" |
73 | if [[ ${CHOST} != *-darwin* ]]; then |
71 | if [[ ${CHOST} != *-darwin* ]]; then |
74 | LD_LIBRARY_PATH="${S}/lib${LD_LIBRARY_PATH:+:}${LD_LIBRARY_PATH}" |
72 | LD_LIBRARY_PATH="${S}/lib${LD_LIBRARY_PATH:+:}${LD_LIBRARY_PATH}" |
… | |
… | |
99 | # @DESCRIPTION: |
97 | # @DESCRIPTION: |
100 | # Unpacks the sources. |
98 | # Unpacks the sources. |
101 | qt4-build_src_unpack() { |
99 | qt4-build_src_unpack() { |
102 | setqtenv |
100 | setqtenv |
103 | |
101 | |
104 | if ! version_is_at_least 4.1 $(gcc-version); then |
102 | if ! version_is_at_least 4.4 $(gcc-version); then |
|
|
103 | ewarn |
105 | ewarn "Using a GCC version lower than 4.1 is not supported." |
104 | ewarn "Using a GCC version lower than 4.4 is not supported." |
106 | elif use_if_iuse c++0x && ! version_is_at_least 4.4 $(gcc-version); then |
105 | ewarn |
107 | ewarn "USE=c++0x requires GCC 4.4 or later." |
|
|
108 | fi |
106 | fi |
109 | |
107 | |
110 | if [[ ${CATEGORY}/${PN} == dev-qt/qtwebkit ]]; then |
108 | if [[ ${CATEGORY}/${PN} == dev-qt/qtwebkit ]]; then |
111 | eshopts_push -s extglob |
109 | eshopts_push -s extglob |
112 | if is-flagq '-g?(gdb)?([1-9])'; then |
110 | if is-flagq '-g?(gdb)?([1-9])'; then |
113 | echo |
111 | ewarn |
114 | ewarn "You have enabled debug info (probably have -g or -ggdb in your CFLAGS/CXXFLAGS)." |
112 | ewarn "You have enabled debug info (probably have -g or -ggdb in your CFLAGS/CXXFLAGS)." |
115 | ewarn "You may experience really long compilation times and/or increased memory usage." |
113 | ewarn "You may experience really long compilation times and/or increased memory usage." |
116 | ewarn "If compilation fails, please try removing -g/-ggdb before reporting a bug." |
114 | ewarn "If compilation fails, please try removing -g/-ggdb before reporting a bug." |
117 | ewarn "For more info check out https://bugs.gentoo.org/307861" |
115 | ewarn "For more info check out https://bugs.gentoo.org/307861" |
118 | echo |
116 | ewarn |
119 | fi |
117 | fi |
120 | eshopts_pop |
118 | eshopts_pop |
121 | fi |
119 | fi |
122 | |
120 | |
123 | case ${QT4_BUILD_TYPE} in |
121 | case ${QT4_BUILD_TYPE} in |