Set macosx-version-min in common Mac OS X mkspec instead of configure
authorTor Arne Vestbø <tor.arne.vestbo@nokia.com>
Mon, 23 Jan 2012 11:54:38 +0000 (12:54 +0100)
committerQt by Nokia <qt-info@nokia.com>
Mon, 23 Jan 2012 13:47:10 +0000 (14:47 +0100)
When set in configure it would be written to .qmake.cache and would only
apply when building Qt. We then had an override (that was also out of
sync, version-wise) in the g++ mkspec, which would also apply to apps
building agains Qt. This override did howerver not apply when using
the Clang mkspec.

We now move setting macosx-version-min to the common macx mkspec, shared
by both g++ and Clang, which will apply both when building Qt and when
building something against Qt. The latter since an application built
against Qt will not deploy on versions of Mac OS earlier than 10.6
anyways, so we might as well always set the minimum-version.

The modifications to the mkspecs will result in macosx-version-min
being passed twice when compiling qmake, as configure writes its own
makefiles and the mkspec parsing in configure has a bug where it will
lazily evaluate qmake-variables instead of evaluating them inline. This
is not a problem, and can be fixed in a later patch if seen fit.

Change-Id: Ib29503ad00a9dc00e0a50b0dbd9459e89a20dfbd
Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
configure
mkspecs/common/g++-macx.conf
mkspecs/common/gcc-base-macx.conf

index 21fdb2c..3e0bca1 100755 (executable)
--- a/configure
+++ b/configure
@@ -7319,14 +7319,6 @@ if [ "$CFG_EXCEPTIONS" = "no" ]; then
     QMAKE_CONFIG="$QMAKE_CONFIG exceptions_off"
 fi
 
-# Set the minimum deployment target.
-if [ "$BUILD_ON_MAC" = "yes" ]; then
-    QMakeVar add QMAKE_CFLAGS "-mmacosx-version-min=10.6"
-    QMakeVar add QMAKE_CXXFLAGS "-mmacosx-version-min=10.6"
-    QMakeVar add QMAKE_LFLAGS "-mmacosx-version-min=10.6"
-    QMakeVar add QMAKE_OBJECTIVE_CFLAGS "-mmacosx-version-min=10.6"
-fi
-
 case "$COMPILER" in
 g++*)
     # GNU C++
index 2251157..acce2fe 100644 (file)
@@ -16,9 +16,6 @@ QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO += -g $$QMAKE_CFLAGS_DWARF2
 
 QMAKE_LFLAGS_STATIC_LIB += -all_load
 
-QMAKE_CFLAGS_X86_64 += -Xarch_x86_64 -mmacosx-version-min=10.5
-QMAKE_CFLAGS_PPC_64 += -Xarch_ppc64 -mmacosx-version-min=10.5
-
 QMAKE_CXXFLAGS_X86_64         = $$QMAKE_CFLAGS_X86_64
 QMAKE_CXXFLAGS_PPC_64         = $$QMAKE_CFLAGS_PPC_64
 QMAKE_OBJECTIVE_CFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64
index 79f6c11..1e51fbd 100644 (file)
@@ -12,12 +12,14 @@ include(gcc-base.conf)
 
 QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__=4
 
+QMAKE_CFLAGS        += -mmacosx-version-min=10.6
 QMAKE_CFLAGS_X86    += -arch i386
 QMAKE_CFLAGS_X86_64 += -arch x86_64
 QMAKE_CFLAGS_PPC    += -arch ppc
 QMAKE_CFLAGS_PPC_64 += -arch ppc64
 QMAKE_CFLAGS_DWARF2 += -gdwarf-2
 
+QMAKE_CXXFLAGS        += -mmacosx-version-min=10.6
 QMAKE_CXXFLAGS_X86    += $$QMAKE_CFLAGS_X86
 QMAKE_CXXFLAGS_X86_64 += $$QMAKE_CFLAGS_X86_64
 QMAKE_CXXFLAGS_PPC    += $$QMAKE_CFLAGS_PPC
@@ -35,12 +37,12 @@ QMAKE_OBJECTIVE_CFLAGS_X86_64   = $$QMAKE_CFLAGS_X86_64
 QMAKE_OBJECTIVE_CFLAGS_PPC      = $$QMAKE_CFLAGS_PPC
 QMAKE_OBJECTIVE_CFLAGS_PPC_64   = $$QMAKE_CFLAGS_PPC_64
 
+QMAKE_LFLAGS        += -headerpad_max_install_names -mmacosx-version-min=10.6
 QMAKE_LFLAGS_X86    += $$QMAKE_CFLAGS_X86
 QMAKE_LFLAGS_X86_64 += $$QMAKE_CFLAGS_X86_64
 QMAKE_LFLAGS_PPC    += $$QMAKE_CFLAGS_PPC
 QMAKE_LFLAGS_PPC_64 += $$QMAKE_CFLAGS_PPC_64
 
-QMAKE_LFLAGS                += -headerpad_max_install_names
 QMAKE_LFLAGS_SHLIB          += -single_module -dynamiclib
 QMAKE_LFLAGS_PLUGIN         += $$QMAKE_LFLAGS_SHLIB
 QMAKE_LFLAGS_INCREMENTAL    += -undefined suppress -flat_namespace