summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames McDonnell <jmcdonnell@qnx.com>2016-04-14 16:48:15 -0400
committerJames McDonnell <jmcdonnell@qnx.com>2016-05-05 03:30:16 +0000
commit7c1326a1c390bb15eaa164f748c947f1df9f542d (patch)
tree5cf32f77f12d8e16656aea42b1db0cdc34623f90
parentf57d8f1341587e6b2aa84b8404aa218432584206 (diff)
Ensure -no-pch is effective
Have configure add a "CONFIG -= precompile_header" to qmodule.pri when -no-pch is specified. Ensures that Qt is built without precompiled headers (as requested) even if allowing precompiled header use is the default for the toolchain. Parallels changes to Windows configure. Task-number: QTBUG-11545 Change-Id: Iab4021e74c4e9978770e917dff97b976c449dd8b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
-rwxr-xr-xconfigure22
1 files changed, 21 insertions, 1 deletions
diff --git a/configure b/configure
index 9492cb5473..5d02827890 100755
--- a/configure
+++ b/configure
@@ -96,6 +96,7 @@ for i in "$@"; do
done
# initialize global variables
+CONFIG_SEPARATORS=`printf ' \t'`
QMAKE_SWITCHES=
QMAKE_VARS=
QMAKE_CONFIG=
@@ -351,6 +352,21 @@ getXQMakeConf()
getSingleQMakeVariable "$1" "$xspecvals"
}
+testXConfig()
+{
+ # Put a space on each end of the CONFIG value so that searching for the
+ # target with whitespace on either side will work even when it's the
+ # first/last/only item in the CONFIG value.
+ case \ `getXQMakeConf CONFIG`\ in
+ *[${CONFIG_SEPARATORS}]$1[${CONFIG_SEPARATORS}]*)
+ return 0
+ ;;
+ *)
+ return 1
+ ;;
+ esac
+}
+
compilerSupportsFlag()
{
cat >conftest.cpp <<EOF
@@ -6308,7 +6324,11 @@ fi
[ "$CFG_STACK_PROTECTOR_STRONG" = "yes" ] && QT_CONFIG="$QT_CONFIG stack-protector-strong"
[ "$CFG_REDUCE_RELOCATIONS" = "yes" ] && QT_CONFIG="$QT_CONFIG reduce_relocations"
[ "$CFG_STRIP" = "no" ] && QMAKE_CONFIG="$QMAKE_CONFIG nostrip"
-[ "$CFG_PRECOMPILE" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG precompile_header"
+if testXConfig precompile_header; then
+ [ "$CFG_PRECOMPILE" = "no" ] && QMakeVar del CONFIG precompile_header
+else
+ [ "$CFG_PRECOMPILE" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG precompile_header"
+fi
[ "$CFG_USE_GOLD_LINKER" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG use_gold_linker"
[ "$CFG_ENABLE_NEW_DTAGS" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG enable_new_dtags"
if [ "$CFG_SEPARATE_DEBUG_INFO" = "yes" ]; then