commit:     f1db39369d686277aa4f6b087069b76955fa1946
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 10 10:34:27 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sun Jan 14 05:50:33 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1db3936

qt5-build.eclass: fix respecting toolchain in 5.9 and later

Closes: https://bugs.gentoo.org/639494

 eclass/qt5-build.eclass | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
index fd29ed1e6c0..3b35c94b6c8 100644
--- a/eclass/qt5-build.eclass
+++ b/eclass/qt5-build.eclass
@@ -213,6 +213,11 @@ qt5-build_src_prepare() {
                # Don't add -O3 to CXXFLAGS (bug 549140)
                sed -i -e '/CONFIG\s*+=/ s/optimize_full//' \
                        src/{corelib/corelib,gui/gui}.pro || die "sed failed 
(optimize_full)"
+
+               # Respect build variables in configure tests (bug #639494)
+               if [[ ${QT5_MINOR_VERSION} -ge 9 ]]; then
+                       sed -i -e "s|\"\$outpath/bin/qmake\" 
\"\$relpathMangled\" -- \"\$@\"|& $(qt5_qmake_args) |" configure || die
+               fi
        fi
 
        default
@@ -689,6 +694,33 @@ qt5_base_configure() {
 
 }
 
+# @FUNCTION: qt5_qmake_args
+# @INTERNAL
+# @DESCRIPTION:
+# Helper function to get the various toolchain-related variables.
+qt5_qmake_args() {
+       echo \
+               QMAKE_AR=\"$(tc-getAR)\" \
+               QMAKE_CC=\"$(tc-getCC)\" \
+               QMAKE_LINK_C=\"$(tc-getCC)\" \
+               QMAKE_LINK_C_SHLIB=\"$(tc-getCC)\" \
+               QMAKE_CXX=\"$(tc-getCXX)\" \
+               QMAKE_LINK=\"$(tc-getCXX)\" \
+               QMAKE_LINK_SHLIB=\"$(tc-getCXX)\" \
+               QMAKE_OBJCOPY=\"$(tc-getOBJCOPY)\" \
+               QMAKE_RANLIB= \
+               QMAKE_STRIP=\"$(tc-getSTRIP)\" \
+               QMAKE_CFLAGS=\"${CFLAGS}\" \
+               QMAKE_CFLAGS_RELEASE= \
+               QMAKE_CFLAGS_DEBUG= \
+               QMAKE_CXXFLAGS=\"${CXXFLAGS}\" \
+               QMAKE_CXXFLAGS_RELEASE= \
+               QMAKE_CXXFLAGS_DEBUG= \
+               QMAKE_LFLAGS=\"${LDFLAGS}\" \
+               QMAKE_LFLAGS_RELEASE= \
+               QMAKE_LFLAGS_DEBUG=
+}
+
 # @FUNCTION: qt5_qmake
 # @INTERNAL
 # @DESCRIPTION:

Reply via email to