summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/aix-g++-64/qmake.conf2
-rw-r--r--mkspecs/aix-g++/qmake.conf2
-rw-r--r--mkspecs/aix-xlc-64/qmake.conf2
-rw-r--r--mkspecs/aix-xlc/qmake.conf2
-rw-r--r--mkspecs/common/clang.conf17
-rw-r--r--mkspecs/common/g++-base.conf30
-rw-r--r--mkspecs/common/g++-macx.conf32
-rw-r--r--mkspecs/common/g++-unix.conf14
-rw-r--r--mkspecs/common/g++.conf58
-rw-r--r--mkspecs/common/gcc-base-macx.conf43
-rw-r--r--mkspecs/common/gcc-base-unix.conf21
-rw-r--r--mkspecs/common/gcc-base.conf60
-rw-r--r--mkspecs/common/linux.conf2
-rw-r--r--mkspecs/common/llvm.conf53
-rw-r--r--mkspecs/common/mac-g++.conf81
-rw-r--r--mkspecs/common/mac-llvm.conf76
-rw-r--r--mkspecs/common/mac/qplatformdefs.h97
-rw-r--r--mkspecs/common/qws.conf2
-rw-r--r--mkspecs/common/symbian/symbian-makefile.conf4
-rw-r--r--mkspecs/common/symbian/symbian.conf4
-rw-r--r--mkspecs/cygwin-g++/qmake.conf2
-rw-r--r--mkspecs/darwin-g++/qmake.conf2
-rw-r--r--mkspecs/features/mac/objective_c.prf25
-rw-r--r--mkspecs/features/qt.prf4
-rw-r--r--mkspecs/features/qt_functions.prf8
-rw-r--r--mkspecs/features/qttest_p4.prf3
-rw-r--r--mkspecs/features/symbian/application_icon.prf10
-rw-r--r--mkspecs/features/symbian/data_caging_paths.prf4
-rw-r--r--mkspecs/features/symbian/def_files.prf18
-rw-r--r--mkspecs/features/symbian/do_not_build_as_thumb.prf2
-rw-r--r--mkspecs/features/symbian/qt_config.prf2
-rw-r--r--mkspecs/features/symbian/run_on_phone.prf3
-rw-r--r--mkspecs/features/symbian/sis_targets.prf3
-rw-r--r--mkspecs/features/symbian/symbian_building.prf57
-rw-r--r--mkspecs/features/unix/gdb_dwarf_index.prf15
-rw-r--r--mkspecs/freebsd-g++/qmake.conf7
-rw-r--r--mkspecs/freebsd-g++34/qmake.conf2
-rw-r--r--mkspecs/freebsd-g++40/qmake.conf4
-rw-r--r--mkspecs/freebsd-icc/qmake.conf2
-rw-r--r--mkspecs/hpux-acc-64/qmake.conf2
-rw-r--r--mkspecs/hpux-acc-o64/qmake.conf2
-rw-r--r--mkspecs/hpux-acc/qmake.conf2
-rw-r--r--mkspecs/hpux-g++-64/qmake.conf2
-rw-r--r--mkspecs/hpux-g++/qmake.conf2
-rw-r--r--mkspecs/hpuxi-acc-32/qmake.conf2
-rw-r--r--mkspecs/hpuxi-acc-64/qmake.conf2
-rw-r--r--mkspecs/hpuxi-g++-64/qmake.conf2
-rw-r--r--mkspecs/hurd-g++/qmake.conf2
-rw-r--r--mkspecs/irix-cc-64/qmake.conf2
-rw-r--r--mkspecs/irix-cc/qmake.conf2
-rw-r--r--mkspecs/irix-g++-64/qmake.conf2
-rw-r--r--mkspecs/irix-g++/qmake.conf2
-rw-r--r--mkspecs/linux-cxx/qmake.conf2
-rw-r--r--mkspecs/linux-ecc-64/qmake.conf2
-rw-r--r--mkspecs/linux-g++-32/qmake.conf5
-rw-r--r--mkspecs/linux-g++-64/qmake.conf6
-rw-r--r--mkspecs/linux-g++-maemo/qmake.conf5
-rw-r--r--mkspecs/linux-g++/qmake.conf5
-rw-r--r--mkspecs/linux-icc/qmake.conf4
-rw-r--r--mkspecs/linux-kcc/qmake.conf2
-rw-r--r--mkspecs/linux-llvm/qmake.conf5
-rw-r--r--mkspecs/linux-lsb-g++/qmake.conf2
-rw-r--r--mkspecs/linux-pgcc/qmake.conf2
-rw-r--r--mkspecs/lynxos-g++/qmake.conf2
-rw-r--r--mkspecs/macx-g++/qmake.conf8
-rw-r--r--mkspecs/macx-g++/qplatformdefs.h56
-rw-r--r--mkspecs/macx-g++40/qmake.conf9
-rw-r--r--mkspecs/macx-g++40/qplatformdefs.h56
-rw-r--r--mkspecs/macx-g++42/qmake.conf9
-rw-r--r--mkspecs/macx-g++42/qplatformdefs.h56
-rw-r--r--mkspecs/macx-icc/qplatformdefs.h2
-rw-r--r--mkspecs/macx-llvm/qmake.conf9
-rw-r--r--mkspecs/macx-llvm/qplatformdefs.h56
-rwxr-xr-xmkspecs/macx-xcode/qmake.conf12
-rw-r--r--mkspecs/macx-xcode/qplatformdefs.h56
-rw-r--r--mkspecs/netbsd-g++/qmake.conf4
-rw-r--r--mkspecs/openbsd-g++/qmake.conf4
-rw-r--r--mkspecs/qws/linux-arm-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-armv6-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-avr32-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-cellon-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-dm7000-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-dm800-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-generic-g++-32/qmake.conf3
-rw-r--r--mkspecs/qws/linux-generic-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-ipaq-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-lsb-g++/qmake.conf4
-rw-r--r--mkspecs/qws/linux-mips-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-nacl-g++/qmake.conf74
-rw-r--r--mkspecs/qws/linux-nacl-g++/qplatformdefs.h175
-rw-r--r--mkspecs/qws/linux-powerpc-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-sh-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-sh4al-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-sharp-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-x86-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-x86_64-g++/qmake.conf3
-rw-r--r--mkspecs/qws/linux-zylonite-g++/qmake.conf3
-rw-r--r--mkspecs/qws/macx-generic-g++/qmake.conf8
-rw-r--r--mkspecs/qws/macx-nacl-g++/qmake.conf95
-rw-r--r--mkspecs/qws/macx-nacl-g++/qplatformdefs.h175
-rw-r--r--mkspecs/sco-cc/qmake.conf2
-rw-r--r--mkspecs/sco-g++/qmake.conf2
-rw-r--r--mkspecs/solaris-cc-64/qmake.conf2
-rw-r--r--mkspecs/solaris-cc/qmake.conf2
-rw-r--r--mkspecs/solaris-g++-64/qmake.conf2
-rw-r--r--mkspecs/solaris-g++/qmake.conf2
-rw-r--r--mkspecs/symbian-armcc/features/default_post.prf (renamed from mkspecs/symbian/linux-gcce/features/default_post.prf)0
-rw-r--r--mkspecs/symbian-armcc/qmake.conf (renamed from mkspecs/symbian/linux-armcc/qmake.conf)6
-rw-r--r--mkspecs/symbian-armcc/qplatformdefs.h (renamed from mkspecs/symbian/linux-armcc/qplatformdefs.h)2
-rw-r--r--mkspecs/symbian-gcce/features/default_post.prf (renamed from mkspecs/symbian/linux-armcc/features/default_post.prf)0
-rw-r--r--mkspecs/symbian-gcce/qmake.conf (renamed from mkspecs/symbian/linux-gcce/qmake.conf)30
-rw-r--r--mkspecs/symbian-gcce/qplatformdefs.h (renamed from mkspecs/symbian/linux-gcce/qplatformdefs.h)2
-rw-r--r--mkspecs/tru64-cxx/qmake.conf2
-rw-r--r--mkspecs/tru64-g++/qmake.conf2
-rw-r--r--mkspecs/unixware-cc/qmake.conf2
-rw-r--r--mkspecs/unixware-g++/qmake.conf2
-rw-r--r--mkspecs/unsupported/linux-clang/qmake.conf19
-rw-r--r--mkspecs/unsupported/linux-clang/qplatformdefs.h102
-rw-r--r--mkspecs/unsupported/linux-host-g++/qmake.conf2
-rw-r--r--mkspecs/unsupported/linux-scratchbox2-g++/qmake.conf3
-rw-r--r--mkspecs/unsupported/macx-clang/Info.plist.app20
-rw-r--r--mkspecs/unsupported/macx-clang/Info.plist.lib18
-rw-r--r--mkspecs/unsupported/macx-clang/qmake.conf21
-rw-r--r--mkspecs/unsupported/macx-clang/qplatformdefs.h97
-rw-r--r--mkspecs/unsupported/qnx-g++/qmake.conf5
-rw-r--r--mkspecs/unsupported/qws/linux-x86-openkode-g++/qmake.conf23
-rw-r--r--mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h42
-rw-r--r--mkspecs/unsupported/qws/qnx-generic-g++/qmake.conf1
-rw-r--r--mkspecs/unsupported/vxworks-ppc-dcc/qmake.conf2
-rw-r--r--mkspecs/unsupported/vxworks-ppc-g++/qmake.conf3
-rw-r--r--mkspecs/unsupported/vxworks-simpentium-dcc/qmake.conf2
-rw-r--r--mkspecs/unsupported/vxworks-simpentium-g++/qmake.conf3
133 files changed, 1488 insertions, 700 deletions
diff --git a/mkspecs/aix-g++-64/qmake.conf b/mkspecs/aix-g++-64/qmake.conf
index d9d9c38..b0179d5 100644
--- a/mkspecs/aix-g++-64/qmake.conf
+++ b/mkspecs/aix-g++-64/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthreads
diff --git a/mkspecs/aix-g++/qmake.conf b/mkspecs/aix-g++/qmake.conf
index 5fc4c17..2e2e991 100644
--- a/mkspecs/aix-g++/qmake.conf
+++ b/mkspecs/aix-g++/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthreads
diff --git a/mkspecs/aix-xlc-64/qmake.conf b/mkspecs/aix-xlc-64/qmake.conf
index ae87b88..486b8c6 100644
--- a/mkspecs/aix-xlc-64/qmake.conf
+++ b/mkspecs/aix-xlc-64/qmake.conf
@@ -62,7 +62,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthreads
diff --git a/mkspecs/aix-xlc/qmake.conf b/mkspecs/aix-xlc/qmake.conf
index fe91236..8655db6 100644
--- a/mkspecs/aix-xlc/qmake.conf
+++ b/mkspecs/aix-xlc/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthreads
diff --git a/mkspecs/common/clang.conf b/mkspecs/common/clang.conf
new file mode 100644
index 0000000..069cdfa
--- /dev/null
+++ b/mkspecs/common/clang.conf
@@ -0,0 +1,17 @@
+#
+# Qmake configuration for Clang on Linux and Mac
+#
+
+QMAKE_CC = clang
+QMAKE_CXX = clang++
+
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_LINK_SHLIB = $$QMAKE_CXX
+
+CONFIG += clang_pch_style
+QMAKE_PCH_OUTPUT_EXT = .pch
+
+QMAKE_CFLAGS_PRECOMPILE = -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CFLAGS_USE_PRECOMPILE = -Xclang -include-pch -Xclang ${QMAKE_PCH_OUTPUT}
+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++-base.conf b/mkspecs/common/g++-base.conf
new file mode 100644
index 0000000..eb5b7d6
--- /dev/null
+++ b/mkspecs/common/g++-base.conf
@@ -0,0 +1,30 @@
+#
+# 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_CC = gcc
+
+QMAKE_LINK_C = $$QMAKE_CC
+QMAKE_LINK_C_SHLIB = $$QMAKE_CC
+
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g
+
+QMAKE_CXX = g++
+
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_LINK_SHLIB = $$QMAKE_CXX
+
+QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
+
+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++-macx.conf b/mkspecs/common/g++-macx.conf
new file mode 100644
index 0000000..2251157
--- /dev/null
+++ b/mkspecs/common/g++-macx.conf
@@ -0,0 +1,32 @@
+#
+# Qmake configuration for the GNU C++ compiler on Mac OS X
+#
+# 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.
+#
+
+include(g++-base.conf)
+
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2
+QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_DWARF2
+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
+QMAKE_OBJECTIVE_CFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64
+QMAKE_LFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64
+QMAKE_LFLAGS_PPC_64 = $$QMAKE_CFLAGS_PPC_64
+
+QMAKE_OBJCFLAGS_PRECOMPILE = -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+QMAKE_OBJCXXFLAGS_PRECOMPILE = -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf
new file mode 100644
index 0000000..96e301e
--- /dev/null
+++ b/mkspecs/common/g++-unix.conf
@@ -0,0 +1,14 @@
+#
+# Qmake configuration for the GNU C++ compiler on *nix-systems
+#
+# 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.
+#
+
+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 0d511fc..c5a34a9 100644
--- a/mkspecs/common/g++.conf
+++ b/mkspecs/common/g++.conf
@@ -1,54 +1,12 @@
#
-# qmake configuration for common gcc
+# Notice: g++.conf has been split into g++-base.conf and g++-unix.conf
+#
+# 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
#
-QMAKE_CC = gcc
-QMAKE_CFLAGS += -pipe
-QMAKE_CFLAGS_DEPS += -M
-QMAKE_CFLAGS_WARN_ON += -Wall -W
-QMAKE_CFLAGS_WARN_OFF += -w
-QMAKE_CFLAGS_RELEASE += -O2
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g
-QMAKE_CFLAGS_DEBUG += -g
-QMAKE_CFLAGS_SHLIB += -fPIC
-QMAKE_CFLAGS_STATIC_LIB += -fPIC
-QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
-QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
-
-QMAKE_CXX = g++
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
-QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
-QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_LINK = g++
-QMAKE_LINK_SHLIB = g++
-QMAKE_LINK_C = gcc
-QMAKE_LINK_C_SHLIB = gcc
-QMAKE_LFLAGS +=
-QMAKE_LFLAGS_RELEASE += -Wl,-O1
-QMAKE_LFLAGS_DEBUG +=
-QMAKE_LFLAGS_APP +=
-QMAKE_LFLAGS_SHLIB += -shared
-QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_SONAME += -Wl,-soname,
-QMAKE_LFLAGS_THREAD +=
-QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
-QMAKE_LFLAGS_RPATH = -Wl,-rpath,
-
-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"))
-# -Bsymbolic-functions (ld) support
-QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
-QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
+# We include gcc-base-unix.conf and g++-unix.conf to keep the behavior of the old g++.conf
+include(gcc-base-unix.conf)
+include(g++-unix.conf)
diff --git a/mkspecs/common/gcc-base-macx.conf b/mkspecs/common/gcc-base-macx.conf
new file mode 100644
index 0000000..5c9a8a1
--- /dev/null
+++ b/mkspecs/common/gcc-base-macx.conf
@@ -0,0 +1,43 @@
+#
+# Base qmake configuration for GCC on Mac OS X
+#
+# 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.
+#
+
+include(gcc-base.conf)
+
+QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__
+
+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_X86 += $$QMAKE_CFLAGS_X86
+QMAKE_CXXFLAGS_X86_64 += $$QMAKE_CFLAGS_X86_64
+QMAKE_CXXFLAGS_PPC += $$QMAKE_CFLAGS_PPC
+QMAKE_CXXFLAGS_PPC_64 += $$QMAKE_CFLAGS_PPC_64
+QMAKE_CXXFLAGS_DWARF2 += $$QMAKE_CFLAGS_DWARF2
+
+QMAKE_OBJECTIVE_CFLAGS_X86 += $$QMAKE_CFLAGS_X86
+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_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
+QMAKE_LFLAGS_SONAME += -install_name$${LITERAL_WHITESPACE}
+QMAKE_LFLAGS_VERSION += -current_version$${LITERAL_WHITESPACE}
+QMAKE_LFLAGS_COMPAT_VERSION += -compatibility_version$${LITERAL_WHITESPACE}
diff --git a/mkspecs/common/gcc-base-unix.conf b/mkspecs/common/gcc-base-unix.conf
new file mode 100644
index 0000000..dc8d7e4
--- /dev/null
+++ b/mkspecs/common/gcc-base-unix.conf
@@ -0,0 +1,21 @@
+#
+# Base qmake configuration for GCC on *nix-systems
+#
+# 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.
+#
+
+include(gcc-base.conf)
+
+QMAKE_LFLAGS_SHLIB += -shared
+QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
+QMAKE_LFLAGS_SONAME += -Wl,-soname,
+QMAKE_LFLAGS_THREAD +=
+QMAKE_LFLAGS_RPATH = -Wl,-rpath,
+
+# -Bsymbolic-functions (ld) support
+QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
+QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
new file mode 100644
index 0000000..0e90666
--- /dev/null
+++ b/mkspecs/common/gcc-base.conf
@@ -0,0 +1,60 @@
+#
+# This file is used as a basis for the following compilers:
+#
+# - The GNU C++ compiler (g++)
+# - LLVM
+# - Clang
+#
+# Platform-specific options shared by these compilers are put into:
+#
+# - gcc-base-macx.conf
+# - gcc-base-unix.conf
+#
+# These base files are then combined with configurations for each compiler:
+#
+# - 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-macx.conf, and then
+# a (possibly platform-specific) version of the actual compiler configuration,
+# 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
+# might make more sense to share the rule or make it more specific.
+#
+# 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 += -pipe
+QMAKE_CFLAGS_DEPS += -M
+QMAKE_CFLAGS_WARN_ON += -Wall -W
+QMAKE_CFLAGS_WARN_OFF += -w
+QMAKE_CFLAGS_RELEASE += -O2
+QMAKE_CFLAGS_DEBUG += -g
+QMAKE_CFLAGS_SHLIB += -fPIC
+QMAKE_CFLAGS_STATIC_LIB += -fPIC
+QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
+QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
+
+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
+QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
+QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
+QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
+QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
+QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
+QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
+QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
+QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
+QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
+
+QMAKE_LFLAGS +=
+QMAKE_LFLAGS_DEBUG +=
+QMAKE_LFLAGS_APP +=
+QMAKE_LFLAGS_RELEASE +=
+
diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf
index 4fbe2dc..e443be1 100644
--- a/mkspecs/common/linux.conf
+++ b/mkspecs/common/linux.conf
@@ -28,7 +28,7 @@ QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_EGL = -lEGL
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_OPENGL_ES1 = -lGLES_CM
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
diff --git a/mkspecs/common/llvm.conf b/mkspecs/common/llvm.conf
index 70f52aa..86e0ab4 100644
--- a/mkspecs/common/llvm.conf
+++ b/mkspecs/common/llvm.conf
@@ -1,49 +1,16 @@
#
-# qmake configuration for common gcc
+# Qmake configuration for LLVM on Linux and Mac
#
-QMAKE_CC = llvm-gcc
-QMAKE_CFLAGS += -pipe
-QMAKE_CFLAGS_DEPS += -M
-QMAKE_CFLAGS_WARN_ON += -Wall -W
-QMAKE_CFLAGS_WARN_OFF += -w
-QMAKE_CFLAGS_RELEASE += -O2
-QMAKE_CFLAGS_DEBUG += -g
-QMAKE_CFLAGS_SHLIB += -fPIC
-QMAKE_CFLAGS_STATIC_LIB += -fPIC
-QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
-QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
+QMAKE_CC = llvm-gcc
+QMAKE_CXX = llvm-g++
-QMAKE_CXX = llvm-g++
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
-QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
-QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_LINK_SHLIB = $$QMAKE_CXX
-QMAKE_LINK = llvm-g++
-QMAKE_LINK_SHLIB = llvm-g++
-QMAKE_LFLAGS +=
-QMAKE_LFLAGS_RELEASE +=
-QMAKE_LFLAGS_DEBUG +=
-QMAKE_LFLAGS_APP +=
-QMAKE_LFLAGS_SHLIB += -shared
-QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_SONAME += -Wl,-soname,
-QMAKE_LFLAGS_THREAD +=
-QMAKE_LFLAGS_RPATH = -Wl,-rpath,
+QMAKE_PCH_OUTPUT_EXT = .gch
-QMAKE_PCH_OUTPUT_EXT = .gch
-
-# -Bsymbolic-functions (ld) support
-QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
-QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
+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 \ No newline at end of file
diff --git a/mkspecs/common/mac-g++.conf b/mkspecs/common/mac-g++.conf
deleted file mode 100644
index 29b7408..0000000
--- a/mkspecs/common/mac-g++.conf
+++ /dev/null
@@ -1,81 +0,0 @@
-#
-# qmake configuration for common gcc on Mac OS X
-#
-
-include(mac.conf)
-
-QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__
-QMAKE_CFLAGS += -pipe
-QMAKE_CFLAGS_DEPS += -M
-QMAKE_CFLAGS_WARN_ON += -Wall -W
-QMAKE_CFLAGS_WARN_OFF += -w
-QMAKE_CFLAGS_RELEASE += -O2
-QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -g -gdwarf-2
-QMAKE_CFLAGS_DEBUG += -g
-QMAKE_CFLAGS_SHLIB += -fPIC
-QMAKE_CFLAGS_STATIC_LIB += -fPIC
-QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
-QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
-
-QMAKE_CFLAGS_PPC_64 += -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
-QMAKE_OBJECTIVE_CFLAGS_PPC_64 += -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
-QMAKE_CFLAGS_X86_64 += -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
-QMAKE_OBJECTIVE_CFLAGS_X86_64 += -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
-QMAKE_CFLAGS_PPC += -arch ppc
-QMAKE_OBJECTIVE_CFLAGS_PPC += -arch ppc
-QMAKE_CFLAGS_X86 += -arch i386
-QMAKE_OBJECTIVE_CFLAGS_X86 += -arch i386
-QMAKE_CFLAGS_DWARF2 += -gdwarf-2
-
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
-QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
-QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-QMAKE_CXXFLAGS_PPC_64 += -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
-QMAKE_CXXFLAGS_X86_64 += -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
-QMAKE_CXXFLAGS_PPC += -arch ppc
-QMAKE_CXXFLAGS_X86 += -arch i386
-QMAKE_CXXFLAGS_DWARF2 += $$QMAKE_CFLAGS_DWARF2
-QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_LINK = $$QMAKE_CXX
-QMAKE_LINK_SHLIB = $$QMAKE_CXX
-QMAKE_LINK_C = $$QMAKE_CC
-QMAKE_LINK_C_SHLIB = $$QMAKE_CC
-QMAKE_LFLAGS += -headerpad_max_install_names
-QMAKE_LFLAGS_RELEASE +=
-QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO += -g -gdwarf-2
-QMAKE_LFLAGS_DEBUG +=
-QMAKE_LFLAGS_APP +=
-QMAKE_LFLAGS_SHLIB += -single_module -dynamiclib
-QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_THREAD +=
-QMAKE_LFLAGS_INCREMENTAL+= -undefined suppress -flat_namespace
-QMAKE_LFLAGS_SONAME += -install_name$${LITERAL_WHITESPACE}
-QMAKE_LFLAGS_PPC_64 += -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
-QMAKE_LFLAGS_X86_64 += -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
-QMAKE_LFLAGS_PPC += -arch ppc
-QMAKE_LFLAGS_X86 += -arch i386
-QMAKE_LFLAGS_VERSION += -current_version$${LITERAL_WHITESPACE}
-QMAKE_LFLAGS_COMPAT_VERSION += -compatibility_version$${LITERAL_WHITESPACE}
-# -all_load requred to make Objective-C categories work in static builds.
-QMAKE_LFLAGS_STATIC_LIB += -all_load
-QMAKE_LFLAGS_RPATH +=
-
-QMAKE_PCH_OUTPUT_EXT = .gch
-
-QMAKE_OBJCFLAGS_PRECOMPILE += -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_OBJCXXFLAGS_PRECOMPILE += -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
diff --git a/mkspecs/common/mac-llvm.conf b/mkspecs/common/mac-llvm.conf
deleted file mode 100644
index 4ff088c..0000000
--- a/mkspecs/common/mac-llvm.conf
+++ /dev/null
@@ -1,76 +0,0 @@
-#
-# qmake configuration for common gcc on Mac OS X
-#
-
-include(mac.conf)
-
-QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__
-QMAKE_CC = llvm-gcc
-QMAKE_CFLAGS += -pipe
-QMAKE_CFLAGS_DEPS += -M
-QMAKE_CFLAGS_WARN_ON += -Wall -W
-QMAKE_CFLAGS_WARN_OFF += -w
-QMAKE_CFLAGS_RELEASE += -O2
-QMAKE_CFLAGS_DEBUG += -g
-QMAKE_CFLAGS_SHLIB += -fPIC
-QMAKE_CFLAGS_STATIC_LIB += -fPIC
-QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
-QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
-
-QMAKE_CFLAGS_PPC_64 += -arch ppc64
-QMAKE_OBJECTIVE_CFLAGS_PPC_64 += -arch ppc64
-QMAKE_CFLAGS_X86_64 += -arch x86_64
-QMAKE_OBJECTIVE_CFLAGS_X86_64 += -arch x86_64
-QMAKE_CFLAGS_PPC += -arch ppc
-QMAKE_OBJECTIVE_CFLAGS_PPC += -arch ppc
-QMAKE_CFLAGS_X86 += -arch i386
-QMAKE_OBJECTIVE_CFLAGS_X86 += -arch i386
-QMAKE_CFLAGS_DWARF2 += -gdwarf-2
-
-QMAKE_CXX = llvm-g++
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
-QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
-QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-QMAKE_CXXFLAGS_PPC_64 += -arch ppc64
-QMAKE_CXXFLAGS_X86_64 += -arch x86_64
-QMAKE_CXXFLAGS_PPC += -arch ppc
-QMAKE_CXXFLAGS_X86 += -arch i386
-QMAKE_CXXFLAGS_DWARF2 += $$QMAKE_CFLAGS_DWARF2
-QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_LINK = $$QMAKE_CXX
-QMAKE_LINK_SHLIB = $$QMAKE_CXX
-QMAKE_LFLAGS += -headerpad_max_install_names
-QMAKE_LFLAGS_RELEASE +=
-QMAKE_LFLAGS_DEBUG +=
-QMAKE_LFLAGS_APP +=
-QMAKE_LFLAGS_SHLIB += -single_module -dynamiclib
-QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_THREAD +=
-QMAKE_LFLAGS_INCREMENTAL+= -undefined suppress -flat_namespace
-QMAKE_LFLAGS_SONAME += -install_name$${LITERAL_WHITESPACE}
-QMAKE_LFLAGS_PPC_64 += -arch ppc64
-QMAKE_LFLAGS_X86_64 += -arch x86_64
-QMAKE_LFLAGS_PPC += -arch ppc
-QMAKE_LFLAGS_X86 += -arch i386
-QMAKE_LFLAGS_VERSION += -current_version$${LITERAL_WHITESPACE}
-QMAKE_LFLAGS_COMPAT_VERSION += -compatibility_version$${LITERAL_WHITESPACE}
-QMAKE_LFLAGS_RPATH +=
-
-QMAKE_PCH_OUTPUT_EXT = .gch
-
-QMAKE_OBJCFLAGS_PRECOMPILE += -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_OBJCXXFLAGS_PRECOMPILE += -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
diff --git a/mkspecs/common/mac/qplatformdefs.h b/mkspecs/common/mac/qplatformdefs.h
new file mode 100644
index 0000000..99d64ef
--- /dev/null
+++ b/mkspecs/common/mac/qplatformdefs.h
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#include "qglobal.h"
+
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+#define QT_NO_LIBRARY_UNLOAD
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+#include <sys/time.h>
+#include <sys/shm.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <netinet/in.h>
+#ifndef QT_NO_IPV6IFNAME
+#include <net/if.h>
+#endif
+
+#include "../common/posix/qplatformdefs.h"
+
+#undef QT_OPEN_LARGEFILE
+#undef QT_SOCKLEN_T
+#undef QT_SIGNAL_IGNORE
+
+#define QT_OPEN_LARGEFILE 0
+
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+#define QT_SOCKLEN_T socklen_t
+#else
+#define QT_SOCKLEN_T int
+#endif
+
+#define QT_SIGNAL_IGNORE (void (*)(int))1
+
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/common/qws.conf b/mkspecs/common/qws.conf
index 225f0ff..59820b8 100644
--- a/mkspecs/common/qws.conf
+++ b/mkspecs/common/qws.conf
@@ -20,5 +20,3 @@ QMAKE_INCDIR_OPENGL_ES2 =
QMAKE_LIBDIR_OPENGL_ES2 =
QMAKE_LIBS_X11 =
QMAKE_LIBS_X11SM =
-QMAKE_LIBS_OPENGL =
-QMAKE_LIBS_OPENGL_QT =
diff --git a/mkspecs/common/symbian/symbian-makefile.conf b/mkspecs/common/symbian/symbian-makefile.conf
index 364e91b..9dc3674 100644
--- a/mkspecs/common/symbian/symbian-makefile.conf
+++ b/mkspecs/common/symbian/symbian-makefile.conf
@@ -30,9 +30,9 @@ QMAKE_EXTENSION_STATICLIB = lib
QMAKE_SYMBIAN_SHLIB = 1
is_using_gnupoc {
- DEFINES *= __PRODUCT_INCLUDE__=\\<$${EPOCROOT}epoc32/include/variant/symbian_os.hrh\\>
+ DEFINES *= __PRODUCT_INCLUDE__=\"<$${EPOCROOT}epoc32/include/variant/symbian_os.hrh>\"
} else {
- DEFINES *= __PRODUCT_INCLUDE__=\\<$${EPOCROOT}epoc32/include/variant/Symbian_OS.hrh\\>
+ DEFINES *= __PRODUCT_INCLUDE__=\"<$${EPOCROOT}epoc32/include/variant/Symbian_OS.hrh>\"
}
DEFINES *= \
__SYMBIAN32__ \
diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf
index 69188a8..4d0320d 100644
--- a/mkspecs/common/symbian/symbian.conf
+++ b/mkspecs/common/symbian/symbian.conf
@@ -27,7 +27,7 @@ QMAKE_CFLAGS_DEBUG =
QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
MMP_OPTION_KEYWORDS = CW ARMCC GCCE
-VERSION_FLAGS.ARMCC = ARMCC_4_0
+VERSION_FLAGS.ARMCC = ARMCC_4
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
# Symbian build system applies -cwd source on the MWCC command line.
# this causes problems with include paths, -cwd include uses the same
@@ -36,7 +36,7 @@ QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
# both on the command line and rely on the compiler using the last specified
QMAKE_CXXFLAGS.CW = -cwd include
QMAKE_CXXFLAGS.ARMCC = --visibility_inlines_hidden
-QMAKE_CXXFLAGS.ARMCC_4_0 = --import_all_vtbl
+QMAKE_CXXFLAGS.ARMCC_4 = --import_all_vtbl
QMAKE_CXXFLAGS.GCCE = -fvisibility-inlines-hidden
QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
diff --git a/mkspecs/cygwin-g++/qmake.conf b/mkspecs/cygwin-g++/qmake.conf
index 29d0958..ddfceb0 100644
--- a/mkspecs/cygwin-g++/qmake.conf
+++ b/mkspecs/cygwin-g++/qmake.conf
@@ -65,7 +65,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/darwin-g++/qmake.conf b/mkspecs/darwin-g++/qmake.conf
index fc55503..84dc764 100644
--- a/mkspecs/darwin-g++/qmake.conf
+++ b/mkspecs/darwin-g++/qmake.conf
@@ -74,7 +74,7 @@ QMAKE_LFLAGS_RPATH =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/features/mac/objective_c.prf b/mkspecs/features/mac/objective_c.prf
index 0df7013..ca693ba 100644
--- a/mkspecs/features/mac/objective_c.prf
+++ b/mkspecs/features/mac/objective_c.prf
@@ -1,13 +1,22 @@
+for(source, SOURCES) {
+ contains(source,.*\\.mm?$) {
+ warning(Objective-C source \'$$source\' found in SOURCES but should be in OBJECTIVE_SOURCES)
+ SOURCES -= $$source
+ OBJECTIVE_SOURCES += $$source
+ }
+}
+
isEmpty(QMAKE_OBJECTIVE_CC):QMAKE_OBJECTIVE_CC = $$QMAKE_CC
- QMAKE_OBJECTIVE_CFLAGS = $$QMAKE_CFLAGS
- QMAKE_OBJECTIVE_CFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
- QMAKE_OBJECTIVE_CFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
- QMAKE_OBJECTIVE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
- QMAKE_OBJECTIVE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
- QMAKE_OBJECTIVE_CFLAGS_X86 = $$QMAKE_CFLAGS_X86
- QMAKE_OBJECTIVE_CFLAGS_PPC = $$QMAKE_CFLAGS_PPC
- QMAKE_OBJECTIVE_CFLAGS_HIDESYMS = $$QMAKE_CXXFLAGS_HIDESYMS
+
+QMAKE_OBJECTIVE_CFLAGS = $$QMAKE_CFLAGS
+QMAKE_OBJECTIVE_CFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
+QMAKE_OBJECTIVE_CFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
+QMAKE_OBJECTIVE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
+QMAKE_OBJECTIVE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
+QMAKE_OBJECTIVE_CFLAGS_X86 = $$QMAKE_CFLAGS_X86
+QMAKE_OBJECTIVE_CFLAGS_PPC = $$QMAKE_CFLAGS_PPC
+QMAKE_OBJECTIVE_CFLAGS_HIDESYMS = $$QMAKE_CXXFLAGS_HIDESYMS
OBJECTIVE_C_OBJECTS_DIR = $$OBJECTS_DIR
isEmpty(OBJECTIVE_C_OBJECTS_DIR):OBJECTIVE_C_OBJECTS_DIR = .
diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf
index e59319f..191a449 100644
--- a/mkspecs/features/qt.prf
+++ b/mkspecs/features/qt.prf
@@ -113,7 +113,7 @@ for(QT_CURRENT_VERIFY, $$list($$QT_PLUGIN_VERIFY)) {
CONFIG(debug, debug|release): QT_ITEM = $${QTPLUG}d4.dll
else: QT_ITEM = $${QTPLUG}4.dll
- eval(qt_additional_plugin_$${QTPLUG}.sources = $$[QT_INSTALL_PLUGINS]/$${QT_PLUGINPATH}/$${QT_ITEM})
+ eval(qt_additional_plugin_$${QTPLUG}.files = $$[QT_INSTALL_PLUGINS]/$${QT_PLUGINPATH}/$${QT_ITEM})
eval(qt_additional_plugin_$${QTPLUG}.path = $${QT_PLUGINPATH})
DEPLOYMENT *= qt_additional_plugin_$${QTPLUG}
@@ -121,7 +121,7 @@ for(QT_CURRENT_VERIFY, $$list($$QT_PLUGIN_VERIFY)) {
isEqual(QT_CURRENT_VERIFY, DEPLOYMENT_PLUGIN):shared:symbian: {
QT_ITEM = $${QTPLUG}.dll
- eval(qt_additional_plugin_$${QTPLUG}.sources = $${QT_ITEM})
+ eval(qt_additional_plugin_$${QTPLUG}.files = $${QT_ITEM})
eval(qt_additional_plugin_$${QTPLUG}.path = $${QT_PLUGINPATH})
DEPLOYMENT *= qt_additional_plugin_$${QTPLUG}
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
index afc708a..e5ef5a1 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
@@ -87,6 +87,12 @@ defineTest(qtPrepareTool) {
else:$$1 = $$[QT_INSTALL_BINS]/$$2
}
$$1 ~= s,[/\\\\],$$QMAKE_DIR_SEP,
- contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.exe$):$$1 = $$eval($$1).exe
+ contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.(exe|bat)$) {
+ exists($$eval($$1).bat) {
+ $$1 = $$eval($$1).bat
+ } else {
+ $$1 = $$eval($$1).exe
+ }
+ }
export($$1)
}
diff --git a/mkspecs/features/qttest_p4.prf b/mkspecs/features/qttest_p4.prf
index d1c7c2b..2ee148b 100644
--- a/mkspecs/features/qttest_p4.prf
+++ b/mkspecs/features/qttest_p4.prf
@@ -1,6 +1,9 @@
isEmpty(TEMPLATE):TEMPLATE=app
CONFIG += qt warn_on console depend_includepath testcase
+# x11 is not defined by configure (the following line is copied from gui.pro)
+!win32:!embedded:!mac:!symbian:CONFIG += x11
+
qtAddLibrary(QtTest)
symbian:{
diff --git a/mkspecs/features/symbian/application_icon.prf b/mkspecs/features/symbian/application_icon.prf
index 6e1aa8e..f50e944 100644
--- a/mkspecs/features/symbian/application_icon.prf
+++ b/mkspecs/features/symbian/application_icon.prf
@@ -9,6 +9,7 @@ contains(CONFIG, no_icon) {
}
}
+
!contains(CONFIG, no_icon) {
baseTarget = $$symbianRemoveSpecialCharacters($$basename(TARGET))
symbian-abld|symbian-sbsv2 {
@@ -25,9 +26,9 @@ contains(CONFIG, no_icon) {
regZDir = $$resourceZDir
}
- default_resource_deployment.sources += $$resourceZDir/$${baseTarget}.rsc
+ default_resource_deployment.files += $$resourceZDir/$${baseTarget}.rsc
default_resource_deployment.path = $$APP_RESOURCE_DIR
- default_reg_deployment.sources += $$regZDir/$${baseTarget}_reg.rsc
+ default_reg_deployment.files += $$regZDir/$${baseTarget}_reg.rsc
default_reg_deployment.path = $$REG_RESOURCE_IMPORT_DIR
!isEmpty(ICON) {
@@ -70,9 +71,10 @@ contains(CONFIG, no_icon) {
}
# Rules to use generated MIF file from symbian resources
RSS_RULES.number_of_icons = $$size(ICON_backslashed)
- RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif
- default_resource_deployment.sources += $$resourceZDir/$${baseTarget}.mif
+ RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif
+
+ default_resource_deployment.files += $$resourceZDir/$${baseTarget}.mif
}
}
diff --git a/mkspecs/features/symbian/data_caging_paths.prf b/mkspecs/features/symbian/data_caging_paths.prf
index 2f03128..7f5420c 100644
--- a/mkspecs/features/symbian/data_caging_paths.prf
+++ b/mkspecs/features/symbian/data_caging_paths.prf
@@ -13,7 +13,7 @@
#
# # These variables are mostly useful when specifying deployment
#
-# myLib.sources = myLib.dll
+# myLib.files = myLib.dll
# myLib.path = $$SHARED_LIB_DIR
# DEPLOYMENT += myLib
#
@@ -21,7 +21,7 @@
# # $$QT_PUBLIC_PLUGINS_BASE specifies the public base directory for Qt
# # plugin stubs:
#
-# myPublicImageFormatPlugin.sources = myImageFormat.dll
+# myPublicImageFormatPlugin.files = myImageFormat.dll
# myPublicImageFormatPlugin.path = $$QT_PLUGINS_BASE_DIR/imageformats
# DEPLOYMENT += myPublicImageFormatPlugin
#
diff --git a/mkspecs/features/symbian/def_files.prf b/mkspecs/features/symbian/def_files.prf
index f243878..1c11925 100644
--- a/mkspecs/features/symbian/def_files.prf
+++ b/mkspecs/features/symbian/def_files.prf
@@ -7,6 +7,18 @@ CONFIG -= def_files_disabled
equals(QMAKE_TARGET_PRODUCT, Qt4):clean_TARGET = $$replace(TARGET, "$${QT_LIBINFIX}$", "")
else:clean_TARGET = $$TARGET
+defineTest(qtTestIfDirExists) {
+ contains(QMAKE_HOST.os,Windows) {
+ dirToTest = $$1
+ $$dirToTest ~= s,/,\\,
+ # Windows trick. Test for existence of nul, which every directory has.
+ retValue = $$system("if exist $$dirToTest\\nul echo true")
+ contains(retValue, true):return(true)|return(false)
+ } else {
+ system("test -d $$1"):return(true)|return(false)
+ }
+}
+
symbian-abld|symbian-sbsv2 {
# Firstly, if the MMP_RULES already contain a defBlock variable, don't generate another one
# (this bit is slightly magic, because it depends upon everyone creating their DEFFILE statements
@@ -52,9 +64,11 @@ symbian-abld|symbian-sbsv2 {
} else {
defFile = .
}
- system("$$QMAKE_CHK_DIR_EXISTS $$_PRO_FILE_PWD_/$$defFile") {
+ qtTestIfDirExists($$_PRO_FILE_PWD_/$$defFile) {
!exists("$$_PRO_FILE_PWD_/$$defFile/eabi") {
- system("$$QMAKE_MKDIR $$_PRO_FILE_PWD_/$$defFile/eabi")
+ dirToCreate = $$_PRO_FILE_PWD_/$$defFile/eabi
+ contains(QMAKE_HOST.os,Windows):dirToCreate ~= s,/,\\,
+ system("$$QMAKE_MKDIR $$dirToCreate")
}
elf2e32FileToAdd = $$_PRO_FILE_PWD_/$$defFile/eabi/$$basename(clean_TARGET)u.def
} else {
diff --git a/mkspecs/features/symbian/do_not_build_as_thumb.prf b/mkspecs/features/symbian/do_not_build_as_thumb.prf
index 60d9382..0f1fd9f 100644
--- a/mkspecs/features/symbian/do_not_build_as_thumb.prf
+++ b/mkspecs/features/symbian/do_not_build_as_thumb.prf
@@ -1,6 +1,6 @@
symbian-abld|symbian-sbsv2 {
MMP_RULES += ALWAYS_BUILD_AS_ARM
-} else:linux-armcc {
+} else:symbian-armcc {
QMAKE_CFLAGS -= --thumb
QMAKE_CFLAGS += --arm
QMAKE_CXXFLAGS -= --thumb
diff --git a/mkspecs/features/symbian/qt_config.prf b/mkspecs/features/symbian/qt_config.prf
index 2f446dc..82c1862 100644
--- a/mkspecs/features/symbian/qt_config.prf
+++ b/mkspecs/features/symbian/qt_config.prf
@@ -3,7 +3,7 @@ load(qt_config)
!contains(QMAKE_HOST.os, "Windows") {
# Test for the existence of lower cased headers, a sign of using Gnupoc.
# Note that the qmake "exists" test won't do because it is case insensitive.
- system("test -f $${EPOCROOT}/epoc32/include/akndoc.h") {
+ system("test -f $${EPOCROOT}epoc32/include/akndoc.h") {
CONFIG += is_using_gnupoc
}
}
diff --git a/mkspecs/features/symbian/run_on_phone.prf b/mkspecs/features/symbian/run_on_phone.prf
index d845277..ba88a66 100644
--- a/mkspecs/features/symbian/run_on_phone.prf
+++ b/mkspecs/features/symbian/run_on_phone.prf
@@ -5,7 +5,8 @@ GENERATE_RUN_TARGETS = false
contains(TEMPLATE, app): GENERATE_RUN_TARGETS = true
else:!equals(DEPLOYMENT, default_deployment) {
for(dep_item, $$list($$DEPLOYMENT)) {
- dep_item_sources = $$eval($${dep_item}.sources)
+ ### Qt 5: remove .sources, inconsistent with INSTALLS
+ dep_item_sources = $$eval($${dep_item}.files) $$eval($${dep_item}.sources)
!isEmpty(dep_item_sources): GENERATE_RUN_TARGETS = true
}
}
diff --git a/mkspecs/features/symbian/sis_targets.prf b/mkspecs/features/symbian/sis_targets.prf
index e838e10..e5a33cb 100644
--- a/mkspecs/features/symbian/sis_targets.prf
+++ b/mkspecs/features/symbian/sis_targets.prf
@@ -4,7 +4,8 @@ GENERATE_SIS_TARGETS = false
contains(TEMPLATE, app): GENERATE_SIS_TARGETS = true
else:!equals(DEPLOYMENT, default_deployment) {
for(dep_item, $$list($$DEPLOYMENT)) {
- dep_item_sources = $$eval($${dep_item}.sources)
+ ### Qt 5: remove .sources, inconsistent with INSTALLS
+ dep_item_sources = $$eval($${dep_item}.files) $$eval($${dep_item}.sources)
!isEmpty(dep_item_sources): GENERATE_SIS_TARGETS = true
}
}
diff --git a/mkspecs/features/symbian/symbian_building.prf b/mkspecs/features/symbian/symbian_building.prf
index 0cedaa0..9288583 100644
--- a/mkspecs/features/symbian/symbian_building.prf
+++ b/mkspecs/features/symbian/symbian_building.prf
@@ -1,7 +1,7 @@
-linux-armcc {
+symbian-armcc {
QMAKE_CFLAGS += $$QMAKE_CFLAGS.ARMCC
QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS.ARMCC
-} else:linux-gcce {
+} else:symbian-gcce {
QMAKE_CFLAGS += $$QMAKE_CFLAGS.GCCE
QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS.GCCE
}
@@ -16,7 +16,7 @@ else:clean_TARGET = $$TARGET
!contains(clean_TARGET, ".*[ -/].*"):eval(TMPVAR = \$\$QMAKE_$${clean_TARGET}_LFLAGS)
!isEmpty(TMPVAR) {
QMAKE_LFLAGS += $$TMPVAR
-} else :linux-gcce { # lets provide a simple default. Without elf2e32 complains
+} else :symbian-gcce { # lets provide a simple default. Without elf2e32 complains
QMAKE_LFLAGS += -Ttext 0x80000 -Tdata 0x400000
}
@@ -62,8 +62,8 @@ for(libToProcess, libsToProcess) {
} else {
qt_newLib = $$processSymbianLibrary($$qt_library)
contains(qt_newLib, ".*\\.dso$")|contains(qt_newLib, ".*\\.lib$"):PRE_TARGETDEPS += $$qt_newLib
- linux-gcce:qt_newLib = "-l:$$qt_newLib"
- eval($$libToProcess += \$\$qt_newLib)
+ symbian-gcce:qt_newLib = "-l:$$qt_newLib"
+ eval($$libToProcess *= \$\$qt_newLib)
}
}
}
@@ -89,12 +89,13 @@ count(splitVersion, 0) {
decVersion = "10.0"
} else {
count(splitVersion, 3) {
- hexVersion = $$system("sh -c 'printf %02x $$member(splitVersion, 0)'")
- hexPart2 = $$system("sh -c 'printf %02x $$member(splitVersion, 1)'")"
- hexPart2 = $$hexPart2$$system("sh -c 'printf %02x $$member(splitVersion, 2)'")"
- decVersion = $$system("sh -c 'printf %1d 0x$$hexVersion'").
+ hexVersion = $$system("perl -e \"printf (\\\"%02x\\\", $$member(splitVersion, 0))\"")
+ hexPart2 = $$system("perl -e \"printf (\\\"%02x\\\", $$member(splitVersion, 1))\"")"
+ hexPart2 = $$hexPart2$$system("perl -e \"printf (\\\"%02x\\\", $$member(splitVersion, 2))\"")"
+ decVersion = $$system("perl -e \"printf (\\\"%1d\\\", 0x$$hexVersion)\"").
hexVersion = $$hexVersion$$hexPart2
- decVersion = $$decVersion$$system("sh -c 'printf %d 0x$$hexPart2'")
+ decVersion = $$decVersion$$system("perl -e \"printf (\\\"%d\\\", 0x$$hexPart2)\"")
+
!contains(hexVersion, "[0-9a-f]{8}"):hexVersion = "00$${hexVersion}"
} else { # app code may have different numbering...
hexVersion = $$VERSION
@@ -117,7 +118,9 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
contains(CONFIG, plugin):QMAKE_ELF2E32_FLAGS += --definput=plugin_commonu.def
!isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK = $$escape_expand(\\n\\t)$$QMAKE_POST_LINK
- QMAKE_POST_LINK = $$QMAKE_MOVE $$symbianDestdir/$${baseTarget}.dll $$symbianDestdir/$${baseTarget}.sym \
+ moveCmd = $$QMAKE_MOVE $$symbianDestdir/$${baseTarget}.dll $$symbianDestdir/$${baseTarget}.sym
+ contains(QMAKE_HOST.os,Windows):moveCmd = $$replace(moveCmd, /, \\)
+ QMAKE_POST_LINK = $$moveCmd \
&& $$QMAKE_ELF2E32_WRAPPER --version=$$decVersion \
--sid=$$TARGET.SID \
--uid1=0x10000079 \
@@ -129,7 +132,7 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
--tmpdso=$${symbianObjdir}/$${baseTarget}.dso \
--dso=$${symbianDestdir}/$${baseTarget}.dso \
--defoutput=$$symbianObjdir/$${baseTarget}.def \
- --linkas=$${baseTarget}\\{$${hexVersion}\\}\\[$${intUid3}\\].dll \
+ --linkas=\"$${baseTarget}{$${hexVersion}}[$${intUid3}].dll\" \
--heap=$$epoc_heap_size \
--stack=$$TARGET.EPOCSTACKSIZE \
$$elf2e32_LIBPATH \
@@ -142,11 +145,17 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
QMAKE_CLEAN += $${symbianObjdir}/$${baseTarget}.dso
QMAKE_CLEAN += $${symbianObjdir}/$${baseTarget}.def
- linux-armcc: {
- LIBS += usrt2_2.lib dfpaeabi.dso dfprvct2_2.dso drtaeabi.dso scppnwdl.dso drtrvct2_2.dso h_t__uf.l\\(switch8.o\\)
- LIBS += -ledllstub.lib -ledll.lib\\(uc_dll_.o\\)
- } else :linux-gcce {
+ symbian-armcc: {
+ LIBS += usrt2_2.lib dfpaeabi.dso dfprvct2_2.dso drtaeabi.dso scppnwdl.dso drtrvct2_2.dso
+ # Quotation unfortunately is different on Windows and unix.
+ contains(QMAKE_HOST.os, Windows) {
+ LIBS += \"h_t__uf.l(switch8.o)\" edllstub.lib \"edll.lib(uc_dll_.o)\"
+ } else {
+ LIBS += h_t__uf.l\\(switch8.o\\) edllstub.lib edll.lib\\(uc_dll_.o\\)
+ }
+ } else :symbian-gcce {
LIBS += \
+ -l:edllstub.lib \
-l:edll.lib \
-l:usrt2_2.lib \
-l:dfpaeabi.dso \
@@ -156,13 +165,15 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
-lgcc
}
- QMAKE_LFLAGS += --soname $${baseTarget}\\{$${hexVersion}\\}\\[$${intUid3}\\].dll
+ QMAKE_LFLAGS += --soname \"$${baseTarget}{$${hexVersion}}[$${intUid3}].dll\"
DEFINES += __DLL__
}
contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@:.*") {
!isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK = $$escape_expand(\\n\\t)$$QMAKE_POST_LINK
- QMAKE_POST_LINK = $$QMAKE_MOVE $$symbianDestdir/$${baseTarget} $$symbianDestdir/$${baseTarget}.sym \
+ moveCmd = $$QMAKE_MOVE $$symbianDestdir/$${baseTarget} $$symbianDestdir/$${baseTarget}.sym
+ contains(QMAKE_HOST.os,Windows):moveCmd = $$replace(moveCmd, /, \\)
+ QMAKE_POST_LINK = $$moveCmd \
&& $$QMAKE_ELF2E32_WRAPPER --version $$decVersion \
--sid=$$TARGET.SID \
--uid1=0x1000007a \
@@ -171,7 +182,7 @@ contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@:.*") {
--targettype=EXE \
--elfinput=$${symbianDestdir}/$${baseTarget}.sym \
--output=$${symbianDestdir}/$${baseTarget}.exe \
- --linkas=$${baseTarget}\\{$${hexVersion}\\}\\[$${intUid3}\\].exe \
+ --linkas=\"$${baseTarget}{$${hexVersion}}[$${intUid3}].exe\" \
--heap=$$epoc_heap_size \
--stack=$$TARGET.EPOCSTACKSIZE \
$$elf2e32_LIBPATH \
@@ -184,7 +195,7 @@ contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@:.*") {
QMAKE_DISTCLEAN += $${symbianDestdir}/$${baseTarget}.exe
QMAKE_CLEAN += $${symbianDestdir}/$${baseTarget}
- linux-armcc: {
+ symbian-armcc: {
QMAKE_LIBS += usrt2_2.lib dfpaeabi.dso dfprvct2_2.dso drtaeabi.dso scppnwdl.dso drtrvct2_2.dso h_t__uf.l\\(switch8.o\\)
QMAKE_LIBS += -leexe.lib\\(uc_exe_.o\\)
contains(CONFIG, "qt") {
@@ -194,7 +205,7 @@ contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@:.*") {
QMAKE_LIBS -= $$QMAKE_LIBS_NO_QT_ENTRY
QMAKE_LIBS += $$QMAKE_LIBS_NO_QT_ENTRY
}
- } else :linux-gcce {
+ } else :symbian-gcce {
# notice that we can't merge these as ordering of arguments is important.
QMAKE_LIBS += \
-l:eexe.lib \
@@ -219,12 +230,12 @@ contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@:.*") {
QMAKE_LFLAGS += --shared
}
- QMAKE_LFLAGS += --soname $${baseTarget}\\{$${hexVersion}\\}\\[$${intUid3}\\].exe
+ QMAKE_LFLAGS += --soname \"$${baseTarget}{$${hexVersion}}[$${intUid3}].exe\"
DEFINES += __EXE__
}
# Symbian resource files
-linux-armcc: {
+symbian-armcc: {
SYMBIAN_RVCT22INC=$$(RVCT22INC)
!isEmpty(SYMBIAN_RVCT22INC):symbian_resources_INCLUDES = -I$${SYMBIAN_RVCT22INC}
}
diff --git a/mkspecs/features/unix/gdb_dwarf_index.prf b/mkspecs/features/unix/gdb_dwarf_index.prf
new file mode 100644
index 0000000..e2167a6
--- /dev/null
+++ b/mkspecs/features/unix/gdb_dwarf_index.prf
@@ -0,0 +1,15 @@
+!CONFIG(separate_debug_info):CONFIG(debug, debug|release):!staticlib:!static:!contains(TEMPLATE, subdirs):!isEmpty(QMAKE_OBJCOPY) {
+
+ QMAKE_GDB_INDEX = { test -z \"$(DESTDIR)\" || cd \"$(DESTDIR)\"; } && \
+ test \$\$(gdb --version | sed -e \'s,[^(]*(GDB).\\([0-9]\\)\\.\\([0-9]\\).*,\\1\\2,;q\') -gt 71 && \
+ gdb --nx --batch --quiet -ex \'set confirm off\' -ex \'save gdb-index .\' -ex quit \'$(TARGET)\' && \
+ test -f $(TARGET).gdb-index && \
+ $$QMAKE_OBJCOPY --add-section \'.gdb_index=$(TARGET).gdb-index\' --set-section-flags \'.gdb_index=readonly\' \'$(TARGET)\' \'$(TARGET)\' && \
+ $$QMAKE_DEL_FILE $(TARGET).gdb-index || true
+
+ !isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK = $$escape_expand(\\n\\t)$$QMAKE_POST_LINK
+ QMAKE_POST_LINK = $$QMAKE_GDB_INDEX $$QMAKE_POST_LINK
+
+ silent:QMAKE_POST_LINK = @echo indexing $@ for gdb && $$QMAKE_POST_LINK
+}
+
diff --git a/mkspecs/freebsd-g++/qmake.conf b/mkspecs/freebsd-g++/qmake.conf
index 51a1960..9d7c443 100644
--- a/mkspecs/freebsd-g++/qmake.conf
+++ b/mkspecs/freebsd-g++/qmake.conf
@@ -5,7 +5,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release link_prl
+CONFIG += qt warn_on release link_prl gdb_dwarf_index
QT += core gui
QMAKE_CFLAGS_THREAD = -pthread -D_THREAD_SAFE
@@ -28,7 +28,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
@@ -48,6 +48,7 @@ QMAKE_DEL_FILE = rm -f
QMAKE_DEL_DIR = rmdir
QMAKE_CHK_DIR_EXISTS = test -d
QMAKE_MKDIR = mkdir -p
-include(../common/g++.conf)
include(../common/unix.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
load(qt_config)
diff --git a/mkspecs/freebsd-g++34/qmake.conf b/mkspecs/freebsd-g++34/qmake.conf
index 810efab..0f52993 100644
--- a/mkspecs/freebsd-g++34/qmake.conf
+++ b/mkspecs/freebsd-g++34/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/freebsd-g++40/qmake.conf b/mkspecs/freebsd-g++40/qmake.conf
index 4b0ac4c..bf42711 100644
--- a/mkspecs/freebsd-g++40/qmake.conf
+++ b/mkspecs/freebsd-g++40/qmake.conf
@@ -5,7 +5,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release link_prl
+CONFIG += qt warn_on release link_prl gdb_dwarf_index
QT += core gui
QMAKE_CC = gcc40
@@ -63,7 +63,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/freebsd-icc/qmake.conf b/mkspecs/freebsd-icc/qmake.conf
index 99d6126..acc8f14 100644
--- a/mkspecs/freebsd-icc/qmake.conf
+++ b/mkspecs/freebsd-icc/qmake.conf
@@ -86,7 +86,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/hpux-acc-64/qmake.conf b/mkspecs/hpux-acc-64/qmake.conf
index 38c8555..b9aaf5a 100644
--- a/mkspecs/hpux-acc-64/qmake.conf
+++ b/mkspecs/hpux-acc-64/qmake.conf
@@ -106,7 +106,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL -lXt
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpux-acc-o64/qmake.conf b/mkspecs/hpux-acc-o64/qmake.conf
index 630129c..389e813 100644
--- a/mkspecs/hpux-acc-o64/qmake.conf
+++ b/mkspecs/hpux-acc-o64/qmake.conf
@@ -104,7 +104,7 @@ QMAKE_LIBS_DYNLOAD = -ldld
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpux-acc/qmake.conf b/mkspecs/hpux-acc/qmake.conf
index 1c732c6..d1b6e5c 100644
--- a/mkspecs/hpux-acc/qmake.conf
+++ b/mkspecs/hpux-acc/qmake.conf
@@ -85,7 +85,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldld
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL -lXt
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpux-g++-64/qmake.conf b/mkspecs/hpux-g++-64/qmake.conf
index d8b0a4a..f796496 100644
--- a/mkspecs/hpux-g++-64/qmake.conf
+++ b/mkspecs/hpux-g++-64/qmake.conf
@@ -68,7 +68,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldld
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpux-g++/qmake.conf b/mkspecs/hpux-g++/qmake.conf
index 312c44b..e9891e7 100644
--- a/mkspecs/hpux-g++/qmake.conf
+++ b/mkspecs/hpux-g++/qmake.conf
@@ -68,7 +68,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldld
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpuxi-acc-32/qmake.conf b/mkspecs/hpuxi-acc-32/qmake.conf
index a26cb32..d7e4a0a 100644
--- a/mkspecs/hpuxi-acc-32/qmake.conf
+++ b/mkspecs/hpuxi-acc-32/qmake.conf
@@ -60,7 +60,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL -lXt
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpuxi-acc-64/qmake.conf b/mkspecs/hpuxi-acc-64/qmake.conf
index 3e2d59f..3ed9b55 100644
--- a/mkspecs/hpuxi-acc-64/qmake.conf
+++ b/mkspecs/hpuxi-acc-64/qmake.conf
@@ -103,7 +103,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL -lXt
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hpuxi-g++-64/qmake.conf b/mkspecs/hpuxi-g++-64/qmake.conf
index 3151d85..a8f445c 100644
--- a/mkspecs/hpuxi-g++-64/qmake.conf
+++ b/mkspecs/hpuxi-g++-64/qmake.conf
@@ -71,7 +71,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
QMAKE_LIBS_YACC = -ly
diff --git a/mkspecs/hurd-g++/qmake.conf b/mkspecs/hurd-g++/qmake.conf
index 6570e40..d89f2e4 100644
--- a/mkspecs/hurd-g++/qmake.conf
+++ b/mkspecs/hurd-g++/qmake.conf
@@ -67,7 +67,7 @@ QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_QT_THREAD = -lqt-mt
QMAKE_LIBS_THREAD =
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
diff --git a/mkspecs/irix-cc-64/qmake.conf b/mkspecs/irix-cc-64/qmake.conf
index b8d316e..ec94824 100644
--- a/mkspecs/irix-cc-64/qmake.conf
+++ b/mkspecs/irix-cc-64/qmake.conf
@@ -94,7 +94,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lm
+QMAKE_LIBS_OPENGL = -lGL -lm
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/irix-cc/qmake.conf b/mkspecs/irix-cc/qmake.conf
index 2f4f03f..777da9b 100644
--- a/mkspecs/irix-cc/qmake.conf
+++ b/mkspecs/irix-cc/qmake.conf
@@ -94,7 +94,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lm
+QMAKE_LIBS_OPENGL = -lGL -lm
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/irix-g++-64/qmake.conf b/mkspecs/irix-g++-64/qmake.conf
index 610d92c..aa853de 100644
--- a/mkspecs/irix-g++-64/qmake.conf
+++ b/mkspecs/irix-g++-64/qmake.conf
@@ -67,7 +67,7 @@ QMAKE_LIBS_X11SM = -lSM -lICE
# libGLU is using the SGI C++ library internally and this somehow clashes
# with the GNU C++ library (similar name mangling and symbol names?)
# so we add -lC so that the SGI C++ library is used first...
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/irix-g++/qmake.conf b/mkspecs/irix-g++/qmake.conf
index 41841f3..77d47a9 100644
--- a/mkspecs/irix-g++/qmake.conf
+++ b/mkspecs/irix-g++/qmake.conf
@@ -67,7 +67,7 @@ QMAKE_LIBS_X11SM = -lSM -lICE
# libGLU is using the SGI C++ library internally and this somehow clashes
# with the GNU C++ library (similar name mangling and symbol names?)
# so we add -lC so that the SGI C++ library is used first...
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/linux-cxx/qmake.conf b/mkspecs/linux-cxx/qmake.conf
index 879c78a..ce303b7 100644
--- a/mkspecs/linux-cxx/qmake.conf
+++ b/mkspecs/linux-cxx/qmake.conf
@@ -60,7 +60,7 @@ QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
diff --git a/mkspecs/linux-ecc-64/qmake.conf b/mkspecs/linux-ecc-64/qmake.conf
index aa50b87..61a056b 100644
--- a/mkspecs/linux-ecc-64/qmake.conf
+++ b/mkspecs/linux-ecc-64/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/linux-g++-32/qmake.conf b/mkspecs/linux-g++-32/qmake.conf
index 1e5c50b..cdf8914 100644
--- a/mkspecs/linux-g++-32/qmake.conf
+++ b/mkspecs/linux-g++-32/qmake.conf
@@ -5,13 +5,14 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
QMAKE_CFLAGS = -m32
QMAKE_LFLAGS = -m32
-include(../common/g++.conf)
include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
load(qt_config)
diff --git a/mkspecs/linux-g++-64/qmake.conf b/mkspecs/linux-g++-64/qmake.conf
index e7372cc..222f6b7 100644
--- a/mkspecs/linux-g++-64/qmake.conf
+++ b/mkspecs/linux-g++-64/qmake.conf
@@ -8,15 +8,17 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
QMAKE_CFLAGS = -m64
QMAKE_LFLAGS = -m64
-include(../common/g++.conf)
include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
+
QMAKE_LIBDIR_X11 = /usr/X11R6/lib64
QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib64
diff --git a/mkspecs/linux-g++-maemo/qmake.conf b/mkspecs/linux-g++-maemo/qmake.conf
index 0178f14..23f1f71 100644
--- a/mkspecs/linux-g++-maemo/qmake.conf
+++ b/mkspecs/linux-g++-maemo/qmake.conf
@@ -5,13 +5,14 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
CONFIG += nostrip
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-include(../common/g++.conf)
include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
# Override the default lib/include directories for scratchbox:
diff --git a/mkspecs/linux-g++/qmake.conf b/mkspecs/linux-g++/qmake.conf
index 4b21896..00df894 100644
--- a/mkspecs/linux-g++/qmake.conf
+++ b/mkspecs/linux-g++/qmake.conf
@@ -5,10 +5,11 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-include(../common/g++.conf)
include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
load(qt_config)
diff --git a/mkspecs/linux-icc/qmake.conf b/mkspecs/linux-icc/qmake.conf
index af56a9a..6867d86 100644
--- a/mkspecs/linux-icc/qmake.conf
+++ b/mkspecs/linux-icc/qmake.conf
@@ -13,7 +13,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release link_prl
+CONFIG += qt warn_on release link_prl gdb_dwarf_index
QT += core gui
QMAKE_CC = icc
@@ -70,7 +70,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/linux-kcc/qmake.conf b/mkspecs/linux-kcc/qmake.conf
index 5c6001c..01e3b73 100644
--- a/mkspecs/linux-kcc/qmake.conf
+++ b/mkspecs/linux-kcc/qmake.conf
@@ -72,7 +72,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/linux-llvm/qmake.conf b/mkspecs/linux-llvm/qmake.conf
index 73d6609..46ea2aa 100644
--- a/mkspecs/linux-llvm/qmake.conf
+++ b/mkspecs/linux-llvm/qmake.conf
@@ -5,10 +5,11 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-include(../common/llvm.conf)
include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/llvm.conf)
load(qt_config)
diff --git a/mkspecs/linux-lsb-g++/qmake.conf b/mkspecs/linux-lsb-g++/qmake.conf
index d359625..4197db0 100644
--- a/mkspecs/linux-lsb-g++/qmake.conf
+++ b/mkspecs/linux-lsb-g++/qmake.conf
@@ -5,7 +5,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release incremental link_prl
+CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
diff --git a/mkspecs/linux-pgcc/qmake.conf b/mkspecs/linux-pgcc/qmake.conf
index 16d0023..63ede78 100644
--- a/mkspecs/linux-pgcc/qmake.conf
+++ b/mkspecs/linux-pgcc/qmake.conf
@@ -63,7 +63,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/lynxos-g++/qmake.conf b/mkspecs/lynxos-g++/qmake.conf
index fc0fc43..6b6f405 100644
--- a/mkspecs/lynxos-g++/qmake.conf
+++ b/mkspecs/lynxos-g++/qmake.conf
@@ -66,7 +66,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread
diff --git a/mkspecs/macx-g++/qmake.conf b/mkspecs/macx-g++/qmake.conf
index 4464686..e402e54 100644
--- a/mkspecs/macx-g++/qmake.conf
+++ b/mkspecs/macx-g++/qmake.conf
@@ -13,9 +13,7 @@ CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-QMAKE_CC = gcc
-QMAKE_CXX = g++
-
-include(../common/mac-g++.conf)
-
+include(../common/mac.conf)
+include(../common/gcc-base-macx.conf)
+include(../common/g++-macx.conf)
load(qt_config)
diff --git a/mkspecs/macx-g++/qplatformdefs.h b/mkspecs/macx-g++/qplatformdefs.h
index 99d64ef..5bdef57 100644
--- a/mkspecs/macx-g++/qplatformdefs.h
+++ b/mkspecs/macx-g++/qplatformdefs.h
@@ -39,59 +39,5 @@
**
****************************************************************************/
-#ifndef QPLATFORMDEFS_H
-#define QPLATFORMDEFS_H
+#include "../common/mac/qplatformdefs.h"
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#define QT_NO_LIBRARY_UNLOAD
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/ipc.h>
-#include <sys/time.h>
-#include <sys/shm.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#include "../common/posix/qplatformdefs.h"
-
-#undef QT_OPEN_LARGEFILE
-#undef QT_SOCKLEN_T
-#undef QT_SIGNAL_IGNORE
-
-#define QT_OPEN_LARGEFILE 0
-
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
-#define QT_SOCKLEN_T socklen_t
-#else
-#define QT_SOCKLEN_T int
-#endif
-
-#define QT_SIGNAL_IGNORE (void (*)(int))1
-
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-
-#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/macx-g++40/qmake.conf b/mkspecs/macx-g++40/qmake.conf
index 784f5fc..07663c6 100644
--- a/mkspecs/macx-g++40/qmake.conf
+++ b/mkspecs/macx-g++40/qmake.conf
@@ -13,9 +13,16 @@ CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
+include(../common/mac.conf)
+include(../common/gcc-base-macx.conf)
+include(../common/g++-macx.conf)
+
QMAKE_CC = gcc-4.0
QMAKE_CXX = g++-4.0
-include(../common/mac-g++.conf)
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_LINK_SHLIB = $$QMAKE_CXX
+QMAKE_LINK_C = $$QMAKE_CC
+QMAKE_LINK_C_SHLIB = $$QMAKE_CC
load(qt_config)
diff --git a/mkspecs/macx-g++40/qplatformdefs.h b/mkspecs/macx-g++40/qplatformdefs.h
index 99d64ef..5bdef57 100644
--- a/mkspecs/macx-g++40/qplatformdefs.h
+++ b/mkspecs/macx-g++40/qplatformdefs.h
@@ -39,59 +39,5 @@
**
****************************************************************************/
-#ifndef QPLATFORMDEFS_H
-#define QPLATFORMDEFS_H
+#include "../common/mac/qplatformdefs.h"
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#define QT_NO_LIBRARY_UNLOAD
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/ipc.h>
-#include <sys/time.h>
-#include <sys/shm.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#include "../common/posix/qplatformdefs.h"
-
-#undef QT_OPEN_LARGEFILE
-#undef QT_SOCKLEN_T
-#undef QT_SIGNAL_IGNORE
-
-#define QT_OPEN_LARGEFILE 0
-
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
-#define QT_SOCKLEN_T socklen_t
-#else
-#define QT_SOCKLEN_T int
-#endif
-
-#define QT_SIGNAL_IGNORE (void (*)(int))1
-
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-
-#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/macx-g++42/qmake.conf b/mkspecs/macx-g++42/qmake.conf
index fb93697..3d31305 100644
--- a/mkspecs/macx-g++42/qmake.conf
+++ b/mkspecs/macx-g++42/qmake.conf
@@ -13,9 +13,16 @@ CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
+include(../common/mac.conf)
+include(../common/gcc-base-macx.conf)
+include(../common/g++-macx.conf)
+
QMAKE_CC = gcc-4.2
QMAKE_CXX = g++-4.2
-include(../common/mac-g++.conf)
+QMAKE_LINK = $$QMAKE_CXX
+QMAKE_LINK_SHLIB = $$QMAKE_CXX
+QMAKE_LINK_C = $$QMAKE_CC
+QMAKE_LINK_C_SHLIB = $$QMAKE_CC
load(qt_config)
diff --git a/mkspecs/macx-g++42/qplatformdefs.h b/mkspecs/macx-g++42/qplatformdefs.h
index 99d64ef..5bdef57 100644
--- a/mkspecs/macx-g++42/qplatformdefs.h
+++ b/mkspecs/macx-g++42/qplatformdefs.h
@@ -39,59 +39,5 @@
**
****************************************************************************/
-#ifndef QPLATFORMDEFS_H
-#define QPLATFORMDEFS_H
+#include "../common/mac/qplatformdefs.h"
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#define QT_NO_LIBRARY_UNLOAD
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/ipc.h>
-#include <sys/time.h>
-#include <sys/shm.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#include "../common/posix/qplatformdefs.h"
-
-#undef QT_OPEN_LARGEFILE
-#undef QT_SOCKLEN_T
-#undef QT_SIGNAL_IGNORE
-
-#define QT_OPEN_LARGEFILE 0
-
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
-#define QT_SOCKLEN_T socklen_t
-#else
-#define QT_SOCKLEN_T int
-#endif
-
-#define QT_SIGNAL_IGNORE (void (*)(int))1
-
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-
-#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/macx-icc/qplatformdefs.h b/mkspecs/macx-icc/qplatformdefs.h
index d46381c..5bdef57 100644
--- a/mkspecs/macx-icc/qplatformdefs.h
+++ b/mkspecs/macx-icc/qplatformdefs.h
@@ -39,5 +39,5 @@
**
****************************************************************************/
-#include "../macx-g++/qplatformdefs.h"
+#include "../common/mac/qplatformdefs.h"
diff --git a/mkspecs/macx-llvm/qmake.conf b/mkspecs/macx-llvm/qmake.conf
index d46baea..d794701 100644
--- a/mkspecs/macx-llvm/qmake.conf
+++ b/mkspecs/macx-llvm/qmake.conf
@@ -13,6 +13,13 @@ CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-include(../common/mac-llvm.conf)
+include(../common/mac.conf)
+include(../common/gcc-base-macx.conf)
+include(../common/llvm.conf)
+
+QMAKE_OBJCFLAGS_PRECOMPILE = -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+QMAKE_OBJCXXFLAGS_PRECOMPILE = -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
load(qt_config)
diff --git a/mkspecs/macx-llvm/qplatformdefs.h b/mkspecs/macx-llvm/qplatformdefs.h
index 99d64ef..5bdef57 100644
--- a/mkspecs/macx-llvm/qplatformdefs.h
+++ b/mkspecs/macx-llvm/qplatformdefs.h
@@ -39,59 +39,5 @@
**
****************************************************************************/
-#ifndef QPLATFORMDEFS_H
-#define QPLATFORMDEFS_H
+#include "../common/mac/qplatformdefs.h"
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#define QT_NO_LIBRARY_UNLOAD
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/ipc.h>
-#include <sys/time.h>
-#include <sys/shm.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#include "../common/posix/qplatformdefs.h"
-
-#undef QT_OPEN_LARGEFILE
-#undef QT_SOCKLEN_T
-#undef QT_SIGNAL_IGNORE
-
-#define QT_OPEN_LARGEFILE 0
-
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
-#define QT_SOCKLEN_T socklen_t
-#else
-#define QT_SOCKLEN_T int
-#endif
-
-#define QT_SIGNAL_IGNORE (void (*)(int))1
-
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-
-#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/macx-xcode/qmake.conf b/mkspecs/macx-xcode/qmake.conf
index 3a4a500..4cb4626 100755
--- a/mkspecs/macx-xcode/qmake.conf
+++ b/mkspecs/macx-xcode/qmake.conf
@@ -9,10 +9,16 @@ TEMPLATE = app
CONFIG += qt warn_on release lib_version_first incremental plugin_no_soname link_prl app_bundle
QT += core gui
-include(../common/mac-g++.conf)
+include(../common/mac.conf)
+include(../common/gcc-base-macx.conf)
+include(../common/g++-macx.conf)
-QMAKE_CC =
-QMAKE_CXX =
+QMAKE_CC =
+QMAKE_CXX =
+QMAKE_LINK =
+QMAKE_LINK_C =
+QMAKE_LINK_C_SHLIB =
+QMAKE_LINK_SHLIB =
QMAKE_CFLAGS_HIDESYMS =
QMAKE_CFLAGS_PPC_64 =
QMAKE_CFLAGS_X86_64 =
diff --git a/mkspecs/macx-xcode/qplatformdefs.h b/mkspecs/macx-xcode/qplatformdefs.h
index 99d64ef..5bdef57 100644
--- a/mkspecs/macx-xcode/qplatformdefs.h
+++ b/mkspecs/macx-xcode/qplatformdefs.h
@@ -39,59 +39,5 @@
**
****************************************************************************/
-#ifndef QPLATFORMDEFS_H
-#define QPLATFORMDEFS_H
+#include "../common/mac/qplatformdefs.h"
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#define QT_NO_LIBRARY_UNLOAD
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/ipc.h>
-#include <sys/time.h>
-#include <sys/shm.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#include "../common/posix/qplatformdefs.h"
-
-#undef QT_OPEN_LARGEFILE
-#undef QT_SOCKLEN_T
-#undef QT_SIGNAL_IGNORE
-
-#define QT_OPEN_LARGEFILE 0
-
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
-#define QT_SOCKLEN_T socklen_t
-#else
-#define QT_SOCKLEN_T int
-#endif
-
-#define QT_SIGNAL_IGNORE (void (*)(int))1
-
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-
-#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/netbsd-g++/qmake.conf b/mkspecs/netbsd-g++/qmake.conf
index 1d3fd2b..ab4b7c3 100644
--- a/mkspecs/netbsd-g++/qmake.conf
+++ b/mkspecs/netbsd-g++/qmake.conf
@@ -5,7 +5,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release link_prl
+CONFIG += qt warn_on release link_prl gdb_dwarf_index
QT += core gui
QMAKE_CC = gcc
@@ -64,7 +64,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/openbsd-g++/qmake.conf b/mkspecs/openbsd-g++/qmake.conf
index c948c90..56d9416 100644
--- a/mkspecs/openbsd-g++/qmake.conf
+++ b/mkspecs/openbsd-g++/qmake.conf
@@ -5,7 +5,7 @@
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = unix
TEMPLATE = app
-CONFIG += qt warn_on release link_prl
+CONFIG += qt warn_on release link_prl gdb_dwarf_index
QT += core gui
QMAKE_CC = gcc
@@ -65,7 +65,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/qws/linux-arm-g++/qmake.conf b/mkspecs/qws/linux-arm-g++/qmake.conf
index 7e0a3b4..7b37813 100644
--- a/mkspecs/qws/linux-arm-g++/qmake.conf
+++ b/mkspecs/qws/linux-arm-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf b/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf
index 3611421..e1ad837 100644
--- a/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf
+++ b/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-none-linux-gnueabi-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-armv6-g++/qmake.conf b/mkspecs/qws/linux-armv6-g++/qmake.conf
index cd7ecca..0e2473c 100644
--- a/mkspecs/qws/linux-armv6-g++/qmake.conf
+++ b/mkspecs/qws/linux-armv6-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building for ARMv6 devices with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-avr32-g++/qmake.conf b/mkspecs/qws/linux-avr32-g++/qmake.conf
index 057c938..32c0444 100644
--- a/mkspecs/qws/linux-avr32-g++/qmake.conf
+++ b/mkspecs/qws/linux-avr32-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with avr32-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-cellon-g++/qmake.conf b/mkspecs/qws/linux-cellon-g++/qmake.conf
index 363a3ce..ad66c3c 100644
--- a/mkspecs/qws/linux-cellon-g++/qmake.conf
+++ b/mkspecs/qws/linux-cellon-g++/qmake.conf
@@ -6,8 +6,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-dm7000-g++/qmake.conf b/mkspecs/qws/linux-dm7000-g++/qmake.conf
index aea2647..c897091 100644
--- a/mkspecs/qws/linux-dm7000-g++/qmake.conf
+++ b/mkspecs/qws/linux-dm7000-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for linux-dm7000-g++, for Dream Multimedia's DM7000S
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-dm800-g++/qmake.conf b/mkspecs/qws/linux-dm800-g++/qmake.conf
index fca93b4..002e4c7 100644
--- a/mkspecs/qws/linux-dm800-g++/qmake.conf
+++ b/mkspecs/qws/linux-dm800-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for linux-dm800-g++, for Dream Multimedia's DM800
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-generic-g++-32/qmake.conf b/mkspecs/qws/linux-generic-g++-32/qmake.conf
index 81af4ab..249c10aa 100644
--- a/mkspecs/qws/linux-generic-g++-32/qmake.conf
+++ b/mkspecs/qws/linux-generic-g++-32/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-generic-g++/qmake.conf b/mkspecs/qws/linux-generic-g++/qmake.conf
index a026e88..e803d0d 100644
--- a/mkspecs/qws/linux-generic-g++/qmake.conf
+++ b/mkspecs/qws/linux-generic-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
load(qt_config)
diff --git a/mkspecs/qws/linux-ipaq-g++/qmake.conf b/mkspecs/qws/linux-ipaq-g++/qmake.conf
index 59f4e6e..f9d33b3 100644
--- a/mkspecs/qws/linux-ipaq-g++/qmake.conf
+++ b/mkspecs/qws/linux-ipaq-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-lsb-g++/qmake.conf b/mkspecs/qws/linux-lsb-g++/qmake.conf
index 8b66228..4b35925 100644
--- a/mkspecs/qws/linux-lsb-g++/qmake.conf
+++ b/mkspecs/qws/linux-lsb-g++/qmake.conf
@@ -3,10 +3,12 @@
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
+
QMAKE_LSB = 1
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-mips-g++/qmake.conf b/mkspecs/qws/linux-mips-g++/qmake.conf
index 3c55342..1a86078 100644
--- a/mkspecs/qws/linux-mips-g++/qmake.conf
+++ b/mkspecs/qws/linux-mips-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with mipsel-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-nacl-g++/qmake.conf b/mkspecs/qws/linux-nacl-g++/qmake.conf
new file mode 100644
index 0000000..83ce65b
--- /dev/null
+++ b/mkspecs/qws/linux-nacl-g++/qmake.conf
@@ -0,0 +1,74 @@
+#
+# qmake configuration for building with nacl-g++
+#
+
+include(../../common/unix.conf)
+include(../../common/qws.conf)
+
+QT = core gui
+
+# copy of ../../common/g++.conf, with modifications:
+
+QMAKE_CC = nacl-gcc
+QMAKE_CXX = nacl-g++
+QMAKE_LINK = nacl-g++
+QMAKE_LINK_SHLIB = nacl-g++
+
+#QMAKE_CC = gcc
+QMAKE_CFLAGS += -pipe -DXP_UNIX -DNACL_STANDALONE=1
+QMAKE_CFLAGS_DEPS += -M
+QMAKE_CFLAGS_WARN_ON += -Wall -W
+QMAKE_CFLAGS_WARN_OFF += -w
+QMAKE_CFLAGS_RELEASE += -O2
+QMAKE_CFLAGS_DEBUG += -g
+QMAKE_CFLAGS_SHLIB += -fPIC
+#QMAKE_CFLAGS_STATIC_LIB += -fPIC
+QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
+QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
+QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
+
+#QMAKE_CXX = g++
+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
+QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
+QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
+QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
+QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
+QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
+QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
+QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
+QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
+QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
+QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+
+#QMAKE_LINK = g++
+#QMAKE_LINK_SHLIB = g++
+QMAKE_LINK_C = gcc
+QMAKE_LINK_C_SHLIB = gcc
+QMAKE_LFLAGS +=
+QMAKE_LFLAGS_RELEASE += -Wl,-O1
+QMAKE_LFLAGS_DEBUG +=
+QMAKE_LFLAGS_APP +=
+QMAKE_LFLAGS_SHLIB += -shared
+QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
+QMAKE_LFLAGS_SONAME += -Wl,-soname,
+QMAKE_LFLAGS_THREAD +=
+QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
+QMAKE_LFLAGS_RPATH = -Wl,-rpath,
+
+QMAKE_LIBS = -lgoogle_nacl_imc -lgoogle_nacl_npruntime -lgoogle_nacl_pgl -lgoogle_nacl_gpu -lpthread -lsrpc
+
+QMAKE_PCH_OUTPUT_EXT = .gch
+
+# -Bsymbolic-functions (ld) support
+QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
+QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
+
+# modifications to linux.conf
+QMAKE_AR = nacl-ar q
+QMAKE_OBJCOPY = nacl-objcopy
+QMAKE_STRIP = nacl-strip
+QMAKE_LIBS_DYNLOAD =
+
+load(qt_config)
diff --git a/mkspecs/qws/linux-nacl-g++/qplatformdefs.h b/mkspecs/qws/linux-nacl-g++/qplatformdefs.h
new file mode 100644
index 0000000..01b26d9
--- /dev/null
+++ b/mkspecs/qws/linux-nacl-g++/qplatformdefs.h
@@ -0,0 +1,175 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#define _POSIX_TIMERS
+
+#include "qglobal.h"
+
+
+#define _POSIX_TIMERS
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+// 1) need to reset default environment if _BSD_SOURCE is defined
+// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0
+// 3) it seems older glibc need this to include the X/Open stuff
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+#include <sys/features.h>
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+//#include <dlfcn.h>
+
+#include <sys/types.h>
+//#include <sys/ioctl.h>
+//#include <sys/ipc.h>
+
+#include <sys/time.h>
+//#include <sys/shm.h>
+//#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+//#include <netinet/in.h>
+#ifndef QT_NO_IPV6IFNAME
+#include <net/if.h>
+#endif
+
+// extra disabling.
+#ifdef __native_client__
+#define QT_NO_FSFILEENGINE
+#define QT_NO_TRANSLATION
+#endif
+
+#ifdef QT_LARGEFILE_SUPPORT
+#define QT_STATBUF struct stat64
+#define QT_STATBUF4TSTAT struct stat64
+#define QT_STAT ::stat64
+#define QT_FSTAT ::fstat64
+#define QT_LSTAT ::lstat64
+#define QT_OPEN ::open64
+#define QT_TRUNCATE ::truncate64
+#define QT_FTRUNCATE ::ftruncate64
+#define QT_LSEEK ::lseek64
+#else
+#define QT_STATBUF struct stat
+#define QT_STATBUF4TSTAT struct stat
+#define QT_STAT ::stat
+#define QT_FSTAT ::fstat
+#define QT_LSTAT ::lstat
+#define QT_OPEN ::open
+#define QT_TRUNCATE ::truncate
+#define QT_FTRUNCATE ::ftruncate
+#define QT_LSEEK ::lseek
+#endif
+
+#ifdef QT_LARGEFILE_SUPPORT
+#define QT_FOPEN ::fopen64
+#define QT_FSEEK ::fseeko64
+#define QT_FTELL ::ftello64
+#define QT_FGETPOS ::fgetpos64
+#define QT_FSETPOS ::fsetpos64
+#define QT_FPOS_T fpos64_t
+#define QT_OFF_T off64_t
+#else
+#define QT_FOPEN ::fopen
+#define QT_FSEEK ::fseek
+#define QT_FTELL ::ftell
+#define QT_FGETPOS ::fgetpos
+#define QT_FSETPOS ::fsetpos
+#define QT_FPOS_T fpos_t
+#define QT_OFF_T long
+#endif
+
+#define QT_STAT_REG S_IFREG
+#define QT_STAT_DIR S_IFDIR
+#define QT_STAT_MASK S_IFMT
+#define QT_STAT_LNK S_IFLNK
+#define QT_SOCKET_CONNECT ::connect
+#define QT_SOCKET_BIND ::bind
+#define QT_FILENO fileno
+#define QT_CLOSE ::close
+#define QT_READ ::read
+#define QT_WRITE ::write
+#define QT_ACCESS ::access
+#define QT_GETCWD ::getcwd
+#define QT_CHDIR ::chdir
+#define QT_MKDIR ::mkdir
+#define QT_RMDIR ::rmdir
+#define QT_OPEN_LARGEFILE O_LARGEFILE
+#define QT_OPEN_RDONLY O_RDONLY
+#define QT_OPEN_WRONLY O_WRONLY
+#define QT_OPEN_RDWR O_RDWR
+#define QT_OPEN_CREAT O_CREAT
+#define QT_OPEN_TRUNC O_TRUNC
+#define QT_OPEN_APPEND O_APPEND
+
+#define QT_SIGNAL_RETTYPE void
+#define QT_SIGNAL_ARGS int
+#define QT_SIGNAL_IGNORE SIG_IGN
+
+#if defined(__GLIBC__) && (__GLIBC__ >= 2)
+#define QT_SOCKLEN_T socklen_t
+#else
+#define QT_SOCKLEN_T int
+#endif
+
+#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+#endif
+
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/qws/linux-powerpc-g++/qmake.conf b/mkspecs/qws/linux-powerpc-g++/qmake.conf
index e1926b4..6a6310a 100644
--- a/mkspecs/qws/linux-powerpc-g++/qmake.conf
+++ b/mkspecs/qws/linux-powerpc-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-sh-g++/qmake.conf b/mkspecs/qws/linux-sh-g++/qmake.conf
index 61b57a3..004780a 100644
--- a/mkspecs/qws/linux-sh-g++/qmake.conf
+++ b/mkspecs/qws/linux-sh-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building for SH devices with sh3-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-sh4al-g++/qmake.conf b/mkspecs/qws/linux-sh4al-g++/qmake.conf
index 9caebdf..71f6b3d 100644
--- a/mkspecs/qws/linux-sh4al-g++/qmake.conf
+++ b/mkspecs/qws/linux-sh4al-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building for SH4AL-DSP devices with sh3-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-sharp-g++/qmake.conf b/mkspecs/qws/linux-sharp-g++/qmake.conf
index 083e4e8..6a000b9 100644
--- a/mkspecs/qws/linux-sharp-g++/qmake.conf
+++ b/mkspecs/qws/linux-sharp-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-x86-g++/qmake.conf b/mkspecs/qws/linux-x86-g++/qmake.conf
index 7e28d4e..55011ec 100644
--- a/mkspecs/qws/linux-x86-g++/qmake.conf
+++ b/mkspecs/qws/linux-x86-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
load(qt_config)
diff --git a/mkspecs/qws/linux-x86_64-g++/qmake.conf b/mkspecs/qws/linux-x86_64-g++/qmake.conf
index d4e6189..e18d055 100644
--- a/mkspecs/qws/linux-x86_64-g++/qmake.conf
+++ b/mkspecs/qws/linux-x86_64-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/linux-zylonite-g++/qmake.conf b/mkspecs/qws/linux-zylonite-g++/qmake.conf
index 97ae600..f50b70f 100644
--- a/mkspecs/qws/linux-zylonite-g++/qmake.conf
+++ b/mkspecs/qws/linux-zylonite-g++/qmake.conf
@@ -2,8 +2,9 @@
# qmake configuration for building with arm-linux-g++
#
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/qws.conf)
# modifications to g++.conf
diff --git a/mkspecs/qws/macx-generic-g++/qmake.conf b/mkspecs/qws/macx-generic-g++/qmake.conf
index 9096712..8dcbb39 100644
--- a/mkspecs/qws/macx-generic-g++/qmake.conf
+++ b/mkspecs/qws/macx-generic-g++/qmake.conf
@@ -2,6 +2,8 @@
# qmake configuration for macx-g++ with Qtopia Core
#
+include(../../common/unix.conf)
+
MAKEFILE_GENERATOR = UNIX
TARGET_PLATFORM = macx
TEMPLATE = app
@@ -18,18 +20,18 @@ QMAKE_YACCFLAGS = -d
QMAKE_CFLAGS = -pipe
QMAKE_CFLAGS_WARN_ON = -Wall -W
QMAKE_CFLAGS_WARN_OFF =
-QMAKE_CFLAGS_RELEASE = -O2 -fno-default-inline
+QMAKE_CFLAGS_RELEASE = -O2
QMAKE_CFLAGS_DEBUG = -g
QMAKE_CFLAGS_SHLIB = -fPIC
QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
QMAKE_CFLAGS_THREAD = -D_REENTRANT
QMAKE_CFLAGS_HIDESYMS = -fvisibility=hidden
-QMAKE_CXX = $(TB)c++
+QMAKE_CXX = c++
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS -DQT_NO_QWS_TRANSFORMED
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
+QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE -fno-default-inline
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
diff --git a/mkspecs/qws/macx-nacl-g++/qmake.conf b/mkspecs/qws/macx-nacl-g++/qmake.conf
new file mode 100644
index 0000000..0a54b4b
--- /dev/null
+++ b/mkspecs/qws/macx-nacl-g++/qmake.conf
@@ -0,0 +1,95 @@
+#
+# qmake configuration for macx-nacl-g++ with embedded-lite
+#
+
+include(../../common/unix.conf)
+
+MAKEFILE_GENERATOR = UNIX
+TEMPLATE = app
+CONFIG += qt warn_on release link_prl
+QT += core gui
+QMAKE_INCREMENTAL_STYLE = sublib
+QMAKE_EXTENSION_SHLIB = dylib
+
+
+QMAKE_CC = nacl-gcc
+QMAKE_CXX = nacl-g++
+QMAKE_LINK = nacl-g++
+QMAKE_LINK_SHLIB = nacl-g++
+
+#QMAKE_CC = $(TB)cc
+QMAKE_LEX = flex
+QMAKE_LEXFLAGS =
+QMAKE_YACC = yacc
+QMAKE_YACCFLAGS = -d
+QMAKE_CFLAGS = -pipe -DXP_UNIX -DNACL_STANDALONE=1
+QMAKE_CFLAGS_WARN_ON = -Wall -W
+QMAKE_CFLAGS_WARN_OFF =
+QMAKE_CFLAGS_RELEASE = -O2
+QMAKE_CFLAGS_DEBUG = -g
+QMAKE_CFLAGS_SHLIB = -fPIC
+QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
+QMAKE_CFLAGS_THREAD = -D_REENTRANT
+QMAKE_CFLAGS_HIDESYMS = -fvisibility=hidden
+
+#QMAKE_CXX = $(TB)c++
+QMAKE_CXXFLAGS = $$QMAKE_CFLAGS -DQT_NO_QWS_TRANSFORMED
+QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
+QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
+QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE -fno-default-inline
+QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
+QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
+QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
+QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
+QMAKE_CXXFLAGS_HIDESYMS = $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
+
+QMAKE_INCDIR =
+QMAKE_LIBDIR =
+QMAKE_INCDIR_X11 =
+QMAKE_LIBDIR_X11 =
+QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
+QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
+QMAKE_INCDIR_OPENGL =
+QMAKE_LIBDIR_OPENGL =
+QMAKE_INCDIR_QTOPIA = $(QPEDIR)/include
+QMAKE_LIBDIR_QTOPIA = $(QPEDIR)/lib
+
+#QMAKE_LINK = $$QMAKE_CXX
+#QMAKE_LINK_SHLIB = $$QMAKE_CXX
+QMAKE_LFLAGS =
+QMAKE_LFLAGS_RELEASE =
+QMAKE_LFLAGS_DEBUG =
+QMAKE_LFLAGS_SHLIB = -dynamiclib
+QMAKE_LFLAGS_INCREMENTAL = -undefined suppress -flat_namespace
+QMAKE_LFLAGS_PLUGIN = -bundle
+QMAKE_LFLAGS_SONAME =
+QMAKE_LFLAGS_THREAD =
+
+QMAKE_LIBS = -lgoogle_nacl_imc -lgoogle_nacl_npruntime -lgoogle_nacl_pgl -lgoogle_nacl_gpu -lpthread -lsrpc
+QMAKE_LIBS_X11 =
+QMAKE_LIBS_X11SM =
+QMAKE_LIBS_QT = -lqte
+QMAKE_LIBS_QT_THREAD = -lqte-mt
+QMAKE_LIBS_QT_OPENGL = -lqgl
+QMAKE_LIBS_QTOPIA = -lqpe -lqtopia
+QMAKE_LIBS_THREAD =
+QMAKE_LIBS_OPENGL =
+
+QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
+QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
+
+QMAKE_AR = nacl-ar q
+QMAKE_OBJCOPY = nacl-objcopy
+QMAKE_STRIP = nacl-strip
+QMAKE_RANLIB =
+
+QMAKE_TAR = tar -cf
+QMAKE_GZIP = gzip -9f
+
+QMAKE_COPY = cp -f
+QMAKE_MOVE = mv -f
+QMAKE_DEL_FILE = rm -f
+QMAKE_DEL_DIR = rmdir
+QMAKE_CHK_DIR_EXISTS = test -d
+QMAKE_MKDIR = mkdir -p
+load(qt_config)
diff --git a/mkspecs/qws/macx-nacl-g++/qplatformdefs.h b/mkspecs/qws/macx-nacl-g++/qplatformdefs.h
new file mode 100644
index 0000000..01b26d9
--- /dev/null
+++ b/mkspecs/qws/macx-nacl-g++/qplatformdefs.h
@@ -0,0 +1,175 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#define _POSIX_TIMERS
+
+#include "qglobal.h"
+
+
+#define _POSIX_TIMERS
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+// 1) need to reset default environment if _BSD_SOURCE is defined
+// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0
+// 3) it seems older glibc need this to include the X/Open stuff
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+#include <sys/features.h>
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+//#include <dlfcn.h>
+
+#include <sys/types.h>
+//#include <sys/ioctl.h>
+//#include <sys/ipc.h>
+
+#include <sys/time.h>
+//#include <sys/shm.h>
+//#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+//#include <netinet/in.h>
+#ifndef QT_NO_IPV6IFNAME
+#include <net/if.h>
+#endif
+
+// extra disabling.
+#ifdef __native_client__
+#define QT_NO_FSFILEENGINE
+#define QT_NO_TRANSLATION
+#endif
+
+#ifdef QT_LARGEFILE_SUPPORT
+#define QT_STATBUF struct stat64
+#define QT_STATBUF4TSTAT struct stat64
+#define QT_STAT ::stat64
+#define QT_FSTAT ::fstat64
+#define QT_LSTAT ::lstat64
+#define QT_OPEN ::open64
+#define QT_TRUNCATE ::truncate64
+#define QT_FTRUNCATE ::ftruncate64
+#define QT_LSEEK ::lseek64
+#else
+#define QT_STATBUF struct stat
+#define QT_STATBUF4TSTAT struct stat
+#define QT_STAT ::stat
+#define QT_FSTAT ::fstat
+#define QT_LSTAT ::lstat
+#define QT_OPEN ::open
+#define QT_TRUNCATE ::truncate
+#define QT_FTRUNCATE ::ftruncate
+#define QT_LSEEK ::lseek
+#endif
+
+#ifdef QT_LARGEFILE_SUPPORT
+#define QT_FOPEN ::fopen64
+#define QT_FSEEK ::fseeko64
+#define QT_FTELL ::ftello64
+#define QT_FGETPOS ::fgetpos64
+#define QT_FSETPOS ::fsetpos64
+#define QT_FPOS_T fpos64_t
+#define QT_OFF_T off64_t
+#else
+#define QT_FOPEN ::fopen
+#define QT_FSEEK ::fseek
+#define QT_FTELL ::ftell
+#define QT_FGETPOS ::fgetpos
+#define QT_FSETPOS ::fsetpos
+#define QT_FPOS_T fpos_t
+#define QT_OFF_T long
+#endif
+
+#define QT_STAT_REG S_IFREG
+#define QT_STAT_DIR S_IFDIR
+#define QT_STAT_MASK S_IFMT
+#define QT_STAT_LNK S_IFLNK
+#define QT_SOCKET_CONNECT ::connect
+#define QT_SOCKET_BIND ::bind
+#define QT_FILENO fileno
+#define QT_CLOSE ::close
+#define QT_READ ::read
+#define QT_WRITE ::write
+#define QT_ACCESS ::access
+#define QT_GETCWD ::getcwd
+#define QT_CHDIR ::chdir
+#define QT_MKDIR ::mkdir
+#define QT_RMDIR ::rmdir
+#define QT_OPEN_LARGEFILE O_LARGEFILE
+#define QT_OPEN_RDONLY O_RDONLY
+#define QT_OPEN_WRONLY O_WRONLY
+#define QT_OPEN_RDWR O_RDWR
+#define QT_OPEN_CREAT O_CREAT
+#define QT_OPEN_TRUNC O_TRUNC
+#define QT_OPEN_APPEND O_APPEND
+
+#define QT_SIGNAL_RETTYPE void
+#define QT_SIGNAL_ARGS int
+#define QT_SIGNAL_IGNORE SIG_IGN
+
+#if defined(__GLIBC__) && (__GLIBC__ >= 2)
+#define QT_SOCKLEN_T socklen_t
+#else
+#define QT_SOCKLEN_T int
+#endif
+
+#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+#endif
+
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/sco-cc/qmake.conf b/mkspecs/sco-cc/qmake.conf
index 6eb5ca1..179b774 100644
--- a/mkspecs/sco-cc/qmake.conf
+++ b/mkspecs/sco-cc/qmake.conf
@@ -60,7 +60,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
diff --git a/mkspecs/sco-g++/qmake.conf b/mkspecs/sco-g++/qmake.conf
index d4091ff..9b321a4 100644
--- a/mkspecs/sco-g++/qmake.conf
+++ b/mkspecs/sco-g++/qmake.conf
@@ -61,7 +61,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lsocket -lm
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
diff --git a/mkspecs/solaris-cc-64/qmake.conf b/mkspecs/solaris-cc-64/qmake.conf
index a026756..80709af 100644
--- a/mkspecs/solaris-cc-64/qmake.conf
+++ b/mkspecs/solaris-cc-64/qmake.conf
@@ -83,7 +83,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread -lrt
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
diff --git a/mkspecs/solaris-cc/qmake.conf b/mkspecs/solaris-cc/qmake.conf
index 8a8f1ac..0672841 100644
--- a/mkspecs/solaris-cc/qmake.conf
+++ b/mkspecs/solaris-cc/qmake.conf
@@ -66,7 +66,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread -lrt
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
diff --git a/mkspecs/solaris-g++-64/qmake.conf b/mkspecs/solaris-g++-64/qmake.conf
index 01e331c..7bc7b9f 100644
--- a/mkspecs/solaris-g++-64/qmake.conf
+++ b/mkspecs/solaris-g++-64/qmake.conf
@@ -87,7 +87,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread -lrt
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
diff --git a/mkspecs/solaris-g++/qmake.conf b/mkspecs/solaris-g++/qmake.conf
index c7f6406..be21cdd 100644
--- a/mkspecs/solaris-g++/qmake.conf
+++ b/mkspecs/solaris-g++/qmake.conf
@@ -70,7 +70,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread -lrt
QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
diff --git a/mkspecs/symbian/linux-gcce/features/default_post.prf b/mkspecs/symbian-armcc/features/default_post.prf
index 7aa1f4d..7aa1f4d 100644
--- a/mkspecs/symbian/linux-gcce/features/default_post.prf
+++ b/mkspecs/symbian-armcc/features/default_post.prf
diff --git a/mkspecs/symbian/linux-armcc/qmake.conf b/mkspecs/symbian-armcc/qmake.conf
index f058421..be6af39 100644
--- a/mkspecs/symbian/linux-armcc/qmake.conf
+++ b/mkspecs/symbian-armcc/qmake.conf
@@ -1,10 +1,10 @@
#
-# qmake configuration for symbian/linux-armcc
+# qmake configuration for symbian-armcc
#
-include(../../common/symbian/symbian-makefile.conf)
+include(../common/symbian/symbian-makefile.conf)
-include(../../common/armcc.conf)
+include(../common/armcc.conf)
QMAKE_RVCT_LINKSTYLE = 1
diff --git a/mkspecs/symbian/linux-armcc/qplatformdefs.h b/mkspecs/symbian-armcc/qplatformdefs.h
index 3b7d023..6f084d3 100644
--- a/mkspecs/symbian/linux-armcc/qplatformdefs.h
+++ b/mkspecs/symbian-armcc/qplatformdefs.h
@@ -39,4 +39,4 @@
**
****************************************************************************/
-#include "../../common/symbian/qplatformdefs.h"
+#include "../common/symbian/qplatformdefs.h"
diff --git a/mkspecs/symbian/linux-armcc/features/default_post.prf b/mkspecs/symbian-gcce/features/default_post.prf
index 7aa1f4d..7aa1f4d 100644
--- a/mkspecs/symbian/linux-armcc/features/default_post.prf
+++ b/mkspecs/symbian-gcce/features/default_post.prf
diff --git a/mkspecs/symbian/linux-gcce/qmake.conf b/mkspecs/symbian-gcce/qmake.conf
index faac2f1..a31e6e4 100644
--- a/mkspecs/symbian/linux-gcce/qmake.conf
+++ b/mkspecs/symbian-gcce/qmake.conf
@@ -1,10 +1,11 @@
#
-# qmake configuration for symbian/linux-gcce
+# qmake configuration for symbian-gcce
#
-include(../../common/symbian/symbian-makefile.conf)
+include(../common/symbian/symbian-makefile.conf)
-include(../../common/g++.conf)
+include(../common/g++-unix.conf)
+include(../common/gcc-base-unix.conf)
QMAKE_CC = arm-none-symbianelf-gcc
QMAKE_CXX = arm-none-symbianelf-g++
@@ -50,26 +51,25 @@ QMAKE_LFLAGS_SONAME =
QMAKE_LFLAGS_RPATH = --rpath=
DEFINES += __GCCE__ \
- UNICODE \
- _STLP_NO_EXCEPTION_HEADER
+ UNICODE
QMAKE_LFLAGS_APP += --entry=_E32Startup -u _E32Startup
-QMAKE_LFLAGS_SHLIB += --default-symver --entry _E32Dll
+QMAKE_LFLAGS_SHLIB += -shared --default-symver --entry _E32Dll
QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-gcceExtraFlags = --include=${EPOCROOT}/epoc32/include/gcce/gcce.h -march=armv5t -mapcs -mthumb-interwork -nostdinc -c -msoft-float -T script
+gcceExtraFlags = --include=$${EPOCROOT}epoc32/include/gcce/gcce.h -march=armv5t -mapcs -mthumb-interwork -nostdinc -c -msoft-float -T script
QMAKE_CFLAGS += $${gcceExtraFlags}
QMAKE_CXXFLAGS += $${gcceExtraFlags} -x c++ -fexceptions -fno-unit-at-a-time -fvisibility-inlines-hidden
#If we are not going to link to Qt or qtmain.lib, we need to include this at least once.
isEmpty(QT):contains(TEMPLATE, app) {
- QMAKE_CXXFLAGS += --include=${EPOCROOT}/epoc32/include/stdapis/staticlibinit_gcce.h
+ QMAKE_CXXFLAGS += --include=$${EPOCROOT}epoc32/include/stdapis/staticlibinit_gcce.h
}
QMAKE_LFLAGS += --target1-abs \
--no-undefined \
--nostdlib
-QMAKE_LIBDIR += ${EPOCROOT}/epoc32/release/armv5/udeb/
+QMAKE_LIBDIR += $${EPOCROOT}epoc32/release/armv5/udeb/
# g++ knows the path to the gcc-shipped-libs, ld doesn't. So cache the full path in the generate Makefile
QMAKE_GCC_SEARCH_DIRS =$$system($$QMAKE_CXX -print-search-dirs)
@@ -83,13 +83,11 @@ for(line, QMAKE_GCC_SEARCH_DIRS) {
}
}
-QMAKE_LIBDIR += $${EPOCROOT}/epoc32/release/armv5/lib
+QMAKE_LIBDIR += $${EPOCROOT}epoc32/release/armv5/lib
-INCLUDEPATH = ${EPOCROOT}/epoc32/include/ \
- $${EPOCROOT}/epoc32/include/variant \
- $${EPOCROOT}/epoc32/include/stdapis \
- $${EPOCROOT}/epoc32/include/gcce \
- ${EPOCROOT}/epoc32/include/stdapis/sys \
- ${EPOCROOT}/epoc32/include/stdapis/stlport \
+INCLUDEPATH = $${EPOCROOT}epoc32/include/ \
+ $${EPOCROOT}epoc32/include/variant \
+ $${EPOCROOT}epoc32/include/stdapis \
+ $${EPOCROOT}epoc32/include/gcce \
$$INCLUDEPATH
diff --git a/mkspecs/symbian/linux-gcce/qplatformdefs.h b/mkspecs/symbian-gcce/qplatformdefs.h
index fcbd9ea..8549347 100644
--- a/mkspecs/symbian/linux-gcce/qplatformdefs.h
+++ b/mkspecs/symbian-gcce/qplatformdefs.h
@@ -39,5 +39,5 @@
**
****************************************************************************/
-#include "../../common/symbian/qplatformdefs.h"
+#include "../common/symbian/qplatformdefs.h"
diff --git a/mkspecs/tru64-cxx/qmake.conf b/mkspecs/tru64-cxx/qmake.conf
index d2c6937..afabf3e 100644
--- a/mkspecs/tru64-cxx/qmake.conf
+++ b/mkspecs/tru64-cxx/qmake.conf
@@ -60,7 +60,7 @@ QMAKE_LIBS = -lm
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lrt
diff --git a/mkspecs/tru64-g++/qmake.conf b/mkspecs/tru64-g++/qmake.conf
index f2b8e39..6acd5cd 100644
--- a/mkspecs/tru64-g++/qmake.conf
+++ b/mkspecs/tru64-g++/qmake.conf
@@ -62,7 +62,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lpthread -lexc -lrt
diff --git a/mkspecs/unixware-cc/qmake.conf b/mkspecs/unixware-cc/qmake.conf
index 5f88b80..74478d6 100644
--- a/mkspecs/unixware-cc/qmake.conf
+++ b/mkspecs/unixware-cc/qmake.conf
@@ -64,7 +64,7 @@ QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
diff --git a/mkspecs/unixware-g++/qmake.conf b/mkspecs/unixware-g++/qmake.conf
index 34d6d61..a158d95 100644
--- a/mkspecs/unixware-g++/qmake.conf
+++ b/mkspecs/unixware-g++/qmake.conf
@@ -64,7 +64,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD = -ldl
QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl -lm
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL -lXt
+QMAKE_LIBS_OPENGL = -lGL -lXt
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD = -lthread
diff --git a/mkspecs/unsupported/linux-clang/qmake.conf b/mkspecs/unsupported/linux-clang/qmake.conf
new file mode 100644
index 0000000..6b63b7a
--- /dev/null
+++ b/mkspecs/unsupported/linux-clang/qmake.conf
@@ -0,0 +1,19 @@
+#
+# qmake configuration for linux-clang
+#
+
+MAKEFILE_GENERATOR = UNIX
+TARGET_PLATFORM = unix
+TEMPLATE = app
+CONFIG += qt warn_on release incremental link_prl
+QT += core gui
+
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/clang.conf)
+
+QMAKE_LFLAGS += -ccc-gcc-name g++
+
+load(qt_config)
diff --git a/mkspecs/unsupported/linux-clang/qplatformdefs.h b/mkspecs/unsupported/linux-clang/qplatformdefs.h
new file mode 100644
index 0000000..2dd7b80
--- /dev/null
+++ b/mkspecs/unsupported/linux-clang/qplatformdefs.h
@@ -0,0 +1,102 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#include "qglobal.h"
+
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+// 1) need to reset default environment if _BSD_SOURCE is defined
+// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0
+// 3) it seems older glibc need this to include the X/Open stuff
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+#include <features.h>
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+#include <dlfcn.h>
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+#include <sys/time.h>
+#include <sys/shm.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <netinet/in.h>
+#ifndef QT_NO_IPV6IFNAME
+#include <net/if.h>
+#endif
+
+#define QT_USE_XOPEN_LFS_EXTENSIONS
+#include "../../common/posix/qplatformdefs.h"
+
+#undef QT_SOCKLEN_T
+
+#if defined(__GLIBC__) && (__GLIBC__ >= 2)
+#define QT_SOCKLEN_T socklen_t
+#else
+#define QT_SOCKLEN_T int
+#endif
+
+#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+#endif
+
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/unsupported/linux-host-g++/qmake.conf b/mkspecs/unsupported/linux-host-g++/qmake.conf
index 38849f8..46ecf37 100644
--- a/mkspecs/unsupported/linux-host-g++/qmake.conf
+++ b/mkspecs/unsupported/linux-host-g++/qmake.conf
@@ -101,7 +101,7 @@ QMAKE_LIBS_X11 = -lXext -lX11 -lm
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_EGL = -lEGL
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_OPENGL_ES1 = -lGLES_CM
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
diff --git a/mkspecs/unsupported/linux-scratchbox2-g++/qmake.conf b/mkspecs/unsupported/linux-scratchbox2-g++/qmake.conf
index 28e7754..c362634 100644
--- a/mkspecs/unsupported/linux-scratchbox2-g++/qmake.conf
+++ b/mkspecs/unsupported/linux-scratchbox2-g++/qmake.conf
@@ -18,8 +18,9 @@ CONFIG += qt warn_on release incremental link_prl
QT += core gui
QMAKE_INCREMENTAL_STYLE = sublib
-include(../../common/g++.conf)
include(../../common/linux.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
# modifications to g++.conf
QMAKE_CC = sb2 gcc
diff --git a/mkspecs/unsupported/macx-clang/Info.plist.app b/mkspecs/unsupported/macx-clang/Info.plist.app
new file mode 100644
index 0000000..393b615
--- /dev/null
+++ b/mkspecs/unsupported/macx-clang/Info.plist.app
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
+<plist version="0.9">
+<dict>
+ <key>CFBundleIconFile</key>
+ <string>@ICON@</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleGetInfoString</key>
+ <string>Created by Qt/QMake</string>
+ <key>CFBundleSignature</key>
+ <string>@TYPEINFO@</string>
+ <key>CFBundleExecutable</key>
+ <string>@EXECUTABLE@</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.yourcompany.@EXECUTABLE@</string>
+ <key>NOTE</key>
+ <string>This file was generated by Qt/QMake.</string>
+</dict>
+</plist>
diff --git a/mkspecs/unsupported/macx-clang/Info.plist.lib b/mkspecs/unsupported/macx-clang/Info.plist.lib
new file mode 100644
index 0000000..97609ed
--- /dev/null
+++ b/mkspecs/unsupported/macx-clang/Info.plist.lib
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
+<plist version="0.9">
+<dict>
+ <key>CFBundlePackageType</key>
+ <string>FMWK</string>
+ <key>CFBundleShortVersionString</key>
+ <string>@SHORT_VERSION@</string>
+ <key>CFBundleGetInfoString</key>
+ <string>Created by Qt/QMake</string>
+ <key>CFBundleSignature</key>
+ <string>@TYPEINFO@</string>
+ <key>CFBundleExecutable</key>
+ <string>@LIBRARY@</string>
+ <key>NOTE</key>
+ <string>Please, do NOT change this file -- It was generated by Qt/QMake.</string>
+</dict>
+</plist>
diff --git a/mkspecs/unsupported/macx-clang/qmake.conf b/mkspecs/unsupported/macx-clang/qmake.conf
new file mode 100644
index 0000000..3191344
--- /dev/null
+++ b/mkspecs/unsupported/macx-clang/qmake.conf
@@ -0,0 +1,21 @@
+#
+# qmake configuration for Clang on OS X
+#
+
+MAKEFILE_GENERATOR = UNIX
+TARGET_PLATFORM = macx
+TEMPLATE = app
+CONFIG += qt warn_on release app_bundle incremental global_init_link_order lib_version_first plugin_no_soname link_prl
+QT += core gui
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(../../common/mac.conf)
+include(../../common/gcc-base-macx.conf)
+include(../../common/clang.conf)
+
+QMAKE_OBJCFLAGS_PRECOMPILE = -x objective-c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+QMAKE_OBJCXXFLAGS_PRECOMPILE = -x objective-c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+
+load(qt_config)
diff --git a/mkspecs/unsupported/macx-clang/qplatformdefs.h b/mkspecs/unsupported/macx-clang/qplatformdefs.h
new file mode 100644
index 0000000..72f3ac7
--- /dev/null
+++ b/mkspecs/unsupported/macx-clang/qplatformdefs.h
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#include "qglobal.h"
+
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+#define QT_NO_LIBRARY_UNLOAD
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+#include <sys/time.h>
+#include <sys/shm.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <netinet/in.h>
+#ifndef QT_NO_IPV6IFNAME
+#include <net/if.h>
+#endif
+
+#include "../../common/posix/qplatformdefs.h"
+
+#undef QT_OPEN_LARGEFILE
+#undef QT_SOCKLEN_T
+#undef QT_SIGNAL_IGNORE
+
+#define QT_OPEN_LARGEFILE 0
+
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+#define QT_SOCKLEN_T socklen_t
+#else
+#define QT_SOCKLEN_T int
+#endif
+
+#define QT_SIGNAL_IGNORE (void (*)(int))1
+
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+
+#endif // QPLATFORMDEFS_H
diff --git a/mkspecs/unsupported/qnx-g++/qmake.conf b/mkspecs/unsupported/qnx-g++/qmake.conf
index 37e7bce..83c4a26 100644
--- a/mkspecs/unsupported/qnx-g++/qmake.conf
+++ b/mkspecs/unsupported/qnx-g++/qmake.conf
@@ -10,7 +10,8 @@ TEMPLATE = app
CONFIG += qt warn_on release link_prl
QT += core gui
-include(../common/g++.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
include(../common/unix.conf)
QMAKE_CFLAGS_THREAD = -D_REENTRANT
@@ -31,7 +32,7 @@ QMAKE_LIBS =
QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11 -lm -lsocket
QMAKE_LIBS_X11SM = -lSM -lICE
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
QMAKE_LIBS_NETWORK = -lsocket
diff --git a/mkspecs/unsupported/qws/linux-x86-openkode-g++/qmake.conf b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qmake.conf
new file mode 100644
index 0000000..b891c5e
--- /dev/null
+++ b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qmake.conf
@@ -0,0 +1,23 @@
+#
+# qmake configuration for building with linux-g++
+#
+
+include(../../../common/gcc-base-unix.conf)
+include(../../../common/g++-unix.conf)
+include(../../../common/linux.conf)
+include(../../../common/qws.conf)
+
+load(qt_config)
+
+# ### HACK - This should be a configure check
+OPENKODE_DIR = $(OPENKODE_DIR)
+
+QMAKE_INCDIR_OPENGL_ES2 = $${OPENKODE_DIR}/include
+QMAKE_LIBDIR_OPENGL_ES2 = $${OPENKODE_DIR}/lib-target
+QMAKE_LIBS_OPENGL_ES2 = $${QMAKE_RPATH}/$${OPENKODE_DIR}/lib-target -lGLESv2_CM
+
+QMAKE_INCDIR_EGL = $$QMAKE_INCDIR_OPENGL_ES2
+QMAKE_LIBDIR_EGL = $$QMAKE_LIBDIR_OPENGL_ES2
+QMAKE_LIBS_EGL = $${QMAKE_RPATH}/$${OPENKODE_DIR}/lib-target -lEGL
+
+QMAKE_LIBS += $${QMAKE_RPATH}/$${OPENKODE_DIR}/lib-target
diff --git a/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h
new file mode 100644
index 0000000..86d84e8
--- /dev/null
+++ b/mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h
@@ -0,0 +1,42 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "../../../linux-g++/qplatformdefs.h"
diff --git a/mkspecs/unsupported/qws/qnx-generic-g++/qmake.conf b/mkspecs/unsupported/qws/qnx-generic-g++/qmake.conf
index 26de9b7..bb760b2 100644
--- a/mkspecs/unsupported/qws/qnx-generic-g++/qmake.conf
+++ b/mkspecs/unsupported/qws/qnx-generic-g++/qmake.conf
@@ -61,7 +61,6 @@ QMAKE_PCH_OUTPUT_EXT = .gch
QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
-#include(../../common/g++.conf)
include(../../common/unix.conf)
QMAKE_CFLAGS_THREAD = -D_REENTRANT
diff --git a/mkspecs/unsupported/vxworks-ppc-dcc/qmake.conf b/mkspecs/unsupported/vxworks-ppc-dcc/qmake.conf
index e3eb6cd..a3b571b 100644
--- a/mkspecs/unsupported/vxworks-ppc-dcc/qmake.conf
+++ b/mkspecs/unsupported/vxworks-ppc-dcc/qmake.conf
@@ -78,7 +78,7 @@ QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
QMAKE_LIBS_NETWORK = # -lnetwrap # only needed if kernel is missing gethostbyname and friends
diff --git a/mkspecs/unsupported/vxworks-ppc-g++/qmake.conf b/mkspecs/unsupported/vxworks-ppc-g++/qmake.conf
index 80b5f3e..7a77c81 100644
--- a/mkspecs/unsupported/vxworks-ppc-g++/qmake.conf
+++ b/mkspecs/unsupported/vxworks-ppc-g++/qmake.conf
@@ -14,7 +14,8 @@ VXWORKS_ARCH = ppc
VXWORKS_CPU = PPC32
VXWORKS_ARCH_MUNCH = ppc
-include(../../common/g++.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/linux.conf)
QMAKE_CC = cc$$VXWORKS_ARCH_MUNCH
diff --git a/mkspecs/unsupported/vxworks-simpentium-dcc/qmake.conf b/mkspecs/unsupported/vxworks-simpentium-dcc/qmake.conf
index d0aeff6..8bdf1c5 100644
--- a/mkspecs/unsupported/vxworks-simpentium-dcc/qmake.conf
+++ b/mkspecs/unsupported/vxworks-simpentium-dcc/qmake.conf
@@ -78,7 +78,7 @@ QMAKE_LIBS_DYNLOAD =
QMAKE_LIBS_X11 = -lXext -lX11
QMAKE_LIBS_X11SM = -lSM -lICE
QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL = -lGL
QMAKE_LIBS_OPENGL_QT = -lGL
QMAKE_LIBS_THREAD =
QMAKE_LIBS_NETWORK = # -lnet # only needed if kernel is missing gethostbyname and friends
diff --git a/mkspecs/unsupported/vxworks-simpentium-g++/qmake.conf b/mkspecs/unsupported/vxworks-simpentium-g++/qmake.conf
index 83f46c0..2a96a1a 100644
--- a/mkspecs/unsupported/vxworks-simpentium-g++/qmake.conf
+++ b/mkspecs/unsupported/vxworks-simpentium-g++/qmake.conf
@@ -14,7 +14,8 @@ VXWORKS_ARCH = simlinux
VXWORKS_CPU = SIMLINUX
VXWORKS_ARCH_MUNCH = pentium
-include(../../common/g++.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
include(../../common/linux.conf)
QMAKE_CC = cc$$VXWORKS_ARCH_MUNCH