| 1 | # Copyright 2007-2009 Gentoo Foundation |
1 | # Copyright 2007-2009 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.34 2009/05/22 22:21:38 hwoarang Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.37 2009/05/29 20:58:54 hwoarang Exp $ |
| 4 | |
4 | |
| 5 | # @ECLASS: qt4-build.eclass |
5 | # @ECLASS: qt4-build.eclass |
| 6 | # @MAINTAINER: |
6 | # @MAINTAINER: |
| 7 | # Ben de Groot <yngwin@gentoo.org>, |
7 | # Ben de Groot <yngwin@gentoo.org>, |
| 8 | # Markos Chandras <hwoarang@gentoo.org>, |
8 | # Markos Chandras <hwoarang@gentoo.org>, |
| 9 | # Caleb Tennis <caleb@gentoo.org> |
9 | # Caleb Tennis <caleb@gentoo.org> |
| 10 | # @BLURB: Eclass for Qt4 split ebuilds. |
10 | # @BLURB: Eclass for Qt4 split ebuilds. |
| 11 | # @DESCRIPTION: |
11 | # @DESCRIPTION: |
| 12 | # This eclass contains various functions that are used when building Qt4 |
12 | # This eclass contains various functions that are used when building Qt4 |
| 13 | |
13 | |
| 14 | inherit eutils multilib toolchain-funcs flag-o-matic versionator |
14 | inherit base eutils multilib toolchain-funcs flag-o-matic versionator |
| 15 | |
15 | |
| 16 | IUSE="${IUSE} custom-cxxflags debug pch" |
16 | IUSE="${IUSE} custom-cxxflags debug pch" |
| 17 | |
17 | RDEPEND=" |
|
|
18 | !<x11-libs/qt-assistant-${PV} |
|
|
19 | !>x11-libs/qt-assistant-${PV}-r9999 |
|
|
20 | !<x11-libs/qt-core-${PV} |
|
|
21 | !>x11-libs/qt-core-${PV}-r9999 |
|
|
22 | !<x11-libs/qt-dbus-${PV} |
|
|
23 | !>x11-libs/qt-dbus-${PV}-r9999 |
|
|
24 | !<x11-libs/qt-demo-${PV} |
|
|
25 | !>x11-libs/qt-demo-${PV}-r9999 |
|
|
26 | !<x11-libs/qt-gui-${PV} |
|
|
27 | !>x11-libs/qt-gui-${PV}-r9999 |
|
|
28 | !<x11-libs/qt-opengl-${PV} |
|
|
29 | !>x11-libs/qt-opengl-${PV}-r9999 |
|
|
30 | !<x11-libs/qt-phonon-${PV} |
|
|
31 | !>x11-libs/qt-phonon-${PV}-r9999 |
|
|
32 | !<x11-libs/qt-qt3support-${PV} |
|
|
33 | !>x11-libs/qt-qt3support-${PV}-r9999 |
|
|
34 | !<x11-libs/qt-script-${PV} |
|
|
35 | !>x11-libs/qt-script-${PV}-r9999 |
|
|
36 | !<x11-libs/qt-sql-${PV} |
|
|
37 | !>x11-libs/qt-sql-${PV}-r9999 |
|
|
38 | !<x11-libs/qt-svg-${PV} |
|
|
39 | !>x11-libs/qt-svg-${PV}-r9999 |
|
|
40 | !<x11-libs/qt-test-${PV} |
|
|
41 | !>x11-libs/qt-test-${PV}-r9999 |
|
|
42 | !<x11-libs/qt-webkit-${PV} |
|
|
43 | !>x11-libs/qt-webkit-${PV}-r9999 |
|
|
44 | !<x11-libs/qt-xmlpatterns-${PV} |
|
|
45 | !>x11-libs/qt-xmlpatterns-${PV}-r9999 |
|
|
46 | " |
| 18 | case "${PV}" in |
47 | case "${PV}" in |
| 19 | 4.?.?_rc*) |
48 | 4.?.?_rc*) |
| 20 | SRCTYPE="${SRCTYPE:-opensource-src}" |
49 | SRCTYPE="${SRCTYPE:-opensource-src}" |
| 21 | MY_PV="${PV/_rc/-rc}" |
50 | MY_PV="${PV/_rc/-rc}" |
| 22 | ;; |
51 | ;; |
| … | |
… | |
| 133 | if [[ $EAPI != 2 ]]; then |
162 | if [[ $EAPI != 2 ]]; then |
| 134 | qt4-build_src_prepare |
163 | qt4-build_src_prepare |
| 135 | fi |
164 | fi |
| 136 | } |
165 | } |
| 137 | |
166 | |
|
|
167 | # @ECLASS-VARIABLE: PATCHES |
|
|
168 | # @DESCRIPTION: |
|
|
169 | # In case you have patches to apply, specify them in PATCHES variable. Make sure |
|
|
170 | # to specify the full path. This variable is necessary for src_prepare phase. |
|
|
171 | # example: |
|
|
172 | # PATCHES="${FILESDIR}"/mypatch.patch |
|
|
173 | # ${FILESDIR}"/mypatch2.patch" |
|
|
174 | # |
| 138 | |
175 | |
| 139 | # @FUNCTION: qt4-build_src_prepare |
176 | # @FUNCTION: qt4-build_src_prepare |
| 140 | # @DESCRIPTION: |
177 | # @DESCRIPTION: |
| 141 | # Prepare the sources before the configure phase. Strip CFLAGS if necessary, and fix |
178 | # Prepare the sources before the configure phase. Strip CFLAGS if necessary, and fix |
| 142 | # source files in order to respect CFLAGS/CXXFLAGS/LDFLAGS specified on /etc/make.conf. |
179 | # source files in order to respect CFLAGS/CXXFLAGS/LDFLAGS specified on /etc/make.conf. |
| … | |
… | |
| 179 | |
216 | |
| 180 | sed -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \ |
217 | sed -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \ |
| 181 | -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \ |
218 | -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \ |
| 182 | -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \ |
219 | -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \ |
| 183 | -i "${S}"/mkspecs/common/g++.conf || die "sed ${S}/mkspecs/common/g++.conf failed" |
220 | -i "${S}"/mkspecs/common/g++.conf || die "sed ${S}/mkspecs/common/g++.conf failed" |
| 184 | |
221 | |
|
|
222 | base_src_prepare |
| 185 | } |
223 | } |
| 186 | |
224 | |
| 187 | # @FUNCTION: qt4-build_src_configure |
225 | # @FUNCTION: qt4-build_src_configure |
| 188 | # @DESCRIPTION: |
226 | # @DESCRIPTION: |
| 189 | # Default configure phase |
227 | # Default configure phase |
| … | |
… | |
| 270 | # Make eclass 4.5.{1,2} ready |
308 | # Make eclass 4.5.{1,2} ready |
| 271 | case "${MY_PV}" in |
309 | case "${MY_PV}" in |
| 272 | 4.5.1 | 4.5.2) |
310 | 4.5.1 | 4.5.2) |
| 273 | myconf="${myconf} -opensource" |
311 | myconf="${myconf} -opensource" |
| 274 | ;; |
312 | ;; |
| 275 | esac |
|
|
| 276 | |
|
|
| 277 | # bug 270475 |
|
|
| 278 | case "${MY_PV}" in |
|
|
| 279 | 4.5.1 | 4.5.2) |
|
|
| 280 | myconf="${myconf} -platform $(qt_mkspecs_dir)" |
|
|
| 281 | ;; |
|
|
| 282 | esac |
313 | esac |
| 283 | |
314 | |
| 284 | echo "${myconf}" |
315 | echo "${myconf}" |
| 285 | } |
316 | } |
| 286 | |
317 | |