Skip to content

Commit 9ae6f22

Browse files
authored
Automate Putting dylibs to .app directory (#35)
* add a package to automize copying the deps to .app dir * use dylibbundler to put all dylibs into .app * trigger build * debug * debug * Update c-cpp-macos-x86_64.yml * un-comment
1 parent 2d76ee4 commit 9ae6f22

File tree

2 files changed

+4
-37
lines changed

2 files changed

+4
-37
lines changed

.github/workflows/c-cpp-macos-x86_64.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
with:
1717
submodules: 'true'
1818
- name: install-dependencies
19-
run: brew install sdl2 sdl2_image lcms2 freetype v8 openssl@1.1 lua@5.3 jpeg
19+
run: brew install pkg-config sdl2 sdl2_image lcms2 freetype v8 openssl@1.1 lua@5.3 jpeg dylibbundler
2020
- name: configure
2121
run: ./configure
2222
- name: make
@@ -28,3 +28,4 @@ jobs:
2828
with:
2929
name: dotto-development-macos-11-x86_64
3030
path: Dotto.app
31+

package_macosx

Lines changed: 2 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -24,39 +24,5 @@ echo '<?xml version="1.0" encoding="UTF-8"?>
2424
</dict>
2525
</plist>' > $package/Contents/Info.plist
2626

27-
28-
29-
# List from:
30-
# DYLD_PRINT_LIBRARIES=1 DYLD_PRINT_LIBRARIES_POST_LAUNCH=1 ./dotto > /dev/null
31-
32-
declare -a dependencies=(
33-
"/usr/local/opt/libpng/lib/libpng16.16.dylib"
34-
"/usr/local/opt/lua/lib/liblua.dylib"
35-
"/usr/local/opt/freetype/lib/libfreetype.6.dylib"
36-
"/usr/local/opt/jpeg/lib/libjpeg.9.dylib"
37-
"/usr/local/opt/libtiff/lib/libtiff.5.dylib"
38-
"/usr/local/opt/webp/lib/libwebp.7.dylib"
39-
"/usr/local/opt/sdl2/lib/libSDL2-2.0.0.dylib"
40-
"/usr/local/opt/sdl2_image/lib/libSDL2_image-2.0.0.dylib"
41-
"/usr/local/opt/little-cms2/lib/liblcms2.2.dylib"
42-
"/usr/local/opt/openssl/lib/libssl.1.1.dylib"
43-
"/usr/local/opt/openssl/lib/libcrypto.1.1.dylib"
44-
45-
"/usr/local/Cellar/lua@5.3/5.3.6/lib/liblua.dylib"
46-
"/usr/local/Cellar/jpeg/9e/lib/libjpeg.9.dylib"
47-
"/usr/local/Cellar/openssl@1.1/1.1.1s/lib/libssl.1.1.dylib"
48-
"/usr/local/Cellar/openssl@1.1/1.1.1s/lib/libcrypto.1.1.dylib"
49-
)
50-
51-
for srcname in "${dependencies[@]}"
52-
do
53-
filename=$(basename $srcname)
54-
echo "Adding dependency $srcname"
55-
install_name_tool -change $srcname $filename $macos/dotto
56-
cp $srcname $macos
57-
chmod +w "$macos/$filename"
58-
for depname in "${dependencies[@]}"
59-
do
60-
install_name_tool -change $depname $(basename $depname) "$macos/$filename"
61-
done
62-
done
27+
mkdir -p $package/Contents/libs/
28+
dylibbundler -od -b -ns -x $macos/dotto -d $package/Contents/libs/

0 commit comments

Comments
 (0)