annotate mac/finishup.sh @ 2850:2934b2fdcd8e

Mac/iOS: Add return value to dw_window_set_bitmap(_from_data) in resource refactoring. They now return DW_ERROR_NONE on success, DW_ERROR_UNKNOWN on invalid parameters and DW_ERROR_GENERAL when failing to load the bitmap. This change came when I discovered Xcode UI does not allow subfolders in the copied resources. dwtest has been modified to function in either way... from a compiled app bundle or from the build directory. The API change should not affect apps, but may require changes to other language bindings. Follow ups for the other platforms will be coming shortly.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 14 Nov 2022 20:38:19 +0000
parents b9d373d1ccf5
children ef7a414f9b71
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
443
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
1 #!/bin/sh
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
2 PLATFORM=`uname -s`
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
3
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
4 if [ $PLATFORM = "Darwin" ]
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
5 then
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
6 mkdir -p dwtest.app/Contents/MacOS
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
7 mkdir -p dwtest.app/Contents/Resources
639
06be879f5137 Support for building with GTK+ on Mac OSX
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 443
diff changeset
8
06be879f5137 Support for building with GTK+ on Mac OSX
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 443
diff changeset
9 cp -f $1/mac/Info.plist dwtest.app/Contents
2446
b9d373d1ccf5 Add support for checking the application data directory for the images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2120
diff changeset
10 cp -f $1/mac/PkgInfo dwtest.app/Contents
2850
2934b2fdcd8e Mac/iOS: Add return value to dw_window_set_bitmap(_from_data) in resource
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2446
diff changeset
11 cp -f $1/mac/file.png dwtest.app/Contents/Resources
2934b2fdcd8e Mac/iOS: Add return value to dw_window_set_bitmap(_from_data) in resource
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2446
diff changeset
12 cp -f $1/mac/folder.png dwtest.app/Contents/Resources
2446
b9d373d1ccf5 Add support for checking the application data directory for the images.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2120
diff changeset
13 cp -f $1/image/test.png dwtest.app/Contents/Resources
443
e99cd6e45c0b Need to have a application package directory for binaries to properly run
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
diff changeset
14 cp -f dwtest dwtest.app/Contents/MacOS
2074
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
15 # Check if there is a certificate to sign with...
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
16 if [ ! -f mac/key.crt ]; then
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
17 if [ -f mac/key.rsa ]; then
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
18 # If not we generate a self-signed one for testing purposes
2120
3784795a1e94 Mac: Add support for AdHoc code signing in finishup script.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2074
diff changeset
19 echo "No certificate in mac/key.crt so generating self-signed certificate..."
2074
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
20 openssl req -new -key mac/key.rsa -out mac/key.csr -config mac/openssl.cnf
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
21 openssl x509 -req -days 3650 -in mac/key.csr -signkey mac/key.rsa -out mac/key.crt -extfile mac/openssl.cnf -extensions codesign
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
22 certtool i mac/key.crt k="`pwd`/mac/key.keychain" r=mac/key.rsa c p=moof
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
23 else
2120
3784795a1e94 Mac: Add support for AdHoc code signing in finishup script.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2074
diff changeset
24 echo "No key pair found, cannot generate certificate... signing AdHoc."
3784795a1e94 Mac: Add support for AdHoc code signing in finishup script.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 2074
diff changeset
25 codesign -s "-" dwtest.app/Contents/MacOS/dwtest
2074
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
26 fi
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
27 fi
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
28 if [ -f mac/key.keychain ]; then
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
29 echo "Signing the apllication with certificate in mac/key.crt"
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
30 codesign -s my-signing-identity --keychain mac/key.keychain dwtest.app/Contents/MacOS/dwtest
1a196ada0bc9 Mac: Add safety checks. Check bundleIdentifier is not nil before calling
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents: 879
diff changeset
31 fi
639
06be879f5137 Support for building with GTK+ on Mac OSX
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents: 443
diff changeset
32 fi