diff options
author | Christian Fetzer <fetzer.ch@gmail.com> | 2016-05-04 16:55:30 +0200 |
---|---|---|
committer | Christian Fetzer <fetzer.ch@gmail.com> | 2016-05-04 16:55:30 +0200 |
commit | cf7d61e8016990bf0530d55c38f0904aa34a8080 (patch) | |
tree | d3981451a833d5c05f35c27f9eb6124a2bd4121e /project/cmake/scripts/darwin/macros.cmake | |
parent | 9eb214681218c1151f0d4654cf40a7e903d5ad8d (diff) | |
parent | da0bd4216448043fe46e69bbde619db865da5199 (diff) |
Merge pull request #9716 from fetzerch/cmake_osx_packaging
[cmake] Packaging for OSX
Diffstat (limited to 'project/cmake/scripts/darwin/macros.cmake')
-rw-r--r-- | project/cmake/scripts/darwin/macros.cmake | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/project/cmake/scripts/darwin/macros.cmake b/project/cmake/scripts/darwin/macros.cmake index 4ee17c2ab5..f4e1ce8bce 100644 --- a/project/cmake/scripts/darwin/macros.cmake +++ b/project/cmake/scripts/darwin/macros.cmake @@ -10,6 +10,7 @@ function(core_link_library lib wraplib) set(export -bundle -undefined dynamic_lookup -read_only_relocs suppress -Wl,-alias_list,${CORE_BUILD_DIR}/cores/dll-loader/exports/wrapper.def ${CORE_BUILD_DIR}/${wrapper_obj}) + set(extension ${CMAKE_SHARED_MODULE_SUFFIX}) set(check_arg "") if(TARGET ${lib}) set(target ${lib}) @@ -26,7 +27,8 @@ function(core_link_library lib wraplib) set(export ${export} -Wl,--version-script=${ARGV3}) elseif(check_arg STREQUAL nowrap) - set(export ${data_arg}) + set(export -undefined dynamic_lookup -dynamiclib ${data_arg}) + set(extension ${CMAKE_SHARED_LIBRARY_SUFFIX}) elseif(check_arg STREQUAL extras) foreach(arg ${data_arg}) list(APPEND export ${arg}) @@ -39,19 +41,19 @@ function(core_link_library lib wraplib) # We need to do this handstand first ... separate_arguments(CUSTOM_COMMAND_ARGS_LDFLAGS UNIX_COMMAND "${CMAKE_SHARED_LINKER_FLAGS}") - add_custom_command(OUTPUT ${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX} + add_custom_command(OUTPUT ${wraplib}-${ARCH}${extension} COMMAND ${CMAKE_COMMAND} -E make_directory ${dir} COMMAND ${CMAKE_C_COMPILER} ARGS ${CUSTOM_COMMAND_ARGS_LDFLAGS} ${export} -Wl,-force_load ${link_lib} - -o ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX} + -o ${CMAKE_BINARY_DIR}/${wraplib}-${ARCH}${extension} DEPENDS ${target} wrapper.def wrapper VERBATIM) # Uncomment to create wrap_<lib> targets for debugging #get_filename_component(libname ${wraplib} NAME_WE) - #add_custom_target(wrap_${libname} ALL DEPENDS ${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX}) + #add_custom_target(wrap_${libname} ALL DEPENDS ${wraplib}-${ARCH}${extension}) - list(APPEND WRAP_FILES ${wraplib}-${ARCH}${CMAKE_SHARED_MODULE_SUFFIX}) + list(APPEND WRAP_FILES ${wraplib}-${ARCH}${extension}) set(WRAP_FILES ${WRAP_FILES} PARENT_SCOPE) endfunction() |