add CMake project for easier building
This commit is contained in:
parent
f2d2a1886f
commit
b1a2569dff
3 changed files with 406 additions and 0 deletions
38
cmake/PrepUtils.cmake
Normal file
38
cmake/PrepUtils.cmake
Normal file
|
@ -0,0 +1,38 @@
|
|||
if(APPLE)
|
||||
function(PostBuildMacBundle target framework_list lib_list)
|
||||
INCLUDE(BundleUtilities)
|
||||
GET_TARGET_PROPERTY(_BIN_NAME ${target} LOCATION)
|
||||
GET_DOTAPP_DIR(${_BIN_NAME} _BUNDLE_DIR)
|
||||
|
||||
set(_SCRIPT_FILE "${CMAKE_CURRENT_BINARY_DIR}/${target}_prep.cmake")
|
||||
file(WRITE ${_SCRIPT_FILE}
|
||||
"# Generated Script file\n"
|
||||
"include(BundleUtilities)\n"
|
||||
"get_bundle_and_executable(\"\${BUNDLE_APP}\" bundle executable valid)\n"
|
||||
"if(valid)\n"
|
||||
" set(framework_dest \"\${bundle}/Contents/Frameworks\")\n"
|
||||
" foreach(framework_path ${framework_list})\n"
|
||||
" get_filename_component(framework_name \${framework_path} NAME_WE)\n"
|
||||
" file(MAKE_DIRECTORY \"\${framework_dest}/\${framework_name}.framework/Versions/A/\")\n"
|
||||
" copy_resolved_framework_into_bundle(\${framework_path}/Versions/A/\${framework_name} \${framework_dest}/\${framework_name}.framework/Versions/A/\${framework_name})\n"
|
||||
" endforeach()\n"
|
||||
" foreach(lib ${lib_list})\n"
|
||||
" get_filename_component(lib_file \${lib} NAME)\n"
|
||||
" copy_resolved_item_into_bundle(\${lib} \${framework_dest}/\${lib_file})\n"
|
||||
" endforeach()\n"
|
||||
"else()\n"
|
||||
" message(ERROR \"App Not found? \${BUNDLE_APP}\")\n"
|
||||
"endif()\n"
|
||||
"#fixup_bundle(\"\${BUNDLE_APP}\" \"\" \"\${DEP_LIB_DIR}\")\n"
|
||||
)
|
||||
|
||||
ADD_CUSTOM_COMMAND(TARGET ${target}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -DBUNDLE_APP="${_BUNDLE_DIR}" -P "${_SCRIPT_FILE}"
|
||||
)
|
||||
endfunction()
|
||||
else()
|
||||
function(PostBuildMacBundle target framework_list lib_list)
|
||||
# noop
|
||||
endfunction()
|
||||
endif()
|
Loading…
Add table
Add a link
Reference in a new issue