Changed signing scripts to use stock openssl over the macports version. Signing and automatic updates now work on OS X.

git-svn-id: http://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@335 af15c1b1-3010-417e-b628-4374ebc0bcbd
This commit is contained in:
kristianduske 2010-09-20 06:24:15 +00:00
parent 007a32f925
commit d96679c553
7 changed files with 166 additions and 159 deletions

View file

@ -115,8 +115,8 @@
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 306585760;
PBXWorkspaceStateSaveDate = 306585760;
PBXPerProjectTemplateStateSaveDate = 306655362;
PBXWorkspaceStateSaveDate = 306655362;
};
perUserProjectItems = {
48028D3E12156C670018F743 /* PBXTextBookmark */ = 48028D3E12156C670018F743 /* PBXTextBookmark */;
@ -126,7 +126,6 @@
48134A1D12102F680015BF15 /* PBXTextBookmark */ = 48134A1D12102F680015BF15 /* PBXTextBookmark */;
48134A1E12102F680015BF15 /* PBXTextBookmark */ = 48134A1E12102F680015BF15 /* PBXTextBookmark */;
4845112E1246256F0017BBC3 /* PBXTextBookmark */ = 4845112E1246256F0017BBC3 /* PBXTextBookmark */;
484511301246256F0017BBC3 /* PlistBookmark */ = 484511301246256F0017BBC3 /* PlistBookmark */;
484511C81246277E0017BBC3 /* PBXTextBookmark */ = 484511C81246277E0017BBC3 /* PBXTextBookmark */;
484511D7124628040017BBC3 /* PBXTextBookmark */ = 484511D7124628040017BBC3 /* PBXTextBookmark */;
484511D8124628040017BBC3 /* PBXTextBookmark */ = 484511D8124628040017BBC3 /* PBXTextBookmark */;
@ -138,14 +137,10 @@
484511DF124628040017BBC3 /* PBXTextBookmark */ = 484511DF124628040017BBC3 /* PBXTextBookmark */;
484511E0124628040017BBC3 /* PBXTextBookmark */ = 484511E0124628040017BBC3 /* PBXTextBookmark */;
484511FA124629AC0017BBC3 /* PBXTextBookmark */ = 484511FA124629AC0017BBC3 /* PBXTextBookmark */;
484511FB124629AC0017BBC3 /* PBXTextBookmark */ = 484511FB124629AC0017BBC3 /* PBXTextBookmark */;
4845120412462A140017BBC3 /* PBXTextBookmark */ = 4845120412462A140017BBC3 /* PBXTextBookmark */;
4861FA9012144B5300BBDEF1 /* PBXTextBookmark */ = 4861FA9012144B5300BBDEF1 /* PBXTextBookmark */;
4861FA9212144B5300BBDEF1 /* PBXTextBookmark */ = 4861FA9212144B5300BBDEF1 /* PBXTextBookmark */;
48821E16120DF1150008EE50 /* PBXTextBookmark */ = 48821E16120DF1150008EE50 /* PBXTextBookmark */;
4890A5541205C1FF00452753 /* PBXTextBookmark */ = 4890A5541205C1FF00452753 /* PBXTextBookmark */;
48A3103112439B10008F2B35 /* PBXTextBookmark */ = 48A3103112439B10008F2B35 /* PBXTextBookmark */;
48A3105612439F29008F2B35 /* PBXTextBookmark */ = 48A3105612439F29008F2B35 /* PBXTextBookmark */;
48ADA34D12448DC4008DB120 /* PBXTextBookmark */ = 48ADA34D12448DC4008DB120 /* PBXTextBookmark */;
48ADA38012448FF7008DB120 /* PBXTextBookmark */ = 48ADA38012448FF7008DB120 /* PBXTextBookmark */;
48ADA38A124490B6008DB120 /* PBXTextBookmark */ = 48ADA38A124490B6008DB120 /* PBXTextBookmark */;
@ -158,9 +153,14 @@
48ADA3D512449A40008DB120 /* PBXTextBookmark */ = 48ADA3D512449A40008DB120 /* PBXTextBookmark */;
48ADA3DA12449A40008DB120 /* PBXTextBookmark */ = 48ADA3DA12449A40008DB120 /* PBXTextBookmark */;
48ADA3EB12449C30008DB120 /* PBXTextBookmark */ = 48ADA3EB12449C30008DB120 /* PBXTextBookmark */;
48ADA3EC12449C30008DB120 /* PBXTextBookmark */ = 48ADA3EC12449C30008DB120 /* PBXTextBookmark */;
48ADA3ED12449C30008DB120 /* PBXTextBookmark */ = 48ADA3ED12449C30008DB120 /* PBXTextBookmark */;
48ADECCB1243E81B000AF19C /* PBXTextBookmark */ = 48ADECCB1243E81B000AF19C /* PBXTextBookmark */;
48BB6B1E124731BE001239EF /* PBXTextBookmark */ = 48BB6B1E124731BE001239EF /* PBXTextBookmark */;
48BB6B20124731BE001239EF /* PBXTextBookmark */ = 48BB6B20124731BE001239EF /* PBXTextBookmark */;
48BB6B21124731BE001239EF /* PBXTextBookmark */ = 48BB6B21124731BE001239EF /* PBXTextBookmark */;
48BB6B22124731BE001239EF /* PBXTextBookmark */ = 48BB6B22124731BE001239EF /* PBXTextBookmark */;
48BB6B4D12473484001239EF /* PBXTextBookmark */ = 48BB6B4D12473484001239EF /* PBXTextBookmark */;
48BB6B4E12473484001239EF /* PlistBookmark */ = 48BB6B4E12473484001239EF /* PlistBookmark */;
48BB6B5112473527001239EF /* PlistBookmark */ = 48BB6B5112473527001239EF /* PlistBookmark */;
48F89F411243A3BA00EB68FB /* PBXTextBookmark */ = 48F89F411243A3BA00EB68FB /* PBXTextBookmark */;
48F89F611243AD1E00EB68FB /* PBXTextBookmark */ = 48F89F611243AD1E00EB68FB /* PBXTextBookmark */;
};
@ -265,16 +265,16 @@
};
4830B79E0D464CAE00EF4498 /* Todo.txt */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1335, 364}}";
sepNavIntBoundsRect = "{{0, 0}, {1335, 445}}";
sepNavSelRange = "{980, 0}";
sepNavVisRange = "{0, 980}";
};
};
4834895F120598A7004184BC /* appcast.xml */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1142, 364}}";
sepNavSelRange = "{801, 0}";
sepNavVisRange = "{0, 970}";
sepNavIntBoundsRect = "{{0, 0}, {1142, 445}}";
sepNavSelRange = "{724, 0}";
sepNavVisRange = "{0, 944}";
sepNavWindowFrame = "{{9, 298}, {750, 558}}";
};
};
@ -330,18 +330,6 @@
vrLen = 786;
vrLoc = 0;
};
484511301246256F0017BBC3 /* PlistBookmark */ = {
isa = PlistBookmark;
fRef = 8D1107310486CEB800E47090 /* Info.plist */;
fallbackIsa = PBXBookmark;
isK = 0;
kPath = (
CFBundleVersion,
);
name = /Users/kristian/Dropbox/Dokumente/Code/XCode/QuakeSpasm/MacOSX/Info.plist;
rLen = 0;
rLoc = 9223372036854775807;
};
484511C81246277E0017BBC3 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A4601205A27B00452753 /* SUUpdaterDelegate.h */;
@ -452,23 +440,6 @@
vrLen = 1280;
vrLoc = 2769;
};
484511FB124629AC0017BBC3 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A4611205A27B00452753 /* SUUpdaterDelegate.m */;
rLen = 0;
rLoc = 25;
rType = 1;
};
4845120412462A140017BBC3 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A4611205A27B00452753 /* SUUpdaterDelegate.m */;
name = "SUUpdaterDelegate.m: 29";
rLen = 0;
rLoc = 1018;
rType = 0;
vrLen = 1214;
vrLoc = 775;
};
4847CD3D12057F05000B560F /* QuakeSpasm */ = {
isa = PBXExecutable;
activeArgIndices = (
@ -572,7 +543,7 @@
};
4890A4611205A27B00452753 /* SUUpdaterDelegate.m */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1142, 884}}";
sepNavIntBoundsRect = "{{0, 0}, {1142, 845}}";
sepNavSelRange = "{1018, 0}";
sepNavVisRange = "{775, 1214}";
};
@ -603,16 +574,16 @@
};
4890A5E61205D6D400452753 /* rnotes.css */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1648, 2821}}";
sepNavSelRange = "{3056, 0}";
sepNavVisRange = "{2660, 687}";
sepNavIntBoundsRect = "{{0, 0}, {1142, 2860}}";
sepNavSelRange = "{2978, 0}";
sepNavVisRange = "{2781, 462}";
};
};
4890A5E71205D6D400452753 /* rnotes.html */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1617, 655}}";
sepNavSelRange = "{1183, 0}";
sepNavVisRange = "{0, 1260}";
sepNavIntBoundsRect = "{{0, 0}, {1142, 650}}";
sepNavSelRange = "{577, 0}";
sepNavVisRange = "{250, 1179}";
sepNavWindowFrame = "{{15, 103}, {1368, 950}}";
};
};
@ -630,26 +601,6 @@
sepNavVisRange = "{411, 683}";
};
};
48A3103112439B10008F2B35 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A5E61205D6D400452753 /* rnotes.css */;
name = "rnotes.css: 185";
rLen = 0;
rLoc = 3056;
rType = 0;
vrLen = 687;
vrLoc = 2660;
};
48A3105612439F29008F2B35 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A5E71205D6D400452753 /* rnotes.html */;
name = "rnotes.html: 30";
rLen = 0;
rLoc = 1183;
rType = 0;
vrLen = 1260;
vrLoc = 0;
};
48ADA34D12448DC4008DB120 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 48ADA34E12448DC4008DB120 /* SUAppcast.h */;
@ -763,7 +714,7 @@
hitCount = 0;
ignoreCount = 0;
lineNumber = 15;
modificationTime = 306588164.488446;
modificationTime = 306656386.123739;
originalNumberOfMultipleMatches = 1;
state = 0;
};
@ -807,8 +758,7 @@
hitCount = 0;
ignoreCount = 0;
lineNumber = 25;
location = Sparkle;
modificationTime = 306588164.48923;
modificationTime = 306656386.124303;
originalNumberOfMultipleMatches = 1;
state = 0;
};
@ -897,26 +847,6 @@
vrLen = 954;
vrLoc = 3536;
};
48ADA3EC12449C30008DB120 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4830B79E0D464CAE00EF4498 /* Todo.txt */;
name = "Todo.txt: 15";
rLen = 0;
rLoc = 980;
rType = 0;
vrLen = 980;
vrLoc = 0;
};
48ADA3ED12449C30008DB120 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4834895F120598A7004184BC /* appcast.xml */;
name = "appcast.xml: 16";
rLen = 0;
rLoc = 801;
rType = 0;
vrLen = 970;
vrLoc = 0;
};
48ADEC8E1243D946000AF19C /* Distribution */ = {
activeExec = 0;
};
@ -958,6 +888,78 @@
sepNavVisRange = "{0, 976}";
};
};
48BB6B1E124731BE001239EF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A4611205A27B00452753 /* SUUpdaterDelegate.m */;
name = "SUUpdaterDelegate.m: 29";
rLen = 0;
rLoc = 1018;
rType = 0;
vrLen = 1214;
vrLoc = 775;
};
48BB6B20124731BE001239EF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A5E71205D6D400452753 /* rnotes.html */;
name = "rnotes.html: 22";
rLen = 0;
rLoc = 577;
rType = 0;
vrLen = 1179;
vrLoc = 250;
};
48BB6B21124731BE001239EF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4890A5E61205D6D400452753 /* rnotes.css */;
name = "rnotes.css: 177";
rLen = 0;
rLoc = 2978;
rType = 0;
vrLen = 462;
vrLoc = 2781;
};
48BB6B22124731BE001239EF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4830B79E0D464CAE00EF4498 /* Todo.txt */;
name = "Todo.txt: 15";
rLen = 0;
rLoc = 980;
rType = 0;
vrLen = 980;
vrLoc = 0;
};
48BB6B4D12473484001239EF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 4834895F120598A7004184BC /* appcast.xml */;
name = "appcast.xml: 13";
rLen = 0;
rLoc = 724;
rType = 0;
vrLen = 944;
vrLoc = 0;
};
48BB6B4E12473484001239EF /* PlistBookmark */ = {
isa = PlistBookmark;
fRef = 8D1107310486CEB800E47090 /* Info.plist */;
fallbackIsa = PBXBookmark;
isK = 0;
kPath = (
);
name = /Users/kristian/Dropbox/Dokumente/Code/XCode/QuakeSpasm/MacOSX/Info.plist;
rLen = 0;
rLoc = 9223372036854775807;
};
48BB6B5112473527001239EF /* PlistBookmark */ = {
isa = PlistBookmark;
fRef = 8D1107310486CEB800E47090 /* Info.plist */;
fallbackIsa = PBXBookmark;
isK = 0;
kPath = (
);
name = /Users/kristian/Dropbox/Dokumente/Code/XCode/QuakeSpasm/MacOSX/Info.plist;
rLen = 0;
rLoc = 9223372036854775807;
};
48C85E3A0D3AD10E00797678 /* QuakeArgument.m */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1142, 1053}}";

