jinx.de
jinx.de
Git and DMG build scripts for Xcode
Donnerstag, 15. Januar 2009
My git scripts got a bit updated over the last couple of months so here are my updated files:.gitattributes,.gitignore (iWeb does not like . in front of filenames - rename them to .gitattributes, .gitignore)
If you want to change your Info.plist according to the latest build and also want to use Sparkle you need a build version Script like this:versionscript.perl (Add a new build phase / script phase to your target).
This will rewriteCFBundleVersionfromCFBundleShortVersionStringand create three special keys:
JNXCommitDate,JNXCommitRevision,JNXCommitVersion.
My latest JollysFastVNC Info.plist file looks then like:
<key>CFBundleShortVersionString</key>
<string>0.96.79</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>901506</string>
<key>JNXCommitDate</key>
<string>Thu Jan 15 14:25:49 CET 2009</string>
<key>JNXCommitRevision</key>
<string>f711f82</string>
<key>JNXCommitVersion</key>
<string>901506</string>
The Commit/Bundle version is continuously growing and is just the Year-2000, dayofyear, n-th commit number in the build directory on the commit date. This way this number keeps always increasing. If you have uncommitted work a ‘M’ (modified) is appended. The Info panel of the application then looks like this:
The JNX keys I need for Sparkle and the automated release history and dmg creation. In case you are interested in those build scripts:
Add a new build phase / script phase to your target with the buildDMG script and add the Other Resources directory to the project.
And I almost forgot - you get a final.dmg and the release.dmg inside. The final dmg has the DSYM file and the sparkle update inside ( your users don’t need that ). Archive the final.dmg so you can come back for debugging the exact released application with your debugging symbols.
UPDATE: You can find it on my github page: http://github.com/jollyjinx/jnxfree