| # |
| # Base qmake configuration for ICC on *nix-systems |
| # |
| # Before making changes to this file, please read the comment in |
| # icc-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. |
| # |
| |
| MAKEFILE_GENERATOR = UNIX |
| QMAKE_COMPILER_DEFINES += __GNUC__ |
| |
| QMAKE_COMPILER = gcc intel_icc # icc pretends to be gcc |
| |
| QMAKE_CFLAGS_OPTIMIZE = -O2 |
| QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os |
| |
| QMAKE_CC = icc |
| QMAKE_LEX = flex |
| QMAKE_LEXFLAGS = |
| QMAKE_YACC = yacc |
| QMAKE_YACCFLAGS = -d |
| QMAKE_CFLAGS = |
| QMAKE_CFLAGS_APP = -fPIC |
| QMAKE_CFLAGS_DEPS = -M |
| QMAKE_CFLAGS_WARN_ON = -w1 -Wcheck -wd654,1572,411,873,1125,2259,2261,3280,3373 |
| QMAKE_CFLAGS_WARN_OFF = -w |
| QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE |
| QMAKE_CFLAGS_DEBUG = -O0 -g |
| QMAKE_CFLAGS_SHLIB = -fPIC |
| QMAKE_CFLAGS_STATIC_LIB = $$QMAKE_CFLAGS_SHLIB |
| QMAKE_CFLAGS_SPLIT_SECTIONS = -ffunction-sections -fdata-sections |
| QMAKE_CFLAGS_LTCG = -ipo |
| QMAKE_CFLAGS_DISABLE_LTCG = -no-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 += -march=core-avx |
| QMAKE_CFLAGS_AVX2 += -march=core-avx2 |
| QMAKE_CFLAGS_AVX512F += -march=broadwell -xCOMMON-AVX512 |
| QMAKE_CFLAGS_AVX512CD += -march=broadwell -xCOMMON-AVX512 |
| QMAKE_CFLAGS_AVX512ER += -march=knl |
| QMAKE_CFLAGS_AVX512PF += -march=knl |
| QMAKE_CFLAGS_AVX512DQ += -march=skylake-avx512 |
| QMAKE_CFLAGS_AVX512BW += -march=skylake-avx512 |
| QMAKE_CFLAGS_AVX512VL += -march=skylake-avx512 |
| QMAKE_CFLAGS_AVX512VNNI += -march=cascadelake |
| QMAKE_CFLAGS_AVX512IFMA += -march=icelake-client # technically, cannonlake |
| QMAKE_CFLAGS_AVX512VBMI += -march=icelake-client # ditto |
| QMAKE_CFLAGS_AVX512VBMI2 += -march=icelake-client |
| QMAKE_CFLAGS_AVX512BITALG += -march=icelake-client |
| QMAKE_CFLAGS_AVX512POPCNTDQ += -march=icelake-client |
| QMAKE_CFLAGS_AESNI += -maes |
| QMAKE_CFLAGS_F16C += $$QMAKE_CFLAGS_AVX2 |
| QMAKE_CFLAGS_RDRND += -mrdrnd |
| QMAKE_CFLAGS_RDSEED += -mrdseed |
| QMAKE_CFLAGS_SHANI += -msha |
| QMAKE_CFLAGS_VAES += -mvaes |
| |
| QMAKE_CXX = icpc |
| QMAKE_CXXFLAGS = $$QMAKE_CFLAGS |
| QMAKE_CXXFLAGS_APP = $$QMAKE_CFLAGS_APP |
| 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_SPLIT_SECTIONS = $$QMAKE_CFLAGS_SPLIT_SECTIONS |
| QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions |
| 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_LTCG = $$QMAKE_CFLAGS_LTCG |
| QMAKE_CXXFLAGS_DISABLE_LTCG = $$QMAKE_CFLAGS_DISABLE_LTCG |
| |
| # 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_LINK = icpc |
| QMAKE_LINK_SHLIB = icpc |
| QMAKE_LFLAGS = |
| QMAKE_LFLAGS_RELEASE = |
| QMAKE_LFLAGS_DEBUG = |
| QMAKE_LFLAGS_THREAD = |
| QMAKE_LFLAGS_RPATH = -Wl,-rpath, |
| QMAKE_LFLAGS_CXX11 = |
| QMAKE_LFLAGS_CXX14 = |
| QMAKE_LFLAGS_CXX1Z = |
| QMAKE_LFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG |
| |
| QMAKE_INCDIR = |
| QMAKE_LIBDIR = |
| QMAKE_INCDIR_X11 = |
| QMAKE_LIBDIR_X11 = |
| QMAKE_INCDIR_OPENGL = |
| QMAKE_LIBDIR_OPENGL = |
| |
| QMAKE_CLEAN = -r $(OBJECTS_DIR)/ti_files |