├── .gitignore ├── JRSwizzle.h ├── JRSwizzle.m ├── README.txt ├── RRXcodeRemoteDeviceFixer.h ├── RRXcodeRemoteDeviceFixer.m ├── xcodeRemoteDeviceFixer-Info.plist ├── xcodeRemoteDeviceFixer-Prefix.pch └── xcodeRemoteDeviceFixer.xcodeproj └── project.pbxproj /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | xcodeRemoteDeviceFixer.xcodeproj/xcuserdata/evands.xcuserdatad/xcschemes/xcschememanagement.plist 3 | 4 | xcodeRemoteDeviceFixer.xcodeproj/xcuserdata/evands.xcuserdatad/xcschemes/xcode3fixer.xcscheme 5 | 6 | xcodeRemoteDeviceFixer.xcodeproj/project.xcworkspace/xcuserdata/evands.xcuserdatad/UserInterfaceState.xcuserstate 7 | 8 | xcodeRemoteDeviceFixer.xcodeproj/project.xcworkspace/contents.xcworkspacedata 9 | 10 | .DS_Store 11 | -------------------------------------------------------------------------------- /JRSwizzle.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2007-2011 Jonathan 'Wolf' Rentzsch: http://rentzsch.com 2 | // Some rights reserved: http://opensource.org/licenses/mit-license.php 3 | 4 | #import 5 | 6 | @interface NSObject (JRSwizzle) 7 | 8 | + (BOOL)jr_swizzleMethod:(SEL)origSel_ withMethod:(SEL)altSel_ error:(NSError**)error_; 9 | + (BOOL)jr_swizzleClassMethod:(SEL)origSel_ withClassMethod:(SEL)altSel_ error:(NSError**)error_; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /JRSwizzle.m: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2007-2011 Jonathan 'Wolf' Rentzsch: http://rentzsch.com 2 | // Some rights reserved: http://opensource.org/licenses/mit-license.php 3 | 4 | #import "JRSwizzle.h" 5 | #import 6 | 7 | #define SetNSErrorFor(FUNC, ERROR_VAR, FORMAT,...) \ 8 | if (ERROR_VAR) { \ 9 | NSString *errStr = [NSString stringWithFormat:@"%s: " FORMAT,FUNC,##__VA_ARGS__]; \ 10 | *ERROR_VAR = [NSError errorWithDomain:@"NSCocoaErrorDomain" \ 11 | code:-1 \ 12 | userInfo:[NSDictionary dictionaryWithObject:errStr forKey:NSLocalizedDescriptionKey]]; \ 13 | } 14 | #define SetNSError(ERROR_VAR, FORMAT,...) SetNSErrorFor(__func__, ERROR_VAR, FORMAT, ##__VA_ARGS__) 15 | 16 | #if OBJC_API_VERSION >= 2 17 | #define GetClass(obj) object_getClass(obj) 18 | #else 19 | #define GetClass(obj) (obj ? obj->isa : Nil) 20 | #endif 21 | 22 | @implementation NSObject (JRSwizzle) 23 | 24 | + (BOOL)jr_swizzleMethod:(SEL)origSel_ withMethod:(SEL)altSel_ error:(NSError**)error_ { 25 | #if OBJC_API_VERSION >= 2 26 | Method origMethod = class_getInstanceMethod(self, origSel_); 27 | if (!origMethod) { 28 | SetNSError(error_, @"original method %@ not found for class %@", NSStringFromSelector(origSel_), [self className]); 29 | return NO; 30 | } 31 | 32 | Method altMethod = class_getInstanceMethod(self, altSel_); 33 | if (!altMethod) { 34 | SetNSError(error_, @"alternate method %@ not found for class %@", NSStringFromSelector(altSel_), [self className]); 35 | return NO; 36 | } 37 | 38 | class_addMethod(self, 39 | origSel_, 40 | class_getMethodImplementation(self, origSel_), 41 | method_getTypeEncoding(origMethod)); 42 | class_addMethod(self, 43 | altSel_, 44 | class_getMethodImplementation(self, altSel_), 45 | method_getTypeEncoding(altMethod)); 46 | 47 | method_exchangeImplementations(class_getInstanceMethod(self, origSel_), class_getInstanceMethod(self, altSel_)); 48 | return YES; 49 | #else 50 | // Scan for non-inherited methods. 51 | Method directOriginalMethod = NULL, directAlternateMethod = NULL; 52 | 53 | void *iterator = NULL; 54 | struct objc_method_list *mlist = class_nextMethodList(self, &iterator); 55 | while (mlist) { 56 | int method_index = 0; 57 | for (; method_index < mlist->method_count; method_index++) { 58 | if (mlist->method_list[method_index].method_name == origSel_) { 59 | assert(!directOriginalMethod); 60 | directOriginalMethod = &mlist->method_list[method_index]; 61 | } 62 | if (mlist->method_list[method_index].method_name == altSel_) { 63 | assert(!directAlternateMethod); 64 | directAlternateMethod = &mlist->method_list[method_index]; 65 | } 66 | } 67 | mlist = class_nextMethodList(self, &iterator); 68 | } 69 | 70 | // If either method is inherited, copy it up to the target class to make it non-inherited. 71 | if (!directOriginalMethod || !directAlternateMethod) { 72 | Method inheritedOriginalMethod = NULL, inheritedAlternateMethod = NULL; 73 | if (!directOriginalMethod) { 74 | inheritedOriginalMethod = class_getInstanceMethod(self, origSel_); 75 | if (!inheritedOriginalMethod) { 76 | SetNSError(error_, @"original method %@ not found for class %@", NSStringFromSelector(origSel_), [self className]); 77 | return NO; 78 | } 79 | } 80 | if (!directAlternateMethod) { 81 | inheritedAlternateMethod = class_getInstanceMethod(self, altSel_); 82 | if (!inheritedAlternateMethod) { 83 | SetNSError(error_, @"alternate method %@ not found for class %@", NSStringFromSelector(altSel_), [self className]); 84 | return NO; 85 | } 86 | } 87 | 88 | int hoisted_method_count = !directOriginalMethod && !directAlternateMethod ? 2 : 1; 89 | struct objc_method_list *hoisted_method_list = malloc(sizeof(struct objc_method_list) + (sizeof(struct objc_method)*(hoisted_method_count-1))); 90 | hoisted_method_list->obsolete = NULL; // soothe valgrind - apparently ObjC runtime accesses this value and it shows as uninitialized in valgrind 91 | hoisted_method_list->method_count = hoisted_method_count; 92 | Method hoisted_method = hoisted_method_list->method_list; 93 | 94 | if (!directOriginalMethod) { 95 | bcopy(inheritedOriginalMethod, hoisted_method, sizeof(struct objc_method)); 96 | directOriginalMethod = hoisted_method++; 97 | } 98 | if (!directAlternateMethod) { 99 | bcopy(inheritedAlternateMethod, hoisted_method, sizeof(struct objc_method)); 100 | directAlternateMethod = hoisted_method; 101 | } 102 | class_addMethods(self, hoisted_method_list); 103 | } 104 | 105 | // Swizzle. 106 | IMP temp = directOriginalMethod->method_imp; 107 | directOriginalMethod->method_imp = directAlternateMethod->method_imp; 108 | directAlternateMethod->method_imp = temp; 109 | 110 | return YES; 111 | #endif 112 | } 113 | 114 | + (BOOL)jr_swizzleClassMethod:(SEL)origSel_ withClassMethod:(SEL)altSel_ error:(NSError**)error_ { 115 | return [GetClass((id)self) jr_swizzleMethod:origSel_ withMethod:altSel_ error:error_]; 116 | } 117 | 118 | @end 119 | -------------------------------------------------------------------------------- /README.txt: -------------------------------------------------------------------------------- 1 | This SIMBL bundle prevents XCode 4.1 and earlier from trying to access an iOS device running iOS 5.0 (or later) with WiFi Syncing enabled. It therefore works around a bug in which CPU consumption goes to 11 in that setting. 2 | 3 | It'll warn you that it's not being loaded in XCode 4.2. That's fine; just click OK. 4 | 5 | It depends upon SIMBL. Install it from http://www.culater.net/software/SIMBL/SIMBL.php 6 | 7 | The bundle itself, like any SIMBL bundle, installs to ~/Library/Application\ Support/SIMBL/Plugins 8 | 9 | JRSwizzle is used in this project. It's copyright (c) 2007-2011 Jonathan 'Wolf' Rentzsch: http://rentzsch.com - Some rights reserved: http://opensource.org/licenses/mit-license.php 10 | 11 | This small project itself is also licensed under the MIT license. Copyright (c) 2011 Evan Schoenberg - Some rights reserved: http://opensource.org/licenses/mit-license.php 12 | -------------------------------------------------------------------------------- /RRXcodeRemoteDeviceFixer.h: -------------------------------------------------------------------------------- 1 | // 2 | // RRXcodeRemoteDeviceFixer.h 3 | // xcodeRemoteDeviceFixer 4 | // 5 | // Created by Evan Schoenberg on 8/2/11. 6 | // Copyright 2011 Regular Rate and Rhythm Software. All rights reserved. 7 | // 8 | 9 | 10 | 11 | @interface RRXcodeRemoteDeviceFixer : NSObject 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /RRXcodeRemoteDeviceFixer.m: -------------------------------------------------------------------------------- 1 | // 2 | // RRXcodeRemoteDeviceFixer.m 3 | // xcodeRemoteDeviceFixer 4 | // 5 | // Created by Evan Schoenberg on 8/2/11. 6 | // Copyright 2011 Regular Rate and Rhythm Software. All rights reserved. 7 | // 8 | 9 | #import "RRXcodeRemoteDeviceFixer.h" 10 | #import "JRSwizzle.h" 11 | 12 | @interface DTDKRemoteDeviceToken : NSObject 13 | @end 14 | 15 | @implementation DTDKRemoteDeviceToken (_RRXcodeRemoteDeviceFixer_DTDKRemoteDeviceToken) 16 | - (BOOL)_RRXcodeRemoteDeviceFixer_getNeedsToFetchSharedCache:(id)cache error:(NSError **)outError 17 | { 18 | NSLog(@"Preventing an attempt to connect to a remote iOS device via getNeedsToFetchSharedCache:error:."); 19 | if (outError != NULL) 20 | *outError = nil; 21 | 22 | return NO; 23 | } 24 | 25 | @end 26 | 27 | @implementation RRXcodeRemoteDeviceFixer 28 | 29 | /** 30 | * A special method called by SIMBL once the application has started and all classes are initialized. 31 | */ 32 | + (void) load 33 | { 34 | if (self == [RRXcodeRemoteDeviceFixer class]) { 35 | static RRXcodeRemoteDeviceFixer *plugin = nil; 36 | 37 | if (plugin == nil) 38 | plugin = [[RRXcodeRemoteDeviceFixer alloc] init]; 39 | 40 | NSLog(@"XcodeRemoteDeviceFixer installed"); 41 | } 42 | } 43 | 44 | - (id)init 45 | { 46 | self = [super init]; 47 | if (self) { 48 | NSError *error = nil; 49 | NSLog(@"Swizzling to prevent %@ from calling getNeedsToFetchSharedCache:error:", NSStringFromClass(NSClassFromString(@"DTDKRemoteDeviceToken"))); 50 | 51 | if (![NSClassFromString(@"DTDKRemoteDeviceToken") jr_swizzleMethod:@selector(getNeedsToFetchSharedCache:error:) 52 | withMethod:@selector(_RRXcodeRemoteDeviceFixer_getNeedsToFetchSharedCache:error:) 53 | error:&error]) { 54 | NSLog(@"Couldn't swizzle; error was %@", error); 55 | } 56 | } 57 | 58 | return self; 59 | } 60 | 61 | @end 62 | -------------------------------------------------------------------------------- /xcodeRemoteDeviceFixer-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.regularrateandrhythm.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | BNDL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | NSHumanReadableCopyright 26 | Copyright © 2011 Regular Rate and Rhythm Software. All rights reserved. 27 | NSPrincipalClass 28 | RRXcodeRemoteDeviceFixer 29 | SIMBLTargetApplications 30 | 31 | 32 | VersionNote 33 | Xcode 3, all versions 34 | BundleIdentifier 35 | com.apple.Xcode 36 | MaxBundleVersion 37 | 1762 38 | MinBundleVersion 39 | 0 40 | 41 | 42 | VersionNote 43 | XCode <= 4.1 (4.2 is the first to understand iOS 5 and remote iPhone connections) 44 | BundleIdentifier 45 | com.apple.dt.Xcode 46 | MaxBundleVersion 47 | 700 48 | MinBundleVersion 49 | 0 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /xcodeRemoteDeviceFixer-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'xcode3fixer' target in the 'xcode3fixer' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /xcodeRemoteDeviceFixer.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 343062EC13E8F6CC00D9EE90 /* JRSwizzle.m in Sources */ = {isa = PBXBuildFile; fileRef = 343062E713E8F6CC00D9EE90 /* JRSwizzle.m */; }; 11 | 343062ED13E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.m in Sources */ = {isa = PBXBuildFile; fileRef = 343062E913E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.m */; }; 12 | 34DCC83713E8CBBD00E68033 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34DCC83613E8CBBC00E68033 /* Cocoa.framework */; }; 13 | /* End PBXBuildFile section */ 14 | 15 | /* Begin PBXFileReference section */ 16 | 343062E613E8F6CC00D9EE90 /* JRSwizzle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JRSwizzle.h; sourceTree = ""; }; 17 | 343062E713E8F6CC00D9EE90 /* JRSwizzle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JRSwizzle.m; sourceTree = ""; }; 18 | 343062E813E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RRXcodeRemoteDeviceFixer.h; sourceTree = ""; }; 19 | 343062E913E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RRXcodeRemoteDeviceFixer.m; sourceTree = ""; }; 20 | 343062EA13E8F6CC00D9EE90 /* xcodeRemoteDeviceFixer-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "xcodeRemoteDeviceFixer-Info.plist"; sourceTree = ""; }; 21 | 343062EB13E8F6CC00D9EE90 /* xcodeRemoteDeviceFixer-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "xcodeRemoteDeviceFixer-Prefix.pch"; sourceTree = ""; }; 22 | 349EEBF913E8FA040080BA69 /* README.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README.txt; sourceTree = ""; }; 23 | 34DCC83313E8CBBC00E68033 /* xcodeRemoteDeviceFixer.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = xcodeRemoteDeviceFixer.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; 24 | 34DCC83613E8CBBC00E68033 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; 25 | 34DCC83913E8CBBD00E68033 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; 26 | 34DCC83A13E8CBBD00E68033 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; 27 | 34DCC83B13E8CBBD00E68033 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 28 | /* End PBXFileReference section */ 29 | 30 | /* Begin PBXFrameworksBuildPhase section */ 31 | 34DCC83013E8CBBC00E68033 /* Frameworks */ = { 32 | isa = PBXFrameworksBuildPhase; 33 | buildActionMask = 2147483647; 34 | files = ( 35 | 34DCC83713E8CBBD00E68033 /* Cocoa.framework in Frameworks */, 36 | ); 37 | runOnlyForDeploymentPostprocessing = 0; 38 | }; 39 | /* End PBXFrameworksBuildPhase section */ 40 | 41 | /* Begin PBXGroup section */ 42 | 34DCC82813E8CBB800E68033 = { 43 | isa = PBXGroup; 44 | children = ( 45 | 349EEBF913E8FA040080BA69 /* README.txt */, 46 | 343062E613E8F6CC00D9EE90 /* JRSwizzle.h */, 47 | 343062E713E8F6CC00D9EE90 /* JRSwizzle.m */, 48 | 343062E813E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.h */, 49 | 343062E913E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.m */, 50 | 343062EA13E8F6CC00D9EE90 /* xcodeRemoteDeviceFixer-Info.plist */, 51 | 343062EB13E8F6CC00D9EE90 /* xcodeRemoteDeviceFixer-Prefix.pch */, 52 | 34DCC83513E8CBBC00E68033 /* Frameworks */, 53 | 34DCC83413E8CBBC00E68033 /* Products */, 54 | ); 55 | sourceTree = ""; 56 | }; 57 | 34DCC83413E8CBBC00E68033 /* Products */ = { 58 | isa = PBXGroup; 59 | children = ( 60 | 34DCC83313E8CBBC00E68033 /* xcodeRemoteDeviceFixer.bundle */, 61 | ); 62 | name = Products; 63 | sourceTree = ""; 64 | }; 65 | 34DCC83513E8CBBC00E68033 /* Frameworks */ = { 66 | isa = PBXGroup; 67 | children = ( 68 | 34DCC83613E8CBBC00E68033 /* Cocoa.framework */, 69 | 34DCC83813E8CBBD00E68033 /* Other Frameworks */, 70 | ); 71 | name = Frameworks; 72 | sourceTree = ""; 73 | }; 74 | 34DCC83813E8CBBD00E68033 /* Other Frameworks */ = { 75 | isa = PBXGroup; 76 | children = ( 77 | 34DCC83913E8CBBD00E68033 /* AppKit.framework */, 78 | 34DCC83A13E8CBBD00E68033 /* CoreData.framework */, 79 | 34DCC83B13E8CBBD00E68033 /* Foundation.framework */, 80 | ); 81 | name = "Other Frameworks"; 82 | sourceTree = ""; 83 | }; 84 | /* End PBXGroup section */ 85 | 86 | /* Begin PBXNativeTarget section */ 87 | 34DCC83213E8CBBC00E68033 /* xcodeRemoteDeviceFixer */ = { 88 | isa = PBXNativeTarget; 89 | buildConfigurationList = 34DCC84513E8CBBD00E68033 /* Build configuration list for PBXNativeTarget "xcodeRemoteDeviceFixer" */; 90 | buildPhases = ( 91 | 34DCC82F13E8CBBC00E68033 /* Sources */, 92 | 34DCC83013E8CBBC00E68033 /* Frameworks */, 93 | 34DCC83113E8CBBC00E68033 /* Resources */, 94 | ); 95 | buildRules = ( 96 | ); 97 | dependencies = ( 98 | ); 99 | name = xcodeRemoteDeviceFixer; 100 | productName = xcodeRemoteDeviceFixer; 101 | productReference = 34DCC83313E8CBBC00E68033 /* xcodeRemoteDeviceFixer.bundle */; 102 | productType = "com.apple.product-type.bundle"; 103 | }; 104 | /* End PBXNativeTarget section */ 105 | 106 | /* Begin PBXProject section */ 107 | 34DCC82A13E8CBB800E68033 /* Project object */ = { 108 | isa = PBXProject; 109 | attributes = { 110 | LastUpgradeCheck = 0420; 111 | ORGANIZATIONNAME = "Regular Rate and Rhythm Software"; 112 | }; 113 | buildConfigurationList = 34DCC82D13E8CBB800E68033 /* Build configuration list for PBXProject "xcodeRemoteDeviceFixer" */; 114 | compatibilityVersion = "Xcode 3.2"; 115 | developmentRegion = English; 116 | hasScannedForEncodings = 0; 117 | knownRegions = ( 118 | en, 119 | ); 120 | mainGroup = 34DCC82813E8CBB800E68033; 121 | productRefGroup = 34DCC83413E8CBBC00E68033 /* Products */; 122 | projectDirPath = ""; 123 | projectRoot = ""; 124 | targets = ( 125 | 34DCC83213E8CBBC00E68033 /* xcodeRemoteDeviceFixer */, 126 | ); 127 | }; 128 | /* End PBXProject section */ 129 | 130 | /* Begin PBXResourcesBuildPhase section */ 131 | 34DCC83113E8CBBC00E68033 /* Resources */ = { 132 | isa = PBXResourcesBuildPhase; 133 | buildActionMask = 2147483647; 134 | files = ( 135 | ); 136 | runOnlyForDeploymentPostprocessing = 0; 137 | }; 138 | /* End PBXResourcesBuildPhase section */ 139 | 140 | /* Begin PBXSourcesBuildPhase section */ 141 | 34DCC82F13E8CBBC00E68033 /* Sources */ = { 142 | isa = PBXSourcesBuildPhase; 143 | buildActionMask = 2147483647; 144 | files = ( 145 | 343062EC13E8F6CC00D9EE90 /* JRSwizzle.m in Sources */, 146 | 343062ED13E8F6CC00D9EE90 /* RRXcodeRemoteDeviceFixer.m in Sources */, 147 | ); 148 | runOnlyForDeploymentPostprocessing = 0; 149 | }; 150 | /* End PBXSourcesBuildPhase section */ 151 | 152 | /* Begin XCBuildConfiguration section */ 153 | 34DCC84313E8CBBD00E68033 /* Debug */ = { 154 | isa = XCBuildConfiguration; 155 | buildSettings = { 156 | ALWAYS_SEARCH_USER_PATHS = NO; 157 | ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; 158 | COPY_PHASE_STRIP = NO; 159 | GCC_C_LANGUAGE_STANDARD = gnu99; 160 | GCC_DYNAMIC_NO_PIC = NO; 161 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 162 | GCC_ENABLE_OBJC_GC = supported; 163 | GCC_OPTIMIZATION_LEVEL = 0; 164 | GCC_PREPROCESSOR_DEFINITIONS = ( 165 | "DEBUG=1", 166 | "$(inherited)", 167 | ); 168 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 169 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 170 | GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 171 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 172 | GCC_WARN_UNUSED_VARIABLE = YES; 173 | MACOSX_DEPLOYMENT_TARGET = 10.7; 174 | OTHER_LDFLAGS = ( 175 | "-undefined", 176 | suppress, 177 | "-flat_namespace", 178 | ); 179 | SDKROOT = macosx; 180 | }; 181 | name = Debug; 182 | }; 183 | 34DCC84413E8CBBD00E68033 /* Release */ = { 184 | isa = XCBuildConfiguration; 185 | buildSettings = { 186 | ALWAYS_SEARCH_USER_PATHS = NO; 187 | ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; 188 | COPY_PHASE_STRIP = YES; 189 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 190 | GCC_C_LANGUAGE_STANDARD = gnu99; 191 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 192 | GCC_ENABLE_OBJC_GC = supported; 193 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 194 | GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; 195 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 196 | GCC_WARN_UNUSED_VARIABLE = YES; 197 | MACOSX_DEPLOYMENT_TARGET = 10.7; 198 | OTHER_LDFLAGS = ( 199 | "-undefined", 200 | suppress, 201 | "-flat_namespace", 202 | ); 203 | SDKROOT = macosx; 204 | }; 205 | name = Release; 206 | }; 207 | 34DCC84613E8CBBD00E68033 /* Debug */ = { 208 | isa = XCBuildConfiguration; 209 | buildSettings = { 210 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 211 | GCC_PREFIX_HEADER = "xcodeRemoteDeviceFixer-Prefix.pch"; 212 | INFOPLIST_FILE = "$(TARGET_NAME)-Info.plist"; 213 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; 214 | PRODUCT_NAME = "$(TARGET_NAME)"; 215 | WRAPPER_EXTENSION = bundle; 216 | }; 217 | name = Debug; 218 | }; 219 | 34DCC84713E8CBBD00E68033 /* Release */ = { 220 | isa = XCBuildConfiguration; 221 | buildSettings = { 222 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 223 | GCC_PREFIX_HEADER = "xcodeRemoteDeviceFixer-Prefix.pch"; 224 | INFOPLIST_FILE = "$(TARGET_NAME)-Info.plist"; 225 | INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; 226 | PRODUCT_NAME = "$(TARGET_NAME)"; 227 | WRAPPER_EXTENSION = bundle; 228 | }; 229 | name = Release; 230 | }; 231 | /* End XCBuildConfiguration section */ 232 | 233 | /* Begin XCConfigurationList section */ 234 | 34DCC82D13E8CBB800E68033 /* Build configuration list for PBXProject "xcodeRemoteDeviceFixer" */ = { 235 | isa = XCConfigurationList; 236 | buildConfigurations = ( 237 | 34DCC84313E8CBBD00E68033 /* Debug */, 238 | 34DCC84413E8CBBD00E68033 /* Release */, 239 | ); 240 | defaultConfigurationIsVisible = 0; 241 | defaultConfigurationName = Release; 242 | }; 243 | 34DCC84513E8CBBD00E68033 /* Build configuration list for PBXNativeTarget "xcodeRemoteDeviceFixer" */ = { 244 | isa = XCConfigurationList; 245 | buildConfigurations = ( 246 | 34DCC84613E8CBBD00E68033 /* Debug */, 247 | 34DCC84713E8CBBD00E68033 /* Release */, 248 | ); 249 | defaultConfigurationIsVisible = 0; 250 | defaultConfigurationName = Release; 251 | }; 252 | /* End XCConfigurationList section */ 253 | }; 254 | rootObject = 34DCC82A13E8CBB800E68033 /* Project object */; 255 | } 256 | --------------------------------------------------------------------------------