aboutsummaryrefslogtreecommitdiff
path: root/project/cmake
diff options
context:
space:
mode:
authorChristian Fetzer <fetzer.ch@gmail.com>2016-03-08 22:19:57 +0100
committerChristian Fetzer <fetzer.ch@gmail.com>2016-05-04 07:47:07 +0200
commitafb149b86605538919374c185982eca8412e81c9 (patch)
tree937ea203e28066da30fc653496d1346fde13d2a7 /project/cmake
parent468d051544c9194c600746e04b96a9d16d885d68 (diff)
[cmake/osx] OSX packaging
Diffstat (limited to 'project/cmake')
-rw-r--r--project/cmake/installdata/darwin/packaging.txt3
-rw-r--r--project/cmake/scripts/darwin/install.cmake38
2 files changed, 41 insertions, 0 deletions
diff --git a/project/cmake/installdata/darwin/packaging.txt b/project/cmake/installdata/darwin/packaging.txt
new file mode 100644
index 0000000000..8cb2245f38
--- /dev/null
+++ b/project/cmake/installdata/darwin/packaging.txt
@@ -0,0 +1,3 @@
+LICENSE.gpl
+xbmc/platform/darwin/Credits.html
+tools/darwin/packaging/media/osx/icon.iconset/*
diff --git a/project/cmake/scripts/darwin/install.cmake b/project/cmake/scripts/darwin/install.cmake
index e69de29bb2..1f130d7a10 100644
--- a/project/cmake/scripts/darwin/install.cmake
+++ b/project/cmake/scripts/darwin/install.cmake
@@ -0,0 +1,38 @@
+# OSX packaging
+
+set(PACKAGE_OUTPUT_DIR ${CMAKE_BINARY_DIR}/build/${CORE_BUILD_CONFIG})
+
+configure_file(${CORE_SOURCE_DIR}/xbmc/platform/darwin/osx/Info.plist.in
+ ${CMAKE_BINARY_DIR}/xbmc/platform/darwin/osx/Info.plist @ONLY)
+execute_process(COMMAND perl -p -i -e "s/r####/${APP_SCMID}/" ${CMAKE_BINARY_DIR}/xbmc/platform/darwin/osx/Info.plist)
+
+add_custom_target(bundle
+ COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}> ${PACKAGE_OUTPUT_DIR}/${APP_NAME}
+ COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/DllPaths_generated.h
+ ${CMAKE_BINARY_DIR}/xbmc/DllPaths_generated.h
+ COMMAND "ACTION=build"
+ "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}"
+ "TARGET_NAME=${APP_NAME}.app"
+ "APP_NAME=${APP_NAME}"
+ "SRCROOT=${CMAKE_BINARY_DIR}"
+ ${CORE_SOURCE_DIR}/tools/darwin/Support/CopyRootFiles-osx.command
+ COMMAND "XBMC_DEPENDS=${DEPENDS_PATH}"
+ "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}"
+ "TARGET_NAME=${APP_NAME}.app"
+ "APP_NAME=${APP_NAME}"
+ "FULL_PRODUCT_NAME=${APP_NAME}.app"
+ "SRCROOT=${CMAKE_BINARY_DIR}"
+ ${CORE_SOURCE_DIR}/tools/darwin/Support/copyframeworks-osx.command)
+add_dependencies(bundle ${APP_NAME_LC} export-files pack-skins wrap-libraries generate_json_header XBMCHelper)
+
+configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh.in
+ ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/mkdmg-osx.sh @ONLY)
+
+add_custom_target(dmg
+ COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/darwin/packaging/osx/
+ ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx/
+ COMMAND ${CMAKE_COMMAND} -E copy_directory ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/osx/
+ ${CMAKE_BINARY_DIR}/tools/darwin/packaging/media/osx/
+ COMMAND ./mkdmg-osx.sh ${CORE_BUILD_CONFIG}
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/osx)
+add_dependencies(dmg bundle)