From ebec5f48346618cce05a73e4c9f457b4f2c6b2b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ce=CC=81dric=20Luthi?= Date: Wed, 11 Sep 2013 21:40:52 +0200 Subject: [PATCH] Support for Xcode 5 GM seed Run a script in a build pre-action phase to write the appropriate garbage collection setting into the xcproj.xcconfig file --- README.md | 4 +- xcproj.xcconfig | 1 + xcproj.xcodeproj/project.pbxproj | 8 +- .../xcshareddata/xcschemes/xcproj.xcscheme | 149 ++++++++++++++++++ 4 files changed, 156 insertions(+), 6 deletions(-) create mode 100644 xcproj.xcconfig create mode 100644 xcproj.xcodeproj/xcshareddata/xcschemes/xcproj.xcscheme diff --git a/README.md b/README.md index 65cb998..fd58fc2 100644 --- a/README.md +++ b/README.md @@ -15,13 +15,13 @@ brew install xcproj To install the `xcproj` tool in `/usr/local/bin` run the following command, with `sudo` if required: ``` -xcodebuild install DSTROOT=/ +xcodebuild -scheme xcproj install DSTROOT=/ ``` If you want to install `xcproj` in a custom location, e.g. `~/bin`, run the following command: ``` -xcodebuild install DSTROOT=/ INSTALL_PATH=~/bin +xcodebuild -scheme xcproj install DSTROOT=/ INSTALL_PATH=~/bin ``` ## Usage diff --git a/xcproj.xcconfig b/xcproj.xcconfig new file mode 100644 index 0000000..1d622c8 --- /dev/null +++ b/xcproj.xcconfig @@ -0,0 +1 @@ +GCC_ENABLE_OBJC_GC = unsupported diff --git a/xcproj.xcodeproj/project.pbxproj b/xcproj.xcodeproj/project.pbxproj index dec938b..eb0b7f4 100644 --- a/xcproj.xcodeproj/project.pbxproj +++ b/xcproj.xcodeproj/project.pbxproj @@ -23,6 +23,7 @@ 08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 32A70AAB03705E1F00C91783 /* xcproj_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = xcproj_Prefix.pch; path = Sources/xcproj_Prefix.pch; sourceTree = ""; }; 8DD76FA10486AA7600D96B5E /* xcproj */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = xcproj; sourceTree = BUILT_PRODUCTS_DIR; }; + C24A73F617DFE2EE00DB4344 /* xcproj.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = xcproj.xcconfig; sourceTree = ""; }; C269E98317B3DCCC0099A0C5 /* dd_getopt_long-fbsd.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "dd_getopt_long-fbsd.m"; sourceTree = ""; }; C269E98417B3DCCC0099A0C5 /* DDCliApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDCliApplication.h; sourceTree = ""; }; C269E98517B3DCCC0099A0C5 /* DDCliApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DDCliApplication.m; sourceTree = ""; }; @@ -66,6 +67,7 @@ 08FB7794FE84155DC02AAC07 /* xcproj */ = { isa = PBXGroup; children = ( + C24A73F617DFE2EE00DB4344 /* xcproj.xcconfig */, DAFF2AD913055EF500584E0E /* Info.plist */, DA8C9FFB1302AF93008B3560 /* DevToolsCore */, C269E98117B3DCCC0099A0C5 /* Externals */, @@ -217,6 +219,7 @@ /* Begin XCBuildConfiguration section */ 1DEB927508733DD40010E9CD /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = C24A73F617DFE2EE00DB4344 /* xcproj.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; COPY_PHASE_STRIP = NO; @@ -231,6 +234,7 @@ }; 1DEB927608733DD40010E9CD /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = C24A73F617DFE2EE00DB4344 /* xcproj.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; @@ -248,8 +252,6 @@ ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CURRENT_PROJECT_VERSION = 0.1; GCC_C_LANGUAGE_STANDARD = c99; - GCC_ENABLE_OBJC_GC = required; - "GCC_ENABLE_OBJC_GC[sdk=macosx10.9]" = unsupported; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; @@ -273,8 +275,6 @@ ARCHS = "$(ARCHS_STANDARD_64_BIT)"; CURRENT_PROJECT_VERSION = 0.1; GCC_C_LANGUAGE_STANDARD = c99; - GCC_ENABLE_OBJC_GC = required; - "GCC_ENABLE_OBJC_GC[sdk=macosx10.9]" = unsupported; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = "\"$(SRCROOT)\""; diff --git a/xcproj.xcodeproj/xcshareddata/xcschemes/xcproj.xcscheme b/xcproj.xcodeproj/xcshareddata/xcschemes/xcproj.xcscheme new file mode 100644 index 0000000..840b95c --- /dev/null +++ b/xcproj.xcodeproj/xcshareddata/xcschemes/xcproj.xcscheme @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +