summaryrefslogtreecommitdiffstats
path: root/project/cmake/scripts/ios/Install.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'project/cmake/scripts/ios/Install.cmake')
-rw-r--r--project/cmake/scripts/ios/Install.cmake93
1 files changed, 52 insertions, 41 deletions
diff --git a/project/cmake/scripts/ios/Install.cmake b/project/cmake/scripts/ios/Install.cmake
index 052565f..c49fcd5 100644
--- a/project/cmake/scripts/ios/Install.cmake
+++ b/project/cmake/scripts/ios/Install.cmake
@@ -1,42 +1,54 @@
1# IOS packaging 1# IOS packaging
2 2
3set(PACKAGE_OUTPUT_DIR ${CMAKE_BINARY_DIR}/build/${CORE_BUILD_CONFIG}-iphoneos) 3set(BUNDLE_RESOURCES ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-568h@2x.png
4 ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-667h@2x.png
5 ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-736h@3x.png
6 ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Default-Landscape-736h@3x.png
7 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png
8 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png
9 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png
10 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png
11 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png
12 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png
13 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png
14 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png
15 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png
16 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png
17 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png
18 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png
19 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png
20 ${CORE_SOURCE_DIR}/tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png)
4 21
5file(MAKE_DIRECTORY ${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app) 22if(CMAKE_GENERATOR STREQUAL Xcode)
6set(BUNDLE_RESOURCES xbmc/platform/darwin/ios/Default-568h@2x.png 23 set(RESOURCE_LOCATION ${APP_NAME}.app)
7 xbmc/platform/darwin/ios/Default-667h@2x.png 24else()
8 xbmc/platform/darwin/ios/Default-736h@3x.png 25 set(RESOURCE_LOCATION ".")
9 xbmc/platform/darwin/ios/Default-Landscape-736h@3x.png 26endif()
10 tools/darwin/packaging/media/ios/rounded/AppIcon29x29.png
11 tools/darwin/packaging/media/ios/rounded/AppIcon29x29@2x.png
12 tools/darwin/packaging/media/ios/rounded/AppIcon40x40.png
13 tools/darwin/packaging/media/ios/rounded/AppIcon40x40@2x.png
14 tools/darwin/packaging/media/ios/rounded/AppIcon50x50.png
15 tools/darwin/packaging/media/ios/rounded/AppIcon50x50@2x.png
16 tools/darwin/packaging/media/ios/rounded/AppIcon57x57.png
17 tools/darwin/packaging/media/ios/rounded/AppIcon57x57@2x.png
18 tools/darwin/packaging/media/ios/rounded/AppIcon60x60.png
19 tools/darwin/packaging/media/ios/rounded/AppIcon60x60@2x.png
20 tools/darwin/packaging/media/ios/rounded/AppIcon72x72.png
21 tools/darwin/packaging/media/ios/rounded/AppIcon72x72@2x.png
22 tools/darwin/packaging/media/ios/rounded/AppIcon76x76.png
23 tools/darwin/packaging/media/ios/rounded/AppIcon76x76@2x.png)
24 27
25foreach(resource IN LISTS BUNDLE_RESOURCES) 28target_sources(${APP_NAME_LC} PRIVATE ${BUNDLE_RESOURCES})
26 configure_file(${CORE_SOURCE_DIR}/${resource} ${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app COPYONLY) 29foreach(file IN LISTS BUNDLE_RESOURCES)
30 set_source_files_properties(${file} PROPERTIES MACOSX_PACKAGE_LOCATION ${RESOURCE_LOCATION})
27endforeach() 31endforeach()
28configure_file(${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/English.lproj/InfoPlist.strings
29 ${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app/English.lproj/InfoPlist.strings COPYONLY)
30 32
31configure_file(${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/Info.plist.in 33target_sources(${APP_NAME_LC} PRIVATE ${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/English.lproj/InfoPlist.strings)
32 ${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app/Info.plist @ONLY) 34set_source_files_properties(${CORE_SOURCE_DIR}/xbmc/platform/darwin/ios/English.lproj/InfoPlist.strings PROPERTIES MACOSX_PACKAGE_LOCATION "${RESOURCE_LOCATION}/English.lproj")
35
36# Options for code signing propagated as env vars to Codesign.command via Xcode
37set(IOS_CODE_SIGN_IDENTITY "" CACHE STRING "Code Sign Identity")
38if(IOS_CODE_SIGN_IDENTITY)
39 set_target_properties(${APP_NAME_LC} PROPERTIES XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED TRUE
40 XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ${IOS_CODE_SIGN_IDENTITY})
41endif()
42
43add_custom_command(TARGET ${APP_NAME_LC} POST_BUILD
44 # TODO: Remove in sync with CopyRootFiles-ios expecting the ".bin" file
45 COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}>
46 $<TARGET_FILE_DIR:${APP_NAME_LC}>/${APP_NAME}.bin
33 47
34add_custom_target(bundle
35 COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${APP_NAME_LC}> ${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app/${APP_NAME}.bin
36 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/DllPaths_generated.h 48 COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${CORE_BUILD_DIR}/DllPaths_generated.h
37 ${CMAKE_BINARY_DIR}/xbmc/DllPaths_generated.h 49 ${CMAKE_BINARY_DIR}/xbmc/DllPaths_generated.h
38 COMMAND "ACTION=build" 50 COMMAND "ACTION=build"
39 "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}" 51 "TARGET_BUILD_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
40 "TARGET_NAME=${APP_NAME}.app" 52 "TARGET_NAME=${APP_NAME}.app"
41 "APP_NAME=${APP_NAME}" 53 "APP_NAME=${APP_NAME}"
42 "PRODUCT_NAME=${APP_NAME}" 54 "PRODUCT_NAME=${APP_NAME}"
@@ -44,15 +56,22 @@ add_custom_target(bundle
44 "SRCROOT=${CMAKE_BINARY_DIR}" 56 "SRCROOT=${CMAKE_BINARY_DIR}"
45 ${CORE_SOURCE_DIR}/tools/darwin/Support/CopyRootFiles-ios.command 57 ${CORE_SOURCE_DIR}/tools/darwin/Support/CopyRootFiles-ios.command
46 COMMAND "XBMC_DEPENDS=${DEPENDS_PATH}" 58 COMMAND "XBMC_DEPENDS=${DEPENDS_PATH}"
47 "TARGET_BUILD_DIR=${PACKAGE_OUTPUT_DIR}" 59 "TARGET_BUILD_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
48 "TARGET_NAME=${APP_NAME}.app" 60 "TARGET_NAME=${APP_NAME}.app"
49 "APP_NAME=${APP_NAME}" 61 "APP_NAME=${APP_NAME}"
50 "PRODUCT_NAME=${APP_NAME}" 62 "PRODUCT_NAME=${APP_NAME}"
51 "FULL_PRODUCT_NAME=${APP_NAME}.app" 63 "FULL_PRODUCT_NAME=${APP_NAME}.app"
52 "WRAPPER_EXTENSION=app" 64 "WRAPPER_EXTENSION=app"
53 "SRCROOT=${CMAKE_BINARY_DIR}" 65 "SRCROOT=${CMAKE_BINARY_DIR}"
54 ${CORE_SOURCE_DIR}/tools/darwin/Support/copyframeworks-ios.command) 66 ${CORE_SOURCE_DIR}/tools/darwin/Support/copyframeworks-ios.command
55add_dependencies(bundle ${APP_NAME_LC}) 67 COMMAND "XBMC_DEPENDS_ROOT=${NATIVEPREFIX}/.."
68 "PLATFORM_NAME=${PLATFORM}"
69 "CODESIGNING_FOLDER_PATH=$<TARGET_FILE_DIR:${APP_NAME_LC}>"
70 "BUILT_PRODUCTS_DIR=$<TARGET_FILE_DIR:${APP_NAME_LC}>/.."
71 "WRAPPER_NAME=${APP_NAME}.app"
72 "APP_NAME=${APP_NAME}"
73 ${CORE_SOURCE_DIR}/tools/darwin/Support/Codesign.command
74)
56 75
57set(DEPENDS_ROOT_FOR_XCODE ${NATIVEPREFIX}/..) 76set(DEPENDS_ROOT_FOR_XCODE ${NATIVEPREFIX}/..)
58configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/ios/mkdeb-ios.sh.in 77configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/ios/mkdeb-ios.sh.in
@@ -61,14 +80,6 @@ configure_file(${CORE_SOURCE_DIR}/tools/darwin/packaging/migrate_to_kodi_ios.sh.
61 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/migrate_to_kodi_ios.sh @ONLY) 80 ${CMAKE_BINARY_DIR}/tools/darwin/packaging/migrate_to_kodi_ios.sh @ONLY)
62 81
63add_custom_target(deb 82add_custom_target(deb
64 COMMAND "XBMC_DEPENDS_ROOT=${NATIVEPREFIX}/.."
65 "PLATFORM_NAME=${PLATFORM}"
66 "CODESIGNING_FOLDER_PATH=${PACKAGE_OUTPUT_DIR}/${APP_NAME}.app"
67 "BUILT_PRODUCTS_DIR=${PACKAGE_OUTPUT_DIR}"
68 "WRAPPER_NAME=${APP_NAME}.app"
69 "APP_NAME=${APP_NAME}"
70 "CODE_SIGN_IDENTITY=\"\""
71 ${CORE_SOURCE_DIR}/tools/darwin/Support/Codesign.command
72 COMMAND sh ./mkdeb-ios.sh ${CORE_BUILD_CONFIG} 83 COMMAND sh ./mkdeb-ios.sh ${CORE_BUILD_CONFIG}
73 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/ios) 84 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/tools/darwin/packaging/ios)
74add_dependencies(deb bundle) 85add_dependencies(deb ${APP_NAME_LC})