summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorStarla Insigna <starla4444@gmail.com>2011-08-13 19:49:56 -0400
committerStarla Insigna <starla4444@gmail.com>2011-08-13 19:49:56 -0400
commit4457e0ce5099a81f8e6a366e353561b886725532 (patch)
tree2dc25a86fcf13457b0c6c75a46a6b838149d028f
parentd19677f9f73d8fe7436982bdf8d40f69d69d1b43 (diff)
downloadcartcollect-4457e0ce5099a81f8e6a366e353561b886725532.tar.gz
cartcollect-4457e0ce5099a81f8e6a366e353561b886725532.tar.bz2
cartcollect-4457e0ce5099a81f8e6a366e353561b886725532.zip
Added automatic versioning
A shell script that is run before building now automatically sets the build number of the package to the current revision number, plus a value that increments on every build if the code is dirty (a.k.a. has been modified since being committed).

Also changed the project to automatically use the correct provisioning profile when codesigning instead of having to change it every time the provisioning profile changed.
-rw-r--r--.hgignore1
-rwxr-xr-xCart Collect.xcodeproj/project.pbxproj142
-rwxr-xr-xResources/Info.plist2
3 files changed, 74 insertions, 71 deletions
diff --git a/.hgignore b/.hgignore index e53858e..d30fb8d 100644 --- a/.hgignore +++ b/.hgignore
@@ -14,3 +14,4 @@ xcuserdata
14*~.nib 14*~.nib
15 15
16.DS_Store 16.DS_Store
17Versioning.h
diff --git a/Cart Collect.xcodeproj/project.pbxproj b/Cart Collect.xcodeproj/project.pbxproj index ebc6afe..bd63c09 100755 --- a/Cart Collect.xcodeproj/project.pbxproj +++ b/Cart Collect.xcodeproj/project.pbxproj
@@ -6,6 +6,20 @@
6 objectVersion = 46; 6 objectVersion = 46;
7 objects = { 7 objects = {
8 8
9/* Begin PBXAggregateTarget section */
10 6C263DDB13F6F4A000116746 /* Versioning */ = {
11 isa = PBXAggregateTarget;
12 buildConfigurationList = 6C263DDC13F6F4A000116746 /* Build configuration list for PBXAggregateTarget "Versioning" */;
13 buildPhases = (
14 6C263DDF13F6F4AB00116746 /* ShellScript */,
15 );
16 dependencies = (
17 );
18 name = Versioning;
19 productName = Versioning;
20 };
21/* End PBXAggregateTarget section */
22
9/* Begin PBXBuildFile section */ 23/* Begin PBXBuildFile section */
10 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; 24 1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
11 3F03221613D78F8C00E6A708 /* HighscoreListController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F03221513D78F8C00E6A708 /* HighscoreListController.m */; }; 25 3F03221613D78F8C00E6A708 /* HighscoreListController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F03221513D78F8C00E6A708 /* HighscoreListController.m */; };
@@ -290,6 +304,13 @@
290 remoteGlobalIDString = 506EE05D10304ED200A389B3; 304 remoteGlobalIDString = 506EE05D10304ED200A389B3;
291 remoteInfo = "cocos2d libraries"; 305 remoteInfo = "cocos2d libraries";
292 }; 306 };
307 6C263DE013F6F6E800116746 /* PBXContainerItemProxy */ = {
308 isa = PBXContainerItemProxy;
309 containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */;
310 proxyType = 1;
311 remoteGlobalIDString = 6C263DDB13F6F4A000116746;
312 remoteInfo = Versioning;
313 };
293/* End PBXContainerItemProxy section */ 314/* End PBXContainerItemProxy section */
294 315
295/* Begin PBXFileReference section */ 316/* Begin PBXFileReference section */
@@ -1247,6 +1268,7 @@
1247 buildRules = ( 1268 buildRules = (
1248 ); 1269 );
1249 dependencies = ( 1270 dependencies = (
1271 6C263DE113F6F6E800116746 /* PBXTargetDependency */,
1250 506EE1A81030507B00A389B3 /* PBXTargetDependency */, 1272 506EE1A81030507B00A389B3 /* PBXTargetDependency */,
1251 ); 1273 );
1252 name = "Cart Collect"; 1274 name = "Cart Collect";
@@ -1295,6 +1317,7 @@
1295 targets = ( 1317 targets = (
1296 1D6058900D05DD3D006BFB54 /* Cart Collect */, 1318 1D6058900D05DD3D006BFB54 /* Cart Collect */,
1297 506EE05D10304ED200A389B3 /* cocos2d libraries */, 1319 506EE05D10304ED200A389B3 /* cocos2d libraries */,
1320 6C263DDB13F6F4A000116746 /* Versioning */,
1298 ); 1321 );
1299 }; 1322 };
1300/* End PBXProject section */ 1323/* End PBXProject section */
@@ -1345,6 +1368,22 @@
1345 }; 1368 };
1346/* End PBXResourcesBuildPhase section */ 1369/* End PBXResourcesBuildPhase section */
1347 1370
1371/* Begin PBXShellScriptBuildPhase section */
1372 6C263DDF13F6F4AB00116746 /* ShellScript */ = {
1373 isa = PBXShellScriptBuildPhase;
1374 buildActionMask = 2147483647;
1375 files = (
1376 );
1377 inputPaths = (
1378 );
1379 outputPaths = (
1380 );
1381 runOnlyForDeploymentPostprocessing = 0;
1382 shellPath = /bin/sh;
1383 shellScript = "hg=\"/opt/local/bin/hg\"\ntouch Resources/Info.plist\nversion=`$hg tip --template {rev}`\ndirty=`$hg status`\nif [ -n \"${dirty}\" ]; then\n rev=`cat Versioning.h | sed -e \"s/.define BUILD_NUMBER ${version}\\.\\([0-9]*\\)/\\1/g\"`\n if [ -z \"${rev}\" ]; then\n rev=\"1\"\n else\n rev=`expr ${rev} + 1`\n fi\n version=\"${version}.${rev}\"\nfi\necho \"#define BUILD_NUMBER ${version}\" > Versioning.h";
1384 };
1385/* End PBXShellScriptBuildPhase section */
1386
1348/* Begin PBXSourcesBuildPhase section */ 1387/* Begin PBXSourcesBuildPhase section */
1349 1D60588E0D05DD3D006BFB54 /* Sources */ = { 1388 1D60588E0D05DD3D006BFB54 /* Sources */ = {
1350 isa = PBXSourcesBuildPhase; 1389 isa = PBXSourcesBuildPhase;
@@ -1479,6 +1518,11 @@
1479 target = 506EE05D10304ED200A389B3 /* cocos2d libraries */; 1518 target = 506EE05D10304ED200A389B3 /* cocos2d libraries */;
1480 targetProxy = 506EE1A71030507B00A389B3 /* PBXContainerItemProxy */; 1519 targetProxy = 506EE1A71030507B00A389B3 /* PBXContainerItemProxy */;
1481 }; 1520 };
1521 6C263DE113F6F6E800116746 /* PBXTargetDependency */ = {
1522 isa = PBXTargetDependency;
1523 target = 6C263DDB13F6F4A000116746 /* Versioning */;
1524 targetProxy = 6C263DE013F6F6E800116746 /* PBXContainerItemProxy */;
1525 };
1482/* End PBXTargetDependency section */ 1526/* End PBXTargetDependency section */
1483 1527
1484/* Begin XCBuildConfiguration section */ 1528/* Begin XCBuildConfiguration section */
@@ -1487,8 +1531,8 @@
1487 buildSettings = { 1531 buildSettings = {
1488 ALTERNATE_MODE = Entitlements.plist; 1532 ALTERNATE_MODE = Entitlements.plist;
1489 ALWAYS_SEARCH_USER_PATHS = YES; 1533 ALWAYS_SEARCH_USER_PATHS = YES;
1490 CODE_SIGN_IDENTITY = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)"; 1534 CODE_SIGN_IDENTITY = "";
1491 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)"; 1535 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1492 COPY_PHASE_STRIP = NO; 1536 COPY_PHASE_STRIP = NO;
1493 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 1537 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1494 GCC_DYNAMIC_NO_PIC = NO; 1538 GCC_DYNAMIC_NO_PIC = NO;
@@ -1498,13 +1542,13 @@
1498 GCC_TREAT_WARNINGS_AS_ERRORS = NO; 1542 GCC_TREAT_WARNINGS_AS_ERRORS = NO;
1499 HEADER_SEARCH_PATHS = libs; 1543 HEADER_SEARCH_PATHS = libs;
1500 INFOPLIST_FILE = Resources/Info.plist; 1544 INFOPLIST_FILE = Resources/Info.plist;
1545 INFOPLIST_PREFIX_HEADER = Versioning.h;
1546 INFOPLIST_PREPROCESS = YES;
1501 OTHER_LDFLAGS = ( 1547 OTHER_LDFLAGS = (
1502 "-all_load", 1548 "-all_load",
1503 "-ObjC", 1549 "-ObjC",
1504 ); 1550 );
1505 PRODUCT_NAME = "Cart Collect"; 1551 PRODUCT_NAME = "Cart Collect";
1506 PROVISIONING_PROFILE = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1507 "PROVISIONING_PROFILE[sdk=iphoneos*]" = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1508 TARGETED_DEVICE_FAMILY = 1; 1552 TARGETED_DEVICE_FAMILY = 1;
1509 WARNING_CFLAGS = "-Wall"; 1553 WARNING_CFLAGS = "-Wall";
1510 }; 1554 };
@@ -1515,8 +1559,8 @@
1515 buildSettings = { 1559 buildSettings = {
1516 ALTERNATE_MODE = Entitlements.plist; 1560 ALTERNATE_MODE = Entitlements.plist;
1517 ALWAYS_SEARCH_USER_PATHS = YES; 1561 ALWAYS_SEARCH_USER_PATHS = YES;
1518 CODE_SIGN_IDENTITY = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)"; 1562 CODE_SIGN_IDENTITY = "";
1519 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)"; 1563 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1520 COPY_PHASE_STRIP = YES; 1564 COPY_PHASE_STRIP = YES;
1521 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 1565 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1522 GCC_PRECOMPILE_PREFIX_HEADER = YES; 1566 GCC_PRECOMPILE_PREFIX_HEADER = YES;
@@ -1524,13 +1568,13 @@
1524 GCC_TREAT_WARNINGS_AS_ERRORS = NO; 1568 GCC_TREAT_WARNINGS_AS_ERRORS = NO;
1525 HEADER_SEARCH_PATHS = libs; 1569 HEADER_SEARCH_PATHS = libs;
1526 INFOPLIST_FILE = Resources/Info.plist; 1570 INFOPLIST_FILE = Resources/Info.plist;
1571 INFOPLIST_PREFIX_HEADER = Versioning.h;
1572 INFOPLIST_PREPROCESS = YES;
1527 OTHER_LDFLAGS = ( 1573 OTHER_LDFLAGS = (
1528 "-all_load", 1574 "-all_load",
1529 "-ObjC", 1575 "-ObjC",
1530 ); 1576 );
1531 PRODUCT_NAME = "Cart Collect"; 1577 PRODUCT_NAME = "Cart Collect";
1532 PROVISIONING_PROFILE = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1533 "PROVISIONING_PROFILE[sdk=iphoneos*]" = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1534 TARGETED_DEVICE_FAMILY = 1; 1578 TARGETED_DEVICE_FAMILY = 1;
1535 WARNING_CFLAGS = "-Wall"; 1579 WARNING_CFLAGS = "-Wall";
1536 }; 1580 };
@@ -1540,6 +1584,7 @@
1540 isa = XCBuildConfiguration; 1584 isa = XCBuildConfiguration;
1541 buildSettings = { 1585 buildSettings = {
1542 ALWAYS_SEARCH_USER_PATHS = YES; 1586 ALWAYS_SEARCH_USER_PATHS = YES;
1587 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1543 COPY_PHASE_STRIP = NO; 1588 COPY_PHASE_STRIP = NO;
1544 GCC_DYNAMIC_NO_PIC = NO; 1589 GCC_DYNAMIC_NO_PIC = NO;
1545 GCC_OPTIMIZATION_LEVEL = 0; 1590 GCC_OPTIMIZATION_LEVEL = 0;
@@ -1557,6 +1602,7 @@
1557 isa = XCBuildConfiguration; 1602 isa = XCBuildConfiguration;
1558 buildSettings = { 1603 buildSettings = {
1559 ALWAYS_SEARCH_USER_PATHS = YES; 1604 ALWAYS_SEARCH_USER_PATHS = YES;
1605 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1560 COPY_PHASE_STRIP = YES; 1606 COPY_PHASE_STRIP = YES;
1561 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 1607 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1562 GCC_PREPROCESSOR_DEFINITIONS = ""; 1608 GCC_PREPROCESSOR_DEFINITIONS = "";
@@ -1571,72 +1617,19 @@
1571 }; 1617 };
1572 name = Release; 1618 name = Release;
1573 }; 1619 };
1574 6CC89DDA13F2F51E003704F7 /* Ad Hoc */ = { 1620 6C263DDD13F6F4A000116746 /* Debug */ = {
1575 isa = XCBuildConfiguration;
1576 buildSettings = {
1577 ALWAYS_SEARCH_USER_PATHS = NO;
1578 ARCHS = "$(ARCHS_STANDARD_32_BIT)";
1579 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1580 GCC_C_LANGUAGE_STANDARD = c99;
1581 GCC_PREPROCESSOR_DEFINITIONS = (
1582 NS_BLOCK_ASSERTIONS,
1583 NDEBUG,
1584 );
1585 "GCC_THUMB_SUPPORT[arch=armv6]" = NO;
1586 "GCC_THUMB_SUPPORT[arch=armv7]" = YES;
1587 GCC_UNROLL_LOOPS = YES;
1588 GCC_VERSION = com.apple.compilers.llvmgcc42;
1589 GCC_WARN_ABOUT_RETURN_TYPE = YES;
1590 GCC_WARN_UNUSED_VARIABLE = YES;
1591 IPHONEOS_DEPLOYMENT_TARGET = 3.0;
1592 SDKROOT = iphoneos;
1593 TARGETED_DEVICE_FAMILY = "1,2";
1594 };
1595 name = "Ad Hoc";
1596 };
1597 6CC89DDB13F2F51E003704F7 /* Ad Hoc */ = {
1598 isa = XCBuildConfiguration; 1621 isa = XCBuildConfiguration;
1599 buildSettings = { 1622 buildSettings = {
1600 ALTERNATE_MODE = Entitlements.plist; 1623 PRODUCT_NAME = "$(TARGET_NAME)";
1601 ALWAYS_SEARCH_USER_PATHS = YES;
1602 CODE_SIGN_IDENTITY = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)";
1603 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: Elizabeth Solomon (ZHW46MT484)";
1604 COPY_PHASE_STRIP = YES;
1605 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1606 GCC_PRECOMPILE_PREFIX_HEADER = YES;
1607 GCC_PREFIX_HEADER = Cart_Collect_Prefix.pch;
1608 GCC_TREAT_WARNINGS_AS_ERRORS = NO;
1609 HEADER_SEARCH_PATHS = libs;
1610 INFOPLIST_FILE = Resources/Info.plist;
1611 OTHER_LDFLAGS = (
1612 "-all_load",
1613 "-ObjC",
1614 );
1615 PRODUCT_NAME = "Cart Collect";
1616 PROVISIONING_PROFILE = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1617 "PROVISIONING_PROFILE[sdk=iphoneos*]" = "42DE7CBA-2166-4560-9EE8-5D227F4278B1";
1618 TARGETED_DEVICE_FAMILY = 1;
1619 WARNING_CFLAGS = "-Wall";
1620 }; 1624 };
1621 name = "Ad Hoc"; 1625 name = Debug;
1622 }; 1626 };
1623 6CC89DDC13F2F51E003704F7 /* Ad Hoc */ = { 1627 6C263DDE13F6F4A000116746 /* Release */ = {
1624 isa = XCBuildConfiguration; 1628 isa = XCBuildConfiguration;
1625 buildSettings = { 1629 buildSettings = {
1626 ALWAYS_SEARCH_USER_PATHS = YES; 1630 PRODUCT_NAME = "$(TARGET_NAME)";
1627 COPY_PHASE_STRIP = YES;
1628 DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1629 GCC_PREPROCESSOR_DEFINITIONS = "";
1630 GCC_TREAT_WARNINGS_AS_ERRORS = NO;
1631 HEADER_SEARCH_PATHS = (
1632 libs/Chipmunk/include/chipmunk,
1633 libs,
1634 );
1635 PRODUCT_NAME = "cocos2d libraries";
1636 SKIP_INSTALL = YES;
1637 ZERO_LINK = NO;
1638 }; 1631 };
1639 name = "Ad Hoc"; 1632 name = Release;
1640 }; 1633 };
1641 C01FCF4F08A954540054247B /* Debug */ = { 1634 C01FCF4F08A954540054247B /* Debug */ = {
1642 isa = XCBuildConfiguration; 1635 isa = XCBuildConfiguration;
@@ -1644,7 +1637,7 @@
1644 ALWAYS_SEARCH_USER_PATHS = NO; 1637 ALWAYS_SEARCH_USER_PATHS = NO;
1645 ARCHS = "$(ARCHS_STANDARD_32_BIT)"; 1638 ARCHS = "$(ARCHS_STANDARD_32_BIT)";
1646 CODE_SIGN_IDENTITY = "Don't Code Sign"; 1639 CODE_SIGN_IDENTITY = "Don't Code Sign";
1647 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Don't Code Sign"; 1640 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
1648 GCC_C_LANGUAGE_STANDARD = c99; 1641 GCC_C_LANGUAGE_STANDARD = c99;
1649 GCC_PREPROCESSOR_DEFINITIONS = ( 1642 GCC_PREPROCESSOR_DEFINITIONS = (
1650 DEBUG, 1643 DEBUG,
@@ -1658,6 +1651,7 @@
1658 GCC_WARN_UNUSED_VARIABLE = YES; 1651 GCC_WARN_UNUSED_VARIABLE = YES;
1659 IPHONEOS_DEPLOYMENT_TARGET = 3.0; 1652 IPHONEOS_DEPLOYMENT_TARGET = 3.0;
1660 ONLY_ACTIVE_ARCH = YES; 1653 ONLY_ACTIVE_ARCH = YES;
1654 "PROVISIONING_PROFILE[sdk=iphoneos*]" = "";
1661 SDKROOT = iphoneos; 1655 SDKROOT = iphoneos;
1662 TARGETED_DEVICE_FAMILY = "1,2"; 1656 TARGETED_DEVICE_FAMILY = "1,2";
1663 }; 1657 };
@@ -1694,7 +1688,6 @@
1694 buildConfigurations = ( 1688 buildConfigurations = (
1695 1D6058940D05DD3E006BFB54 /* Debug */, 1689 1D6058940D05DD3E006BFB54 /* Debug */,
1696 1D6058950D05DD3E006BFB54 /* Release */, 1690 1D6058950D05DD3E006BFB54 /* Release */,
1697 6CC89DDB13F2F51E003704F7 /* Ad Hoc */,
1698 ); 1691 );
1699 defaultConfigurationIsVisible = 0; 1692 defaultConfigurationIsVisible = 0;
1700 defaultConfigurationName = Release; 1693 defaultConfigurationName = Release;
@@ -1704,7 +1697,15 @@
1704 buildConfigurations = ( 1697 buildConfigurations = (
1705 506EE05F10304ED500A389B3 /* Debug */, 1698 506EE05F10304ED500A389B3 /* Debug */,
1706 506EE06010304ED500A389B3 /* Release */, 1699 506EE06010304ED500A389B3 /* Release */,
1707 6CC89DDC13F2F51E003704F7 /* Ad Hoc */, 1700 );
1701 defaultConfigurationIsVisible = 0;
1702 defaultConfigurationName = Release;
1703 };
1704 6C263DDC13F6F4A000116746 /* Build configuration list for PBXAggregateTarget "Versioning" */ = {
1705 isa = XCConfigurationList;
1706 buildConfigurations = (
1707 6C263DDD13F6F4A000116746 /* Debug */,
1708 6C263DDE13F6F4A000116746 /* Release */,
1708 ); 1709 );
1709 defaultConfigurationIsVisible = 0; 1710 defaultConfigurationIsVisible = 0;
1710 defaultConfigurationName = Release; 1711 defaultConfigurationName = Release;
@@ -1714,7 +1715,6 @@
1714 buildConfigurations = ( 1715 buildConfigurations = (
1715 C01FCF4F08A954540054247B /* Debug */, 1716 C01FCF4F08A954540054247B /* Debug */,
1716 C01FCF5008A954540054247B /* Release */, 1717 C01FCF5008A954540054247B /* Release */,
1717 6CC89DDA13F2F51E003704F7 /* Ad Hoc */,
1718 ); 1718 );
1719 defaultConfigurationIsVisible = 0; 1719 defaultConfigurationIsVisible = 0;
1720 defaultConfigurationName = Release; 1720 defaultConfigurationName = Release;
diff --git a/Resources/Info.plist b/Resources/Info.plist index ed33cda..9f3118a 100755 --- a/Resources/Info.plist +++ b/Resources/Info.plist
@@ -32,6 +32,8 @@
32 <string>????</string> 32 <string>????</string>
33 <key>CFBundleURLTypes</key> 33 <key>CFBundleURLTypes</key>
34 <array/> 34 <array/>
35 <key>CFBundleVersion</key>
36 <string>BUILD_NUMBER</string>
35 <key>LSRequiresIPhoneOS</key> 37 <key>LSRequiresIPhoneOS</key>
36 <true/> 38 <true/>
37 <key>UIPrerenderedIcon</key> 39 <key>UIPrerenderedIcon</key>