forked from len0rd/rockbox
themeeditor: Fix dmg deploy steps.
- Fix binary name in Info.plist. - Run dmgbuild as Python module, in some cases it isn't available directly. - Add missing dmgbuild configuration for themeeditor. Change-Id: I2db50959b88283f43e2203cf71b130cdb33103dd
This commit is contained in:
parent
3d983ad3a1
commit
bbd1056afb
3 changed files with 22 additions and 4 deletions
|
@ -73,12 +73,13 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||||
if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
|
if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
|
||||||
message(WARNING "Deploying a Debug build.")
|
message(WARNING "Deploying a Debug build.")
|
||||||
endif()
|
endif()
|
||||||
set(DMGBUILD ${CMAKE_BINARY_DIR}/venv/bin/dmgbuild)
|
set(DMGBUILD ${CMAKE_BINARY_DIR}/venv/bin/python3 -m dmgbuild)
|
||||||
|
set(DMGBUILD_STAMP ${CMAKE_BINARY_DIR}/dmgbuild.stamp)
|
||||||
find_program(MACDEPLOYQT_EXECUTABLE macdeployqt HINTS "${qtbindir}")
|
find_program(MACDEPLOYQT_EXECUTABLE macdeployqt HINTS "${qtbindir}")
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
COMMENT "Setting up dmgbuild virtualenv"
|
COMMENT "Setting up dmgbuild virtualenv"
|
||||||
OUTPUT ${DMGBUILD}
|
OUTPUT ${DMGBUILD_STAMP}
|
||||||
COMMAND python3 -m venv ${CMAKE_BINARY_DIR}/venv
|
COMMAND python3 -m venv ${CMAKE_BINARY_DIR}/venv
|
||||||
COMMAND ${CMAKE_BINARY_DIR}/venv/bin/python -m pip install -q dmgbuild
|
COMMAND ${CMAKE_BINARY_DIR}/venv/bin/python -m pip install -q dmgbuild
|
||||||
)
|
)
|
||||||
|
@ -92,7 +93,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||||
-Dappbundle=${target}.app
|
-Dappbundle=${target}.app
|
||||||
${target} ${CMAKE_BINARY_DIR}/${target}.dmg
|
${target} ${CMAKE_BINARY_DIR}/${target}.dmg
|
||||||
DEPENDS ${target}
|
DEPENDS ${target}
|
||||||
${DMGBUILD}
|
${DMGBUILD_STAMP}
|
||||||
)
|
)
|
||||||
add_custom_target(deploy_${target}
|
add_custom_target(deploy_${target}
|
||||||
DEPENDS ${CMAKE_BINARY_DIR}/${target}.dmg)
|
DEPENDS ${CMAKE_BINARY_DIR}/${target}.dmg)
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<plist version="0.9">
|
<plist version="0.9">
|
||||||
<dict>
|
<dict>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>rbthemeeditor</string>
|
<string>RockboxThemeEditor</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>Theme Editor</string>
|
<string>Theme Editor</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
|
|
17
utils/themeeditor/dmgbuild.cfg
Normal file
17
utils/themeeditor/dmgbuild.cfg
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# Configuration for creating a dmg with dmgbuild
|
||||||
|
# (https://github.com/al45tair/dmgbuild)
|
||||||
|
# Requires at least Python 3.4
|
||||||
|
|
||||||
|
import os
|
||||||
|
import plistlib
|
||||||
|
|
||||||
|
_appbundle = defines['appbundle']
|
||||||
|
_plfile = open(os.path.join(_appbundle, 'Contents/Info.plist'))
|
||||||
|
_pldata = _plfile.read().encode()
|
||||||
|
_plist = plistlib.loads(_pldata)
|
||||||
|
_iconfile = os.path.join(_appbundle, 'Contents/Resources', _plist['CFBundleIconFile'])
|
||||||
|
|
||||||
|
files = [ _appbundle ]
|
||||||
|
icon = _iconfile
|
||||||
|
background = '#c6d6f5'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue