Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnkit Meel <ankitjmeel@gmail.com>2020-10-10 14:43:03 +0300
committerAnkit Meel <ankitjmeel@gmail.com>2020-10-10 17:01:03 +0300
commitc68338ee89fbd9e84aea56b1815facdb4bf645e8 (patch)
tree99e515c1005171a96bb58cfbc478fd9aa6e7c11d /build_files
parent4427a67c86450a704bd35b0f7539c0adf152fea2 (diff)
CMake/macOS/OpenMP: copy the library near tests.
For multi-config generators, tests are in `bin/tests/<config>` folder. and OpenMP cannot be found at `@executable_path/../Resources/lib`. So create that folder and put the library there to be used by tests. It is not ideal to copy the library around. When minimum CMake version is changed to 3.12, FindOpenMP by CMake can be used for this whole block of code. Then a nice rpath based solution can be used.
Diffstat (limited to 'build_files')
-rw-r--r--build_files/cmake/platform/platform_apple.cmake8
1 files changed, 8 insertions, 0 deletions
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
index 1eaef149f30..fa64016392c 100644
--- a/build_files/cmake/platform/platform_apple.cmake
+++ b/build_files/cmake/platform/platform_apple.cmake
@@ -375,14 +375,22 @@ if(WITH_OPENMP)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L'${LIBDIR}/openmp/lib' -lomp")
# Copy libomp.dylib to allow executables like datatoc and tests to work.
+ # `@executable_path/../Resources/lib/` is a default dylib search path.
+ # For single config generator datatoc, tests etc.
execute_process(
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/Resources/lib
COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${CMAKE_BINARY_DIR}/Resources/lib/libomp.dylib
)
+ # For multi-config generator datatoc, etc.
execute_process(
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/bin/Resources/lib
COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${CMAKE_BINARY_DIR}/bin/Resources/lib/libomp.dylib
)
+ # For multi-config generator tests.
+ execute_process(
+ COMMAND mkdir -p ${CMAKE_BINARY_DIR}/bin/tests/Resources/lib
+ COMMAND cp -p ${LIBDIR}/openmp/lib/libomp.dylib ${CMAKE_BINARY_DIR}/bin/tests/Resources/lib/libomp.dylib
+ )
endif()
endif()