780137d585
The Intel whitepaer[1] recommends using the RDSEED over RDRAND whenever present. libstdc++ from GCC 10 will also use it in std::random_device. [ChangeLog][QtCore][QRandomGenerator] The system() random generator will now use the RDSEED instruction on x86 processors whenever available as the first source of random data. It will fall back to RDRAND and then to the system functions, in that order. [1] https://software.intel.com/en-us/articles/intel-digital-random-number-generator-drng-software-implementation-guide Change-Id: I907a43cd9a714da288a2fffd15bab176e54e1975 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
108 lines
3.7 KiB
Plaintext
108 lines
3.7 KiB
Plaintext
#
|
|
# 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_AESNI += -maes
|
|
QMAKE_CFLAGS_F16C += $$QMAKE_CFLAGS_AVX2
|
|
QMAKE_CFLAGS_RDRND += -mrdrnd
|
|
QMAKE_CFLAGS_RDSEED += -mrdseed
|
|
QMAKE_CFLAGS_SHANI += -msha
|
|
|
|
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
|