diff --git a/CMakeLists.txt b/CMakeLists.txt index af372be63..6487ac420 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -319,11 +319,15 @@ if(BUILD_TESTING) set(TESTOPTS -l ${EXTRATESTOPTS}) set(TESTPROG ${CMAKE_BINARY_DIR}/${PYTHONHOME}/test/regrtest.py) set(TESTPYTHONOPTS ) + set(TESTPYTHONWRAPPER ) + if(APPLE AND BUILD_SHARED) + set(TESTPYTHONWRAPPER env DYLD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/${LIBPYTHON_LIBDIR}) + endif() set(TESTPYTHON $ -Wd -3 -E -tt ${TESTPYTHONOPTS}) include(cmake/UnitTests.cmake) foreach(unittest ${unittests}) - add_test(NAME ${unittest} COMMAND ${TESTPYTHON} ${TESTPROG} ${TESTOPTS} ${unittest}) + add_test(NAME ${unittest} COMMAND ${TESTPYTHONWRAPPER} ${TESTPYTHON} ${TESTPROG} ${TESTOPTS} ${unittest}) endforeach(unittest) endif(BUILD_TESTING) diff --git a/cmake/python/CMakeLists.txt b/cmake/python/CMakeLists.txt index acd36d2e5..0638704e1 100644 --- a/cmake/python/CMakeLists.txt +++ b/cmake/python/CMakeLists.txt @@ -24,9 +24,13 @@ install(TARGETS python EXPORT PythonTargets RUNTIME DESTINATION ${BIN_INSTALL_DI if(UNIX AND PY_VERSION VERSION_GREATER "2.7.4") # Setup landmark allowing to run the interpreter from a build tree. See 'getpath.c' for details. + set(PYTHON_WRAPPER_COMMAND ) + if(APPLE AND BUILD_SHARED) + set(PYTHON_WRAPPER_COMMAND env DYLD_LIBRARY_PATH="${CMAKE_BINARY_DIR}/${LIBPYTHON_LIBDIR}") + endif() add_custom_command( OUTPUT ${BIN_BUILD_DIR}/pybuilddir.txt ${EXTENSION_BUILD_DIR}/_sysconfigdata.py - COMMAND $ -E -S -m sysconfig --generate-posix-vars + COMMAND ${PYTHON_WRAPPER_COMMAND} $ -E -S -m sysconfig --generate-posix-vars COMMAND ${CMAKE_COMMAND} -DBIN_BUILD_DIR:PATH=${BIN_BUILD_DIR} -DPYTHON_BINARY_DIR:PATH=${CMAKE_BINARY_DIR}