summaryrefslogtreecommitdiffstats
path: root/mkspecs/common
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@nokia.com>2010-10-27 11:44:11 (GMT)
committerTor Arne Vestbø <tor.arne.vestbo@nokia.com>2010-10-27 13:11:08 (GMT)
commit48d19919cc82f637ee96873f81c957cdf9b84127 (patch)
tree7002cbcba4efe80acf9b4f0b6bb5cffa8f8f97e9 /mkspecs/common
parent2925995de32f76a72fcdd7d577e609a68a517fa1 (diff)
downloadQt-48d19919cc82f637ee96873f81c957cdf9b84127.zip
Qt-48d19919cc82f637ee96873f81c957cdf9b84127.tar.gz
Qt-48d19919cc82f637ee96873f81c957cdf9b84127.tar.bz2
mkspecs: Emit warning when including g++.conf directly
86636e0c4ab91bfb6 refactored the mkspecs, but didn't account for people with their own mkspec who would still include g++.conf directly. We now print a warning if this situation is detected, and explain to the user how they can fix their mkspec. For convenience we redirect g++.conf to g++-unix.conf so that people's mkspecs will still work. Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Diffstat (limited to 'mkspecs/common')
-rw-r--r--mkspecs/common/g++-base.conf23
-rw-r--r--mkspecs/common/g++-macx.conf (renamed from mkspecs/common/g++-mac.conf)2
-rw-r--r--mkspecs/common/g++-unix.conf2
-rw-r--r--mkspecs/common/g++.conf24
-rw-r--r--mkspecs/common/gcc-base-macx.conf (renamed from mkspecs/common/gcc-base-mac.conf)0
-rw-r--r--mkspecs/common/gcc-base.conf10
6 files changed, 36 insertions, 25 deletions
diff --git a/mkspecs/common/g++-base.conf b/mkspecs/common/g++-base.conf
new file mode 100644
index 0000000..d73b38f
--- /dev/null
+++ b/mkspecs/common/g++-base.conf
@@ -0,0 +1,23 @@
+#
+# Qmake configuration for the GNU C++ compiler
+#
+# Before making changes to this file, please read the comment in
+# gcc-base.conf, to make sure the change goes in the right place.
+#
+# To verify that your change has the desired effect on the final configuration
+# you can use the manual test in tests/manual/mkspecs.
+#
+
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g
+
+QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
+
+QMAKE_LINK_C = $$QMAKE_CC
+QMAKE_LINK_C_SHLIB = $$QMAKE_CC
+
+QMAKE_PCH_OUTPUT_EXT = .gch
+
+QMAKE_CFLAGS_PRECOMPILE = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CFLAGS_USE_PRECOMPILE = -include ${QMAKE_PCH_OUTPUT_BASE}
+QMAKE_CXXFLAGS_PRECOMPILE = -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
diff --git a/mkspecs/common/g++-mac.conf b/mkspecs/common/g++-macx.conf
index bcfd9aa..2251157 100644
--- a/mkspecs/common/g++-mac.conf
+++ b/mkspecs/common/g++-macx.conf
@@ -8,7 +8,7 @@
# you can use the manual test in tests/manual/mkspecs.
#
-include(g++.conf)
+include(g++-base.conf)
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2
QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2
diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
index 09b3e90..96e301e 100644
--- a/mkspecs/common/g++-unix.conf
+++ b/mkspecs/common/g++-unix.conf
@@ -8,7 +8,7 @@
# you can use the manual test in tests/manual/mkspecs.
#
-include(g++.conf)
+include(g++-base.conf)
QMAKE_LFLAGS_RELEASE += -Wl,-O1
QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
diff --git a/mkspecs/common/g++.conf b/mkspecs/common/g++.conf
index d73b38f..0ca4fbd 100644
--- a/mkspecs/common/g++.conf
+++ b/mkspecs/common/g++.conf
@@ -1,23 +1,11 @@
#
-# Qmake configuration for the GNU C++ compiler
+# Notice: g++.conf has been split into g++-base.conf and g++-unix.conf
#
-# Before making changes to this file, please read the comment in
-# gcc-base.conf, to make sure the change goes in the right place.
+# This file will make sure that anyone who's still including g++.conf
+# directly will get a warning and an explanation of how to fix their mkspec
#
-# To verify that your change has the desired effect on the final configuration
-# you can use the manual test in tests/manual/mkspecs.
-#
-
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g
-
-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
-
-QMAKE_LINK_C = $$QMAKE_CC
-QMAKE_LINK_C_SHLIB = $$QMAKE_CC
-QMAKE_PCH_OUTPUT_EXT = .gch
+warning($$escape_expand("Your mkspec is including 'common/g++.conf', but the mkspecs have been refactored\\n\\tTo fix this include 'common/gcc-base-$${TARGET_PLATFORM}.conf and 'common/g++-$${TARGET_PLATFORM}.conf' instead"))
-QMAKE_CFLAGS_PRECOMPILE = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE = -include ${QMAKE_PCH_OUTPUT_BASE}
-QMAKE_CXXFLAGS_PRECOMPILE = -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+# We include g++-unix.conf to keep the behavior of the old g++.conf
+include(g++-unix.conf) \ No newline at end of file
diff --git a/mkspecs/common/gcc-base-mac.conf b/mkspecs/common/gcc-base-macx.conf
index 5c9a8a1..5c9a8a1 100644
--- a/mkspecs/common/gcc-base-mac.conf
+++ b/mkspecs/common/gcc-base-macx.conf
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
index 41280c6..2d8a02f 100644
--- a/mkspecs/common/gcc-base.conf
+++ b/mkspecs/common/gcc-base.conf
@@ -7,21 +7,21 @@
#
# Platform-specific options shared by these compilers are put into:
#
-# - gcc-base-mac.conf
+# - gcc-base-macx.conf
# - gcc-base-unix.conf
#
# These base files are then combined with configurations for each compiler:
#
-# - g++.conf
-# - g++-mac.conf
+# - g++-base.conf
+# - g++-macx.conf
# - g++-unix.conf
# - llvm.conf
# - clang.conf
#
# The combination happens in the top level mkspec, by including a platform-
-# specific version of the base-file, for example gcc-base-mac.conf, and then
+# specific version of the base-file, for example gcc-base-macx.conf, and then
# a (possibly platform-specific) version of the actual compiler configuration,
-# for example g++-mac.conf.
+# for example g++-macx.conf.
#
# If you are making changes to any of these files, please consider the
# possible effect it may have due to these include-rules, and whether it