Gentoo Archives: gentoo-commits

From: Davide Pesavento <pesa@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/qt:master commit in: eclass/
Date: Fri, 29 Jun 2012 00:17:44
Message-Id: 1340927136.e3a63d518b571f545332c6cfbccb31d5e8dac4fb.pesa@gentoo
1 commit: e3a63d518b571f545332c6cfbccb31d5e8dac4fb
2 Author: Davide Pesavento <davidepesa <AT> gmail <DOT> com>
3 AuthorDate: Thu Jun 28 23:45:36 2012 +0000
4 Commit: Davide Pesavento <pesa <AT> gentoo <DOT> org>
5 CommitDate: Thu Jun 28 23:45:36 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/qt.git;a=commit;h=e3a63d51
7
8 [qt5-build.eclass] Run qmake "manually" at the top level too.
9
10 The recursive qmake that is executed at the end of configure is very
11 time-consuming, not parallelizable and especially it is completely useless,
12 since we already re-run qmake with custom arguments in all the relevant
13 directories. The only exception is the top-level project file (qtbase.pro),
14 which must be handled separately.
15
16 Therefore we can delete the recursive qmake invocation from configure
17 altogether. This also avoids pre-stripping of the qmake binary itself.
18
19 ---
20 eclass/qt5-build.eclass | 9 +++++++++
21 1 files changed, 9 insertions(+), 0 deletions(-)
22
23 diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
24 index e206a4e..0ea8a8b 100644
25 --- a/eclass/qt5-build.eclass
26 +++ b/eclass/qt5-build.eclass
27 @@ -178,6 +178,10 @@ qt5-build_src_prepare() {
28 'QMAKE_CFLAGS=${CFLAGS}' 'QMAKE_CXXFLAGS=${CXXFLAGS}' 'QMAKE_LFLAGS=${LDFLAGS}'&:" \
29 configure || die "sed configure failed"
30
31 + # Don't run qmake at the end of configure
32 + sed -i -e '/echo "Creating makefiles\./,+2 d' \
33 + configure || die "sed configure failed"
34 +
35 # Respect CXX in configure
36 sed -i -e "/^QMAKE_CONF_COMPILER=/ s:=.*:=\"$(tc-getCXX)\":" \
37 configure || die "sed QMAKE_CONF_COMPILER failed"
38 @@ -258,8 +262,13 @@ qt5-build_src_configure() {
39 )
40
41 pushd "${QT5_BUILD_DIR}" >/dev/null || die
42 +
43 einfo "Configuring with: ${conf[@]}"
44 "${S}"/configure "${conf[@]}" || die "configure failed"
45 +
46 + einfo "Running qmake on top-level project file"
47 + ./bin/qmake "${S}"/qtbase.pro CONFIG+=nostrip || die
48 +
49 popd >/dev/null || die
50
51 qmake() {