diff options
author | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2016-03-16 18:44:18 +0000 |
---|---|---|
committer | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2016-03-16 18:44:18 +0000 |
commit | 8a46c067ed8d06b953fd94a4089a9168c3f82bb2 (patch) | |
tree | fa9af1326f3820bbbc34d6842aa7eebc38639c4c /openmp/runtime/src | |
parent | b5a20f0fec5a656196180d946136bb2a952841b9 (diff) | |
download | bcm5719-llvm-8a46c067ed8d06b953fd94a4089a9168c3f82bb2.tar.gz bcm5719-llvm-8a46c067ed8d06b953fd94a4089a9168c3f82bb2.zip |
[CMake] Fix Windows build problem for CMake versions < 3.3
Building libomp using CMake versions < 3.3 caused a link time error. These
errors occurred because when assembling z_Windows_NT-586_asm.asm, the
definitions: OMPT_SUPPORT, _M_AMD64|_M_IA32 weren't defined on the command line.
To fix the problem, the COMPILE_FLAGS property for the assembly file is appended
to instead of the COMPILE_DEFINITIONS property being set. For whatever reason, the
COMPILE_DEFINITIONS property doesn't pick up the definitions for assembly files
for the older CMake versions.
llvm-svn: 263651
Diffstat (limited to 'openmp/runtime/src')
-rw-r--r-- | openmp/runtime/src/CMakeLists.txt | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/openmp/runtime/src/CMakeLists.txt b/openmp/runtime/src/CMakeLists.txt index a0570300a82..073862c5a2d 100644 --- a/openmp/runtime/src/CMakeLists.txt +++ b/openmp/runtime/src/CMakeLists.txt @@ -183,10 +183,11 @@ if(WIN32) add_dependencies(omp libomp-needed-windows-files) # z_Windows_NT-586_asm.asm requires definitions to be sent via command line # It only needs the architecutre macro and OMPT_SUPPORT=0|1 - libomp_append(LIBOMP_MASM_DEFINITIONS "_M_IA32" IF_TRUE IA32) - libomp_append(LIBOMP_MASM_DEFINITIONS "_M_AMD64" IF_TRUE INTEL64) - libomp_append(LIBOMP_MASM_DEFINITIONS "OMPT_SUPPORT" IF_TRUE_1_0 LIBOMP_OMPT_SUPPORT) - set_source_files_properties(z_Windows_NT-586_asm.asm PROPERTIES COMPILE_DEFINITIONS "${LIBOMP_MASM_DEFINITIONS}") + libomp_append(LIBOMP_MASM_DEFINITIONS "-D_M_IA32" IF_TRUE IA32) + libomp_append(LIBOMP_MASM_DEFINITIONS "-D_M_AMD64" IF_TRUE INTEL64) + libomp_append(LIBOMP_MASM_DEFINITIONS "-DOMPT_SUPPORT" IF_TRUE_1_0 LIBOMP_OMPT_SUPPORT) + libomp_list_to_string("${LIBOMP_MASM_DEFINITIONS}" LIBOMP_MASM_DEFINITIONS) + set_property(SOURCE z_Windows_NT-586_asm.asm APPEND_STRING PROPERTY COMPILE_FLAGS " ${LIBOMP_MASM_DEFINITIONS}") set_source_files_properties(thirdparty/ittnotify/ittnotify_static.c PROPERTIES COMPILE_DEFINITIONS "UNICODE") # Create Windows import library |