From ad4c12fe01d47d5b3092865ecdb9f49cf8c79aaf Mon Sep 17 00:00:00 2001 From: Jens Verwiebe Date: Tue, 18 Feb 2014 23:38:48 +0100 Subject: [PATCH] OSX/CMAKE: make linking and bundling of clang omp lib work, Cmake will still not find -fopenmp working, so the user must set WITH_OPENMP and flags manually --- CMakeLists.txt | 6 ++++++ source/creator/CMakeLists.txt | 9 ++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b022233becb..9f096461aa7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1854,6 +1854,12 @@ elseif(APPLE) message(STATUS "OSL not found") endif() endif() + + if(WITH_OPENMP AND CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT ${CMAKE_C_COMPILER_VERSION} VERSION_LESS '3.4') + include_directories(${LIBDIR}/openmp/include) + LINK_DIRECTORIES(${LIBDIR}/openmp/lib) + execute_process(COMMAND cp ${LIBDIR}/openmp/lib/libiomp5.dylib ${CMAKE_BINARY_DIR}/bin/libiomp5.dylib) # needed for imtermediate binaries, due lib id is @loader_path + endif() set(EXETYPE MACOSX_BUNDLE) diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt index 2a355bd5606..a56af902188 100644 --- a/source/creator/CMakeLists.txt +++ b/source/creator/CMakeLists.txt @@ -773,6 +773,13 @@ elseif(APPLE) \${TARGETDIR}/blender.app/Contents/ ) + if(WITH_OPENMP AND CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT ${CMAKE_C_COMPILER_VERSION} VERSION_LESS '3.4') + install( + FILES ${LIBDIR}/openmp/lib/libiomp5.dylib + DESTINATION ${TARGETDIR}/blender.app/Contents/MacOS + ) + endif() + # python if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE AND NOT WITH_PYTHON_FRAMEWORK) # the python zip is first extract as part of the build process, @@ -843,7 +850,7 @@ elseif(APPLE) endif() endif() - + endif() # -----------------------------------------------------------------------------