View file

@ -278,6 +278,7 @@
<string>48348942120595B1004184BC</string>
<string>19C28FACFE9D520D11CA2CBB</string>
<string>1C37FBAC04509CD000000102</string>
<string>48BB6B13124730AB001239EF</string>
<string>1C37FAAC04509CD000000102</string>
<string>1CC0EA4004350EF90041110B</string>
<string>1C77FABC04509CD000000102</string>
@ -285,13 +286,12 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
<integer>3</integer>
<integer>1</integer>
<integer>0</integer>
<integer>67</integer>
<integer>66</integer>
</array>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
<string>{{0, 0}, {215, 697}}</string>
<string>{{0, 510}, {215, 697}}</string>
</dict>
<key>PBXTopSmartGroupGIDs</key>
<array/>
@ -319,14 +319,12 @@
<key>Dock</key>
<array>
<dict>
<key>BecomeActive</key>
<true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>4890A4C11205A7AE00452753</string>
<key>PBXProjectModuleLabel</key>
<string>SUUpdaterDelegate.m</string>
<string>Info.plist</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@ -334,11 +332,11 @@
<key>PBXProjectModuleGUID</key>
<string>4890A4C21205A7AE00452753</string>
<key>PBXProjectModuleLabel</key>
<string>SUUpdaterDelegate.m</string>
<string>Info.plist</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>4845120412462A140017BBC3</string>
<string>48BB6B5112473527001239EF</string>
<key>history</key>
<array>
<string>4890A5541205C1FF00452753</string>
@ -351,8 +349,6 @@
<string>48028D3E12156C670018F743</string>
<string>480BB3A212174CA900939117</string>
<string>480BB3A312174CA900939117</string>
<string>48A3103112439B10008F2B35</string>
<string>48A3105612439F29008F2B35</string>
<string>48F89F411243A3BA00EB68FB</string>
<string>48F89F611243AD1E00EB68FB</string>
<string>48ADECCB1243E81B000AF19C</string>
@ -368,10 +364,7 @@
<string>48ADA3D512449A40008DB120</string>
<string>48ADA3DA12449A40008DB120</string>
<string>48ADA3EB12449C30008DB120</string>
<string>48ADA3EC12449C30008DB120</string>
<string>48ADA3ED12449C30008DB120</string>
<string>4845112E1246256F0017BBC3</string>
<string>484511301246256F0017BBC3</string>
<string>484511C81246277E0017BBC3</string>
<string>484511D7124628040017BBC3</string>
<string>484511D8124628040017BBC3</string>
@ -383,7 +376,12 @@
<string>484511DF124628040017BBC3</string>
<string>484511E0124628040017BBC3</string>
<string>484511FA124629AC0017BBC3</string>
<string>484511FB124629AC0017BBC3</string>
<string>48BB6B1E124731BE001239EF</string>
<string>48BB6B20124731BE001239EF</string>
<string>48BB6B21124731BE001239EF</string>
<string>48BB6B22124731BE001239EF</string>
<string>48BB6B4D12473484001239EF</string>
<string>48BB6B4E12473484001239EF</string>
</array>
</dict>
<key>SplitCount</key>
@ -397,18 +395,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{0, 0}, {1203, 484}}</string>
<string>{{0, 0}, {1203, 477}}</string>
<key>RubberWindowFrame</key>
<string>0 122 1440 756 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
<string>484pt</string>
<string>477pt</string>
</dict>
<dict>
<key>Proportion</key>
<string>226pt</string>
<string>233pt</string>
<key>Tabs</key>
<array>
<dict>
@ -422,7 +420,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{10, 27}, {1203, 199}}</string>
<string>{{10, 27}, {1203, 206}}</string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@ -476,7 +474,7 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
<string>{{10, 27}, {1203, 199}}</string>
<string>{{10, 27}, {1203, 206}}</string>
<key>RubberWindowFrame</key>
<string>0 122 1440 756 0 0 1440 878 </string>
</dict>
@ -506,11 +504,11 @@
</array>
<key>TableOfContents</key>
<array>
<string>484511351246256F0017BBC3</string>
<string>48BB6B15124730AB001239EF</string>
<string>1CA23ED40692098700951B8B</string>
<string>484511361246256F0017BBC3</string>
<string>48BB6B16124730AB001239EF</string>
<string>4890A4C11205A7AE00452753</string>
<string>484511371246256F0017BBC3</string>
<string>48BB6B17124730AB001239EF</string>
<string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string>
@ -660,14 +658,14 @@
</array>
<key>TableOfContents</key>
<array>
<string>484511381246256F0017BBC3</string>
<string>48BB6B24124731BE001239EF</string>
<string>1CCC7628064C1048000F2A68</string>
<string>1CCC7629064C1048000F2A68</string>
<string>484511391246256F0017BBC3</string>
<string>4845113A1246256F0017BBC3</string>
<string>4845113B1246256F0017BBC3</string>
<string>4845113C1246256F0017BBC3</string>
<string>4845113D1246256F0017BBC3</string>
<string>48BB6B25124731BE001239EF</string>
<string>48BB6B26124731BE001239EF</string>
<string>48BB6B27124731BE001239EF</string>
<string>48BB6B28124731BE001239EF</string>
<string>48BB6B29124731BE001239EF</string>
</array>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
@ -701,8 +699,8 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
<string>4845113F1246256F0017BBC3</string>
<string>484511401246256F0017BBC3</string>
<string>48BB6B2B124731BE001239EF</string>
<string>48BB6B2C124731BE001239EF</string>
<string>/Users/kristian/Dropbox/Dokumente/Code/XCode/QuakeSpasm/MacOSX/QuakeSpasm.xcodeproj</string>
</array>
<key>WindowString</key>

