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() { |