-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
59 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,40 +1,27 @@ | ||
SET(MACOSX_BUNDLE_ICON_FILE "icon.icns") | ||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME_UCASE}") | ||
SET(MACOSX_BUNDLE_LONG_VERSION_STRING "${VERSION}") | ||
SET(MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME_UCASE}") | ||
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING "${VERSION}") | ||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "${VERSION}") | ||
SET(MACOSX_BUNDLE_COPYRIGHT "${PROJECT_COPYRIGHT}") | ||
SET(MACOSX_BUNDLE_MIMETYPE "application/x-lmms-project") | ||
SET(MACOSX_BUNDLE_MIMETYPE_ICON "project.icns") | ||
SET(MACOSX_BUNDLE_MIMETYPE_ID "io.lmms") | ||
SET(MACOSX_BUNDLE_PROJECT_URL "${PROJECT_URL}") | ||
SET(MACOSX_BUNDLE_DMG_TITLE "${MACOSX_BUNDLE_BUNDLE_NAME} ${MACOSX_BUNDLE_LONG_VERSION_STRING}") | ||
|
||
# TODO: Re-evaluate these | ||
set(MACOSX_BUNDLE_ICON_FILE "icon.icns") | ||
set(MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME_UCASE}") | ||
set(MACOSX_BUNDLE_LONG_VERSION_STRING "${VERSION}") | ||
set(MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME_UCASE}") | ||
set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${VERSION}") | ||
set(MACOSX_BUNDLE_BUNDLE_VERSION "${VERSION}") | ||
set(MACOSX_BUNDLE_COPYRIGHT "${PROJECT_COPYRIGHT}") | ||
set(MACOSX_BUNDLE_MIMETYPE "application/x-lmms-project") | ||
set(MACOSX_BUNDLE_MIMETYPE_ICON "project.icns") | ||
set(MACOSX_BUNDLE_MIMETYPE_ID "io.lmms") | ||
set(MACOSX_BUNDLE_PROJECT_URL "${PROJECT_URL}") | ||
set(MACOSX_BUNDLE_DMG_TITLE "${MACOSX_BUNDLE_BUNDLE_NAME} ${MACOSX_BUNDLE_LONG_VERSION_STRING}") | ||
# appdmg won't allow volume names > 27 char https://github.com/LinusU/node-alias/issues/7 | ||
STRING(SUBSTRING "${MACOSX_BUNDLE_DMG_TITLE}" 0 27 MACOSX_BUNDLE_DMG_TITLE) | ||
string(SUBSTRING "${MACOSX_BUNDLE_DMG_TITLE}" 0 27 MACOSX_BUNDLE_DMG_TITLE) | ||
|
||
CONFIGURE_FILE("lmms.plist.in" "${CMAKE_BINARY_DIR}/Info.plist") | ||
CONFIGURE_FILE("package_apple.sh.in" "${CMAKE_BINARY_DIR}/package_apple.sh" @ONLY) | ||
CONFIGURE_FILE("appdmg.json.in" "${CMAKE_BINARY_DIR}/appdmg.json" @ONLY) | ||
# Resource files | ||
configure_file("lmms.plist.in" "Info.plist") | ||
configure_file("package_apple.sh.in" "package_apple.sh" @ONLY) | ||
configure_file("appdmg.json.in" "_appdmg.json.in" @ONLY) | ||
|
||
# CPack vars | ||
set(CPACK_GENERATOR "DragNDrop" PARENT_SCOPE) | ||
# Disable strip, it causes missing symbols on macOS | ||
set(CPACK_STRIP_FILES false PARENT_SCOPE) | ||
set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION}" PARENT_SCOPE) | ||
set(CPACK_PRE_BUILD_SCRIPTS "${CMAKE_CURRENT_SOURCE_DIR}/CPackApple.cmake" PARENT_SCOPE) | ||
set(CPACK_DMG_VOLUME_NAME "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${VERSION}-mac${APPLE_OS_VER}.dmg" PARENT_SCOPE) | ||
# tiff file is multi-resource (1x & 2x) created programatically using convert | ||
execute_process(COMMAND convert "${CMAKE_SOURCE_DIR}/cmake/apple/*.png" "${CMAKE_BINARY_DIR}/dmg_branding.tiff") | ||
set(CPACK_DMG_BACKGROUND_IMAGE "${CMAKE_BINARY_DIR}/dmg_branding.tiff" PARENT_SCOPE) | ||
# DS_Store contains the Finder layout | ||
# - .DS_Store can be recreated using appdmg appdmg.json lmms.dmg | ||
# - Update path to point to _CPack_Packages/Darwin/DragNDrop/lmms-x-x-x/LMMS.app | ||
# - Find new .DS_Store from the root of the DMG file | ||
set(CPACK_DMG_DS_STORE "${CMAKE_SOURCE_DIR}/cmake/apple/DS_Store" PARENT_SCOPE) | ||
unset(CPACK_RESOURCE_FILE_LICENSE PARENT_SCOPE) | ||
# CPack settings/scripts | ||
configure_file("CPackOptions.cmake.in" "CPackOptions.cmake") | ||
configure_file("CPackPreBuild.cmake.in" "CPackPreBuild.cmake" @ONLY) | ||
|
||
# Additional vars otherwise unexposed to CPack | ||
set(CPACK_BINARY_DIR "${CMAKE_BINARY_DIR}" PARENT_SCOPE) | ||
set(CPACK_DMG_FILE "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${VERSION}-mac${APPLE_OS_VER}.dmg" PARENT_SCOPE) | ||
set(CPACK_GENERATOR "DragNDrop" PARENT_SCOPE) | ||
set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_CURRENT_BINARY_DIR}/CPackOptions.cmake" PARENT_SCOPE) |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Supress license popup when opening DMG | ||
unset(CPACK_RESOURCE_FILE_LICENSE) | ||
# Disable strip, it causes missing symbols on macOS | ||
set(CPACK_STRIP_FILES false) | ||
set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION}") | ||
set(CPACK_PRE_BUILD_SCRIPTS "${CMAKE_CURRENT_BINARY_DIR}/CPackPreBuild.cmake") | ||
set(CPACK_DMG_VOLUME_NAME "${PROJECT_NAME_UCASE} ${VERSION}") | ||
# tiff file is multi-resource (1x & 2x) created programatically using convert | ||
execute_process(COMMAND convert "${CMAKE_CURRENT_SOURCE_DIR}/*.png" "${CMAKE_CURRENT_BINARY_DIR}/background.tiff") | ||
set(CPACK_DMG_BACKGROUND_IMAGE "${CMAKE_CURRENT_BINARY_DIR}/background.tiff") | ||
set(CPACK_DMG_DS_STORE "${CMAKE_CURRENT_SOURCE_DIR}/DS_Store") | ||
set(CPACK_DMG_FILE "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}-${VERSION}-mac${APPLE_OS_VER}.dmg") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Use @VAR@ for immediate expansion (e.g. @CMAKE_SOURCE_DIR@) | ||
# Use ${VAR} for delayed expansion (e.g. ${CMAKE_INSTALL_PREFIX}) | ||
|
||
# Install resource files | ||
file(INSTALL "@CMAKE_CURRENT_BINARY_DIR@/Info.plist" DESTINATION "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") | ||
file(INSTALL "@CMAKE_CURRENT_SOURCE_DIR@/icon.icns" DESTINATION "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/Resources") | ||
file(INSTALL "@CMAKE_CURRENT_SOURCE_DIR@/project.icns" DESTINATION "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/Resources") | ||
|
||
# Updates appdmg.json with CPACK_TEMPORARY_INSTALL_DIRECTORY | ||
# - .DS_Store can be recreated using appdmg appdmg.json lmms.dmg | ||
# - Find new .DS_Store from the root of the DMG file | ||
# - cp /Volumes/lmms-x.x.x/.DS_Store ../cmake/apple/DS_Store | ||
configure_file("@CMAKE_CURRENT_BINARY_DIR@/_appdmg.json.in" "@CMAKE_CURRENT_BINARY_DIR@/appdmg.json") | ||
file(REMOVE "@CMAKE_CURRENT_BINARY_DIR@/_appdmg.json.in") | ||
|
||
# TODO: Port this script to CMake | ||
execute_process(COMMAND chmod u+x @CMAKE_CURRENT_BINARY_DIR@/package_apple.sh) | ||
execute_process(COMMAND @CMAKE_CURRENT_BINARY_DIR@/package_apple.sh ${CPACK_TEMPORARY_INSTALL_DIRECTORY} RESULT_VARIABLE EXIT_CODE) | ||
if(NOT EXIT_CODE EQUAL 0) | ||
message(FATAL_ERROR "Execution of package_apple.sh failed") | ||
endif() |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
{ | ||
"title": "@MACOSX_BUNDLE_DMG_TITLE@", | ||
"background": "@CMAKE_SOURCE_DIR@/cmake/apple/dmg_branding.png", | ||
"background": "@CMAKE_SOURCE_DIR@/cmake/apple/background.png", | ||
"icon-size": 128, | ||
"contents": [ | ||
{ "x": 139, "y": 200, "type": "file", "path": "@CMAKE_BINARY_DIR@/@MACOSX_BUNDLE_BUNDLE_NAME@.app" }, | ||
{ "x": 139, "y": 200, "type": "file", "path": "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/@MACOSX_BUNDLE_BUNDLE_NAME@.app" }, | ||
{ "x": 568, "y": 200, "type": "link", "path": "/Applications" } | ||
] | ||
} |
File renamed without changes
File renamed without changes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters