-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmake-osx-dmg.sh
executable file
·55 lines (44 loc) · 2.16 KB
/
make-osx-dmg.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/sh
APPNAME="ALM Firmware Updater"
APPBUNDLE=${APPNAME}.app
APPBUNDLECONTENTS=${APPBUNDLE}/Contents
APPBUNDLEEXE=${APPBUNDLECONTENTS}/MacOS
APPBUNDLERESOURCES=${APPBUNDLECONTENTS}/Resources
APPBUNDLEICON=${APPBUNDLECONTENTS}/Resources
DFUBIN=/usr/local/bin/dfu-util
QTBINPATH=/usr/local/opt/qt5/bin
echo "Creating ${APPBUNDLE}"
cp macosx/icon.png "macosx/${APPNAME}Icon.png"
rm -rf "macosx/${APPNAME}.iconset"
mkdir "macosx/${APPNAME}.iconset"
sips -z 16 16 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/icon_16x16.png"
sips -z 32 32 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/[email protected]"
sips -z 32 32 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/icon_32x32.png"
sips -z 64 64 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/[email protected]"
sips -z 128 128 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/icon_128x128.png"
sips -z 256 256 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/[email protected]"
sips -z 256 256 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/icon_256x256.png"
sips -z 512 512 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/[email protected]"
sips -z 512 512 "macosx/${APPNAME}Icon.png" --out "macosx/${APPNAME}.iconset/icon_512x512.png"
cp "macosx/${APPNAME}Icon.png" "macosx/${APPNAME}.iconset/[email protected]"
iconutil -c icns -o "macosx/${APPNAME}.icns" "macosx/${APPNAME}.iconset"
rm -r "macosx/${APPNAME}.iconset"
rm -rf "${APPBUNDLE}"
mkdir "${APPBUNDLE}"
mkdir "${APPBUNDLE}/Contents"
mkdir "${APPBUNDLE}/Contents/MacOS"
mkdir "${APPBUNDLE}/Contents/Resources"
mkdir "${APPBUNDLE}/Contents/libs"
cp macosx/Info.plist "${APPBUNDLECONTENTS}/"
cp macosx/PkgInfo "${APPBUNDLECONTENTS}/"
cp "macosx/${APPNAME}.icns" "${APPBUNDLEICON}/"
cp alm-fw-update "${APPBUNDLEEXE}/${APPNAME}"
#bundle dfu-util
cp ${DFUBIN} "${APPBUNDLE}/Contents/MacOS/"
chmod a+rw "${APPBUNDLE}/Contents/MacOS/dfu-util"
cd "${APPBUNDLE}"
dylibbundler -od -b -x ./Contents/MacOS/dfu-util -d ./Contents/libs/
cd ..
rm -fr "${APPNAME}".dmg
#finally qt & spit out dmg
/usr/local/opt/qt5/bin/macdeployqt "${APPBUNDLE}" -verbose=2 -dmg