View file

@ -654,7 +654,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/bash;
shellScript = "set -o errexit\n\n[ $BUILD_STYLE = Release ] || { echo Distribution target requires \"'Release'\" build style; false; }\n\nVERSION=$(defaults read \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleVersion)\nDOWNLOAD_BASE_URL=\"http://quakespasm.sourceforge.net/sparkle/\"\nRELEASENOTES_URL=\"http://quakespasm.sourceforge.net/sparkle/rnotes.html#version-$VERSION\"\n\nARCHIVE_FILENAME=\"$PROJECT_NAME $VERSION.zip\"\nDOWNLOAD_URL=\"$DOWNLOAD_BASE_URL/$ARCHIVE_FILENAME\"\nKEYCHAIN_PRIVKEY_NAME=\"QuakeSpasm Sparkle Private Key\"\n\nWD=$PWD\ncd \"$BUILT_PRODUCTS_DIR\"\nrm -f \"$PROJECT_NAME\"*.zip\nditto -ck --keepParent \"$PROJECT_NAME.app\" \"$ARCHIVE_FILENAME\"\n\nSIZE=$(stat -f %z \"$ARCHIVE_FILENAME\")\nPUBDATE=$(LC_TIME=en_US date +\"%a, %d %b %G %T %z\")\nSIGNATURE=$(\n\topenssl dgst -sha1 -binary < \"$ARCHIVE_FILENAME\" \\\n\t| openssl dgst -dss1 -sign <(security find-generic-password -g -s \"$KEYCHAIN_PRIVKEY_NAME\" 2>&1 1>/dev/null | perl -pe '($_) = /\"(.+)\"/; s/\\\\012/\\n/g' | perl -MXML::LibXML -e 'print XML::LibXML->new()->parse_file(\"-\")->findvalue(q(//string[preceding-sibling::key[1] = \"NOTE\"]))') \\\n\t| openssl enc -base64 -A\n)\n[ $SIGNATURE ] || { echo Unable to load signing private key with name \"'$KEYCHAIN_PRIVKEY_NAME'\" from keychain; false; }\n\ncat <<EOF\n\t\t<item>\n\t\t\t<title>Version $VERSION</title>\n\t\t\t<sparkle:releaseNotesLink>$RELEASENOTES_URL</sparkle:releaseNotesLink>\n\t\t\t<pubDate>$PUBDATE</pubDate>\n\t\t\t<enclosure\n\t\t\t\turl=\"$DOWNLOAD_URL\"\n\t\t\t\tsparkle:version=\"$VERSION\"\n\t\t\t\ttype=\"application/octet-stream\"\n\t\t\t\tlength=\"$SIZE\"\n\t\t\t\tsparkle:dsaSignature=\"$SIGNATURE\"\n\t\t\t/>\n\t\t</item>\nEOF\n\necho scp \"'$HOME/svn/my-cool-app/build/Release/$ARCHIVE_FILENAME'\" www.example.com:download/\necho scp \"'$WD/appcast.xml'\" www.example.com:web/software/my-cool-app/appcast.xml";
shellScript = "set -o errexit\n\n[ $BUILD_STYLE = Release ] || { echo Distribution target requires \"'Release'\" build style; false; }\n\nVERSION=$(defaults read \"$BUILT_PRODUCTS_DIR/$PROJECT_NAME.app/Contents/Info\" CFBundleVersion)\nDOWNLOAD_BASE_URL=\"http://quakespasm.sourceforge.net/sparkle\"\nRELEASENOTES_URL=\"http://quakespasm.sourceforge.net/sparkle/rnotes.html#version-$VERSION\"\n\nARCHIVE_FILENAME=\"$PROJECT_NAME $VERSION.zip\"\nDOWNLOAD_URL=\"$DOWNLOAD_BASE_URL/$ARCHIVE_FILENAME\"\nKEYCHAIN_PRIVKEY_NAME=\"QuakeSpasm Sparkle Private Key\"\n\nWD=$PWD\ncd \"$BUILT_PRODUCTS_DIR\"\nrm -f \"$PROJECT_NAME\"*.zip\nditto -ck --keepParent \"$PROJECT_NAME.app\" \"$ARCHIVE_FILENAME\"\n\nSIZE=$(stat -f %z \"$ARCHIVE_FILENAME\")\nPUBDATE=$(LC_TIME=en_US date +\"%a, %d %b %G %T %z\")\nSIGNATURE=$(\n\t/usr/bin/openssl dgst -sha1 -binary < \"$ARCHIVE_FILENAME\" \\\n\t| /usr/bin/openssl dgst -dss1 -sign <(security find-generic-password -g -s \"$KEYCHAIN_PRIVKEY_NAME\" 2>&1 1>/dev/null | perl -pe '($_) = /\"(.+)\"/; s/\\\\012/\\n/g' | perl -MXML::LibXML -e 'print XML::LibXML->new()->parse_file(\"-\")->findvalue(q(//string[preceding-sibling::key[1] = \"NOTE\"]))') \\\n\t| /usr/bin/openssl enc -base64\n)\n[ $SIGNATURE ] || { echo Unable to load signing private key with name \"'$KEYCHAIN_PRIVKEY_NAME'\" from keychain; false; }\n\ncat <<EOF\n\t\t<item>\n\t\t\t<title>Version $VERSION</title>\n\t\t\t<sparkle:releaseNotesLink>$RELEASENOTES_URL</sparkle:releaseNotesLink>\n\t\t\t<pubDate>$PUBDATE</pubDate>\n\t\t\t<enclosure\n\t\t\t\turl=\"$DOWNLOAD_URL\"\n\t\t\t\tsparkle:version=\"$VERSION\"\n\t\t\t\ttype=\"application/octet-stream\"\n\t\t\t\tlength=\"$SIZE\"\n\t\t\t\tsparkle:dsaSignature=\"$SIGNATURE\"\n\t\t\t/>\n\t\t</item>\nEOF\n\necho scp \"'$HOME/svn/my-cool-app/build/Release/$ARCHIVE_FILENAME'\" www.example.com:download/\necho scp \"'$WD/appcast.xml'\" www.example.com:web/software/my-cool-app/appcast.xml";
};
/* End PBXShellScriptBuildPhase section */
@ -842,10 +842,8 @@
C01FCF4F08A954540054247B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = (
ppc,
i386,
);
ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)";
ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc";
FRAMEWORK_SEARCH_PATHS = (
"$(HOME)/Library/Frameworks",
/Library/Frameworks,
@ -867,10 +865,8 @@
C01FCF5008A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = (
ppc,
i386,
);
ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)";
ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc";
FRAMEWORK_SEARCH_PATHS = (
"$(HOME)/Library/Frameworks",
/Library/Frameworks,

View file

@ -6,16 +6,15 @@
<description>Most recent changes with links to updates.</description>
<language>en</language>
<item>
<title>Version 0.85.3</title>
<sparkle:releaseNotesLink>http://quakespasm.sourceforge.net/sparkle/rnotes.html#version-0.85.3</sparkle:releaseNotesLink>
<title>Version 0.85.4</title>
<sparkle:releaseNotesLink>http://quakespasm.sourceforge.net/sparkle/rnotes.html#version-0.85.4</sparkle:releaseNotesLink>
<pubDate>Sun, 19 Sep 2010 14:00:00 +0200</pubDate>
<enclosure
url="http://quakespasm.sourceforge.net/sparkle/QuakeSpasm.zip"
sparkle:version="0.85.3"
url="http://quakespasm.sourceforge.net/sparkle/QuakeSpasm 0.85.4.zip"
sparkle:version="0.85.4"
type="application/octet-stream"
length="2794647"
sparkle:dsaSignature="MEQCIHGzFg48WcpygkEUufAJjdyK/SyltYGb3ySkIl+WdpucAiBMrDN+ciZoLo15
NfMndWWhKtCHO3GZIz5AouxP+oUy2A=="
length="2286412"
sparkle:dsaSignature="MC4CFQDtSI8T8itHrvQoLTVG8XE4/qPa3wIVAN9qYIEN8LMpFdoIvLVZl6SxSH3m"
/>
</item>
</channel>

View file

@ -1,20 +1,20 @@
-----BEGIN PUBLIC KEY-----
MIIDRzCCAjoGByqGSM44BAEwggItAoIBAQCxeSl5tVYb6wlicfU+CceZFT2letlW
ZZzSII10wojpCUaaxOLXUZnPOp/eVk2/SiudURErLZAJqZHfDtuWmoTIFprcHQA8
aUTZ1FMMywTHjxKLI9AQvpXk0fNDHZVFOAH1hlRAq8JEmogEEUVtM8T6vp9AVOim
4zGyaBqffeQiZWATB9OdYhiw2bIaG+Lk6A47/T/u9qiSquulDHX1ME2QLewb04vm
5wYSI+nw71DHeObvDI/PECCdWWSkT1DPJLQanPiGi70tWNx2GmSutWGQOhdduAAk
x0mOT7q0Z0kOhNSjdEr2gyJEeLOkorvFFYjBYiiOb40/9ZWIvvG32B+NAiEA1uHb
McyKA1Z3TqpUEYlcHsaZk5LnvxQoi5IbnQNMlPcCggEBAIxOnXjSrKGHQX8jrIaq
FzeI722ZVkNEfofqtw1XbxzmNObEdL+HUXt3PnpqfZmjgWY3dezS9ajNHZY8Dw00
2A//lwUZe4vWXUO74y6m1nCGICbyQ5yIUsfLspyebpdJf6uL64RLaMUo8cYDrLDO
gJblkpEPjZpH8PprPlSY9NY38xh1K434tcu1OVckwJPByGS7qKVtXQHxJEH2MfXi
K7dEiBXCPb1jMCPwbc+8HhmU+tZgaut2f8l4bNtj3aMqsc7vw5JCHW6lQ2jnz9V1
5gVUXdXgM2ejVYuZCncl/Im7x9VnDHiJxKGyjkgam21qQwr7JdNDoT50+QYRFm6Z
5B4DggEFAAKCAQAiGtBsOo1qw1vvpfK7qpCiA1tk2RiSiA8KTgVjMSgPph16p/kn
qIiHrxrIxDJ1VHwTeDwBohIZAyF8QHqHfCKiavEGn5jbJ6i26GziFGB+vsXsfl4l
pVdxHqtcDaayfcZtJyRwyoYjXROae3XvbsJABZk5eg8vfw2QqnJ7twNbu8zgaspV
To7FNWqJcRkiN4u+Z4FqNRvEc244paDLj3R4bxVjffY+iaxfccjh88esOp5aQgzF
K7lO6dJGappESG+7GCECMAAjMGapWWHOaB4iXtNr3fBTcsgl66nRWscOQu1/L+BI
3CWcXxEMcjs2eIDrznW1vlyNrO9uUIthnvAW
MIIDPDCCAi4GByqGSM44BAEwggIhAoIBAQDmD9TaY7gmdqcI6C+F7vj2T9ypZKzE
3aCg0oVPJW6gdg1uZpp2yyYKAzt7CvhIEpg05BgMRMsNPxo6ilEIOe7iEI9ycOI0
gSCpvDShfTWDMu6TXLXf4p2REUFXvTI5SXc+W1ULH9k44mgWl0V07caC7vcnOGye
G2ONzX0lXsRe5ldUdK+BfU9p+ot8gczbGchprCyRKjj1qphmix/wntXr5jBacbS2
S7JpwTmjHjL2x9s1k9e37ytW4AWv1fKnpewQlPCOJxAIc09Ro0u8atOcIuib9MKl
N3q6b3lxqWEGbkQSN+aJKHMPHFoiToms5vWPXztlbbTFS6EL2md+sGBpAhUA80uZ
mgTQxA98IoWH3+FvhV5R+NECggEBAL5z8J5k1c8aHAxzAyTFilSnzZcb9i6d5zd3
2N3VzNpg2GLvHD5uCxJlpNjuhrUIIMzPgffJN/DvJCFq5pV5zz0oGzaZYraNV304
4idEuKhRDRV/fl5QoCg+px7bnJnKfqC9+Pzh/ZJJysdaeoO7b/JbPa+Uj34TIk+H
W1Cp8lxaAJEeh7Q7crNtQvjyvo8/D8SSRJvvmVUqA/kiTltDjtv65GHSPMnx3CGz
WLt/qBd6cmfLxO7i5zvOVILWS518e5gjpVDW0mn5v6GXb4AGoUNy8S4Fb7Ru/ekK
8fsIiFSurLZbvb7BgGmoGjqIdp+gM2JmRAM15cqpl6A1U1ogt8gDggEGAAKCAQEA
myyYc3ZxjYuSfU/x0eIy5iEpo4KTJ7lYB4zrc0J//i6556FQH5FmtpMS1aDLoS0b
6OOIyVnabqV95RhR143wHgQAGq6dYARp+AATL3OJtlIgmoPRnemqZUgJN1D4mYwg
zMFfAhPIhvmPqup3eU2oRfYGq3O/DFhasIK6z6pF2QSu1GiCWzrIaJYKBy+YH5K4
I+1S9vmLbpJDhMXA5Gi5Z29NJod/nzJNQFfacG2yuL6z06vCQVIQaS7kRKjpiqDB
2YxgyrvfoZfmxPgOPSV8s8YF2S2eqcf9hY9vOS1xtXUC5JwAAsbnW5H7Xw2rjH/e
NuWLG8iUgINtIpaT5oEF+Q==
-----END PUBLIC KEY-----

View file

@ -12,13 +12,25 @@
<table class="dots" width="100%" border="0" cellspacing="0" cellpadding="0" summary="Two column table with heading">
<tr>
<td class="blue">
<h3>QuakeSpasm 0.85.3</h3>
<h3>QuakeSpasm 0.85.4</h3>
</td>
</tr>
<tr>
<td valign="top">
<ul>
<li>Automatic updating via the Sparkle framework</li>
<li>...and much more!</li>
</ul>
</td>
</tr>
<tr>
<td class="blue">
<h3>QuakeSpasm 0.85.3</h3>
</td>
</tr>
<tr>
<td valign="top">
<ul>
<li>Replaced SDL network driver by UDP driver</li>
<li>Launcher can be suppressed by passing &quot;-nolauncher&quot; on the command line</li>
<li>Launcher uses &quot;-fullscreen&quot; argument</li>

View file

@ -4,4 +4,4 @@ if ARGV.length < 2
exit
end
puts `openssl dgst -sha1 -binary < "#{ARGV[0]}" | openssl dgst -dss1 -sign "#{ARGV[1]}" | openssl enc -base64`
puts `/usr/bin/openssl dgst -sha1 -binary < "#{ARGV[0]}" | /usr/bin/openssl dgst -dss1 -sign "#{ARGV[1]}" | /usr/bin/openssl enc -base64`