4684c1afe5
[ChangeLog][General Improvements] Qt's buildsystem now detects whether the compiler supports C++14 and experimental support for C++1z. If the compiler supports it, then Qt is automatically compiled using that support. \ This does not apply to user applications built using qmake: those are still built with C++11 support only. To enable support for C++14 in your application, add to your .pro file: CONFIG += c++14 (similarly for C++1z). Change-Id: Ib056b47dde3341ef9a52ffff13ef1f5d01c42596 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
97 lines
3.4 KiB
Plaintext
97 lines
3.4 KiB
Plaintext
#
|
|
# qmake configuration for macx-icc
|
|
#
|
|
# Written for Intel C++ Compiler version 14.0 for OS X
|
|
#
|
|
|
|
MAKEFILE_GENERATOR = UNIX
|
|
CONFIG += app_bundle
|
|
QMAKE_INCREMENTAL_STYLE = sublibs
|
|
QMAKE_COMPILER_DEFINES += __APPLE__ __GNUC__
|
|
|
|
QMAKE_COMPILER = gcc clang intel_icc # icc pretends to be gcc and clang
|
|
|
|
QMAKE_CC = icc
|
|
QMAKE_CFLAGS =
|
|
QMAKE_CFLAGS_DEPS = -M
|
|
QMAKE_CFLAGS_WARN_ON = -w1 -Wcheck -wd654,1572,411,873,1125,2259,2261,3280
|
|
QMAKE_CFLAGS_WARN_OFF = -w
|
|
QMAKE_CFLAGS_RELEASE =
|
|
QMAKE_CFLAGS_DEBUG = -g
|
|
QMAKE_CFLAGS_SHLIB = -fPIC -fno-jump-tables
|
|
QMAKE_CFLAGS_STATIC_LIB = $$QMAKE_CFLAGS_SHLIB
|
|
QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
|
|
QMAKE_CFLAGS_THREAD =
|
|
QMAKE_CFLAGS_SPLIT_SECTIONS = -ffunction-sections
|
|
QMAKE_CFLAGS_LTCG = -ipo
|
|
|
|
QMAKE_CFLAGS_SSE2 += -msse2
|
|
QMAKE_CFLAGS_SSE3 += -msse3
|
|
QMAKE_CFLAGS_SSSE3 += -mssse3
|
|
QMAKE_CFLAGS_SSE4_1 += -msse4.1
|
|
QMAKE_CFLAGS_SSE4_2 += -msse4.2
|
|
QMAKE_CFLAGS_AVX += -mavx
|
|
QMAKE_CFLAGS_AVX2 += -march=core-avx2
|
|
|
|
QMAKE_OBJECTIVE_CC = clang
|
|
QMAKE_OBJECTIVE_CFLAGS = -pipe
|
|
QMAKE_OBJECTIVE_CFLAGS_WARN_ON = -Wall -W
|
|
QMAKE_OBJECTIVE_CFLAGS_WARN_OFF = -w
|
|
QMAKE_OBJECTIVE_CFLAGS_RELEASE = -Os
|
|
QMAKE_OBJECTIVE_CFLAGS_DEBUG = -g
|
|
QMAKE_OBJECTIVE_CFLAGS_HIDESYMS = -fvisibility=hidden
|
|
|
|
QMAKE_CXX = icpc
|
|
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_CXXFLAGS_CXX11 = -std=c++11
|
|
QMAKE_CXXFLAGS_CXX14 = -std=c++1y
|
|
QMAKE_CXXFLAGS_CXX1Z = -std=c++1z
|
|
QMAKE_CXXFLAGS_GNUCXX11 = -std=gnu++11
|
|
QMAKE_CXXFLAGS_GNUCXX14 = -std=gnu++1y
|
|
QMAKE_CXXFLAGS_GNUCXX1Z = -std=gnu++1z
|
|
QMAKE_CXXFLAGS_SPLIT_SECTIONS = $$QMAKE_CFLAGS_SPLIT_SECTIONS
|
|
QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
|
|
|
|
QMAKE_LINK = icpc
|
|
QMAKE_LINK_SHLIB = icpc
|
|
QMAKE_LFLAGS = -headerpad_max_install_names
|
|
QMAKE_LFLAGS_RELEASE =
|
|
QMAKE_LFLAGS_DEBUG =
|
|
QMAKE_LFLAGS_SHLIB = -single_module -dynamiclib
|
|
QMAKE_LFLAGS_INCREMENTAL = -undefined suppress -flat_namespace
|
|
QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
|
|
QMAKE_LFLAGS_SONAME = -install_name$${LITERAL_WHITESPACE}
|
|
QMAKE_LFLAGS_THREAD =
|
|
QMAKE_LFLAGS_RPATH = -Wl,-rpath,
|
|
QMAKE_LFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
|
|
|
|
QMAKE_LFLAGS_VERSION = -current_version$${LITERAL_WHITESPACE}
|
|
QMAKE_LFLAGS_COMPAT_VERSION = -compatibility_version$${LITERAL_WHITESPACE}
|
|
|
|
QMAKE_CLEAN = -r $(OBJECTS_DIR)/ti_files
|
|
|
|
# pch support
|
|
CONFIG += icc_pch_style
|
|
QMAKE_PCH_OUTPUT_EXT = .pchi
|
|
QMAKE_CXXFLAGS_USE_PRECOMPILE = -pch-use ${QMAKE_PCH_OUTPUT} -include ${QMAKE_PCH_INPUT}
|
|
QMAKE_CXXFLAGS_PRECOMPILE = -c -pch-create ${QMAKE_PCH_OUTPUT} -include ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_TEMP_OBJECT} ${QMAKE_PCH_TEMP_SOURCE}
|
|
|
|
# Symbol visibility control
|
|
QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
|
|
QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
|
|
|
|
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9
|
|
|
|
include(../common/macx.conf)
|
|
|
|
load(qt_config)
|