summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-02-14 11:33:02 +0100
committerLiang Qi <liang.qi@qt.io>2017-02-14 11:33:02 +0100
commit27432d40f2500b11780398f6c7d67719050dae6c (patch)
tree97f9a60af2d520d66fa7ff802ccddad56e0cadaf /mkspecs
parent071a120400b17eaa0b414a0ed262b0a090908679 (diff)
parent10ecbc4041cb7db004f4ed4d40ce082553d75844 (diff)
Merge remote-tracking branch 'origin/5.8' into 5.9
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/solaris.conf33
-rw-r--r--mkspecs/features/moc.prf2
-rw-r--r--mkspecs/features/qt_configure.prf5
-rw-r--r--mkspecs/solaris-g++-64/qmake.conf90
-rw-r--r--mkspecs/solaris-g++/qmake.conf70
5 files changed, 58 insertions, 142 deletions
diff --git a/mkspecs/common/solaris.conf b/mkspecs/common/solaris.conf
new file mode 100644
index 0000000000..23e26debff
--- /dev/null
+++ b/mkspecs/common/solaris.conf
@@ -0,0 +1,33 @@
+#
+# qmake configuration for common solaris
+#
+
+QMAKE_PLATFORM += solaris
+
+include(unix.conf)
+
+QMAKE_CFLAGS_THREAD = -D_REENTRANT
+QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
+QMAKE_LFLAGS_GCSECTIONS = -Wl,-z,ignore
+
+QMAKE_LFLAGS_REL_RPATH = -Wl,-z,origin
+QMAKE_REL_RPATH_BASE = $ORIGIN
+
+QMAKE_INCDIR_X11 = /usr/X11/include
+QMAKE_INCDIR_OPENGL = /usr/X11/include/mesa
+
+QMAKE_LIBS =
+QMAKE_LIBS_DYNLOAD = -ldl
+QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
+QMAKE_LIBS_NIS =
+QMAKE_LIBS_OPENGL = -lGL
+QMAKE_LIBS_THREAD = -lpthread -lrt
+QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
+
+QMAKE_AR = ar cq
+QMAKE_OBJCOPY = objcopy
+QMAKE_NM = nm -P
+QMAKE_RANLIB =
+
+QMAKE_STRIP = strip
+QMAKE_STRIPFLAGS_LIB +=
diff --git a/mkspecs/features/moc.prf b/mkspecs/features/moc.prf
index 119dc53d20..9719241612 100644
--- a/mkspecs/features/moc.prf
+++ b/mkspecs/features/moc.prf
@@ -57,7 +57,7 @@ defineReplace(mocCmdBase) {
msvc: RET += --compiler-flavor=msvc
isEmpty(MOC_PREDEF_FILE): RET += $$join(QMAKE_COMPILER_DEFINES, " -D", -D)
- else: RET += --include $$moc_predefs.output
+ else: RET += --include $$shell_quote($$moc_predefs.output)
RET += $$incvar $$QMAKE_MOC_OPTIONS
return($$RET)
diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
index 761b037e22..78731595b0 100644
--- a/mkspecs/features/qt_configure.prf
+++ b/mkspecs/features/qt_configure.prf
@@ -718,7 +718,8 @@ defineTest(qtConfTest_compile) {
isEmpty(host): host = false
test_dir = $$QMAKE_CONFIG_TESTS_DIR/$$test
- test_out_dir = $$shadowed($$test_dir)
+ test_base_out_dir = $$shadowed($$QMAKE_CONFIG_TESTS_DIR)
+ test_out_dir = $$test_base_out_dir/$$test
!isEmpty($${1}.pro): \
test_dir = $$test_dir/$$eval($${1}.pro)
test_cmd_base = "$$QMAKE_CD $$system_quote($$system_path($$test_out_dir)) &&"
@@ -779,7 +780,7 @@ defineTest(qtConfTest_compile) {
QMAKE_MAKE = "$$QMAKE_MAKE clean && $$QMAKE_MAKE"
mkpath($$test_out_dir)|error()
- write_file($$test_out_dir/.qmake.cache)|error()
+ write_file($$test_base_out_dir/.qmake.cache)|error()
# add possible command line args
qmake_args += $$qtConfPrepareArgs($$eval($${1}.args)) $$eval($${1}.literal_args)
diff --git a/mkspecs/solaris-g++-64/qmake.conf b/mkspecs/solaris-g++-64/qmake.conf
index 91ffb9193e..f509555ad9 100644
--- a/mkspecs/solaris-g++-64/qmake.conf
+++ b/mkspecs/solaris-g++-64/qmake.conf
@@ -1,79 +1,21 @@
#
-# qmake configuration for solaris-g++64
-#
-# The X11 header files used to be broken on Solaris until patches were
-# released in early 2001 for Solaris 2.6, 7, and 8. On Solaris 2.5.1
-# or non-patched systems -fpermissive works around the incompatibility
-# between GCC 2.95 or better and Solaris - but we still get warnings
-# because we don't use -isystem.
-#
-# From the standards(5) manual page:
-# The XNS4 specification is safe for use only in ILP32 (32-bit)
-# environments and should not be used for LP64 (64-bit)
-# application environments. Use XNS5, which has LP64-clean
-# interfaces that are portable across ILP32 and LP64 environments.
-# [...]
-# For platforms supporting the LP64 (64-bit) programming environment
-# where the SC5.0 Compilers have been installed, SUSv2-conforming LP64
-# applications using XNS5 library calls should be built with command
-# lines of the form:
-# c89 $(getconf XBS5_LP64_OFF64_CFLAGS) -D_XOPEN_SOURCE=500 \
-# $(getconf XBS5_LP64_OFF64_LDFLAGS) foo.c -o foo \
-# $(getconf XBS5_LP64_OFF64_LIBS) -lxnet
-# So it appears that _XOPEN_SOURCE=500 should be defined when building
-# 64-bit applications (on Solaris 7 and better). But then __EXTENSIONS__
-# should be defined as well to recover all the default system interface.
+# qmake configuration for solaris-g++-64
#
MAKEFILE_GENERATOR = UNIX
-QMAKE_PLATFORM = solaris
-
-include(../common/unix.conf)
+CONFIG += incremental
+QMAKE_INCREMENTAL_STYLE = sublib
-QMAKE_COMPILER = gcc
+include(../common/solaris.conf)
-QMAKE_CC = gcc
-QMAKE_LEX = flex
-QMAKE_LEXFLAGS =
-QMAKE_YACC = yacc
-QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS = -m64 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__
-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 = $$QMAKE_CFLAGS_SHLIB
-QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_THREAD = -D_REENTRANT
+QMAKE_CFLAGS = -m64
+QMAKE_LFLAGS = -m64
-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_THREAD = $$QMAKE_CFLAGS_THREAD
+QMAKE_LIBDIR_X11 = /usr/X11/lib/64
+QMAKE_LIBDIR_OPENGL = /usr/X11/lib/64
-QMAKE_INCDIR = /usr/sfw/include
-QMAKE_LIBDIR = /usr/sfw/lib/64
-QMAKE_INCDIR_X11 = /usr/openwin/include
-QMAKE_LIBDIR_X11 = /usr/openwin/lib/64
-QMAKE_INCDIR_OPENGL = /usr/openwin/include
-QMAKE_LIBDIR_OPENGL = /usr/openwin/lib/64
+include(../common/gcc-base.conf)
-QMAKE_LINK = g++
-QMAKE_LINK_SHLIB = g++
-QMAKE_LINK_C = gcc
-QMAKE_LINK_C_SHLIB = gcc
-QMAKE_LFLAGS = -m64
-QMAKE_LFLAGS_RELEASE =
-QMAKE_LFLAGS_DEBUG = -g
QMAKE_LFLAGS_SHLIB = -shared
QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
QMAKE_LFLAGS_SONAME = -h$$LITERAL_WHITESPACE
@@ -81,17 +23,9 @@ QMAKE_LFLAGS_THREAD =
QMAKE_LFLAGS_NOUNDEF = -z defs
QMAKE_LFLAGS_RPATH = -Wl,-R,
-QMAKE_LIBS =
-QMAKE_LIBS_DYNLOAD = -ldl
-QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
-QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGL
-QMAKE_LIBS_THREAD = -lpthread -lrt
-QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
+include(../common/g++-base.conf)
-QMAKE_AR = ar cq
-QMAKE_OBJCOPY = objcopy
-QMAKE_NM = nm -P
-QMAKE_RANLIB =
+QMAKE_LFLAGS_RELEASE =
+QMAKE_LFLAGS_DEBUG = -g
load(qt_config)
diff --git a/mkspecs/solaris-g++/qmake.conf b/mkspecs/solaris-g++/qmake.conf
index 594646353d..7c6c9d04a4 100644
--- a/mkspecs/solaris-g++/qmake.conf
+++ b/mkspecs/solaris-g++/qmake.conf
@@ -1,62 +1,18 @@
#
# qmake configuration for solaris-g++
#
-# The X11 header files used to be broken on Solaris until patches were
-# released in early 2001 for Solaris 2.6, 7, and 8. On Solaris 2.5.1
-# or non-patched systems -fpermissive works around the incompatibility
-# between GCC 2.95 or better and Solaris - but we still get warnings
-# because we don't use -isystem.
-#
MAKEFILE_GENERATOR = UNIX
-QMAKE_PLATFORM = solaris
-
-include(../common/unix.conf)
+CONFIG += incremental
+QMAKE_INCREMENTAL_STYLE = sublib
-QMAKE_COMPILER = gcc
+include(../common/solaris.conf)
-QMAKE_CC = gcc
-QMAKE_LEX = flex
-QMAKE_LEXFLAGS =
-QMAKE_YACC = yacc
-QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS =
-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 = $$QMAKE_CFLAGS_SHLIB
-QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_THREAD = -D_REENTRANT
+QMAKE_LIBDIR_X11 = /usr/X11/lib
+QMAKE_LIBDIR_OPENGL = /usr/X11/lib
-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_THREAD = $$QMAKE_CFLAGS_THREAD
+include(../common/gcc-base.conf)
-QMAKE_INCDIR = /usr/sfw/include
-QMAKE_LIBDIR = /usr/sfw/lib
-QMAKE_INCDIR_X11 = /usr/openwin/include
-QMAKE_LIBDIR_X11 = /usr/openwin/lib
-QMAKE_INCDIR_OPENGL = /usr/openwin/include
-QMAKE_LIBDIR_OPENGL = /usr/openwin/lib
-
-QMAKE_LINK = g++
-QMAKE_LINK_SHLIB = g++
-QMAKE_LINK_C = gcc
-QMAKE_LINK_C_SHLIB = gcc
-QMAKE_LFLAGS =
-QMAKE_LFLAGS_RELEASE =
-QMAKE_LFLAGS_DEBUG = -g
QMAKE_LFLAGS_SHLIB = -shared
QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
QMAKE_LFLAGS_SONAME = -h$$LITERAL_WHITESPACE
@@ -64,17 +20,9 @@ QMAKE_LFLAGS_THREAD =
QMAKE_LFLAGS_NOUNDEF = -z defs
QMAKE_LFLAGS_RPATH = -Wl,-R,
-QMAKE_LIBS =
-QMAKE_LIBS_DYNLOAD = -ldl
-QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl
-QMAKE_LIBS_NIS =
-QMAKE_LIBS_OPENGL = -lGL
-QMAKE_LIBS_THREAD = -lpthread -lrt
-QMAKE_LIBS_NETWORK = -lresolv -lsocket -lxnet -lnsl
+include(../common/g++-base.conf)
-QMAKE_AR = ar cq
-QMAKE_OBJCOPY = objcopy
-QMAKE_NM = nm -P
-QMAKE_RANLIB =
+QMAKE_LFLAGS_RELEASE =
+QMAKE_LFLAGS_DEBUG = -g
load(qt_config)