Commit 3b2b6dcb authored by Fabio Pelosin's avatar Fabio Pelosin

[Integration] Actually add the result of the install_custom_workspace check

parent b97b6d50
platform :ios, '6.0'
workspace 'Workspace.xcworkspace'
# TODO: remove
xcodeproj 'SampleApp_1.xcodeproj'
target 'SampleApp_1' do
xcodeproj 'SampleApp_1.xcodeproj'
pod "Reachability", "3.1.0"
end
target :'SampleApp_2' do
xcodeproj 'SampleApp_2.xcodeproj'
pod "Reachability"
end
../../Reachability/Reachability.h
\ No newline at end of file
# Acknowledgements
This application makes use of the following third party libraries:
## Reachability
Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Generated by CocoaPods - http://cocoapods.org
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PreferenceSpecifiers</key>
<array>
<dict>
<key>FooterText</key>
<string>This application makes use of the following third party libraries:</string>
<key>Title</key>
<string>Acknowledgements</string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
<dict>
<key>FooterText</key>
<string>Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</string>
<key>Title</key>
<string>Reachability</string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
<dict>
<key>FooterText</key>
<string>Generated by CocoaPods - http://cocoapods.org</string>
<key>Title</key>
<string></string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
</array>
<key>StringsTable</key>
<string>Acknowledgements</string>
<key>Title</key>
<string>Acknowledgements</string>
</dict>
</plist>
@interface PodsDummy_Pods_SampleApp_1 : NSObject
@end
@implementation PodsDummy_Pods_SampleApp_1
@end
// WARNING: This feature of CocoaPods is present for discussion purposes and might be discontinued or changed in future
#define __COCOA_PODS
#define __POD_Reachability
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#endif
#import "Pods-SampleApp_1-header.h"
#!/bin/sh
install_resource()
{
case $1 in
*.storyboard)
echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
;;
*.xib)
echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
;;
*.framework)
echo "rsync -rp ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
rsync -rp "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
;;
*.xcdatamodeld)
echo "xcrun momc ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xcdatamodeld`.momd"
xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xcdatamodeld`.momd"
;;
*)
echo "cp -R ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
cp -R "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
;;
esac
}
ALWAYS_SEARCH_USER_PATHS = YES
HEADER_SEARCH_PATHS = ${PODS_HEADERS_SEARCH_PATHS}
OTHER_LDFLAGS = -ObjC -framework SystemConfiguration
PODS_BUILD_HEADERS_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/Reachability"
PODS_HEADERS_SEARCH_PATHS = ${PODS_PUBLIC_HEADERS_SEARCH_PATHS}
PODS_PUBLIC_HEADERS_SEARCH_PATHS = "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/Reachability"
PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
# Acknowledgements
This application makes use of the following third party libraries:
## Reachability
Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Generated by CocoaPods - http://cocoapods.org
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PreferenceSpecifiers</key>
<array>
<dict>
<key>FooterText</key>
<string>This application makes use of the following third party libraries:</string>
<key>Title</key>
<string>Acknowledgements</string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
<dict>
<key>FooterText</key>
<string>Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</string>
<key>Title</key>
<string>Reachability</string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
<dict>
<key>FooterText</key>
<string>Generated by CocoaPods - http://cocoapods.org</string>
<key>Title</key>
<string></string>
<key>Type</key>
<string>PSGroupSpecifier</string>
</dict>
</array>
<key>StringsTable</key>
<string>Acknowledgements</string>
<key>Title</key>
<string>Acknowledgements</string>
</dict>
</plist>
@interface PodsDummy_Pods_SampleApp_2 : NSObject
@end
@implementation PodsDummy_Pods_SampleApp_2
@end
// WARNING: This feature of CocoaPods is present for discussion purposes and might be discontinued or changed in future
#define __COCOA_PODS
#define __POD_Reachability
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#endif
#import "Pods-SampleApp_2-header.h"
#!/bin/sh
install_resource()
{
case $1 in
*.storyboard)
echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
;;
*.xib)
echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
;;
*.framework)
echo "rsync -rp ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
rsync -rp "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
;;
*.xcdatamodeld)
echo "xcrun momc ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xcdatamodeld`.momd"
xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename $1 .xcdatamodeld`.momd"
;;
*)
echo "cp -R ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
cp -R "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
;;
esac
}
ALWAYS_SEARCH_USER_PATHS = YES
HEADER_SEARCH_PATHS = ${PODS_HEADERS_SEARCH_PATHS}
OTHER_LDFLAGS = -ObjC -framework SystemConfiguration
PODS_BUILD_HEADERS_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/Reachability"
PODS_HEADERS_SEARCH_PATHS = ${PODS_PUBLIC_HEADERS_SEARCH_PATHS}
PODS_PUBLIC_HEADERS_SEARCH_PATHS = "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/Reachability"
PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
File References:
- Frameworks:
- Foundation.framework
- SystemConfiguration.framework
- Pods:
- Reachability:
- Reachability.h
- Reachability.m
- Products:
- libPods-SampleApp_1.a
- libPods-SampleApp_2.a
- Targets Support Files:
- Pods-SampleApp_1:
- Pods-SampleApp_1.xcconfig
- Pods-SampleApp_1-header.h
- Pods-SampleApp_1-prefix.pch
- Pods-SampleApp_1-resources.sh
- Pods-SampleApp_1-acknowledgements.plist
- Pods-SampleApp_1-acknowledgements.markdown
- Pods-SampleApp_1-dummy.m
- Pods-SampleApp_2:
- Pods-SampleApp_2.xcconfig
- Pods-SampleApp_2-header.h
- Pods-SampleApp_2-prefix.pch
- Pods-SampleApp_2-resources.sh
- Pods-SampleApp_2-acknowledgements.plist
- Pods-SampleApp_2-acknowledgements.markdown
- Pods-SampleApp_2-dummy.m
- Podfile
Targets:
- Pods-SampleApp_1:
Build Phases:
- SourcesBuildPhase:
- Reachability.m
- Pods-SampleApp_1-dummy.m
- FrameworksBuildPhase:
- Foundation.framework
- HeadersBuildPhase:
- Reachability.h
Build Configurations:
- Release:
Build Settings:
VALIDATE_PRODUCT: 'YES'
PUBLIC_HEADERS_FOLDER_PATH: $(TARGET_NAME)
DSTROOT: /tmp/xcodeproj.dst
GCC_PREFIX_HEADER: Pods-SampleApp_1-prefix.pch
PODS_HEADERS_SEARCH_PATHS: ${PODS_BUILD_HEADERS_SEARCH_PATHS}
GCC_C_LANGUAGE_STANDARD: gnu99
OTHER_LDFLAGS: ''
OTHER_CFLAGS:
- -DNS_BLOCK_ASSERTIONS=1
- $(inherited)
GCC_VERSION: com.apple.compilers.llvm.clang.1_0
ALWAYS_SEARCH_USER_PATHS: 'NO'
SDKROOT: iphoneos
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
COPY_PHASE_STRIP: 'YES'
PRODUCT_NAME: $(TARGET_NAME)
IPHONEOS_DEPLOYMENT_TARGET: '6.0'
INSTALL_PATH: $(BUILT_PRODUCTS_DIR)
SKIP_INSTALL: 'YES'
PODS_ROOT: ${SRCROOT}
OTHER_CPLUSPLUSFLAGS:
- -DNS_BLOCK_ASSERTIONS=1
- $(inherited)
ARCHS: $(ARCHS_STANDARD_32_BIT)
Base Configuration: Pods-SampleApp_1.xcconfig
- Debug:
Build Settings:
PUBLIC_HEADERS_FOLDER_PATH: $(TARGET_NAME)
DSTROOT: /tmp/xcodeproj.dst
GCC_PREPROCESSOR_DEFINITIONS:
- DEBUG=1
- $(inherited)
GCC_SYMBOLS_PRIVATE_EXTERN: 'NO'
GCC_PREFIX_HEADER: Pods-SampleApp_1-prefix.pch
GCC_OPTIMIZATION_LEVEL: '0'
PODS_HEADERS_SEARCH_PATHS: ${PODS_BUILD_HEADERS_SEARCH_PATHS}
GCC_C_LANGUAGE_STANDARD: gnu99
OTHER_LDFLAGS: ''
GCC_VERSION: com.apple.compilers.llvm.clang.1_0
ALWAYS_SEARCH_USER_PATHS: 'NO'
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
COPY_PHASE_STRIP: 'NO'
SDKROOT: iphoneos
PRODUCT_NAME: $(TARGET_NAME)
GCC_DYNAMIC_NO_PIC: 'NO'
INSTALL_PATH: $(BUILT_PRODUCTS_DIR)
IPHONEOS_DEPLOYMENT_TARGET: '6.0'
PODS_ROOT: ${SRCROOT}
ARCHS: $(ARCHS_STANDARD_32_BIT)
SKIP_INSTALL: 'YES'
Base Configuration: Pods-SampleApp_1.xcconfig
- Pods-SampleApp_2:
Build Phases:
- SourcesBuildPhase:
- Reachability.m
- Pods-SampleApp_2-dummy.m
- FrameworksBuildPhase:
- Foundation.framework
- HeadersBuildPhase:
- Reachability.h
Build Configurations:
- Release:
Build Settings:
VALIDATE_PRODUCT: 'YES'
PUBLIC_HEADERS_FOLDER_PATH: $(TARGET_NAME)
DSTROOT: /tmp/xcodeproj.dst
GCC_PREFIX_HEADER: Pods-SampleApp_2-prefix.pch
PODS_HEADERS_SEARCH_PATHS: ${PODS_BUILD_HEADERS_SEARCH_PATHS}
GCC_C_LANGUAGE_STANDARD: gnu99
OTHER_LDFLAGS: ''
OTHER_CFLAGS:
- -DNS_BLOCK_ASSERTIONS=1
- $(inherited)
GCC_VERSION: com.apple.compilers.llvm.clang.1_0
ALWAYS_SEARCH_USER_PATHS: 'NO'
SDKROOT: iphoneos
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
COPY_PHASE_STRIP: 'YES'
PRODUCT_NAME: $(TARGET_NAME)
IPHONEOS_DEPLOYMENT_TARGET: '6.0'
INSTALL_PATH: $(BUILT_PRODUCTS_DIR)
SKIP_INSTALL: 'YES'
PODS_ROOT: ${SRCROOT}
OTHER_CPLUSPLUSFLAGS:
- -DNS_BLOCK_ASSERTIONS=1
- $(inherited)
ARCHS: $(ARCHS_STANDARD_32_BIT)
Base Configuration: Pods-SampleApp_2.xcconfig
- Debug:
Build Settings:
PUBLIC_HEADERS_FOLDER_PATH: $(TARGET_NAME)
DSTROOT: /tmp/xcodeproj.dst
GCC_PREPROCESSOR_DEFINITIONS:
- DEBUG=1
- $(inherited)
GCC_SYMBOLS_PRIVATE_EXTERN: 'NO'
GCC_PREFIX_HEADER: Pods-SampleApp_2-prefix.pch
GCC_OPTIMIZATION_LEVEL: '0'
PODS_HEADERS_SEARCH_PATHS: ${PODS_BUILD_HEADERS_SEARCH_PATHS}
GCC_C_LANGUAGE_STANDARD: gnu99
OTHER_LDFLAGS: ''
GCC_VERSION: com.apple.compilers.llvm.clang.1_0
ALWAYS_SEARCH_USER_PATHS: 'NO'
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
COPY_PHASE_STRIP: 'NO'
SDKROOT: iphoneos
PRODUCT_NAME: $(TARGET_NAME)
GCC_DYNAMIC_NO_PIC: 'NO'
INSTALL_PATH: $(BUILT_PRODUCTS_DIR)
IPHONEOS_DEPLOYMENT_TARGET: '6.0'
PODS_ROOT: ${SRCROOT}
ARCHS: $(ARCHS_STANDARD_32_BIT)
SKIP_INSTALL: 'YES'
Base Configuration: Pods-SampleApp_2.xcconfig
Build Configurations:
- Release:
Build Settings: {}
- Debug:
Build Settings: {}
# Reachability
This is a drop-in replacement for Apples Reachability class. It is ARC compatible, uses the new GCD methods to notify of network interface changes.
In addition to the standard NSNotification it supports the use of Blocks for when the network becomes reachable and unreachable.
Finally you can specify wether or not a WWAN connection is considered "reachable".
## A Simple example
This sample uses Blocks to tell you when the interface state has changed. The blocks will be called on a BACKGROUND THREAD so you need to dispatch UI updates onto the main thread.
// allocate a reachability object
Reachability* reach = [Reachability reachabilityWithHostname:@"www.google.com"];
// set the blocks
reach.reachableBlock = ^(Reachability*reach)
{
NSLog(@"REACHABLE!");
};
reach.unreachableBlock = ^(Reachability*reach)
{
NSLog(@"UNREACHABLE!");
};
// start the notifier which will cause the reachability object to retain itself!
[reach startNotifier];
## Another simple example
This sample will use NSNotifications to tell you when the interface has changed, they will be delivered on the MAIN THREAD so you *can* do UI updates from within the function.
In addition it asks the Reachability object to consider the WWAN (3G/EDGE/CDMA) as a non-reachable connection (you might use this if you are writing a video streaming app, for example, to save the users data plan).
// allocate a reachability object
Reachability* reach = [Reachability reachabilityWithHostname:@"www.google.com"];
// tell the reachability that we DONT want to be reachable on 3G/EDGE/CDMA
reach.reachableOnWWAN = NO;
// here we set up a NSNotification observer. The Reachability that caused the notification
// is passed in the object parameter
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reachabilityChanged:)
name:kReachabilityChangedNotification
object:nil];
[reach startNotifier]
\ No newline at end of file
/*
Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
#import <Foundation/Foundation.h>
#import <SystemConfiguration/SystemConfiguration.h>
#import <sys/socket.h>
#import <netinet/in.h>
#import <netinet6/in6.h>
#import <arpa/inet.h>
#import <ifaddrs.h>
#import <netdb.h>
/**
* Does ARC support support GCD objects?
* It does if the minimum deployment target is iOS 6+ or Mac OS X 8+
**/
#if TARGET_OS_IPHONE
// Compiling for iOS
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 60000 // iOS 6.0 or later
#define NEEDS_DISPATCH_RETAIN_RELEASE 0
#else // iOS 5.X or earlier
#define NEEDS_DISPATCH_RETAIN_RELEASE 1
#endif
#else
// Compiling for Mac OS X
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1080 // Mac OS X 10.8 or later
#define NEEDS_DISPATCH_RETAIN_RELEASE 0
#else
#define NEEDS_DISPATCH_RETAIN_RELEASE 1 // Mac OS X 10.7 or earlier
#endif
#endif
extern NSString *const kReachabilityChangedNotification;
typedef enum
{
// Apple NetworkStatus Compatible Names.
NotReachable = 0,
ReachableViaWiFi = 2,
ReachableViaWWAN = 1
} NetworkStatus;
@class Reachability;
typedef void (^NetworkReachable)(Reachability * reachability);
typedef void (^NetworkUnreachable)(Reachability * reachability);
@interface Reachability : NSObject
@property (nonatomic, copy) NetworkReachable reachableBlock;
@property (nonatomic, copy) NetworkUnreachable unreachableBlock;
@property (nonatomic, assign) BOOL reachableOnWWAN;
+(Reachability*)reachabilityWithHostname:(NSString*)hostname;
+(Reachability*)reachabilityForInternetConnection;
+(Reachability*)reachabilityWithAddress:(const struct sockaddr_in*)hostAddress;
+(Reachability*)reachabilityForLocalWiFi;
-(Reachability *)initWithReachabilityRef:(SCNetworkReachabilityRef)ref;
-(BOOL)startNotifier;
-(void)stopNotifier;
-(BOOL)isReachable;
-(BOOL)isReachableViaWWAN;
-(BOOL)isReachableViaWiFi;
// WWAN may be available, but not active until a connection has been established.
// WiFi may require a connection for VPN on Demand.
-(BOOL)isConnectionRequired; // Identical DDG variant.
-(BOOL)connectionRequired; // Apple's routine.
// Dynamic, on demand connection?
-(BOOL)isConnectionOnDemand;
// Is user intervention required?
-(BOOL)isInterventionRequired;
-(NetworkStatus)currentReachabilityStatus;
-(SCNetworkReachabilityFlags)reachabilityFlags;
-(NSString*)currentReachabilityString;
-(NSString*)currentReachabilityFlags;
@end
/*
Copyright (c) 2011, Tony Million.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
#import "Reachability.h"
NSString *const kReachabilityChangedNotification = @"kReachabilityChangedNotification";
@interface Reachability ()
@property (nonatomic, assign) SCNetworkReachabilityRef reachabilityRef;
#if NEEDS_DISPATCH_RETAIN_RELEASE
@property (nonatomic, assign) dispatch_queue_t reachabilitySerialQueue;
#else
@property (nonatomic, strong) dispatch_queue_t reachabilitySerialQueue;
#endif
@property (nonatomic, strong) id reachabilityObject;
-(void)reachabilityChanged:(SCNetworkReachabilityFlags)flags;
-(BOOL)isReachableWithFlags:(SCNetworkReachabilityFlags)flags;
@end
static NSString *reachabilityFlags(SCNetworkReachabilityFlags flags)
{
return [NSString stringWithFormat:@"%c%c %c%c%c%c%c%c%c",
#if TARGET_OS_IPHONE
(flags & kSCNetworkReachabilityFlagsIsWWAN) ? 'W' : '-',
#else
'X',
#endif
(flags & kSCNetworkReachabilityFlagsReachable) ? 'R' : '-',
(flags & kSCNetworkReachabilityFlagsConnectionRequired) ? 'c' : '-',
(flags & kSCNetworkReachabilityFlagsTransientConnection) ? 't' : '-',
(flags & kSCNetworkReachabilityFlagsInterventionRequired) ? 'i' : '-',
(flags & kSCNetworkReachabilityFlagsConnectionOnTraffic) ? 'C' : '-',
(flags & kSCNetworkReachabilityFlagsConnectionOnDemand) ? 'D' : '-',
(flags & kSCNetworkReachabilityFlagsIsLocalAddress) ? 'l' : '-',
(flags & kSCNetworkReachabilityFlagsIsDirect) ? 'd' : '-'];
}
//Start listening for reachability notifications on the current run loop
static void TMReachabilityCallback(SCNetworkReachabilityRef target, SCNetworkReachabilityFlags flags, void* info)
{
#pragma unused (target)
#if __has_feature(objc_arc)
Reachability *reachability = ((__bridge Reachability*)info);
#else
Reachability *reachability = ((Reachability*)info);
#endif
// we probably dont need an autoreleasepool here as GCD docs state each queue has its own autorelease pool
// but what the heck eh?
@autoreleasepool
{
[reachability reachabilityChanged:flags];
}
}
@implementation Reachability
@synthesize reachabilityRef;
@synthesize reachabilitySerialQueue;
@synthesize reachableOnWWAN;
@synthesize reachableBlock;
@synthesize unreachableBlock;
@synthesize reachabilityObject;
#pragma mark - class constructor methods
+(Reachability*)reachabilityWithHostname:(NSString*)hostname
{
SCNetworkReachabilityRef ref = SCNetworkReachabilityCreateWithName(NULL, [hostname UTF8String]);
if (ref)
{
id reachability = [[self alloc] initWithReachabilityRef:ref];
#if __has_feature(objc_arc)
return reachability;
#else
return [reachability autorelease];
#endif
}
return nil;
}
+(Reachability *)reachabilityWithAddress:(const struct sockaddr_in *)hostAddress
{
SCNetworkReachabilityRef ref = SCNetworkReachabilityCreateWithAddress(kCFAllocatorDefault, (const struct sockaddr*)hostAddress);
if (ref)
{
id reachability = [[self alloc] initWithReachabilityRef:ref];
#if __has_feature(objc_arc)
return reachability;
#else
return [reachability autorelease];
#endif
}
return nil;
}
+(Reachability *)reachabilityForInternetConnection
{
struct sockaddr_in zeroAddress;
bzero(&zeroAddress, sizeof(zeroAddress));
zeroAddress.sin_len = sizeof(zeroAddress);
zeroAddress.sin_family = AF_INET;
return [self reachabilityWithAddress:&zeroAddress];
}
+(Reachability*)reachabilityForLocalWiFi
{
struct sockaddr_in localWifiAddress;
bzero(&localWifiAddress, sizeof(localWifiAddress));
localWifiAddress.sin_len = sizeof(localWifiAddress);
localWifiAddress.sin_family = AF_INET;
// IN_LINKLOCALNETNUM is defined in <netinet/in.h> as 169.254.0.0
localWifiAddress.sin_addr.s_addr = htonl(IN_LINKLOCALNETNUM);
return [self reachabilityWithAddress:&localWifiAddress];
}
// initialization methods
-(Reachability *)initWithReachabilityRef:(SCNetworkReachabilityRef)ref
{
self = [super init];
if (self != nil)
{
self.reachableOnWWAN = YES;
self.reachabilityRef = ref;
}
return self;
}
-(void)dealloc
{
[self stopNotifier];
if(self.reachabilityRef)
{
CFRelease(self.reachabilityRef);
self.reachabilityRef = nil;
}
self.reachableBlock = nil;
self.unreachableBlock = nil;
#if !(__has_feature(objc_arc))
[super dealloc];
#endif
}
#pragma mark - notifier methods
// Notifier
// NOTE: this uses GCD to trigger the blocks - they *WILL NOT* be called on THE MAIN THREAD
// - In other words DO NOT DO ANY UI UPDATES IN THE BLOCKS.
// INSTEAD USE dispatch_async(dispatch_get_main_queue(), ^{UISTUFF}) (or dispatch_sync if you want)
-(BOOL)startNotifier
{
SCNetworkReachabilityContext context = { 0, NULL, NULL, NULL, NULL };
// this should do a retain on ourself, so as long as we're in notifier mode we shouldn't disappear out from under ourselves
// woah
self.reachabilityObject = self;
// first we need to create a serial queue
// we allocate this once for the lifetime of the notifier
self.reachabilitySerialQueue = dispatch_queue_create("com.tonymillion.reachability", NULL);
if(!self.reachabilitySerialQueue)
{
return NO;
}
#if __has_feature(objc_arc)
context.info = (__bridge void *)self;
#else
context.info = (void *)self;
#endif
if (!SCNetworkReachabilitySetCallback(self.reachabilityRef, TMReachabilityCallback, &context))
{
#ifdef DEBUG
NSLog(@"SCNetworkReachabilitySetCallback() failed: %s", SCErrorString(SCError()));
#endif
//clear out the dispatch queue
if(self.reachabilitySerialQueue)
{
#if NEEDS_DISPATCH_RETAIN_RELEASE
dispatch_release(self.reachabilitySerialQueue);
#endif
self.reachabilitySerialQueue = nil;
}
self.reachabilityObject = nil;
return NO;
}
// set it as our reachability queue which will retain the queue
if(!SCNetworkReachabilitySetDispatchQueue(self.reachabilityRef, self.reachabilitySerialQueue))
{
#ifdef DEBUG
NSLog(@"SCNetworkReachabilitySetDispatchQueue() failed: %s", SCErrorString(SCError()));
#endif
//UH OH - FAILURE!
// first stop any callbacks!
SCNetworkReachabilitySetCallback(self.reachabilityRef, NULL, NULL);
// then clear out the dispatch queue
if(self.reachabilitySerialQueue)
{
#if NEEDS_DISPATCH_RETAIN_RELEASE
dispatch_release(self.reachabilitySerialQueue);
#endif
self.reachabilitySerialQueue = nil;
}
self.reachabilityObject = nil;
return NO;
}
return YES;
}
-(void)stopNotifier
{
// first stop any callbacks!
SCNetworkReachabilitySetCallback(self.reachabilityRef, NULL, NULL);
// unregister target from the GCD serial dispatch queue
SCNetworkReachabilitySetDispatchQueue(self.reachabilityRef, NULL);
if(self.reachabilitySerialQueue)
{
#if NEEDS_DISPATCH_RETAIN_RELEASE
dispatch_release(self.reachabilitySerialQueue);
#endif
self.reachabilitySerialQueue = nil;
}
self.reachabilityObject = nil;
}
#pragma mark - reachability tests
// this is for the case where you flick the airplane mode
// you end up getting something like this:
//Reachability: WR ct-----
//Reachability: -- -------
//Reachability: WR ct-----
//Reachability: -- -------
// we treat this as 4 UNREACHABLE triggers - really apple should do better than this
#define testcase (kSCNetworkReachabilityFlagsConnectionRequired | kSCNetworkReachabilityFlagsTransientConnection)
-(BOOL)isReachableWithFlags:(SCNetworkReachabilityFlags)flags
{
BOOL connectionUP = YES;
if(!(flags & kSCNetworkReachabilityFlagsReachable))
connectionUP = NO;
if( (flags & testcase) == testcase )
connectionUP = NO;
#if TARGET_OS_IPHONE
if(flags & kSCNetworkReachabilityFlagsIsWWAN)
{
// we're on 3G
if(!self.reachableOnWWAN)
{
// we dont want to connect when on 3G
connectionUP = NO;
}
}
#endif
return connectionUP;
}
-(BOOL)isReachable
{
SCNetworkReachabilityFlags flags;
if(!SCNetworkReachabilityGetFlags(self.reachabilityRef, &flags))
return NO;
return [self isReachableWithFlags:flags];
}
-(BOOL)isReachableViaWWAN
{
#if TARGET_OS_IPHONE
SCNetworkReachabilityFlags flags = 0;
if(SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
// check we're REACHABLE
if(flags & kSCNetworkReachabilityFlagsReachable)
{
// now, check we're on WWAN
if(flags & kSCNetworkReachabilityFlagsIsWWAN)
{
return YES;
}
}
}
#endif
return NO;
}
-(BOOL)isReachableViaWiFi
{
SCNetworkReachabilityFlags flags = 0;
if(SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
// check we're reachable
if((flags & kSCNetworkReachabilityFlagsReachable))
{
#if TARGET_OS_IPHONE
// check we're NOT on WWAN
if((flags & kSCNetworkReachabilityFlagsIsWWAN))
{
return NO;
}
#endif
return YES;
}
}
return NO;
}
// WWAN may be available, but not active until a connection has been established.
// WiFi may require a connection for VPN on Demand.
-(BOOL)isConnectionRequired
{
return [self connectionRequired];
}
-(BOOL)connectionRequired
{
SCNetworkReachabilityFlags flags;
if(SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
return (flags & kSCNetworkReachabilityFlagsConnectionRequired);
}
return NO;
}
// Dynamic, on demand connection?
-(BOOL)isConnectionOnDemand
{
SCNetworkReachabilityFlags flags;
if (SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
return ((flags & kSCNetworkReachabilityFlagsConnectionRequired) &&
(flags & (kSCNetworkReachabilityFlagsConnectionOnTraffic | kSCNetworkReachabilityFlagsConnectionOnDemand)));
}
return NO;
}
// Is user intervention required?
-(BOOL)isInterventionRequired
{
SCNetworkReachabilityFlags flags;
if (SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
return ((flags & kSCNetworkReachabilityFlagsConnectionRequired) &&
(flags & kSCNetworkReachabilityFlagsInterventionRequired));
}
return NO;
}
#pragma mark - reachability status stuff
-(NetworkStatus)currentReachabilityStatus
{
if([self isReachable])
{
if([self isReachableViaWiFi])
return ReachableViaWiFi;
#if TARGET_OS_IPHONE
return ReachableViaWWAN;
#endif
}
return NotReachable;
}
-(SCNetworkReachabilityFlags)reachabilityFlags
{
SCNetworkReachabilityFlags flags = 0;
if(SCNetworkReachabilityGetFlags(reachabilityRef, &flags))
{
return flags;
}
return 0;
}
-(NSString*)currentReachabilityString
{
NetworkStatus temp = [self currentReachabilityStatus];
if(temp == reachableOnWWAN)
{
// updated for the fact we have CDMA phones now!
return NSLocalizedString(@"Cellular", @"");
}
if (temp == ReachableViaWiFi)
{
return NSLocalizedString(@"WiFi", @"");
}
return NSLocalizedString(@"No Connection", @"");
}
-(NSString*)currentReachabilityFlags
{
return reachabilityFlags([self reachabilityFlags]);
}
#pragma mark - callback function calls this method
-(void)reachabilityChanged:(SCNetworkReachabilityFlags)flags
{
if([self isReachableWithFlags:flags])
{
if(self.reachableBlock)
{
self.reachableBlock(self);
}
}
else
{
if(self.unreachableBlock)
{
self.unreachableBlock(self);
}
}
// this makes sure the change notification happens on the MAIN THREAD
dispatch_async(dispatch_get_main_queue(), ^{
[[NSNotificationCenter defaultCenter] postNotificationName:kReachabilityChangedNotification
object:self];
});
}
@end
File References:
- SampleApp:
- CPAppDelegate.h
- CPAppDelegate.m
- MainMenu.xib:
- en
- Supporting Files:
- SampleApp-Info.plist
- InfoPlist.strings:
- en
- main.m
- SampleApp-Prefix.pch
- Credits.rtf:
- en
- Frameworks:
- Cocoa.framework
- Other Frameworks:
- AppKit.framework
- CoreData.framework
- Foundation.framework
- libPods-SampleApp_1.a
- Products:
- SampleApp.app
- Pods-SampleApp_1.xcconfig
Targets:
- SampleApp_1:
Build Phases:
- SourcesBuildPhase:
- main.m
- CPAppDelegate.m
- FrameworksBuildPhase:
- Cocoa.framework
- libPods-SampleApp_1.a
- ResourcesBuildPhase:
- InfoPlist.strings
- Credits.rtf
- MainMenu.xib
- Copy Pods Resources: []
Build Configurations:
- Debug:
Build Settings:
WRAPPER_EXTENSION: app
COMBINE_HIDPI_IMAGES: 'YES'
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
INFOPLIST_FILE: SampleApp/SampleApp-Info.plist
GCC_PREFIX_HEADER: SampleApp/SampleApp-Prefix.pch
PRODUCT_NAME: $(TARGET_NAME)
Base Configuration: Pods-SampleApp_1.xcconfig
- Release:
Build Settings:
WRAPPER_EXTENSION: app
COMBINE_HIDPI_IMAGES: 'YES'
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
INFOPLIST_FILE: SampleApp/SampleApp-Info.plist
GCC_PREFIX_HEADER: SampleApp/SampleApp-Prefix.pch
PRODUCT_NAME: $(TARGET_NAME)
Base Configuration: Pods-SampleApp_1.xcconfig
Build Configurations:
- Debug:
Build Settings:
CLANG_WARN_ENUM_CONVERSION: 'YES'
GCC_WARN_ABOUT_RETURN_TYPE: 'YES'
GCC_PREPROCESSOR_DEFINITIONS:
- DEBUG=1
- $(inherited)
ONLY_ACTIVE_ARCH: 'YES'
GCC_SYMBOLS_PRIVATE_EXTERN: 'NO'
GCC_WARN_UNINITIALIZED_AUTOS: 'YES'
CLANG_CXX_LANGUAGE_STANDARD: gnu++0x
CLANG_WARN_INT_CONVERSION: 'YES'
MACOSX_DEPLOYMENT_TARGET: '10.8'
CLANG_WARN_CONSTANT_CONVERSION: 'YES'
GCC_OPTIMIZATION_LEVEL: '0'
GCC_C_LANGUAGE_STANDARD: gnu99
CLANG_WARN__DUPLICATE_METHOD_MATCH: 'YES'
GCC_WARN_64_TO_32_BIT_CONVERSION: 'YES'
CLANG_WARN_EMPTY_BODY: 'YES'
ALWAYS_SEARCH_USER_PATHS: 'NO'
COPY_PHASE_STRIP: 'NO'
SDKROOT: macosx
GCC_DYNAMIC_NO_PIC: 'NO'
ARCHS: $(ARCHS_STANDARD_64_BIT)
GCC_ENABLE_OBJC_EXCEPTIONS: 'YES'
CLANG_CXX_LIBRARY: libc++
GCC_WARN_UNUSED_VARIABLE: 'YES'
- Release:
Build Settings:
DEBUG_INFORMATION_FORMAT: dwarf-with-dsym
GCC_WARN_UNUSED_VARIABLE: 'YES'
GCC_C_LANGUAGE_STANDARD: gnu99
GCC_ENABLE_OBJC_EXCEPTIONS: 'YES'
GCC_WARN_UNINITIALIZED_AUTOS: 'YES'
MACOSX_DEPLOYMENT_TARGET: '10.8'
CLANG_WARN__DUPLICATE_METHOD_MATCH: 'YES'
CLANG_WARN_EMPTY_BODY: 'YES'
CLANG_CXX_LANGUAGE_STANDARD: gnu++0x
CLANG_WARN_INT_CONVERSION: 'YES'
CLANG_WARN_CONSTANT_CONVERSION: 'YES'
ARCHS: $(ARCHS_STANDARD_64_BIT)
ALWAYS_SEARCH_USER_PATHS: 'NO'
CLANG_WARN_ENUM_CONVERSION: 'YES'
GCC_WARN_64_TO_32_BIT_CONVERSION: 'YES'
GCC_WARN_ABOUT_RETURN_TYPE: 'YES'
SDKROOT: macosx
COPY_PHASE_STRIP: 'YES'
CLANG_CXX_LIBRARY: libc++
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>archiveVersion</key>
<string>1</string>
<key>classes</key>
<dict/>
<key>objectVersion</key>
<string>46</string>
<key>objects</key>
<dict>
<key>3D5F1AE411C94D8D859334FD</key>
<dict>
<key>includeInIndex</key>
<string>1</string>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>text.xcconfig</string>
<key>name</key>
<string>Pods-SampleApp_1.xcconfig</string>
<key>path</key>
<string>Pods/Pods-SampleApp_1.xcconfig</string>
<key>sourceTree</key>
<string>SOURCE_ROOT</string>
</dict>
<key>4F77B80E5EA54B6F92C34F38</key>
<dict>
<key>explicitFileType</key>
<string>archive.ar</string>
<key>includeInIndex</key>
<string>0</string>
<key>isa</key>
<string>PBXFileReference</string>
<key>name</key>
<string>libPods-SampleApp_1.a</string>
<key>path</key>
<string>libPods-SampleApp_1.a</string>
<key>sourceTree</key>
<string>BUILT_PRODUCTS_DIR</string>
</dict>
<key>AC7C93EF277449919B01A56D</key>
<dict>
<key>buildActionMask</key>
<string>2147483647</string>
<key>files</key>
<array/>
<key>inputPaths</key>
<array/>
<key>isa</key>
<string>PBXShellScriptBuildPhase</string>
<key>name</key>
<string>Copy Pods Resources</string>
<key>outputPaths</key>
<array/>
<key>runOnlyForDeploymentPostprocessing</key>
<string>0</string>
<key>shellPath</key>
<string>/bin/sh</string>
<key>shellScript</key>
<string>"${SRCROOT}/Pods/Pods-SampleApp_1-resources.sh"
</string>
<key>showEnvVarsInLog</key>
<string>1</string>
</dict>
<key>E0E5FC89F890489F8A0A251F</key>
<dict>
<key>fileRef</key>
<string>4F77B80E5EA54B6F92C34F38</string>
<key>isa</key>
<string>PBXBuildFile</string>
<key>settings</key>
<dict/>
</dict>
<key>E575589216C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558A416C5943000DC1500</string>
<string>E575589D16C5943000DC1500</string>
<string>E575589C16C5943000DC1500</string>
<string>3D5F1AE411C94D8D859334FD</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E575589316C5943000DC1500</key>
<dict>
<key>attributes</key>
<dict>
<key>CLASSPREFIX</key>
<string>CP</string>
<key>LastUpgradeCheck</key>
<string>0460</string>
<key>ORGANIZATIONNAME</key>
<string>CocoaPods</string>
</dict>
<key>buildConfigurationList</key>
<string>E575589616C5943000DC1500</string>
<key>compatibilityVersion</key>
<string>Xcode 3.2</string>
<key>developmentRegion</key>
<string>English</string>
<key>hasScannedForEncodings</key>
<string>0</string>
<key>isa</key>
<string>PBXProject</string>
<key>knownRegions</key>
<array>
<string>en</string>
</array>
<key>mainGroup</key>
<string>E575589216C5943000DC1500</string>
<key>productRefGroup</key>
<string>E575589C16C5943000DC1500</string>
<key>projectDirPath</key>
<string></string>
<key>projectReferences</key>
<array/>
<key>projectRoot</key>
<string></string>
<key>targets</key>
<array>
<string>E575589A16C5943000DC1500</string>
</array>
</dict>
<key>E575589616C5943000DC1500</key>
<dict>
<key>buildConfigurations</key>
<array>
<string>E57558B616C5943100DC1500</string>
<string>E57558B716C5943100DC1500</string>
</array>
<key>defaultConfigurationIsVisible</key>
<string>0</string>
<key>defaultConfigurationName</key>
<string>Release</string>
<key>isa</key>
<string>XCConfigurationList</string>
</dict>
<key>E575589716C5943000DC1500</key>
<dict>
<key>buildActionMask</key>
<string>2147483647</string>
<key>files</key>
<array>
<string>E57558AB16C5943000DC1500</string>
<string>E57558B216C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXSourcesBuildPhase</string>
<key>runOnlyForDeploymentPostprocessing</key>
<string>0</string>
</dict>
<key>E575589816C5943000DC1500</key>
<dict>
<key>buildActionMask</key>
<string>2147483647</string>
<key>files</key>
<array>
<string>E575589F16C5943000DC1500</string>
<string>E0E5FC89F890489F8A0A251F</string>
</array>
<key>isa</key>
<string>PBXFrameworksBuildPhase</string>
<key>runOnlyForDeploymentPostprocessing</key>
<string>0</string>
</dict>
<key>E575589916C5943000DC1500</key>
<dict>
<key>buildActionMask</key>
<string>2147483647</string>
<key>files</key>
<array>
<string>E57558A916C5943000DC1500</string>
<string>E57558AF16C5943000DC1500</string>
<string>E57558B516C5943100DC1500</string>
</array>
<key>isa</key>
<string>PBXResourcesBuildPhase</string>
<key>runOnlyForDeploymentPostprocessing</key>
<string>0</string>
</dict>
<key>E575589A16C5943000DC1500</key>
<dict>
<key>buildConfigurationList</key>
<string>E57558B816C5943100DC1500</string>
<key>buildPhases</key>
<array>
<string>E575589716C5943000DC1500</string>
<string>E575589816C5943000DC1500</string>
<string>E575589916C5943000DC1500</string>
<string>AC7C93EF277449919B01A56D</string>
</array>
<key>buildRules</key>
<array/>
<key>dependencies</key>
<array/>
<key>isa</key>
<string>PBXNativeTarget</string>
<key>name</key>
<string>SampleApp_1</string>
<key>productName</key>
<string>SampleApp</string>
<key>productReference</key>
<string>E575589B16C5943000DC1500</string>
<key>productType</key>
<string>com.apple.product-type.application</string>
</dict>
<key>E575589B16C5943000DC1500</key>
<dict>
<key>explicitFileType</key>
<string>wrapper.application</string>
<key>includeInIndex</key>
<string>0</string>
<key>isa</key>
<string>PBXFileReference</string>
<key>path</key>
<string>SampleApp.app</string>
<key>sourceTree</key>
<string>BUILT_PRODUCTS_DIR</string>
</dict>
<key>E575589C16C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E575589B16C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>name</key>
<string>Products</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E575589D16C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E575589E16C5943000DC1500</string>
<string>E57558A016C5943000DC1500</string>
<string>4F77B80E5EA54B6F92C34F38</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>name</key>
<string>Frameworks</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E575589E16C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>wrapper.framework</string>
<key>name</key>
<string>Cocoa.framework</string>
<key>path</key>
<string>System/Library/Frameworks/Cocoa.framework</string>
<key>sourceTree</key>
<string>SDKROOT</string>
</dict>
<key>E575589F16C5943000DC1500</key>
<dict>
<key>fileRef</key>
<string>E575589E16C5943000DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558A016C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558A116C5943000DC1500</string>
<string>E57558A216C5943000DC1500</string>
<string>E57558A316C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>name</key>
<string>Other Frameworks</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A116C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>wrapper.framework</string>
<key>name</key>
<string>AppKit.framework</string>
<key>path</key>
<string>System/Library/Frameworks/AppKit.framework</string>
<key>sourceTree</key>
<string>SDKROOT</string>
</dict>
<key>E57558A216C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>wrapper.framework</string>
<key>name</key>
<string>CoreData.framework</string>
<key>path</key>
<string>System/Library/Frameworks/CoreData.framework</string>
<key>sourceTree</key>
<string>SDKROOT</string>
</dict>
<key>E57558A316C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>wrapper.framework</string>
<key>name</key>
<string>Foundation.framework</string>
<key>path</key>
<string>System/Library/Frameworks/Foundation.framework</string>
<key>sourceTree</key>
<string>SDKROOT</string>
</dict>
<key>E57558A416C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558B016C5943000DC1500</string>
<string>E57558B116C5943000DC1500</string>
<string>E57558B316C5943100DC1500</string>
<string>E57558A516C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>path</key>
<string>SampleApp</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A516C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558A616C5943000DC1500</string>
<string>E57558A716C5943000DC1500</string>
<string>E57558AA16C5943000DC1500</string>
<string>E57558AC16C5943000DC1500</string>
<string>E57558AD16C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXGroup</string>
<key>name</key>
<string>Supporting Files</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A616C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>text.plist.xml</string>
<key>path</key>
<string>SampleApp-Info.plist</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A716C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558A816C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXVariantGroup</string>
<key>name</key>
<string>InfoPlist.strings</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A816C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>text.plist.strings</string>
<key>name</key>
<string>en</string>
<key>path</key>
<string>en.lproj/InfoPlist.strings</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558A916C5943000DC1500</key>
<dict>
<key>fileRef</key>
<string>E57558A716C5943000DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558AA16C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>sourcecode.c.objc</string>
<key>path</key>
<string>main.m</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558AB16C5943000DC1500</key>
<dict>
<key>fileRef</key>
<string>E57558AA16C5943000DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558AC16C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>sourcecode.c.h</string>
<key>path</key>
<string>SampleApp-Prefix.pch</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558AD16C5943000DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558AE16C5943000DC1500</string>
</array>
<key>isa</key>
<string>PBXVariantGroup</string>
<key>name</key>
<string>Credits.rtf</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558AE16C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>text.rtf</string>
<key>name</key>
<string>en</string>
<key>path</key>
<string>en.lproj/Credits.rtf</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558AF16C5943000DC1500</key>
<dict>
<key>fileRef</key>
<string>E57558AD16C5943000DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558B016C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>sourcecode.c.h</string>
<key>path</key>
<string>CPAppDelegate.h</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558B116C5943000DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>sourcecode.c.objc</string>
<key>path</key>
<string>CPAppDelegate.m</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558B216C5943000DC1500</key>
<dict>
<key>fileRef</key>
<string>E57558B116C5943000DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558B316C5943100DC1500</key>
<dict>
<key>children</key>
<array>
<string>E57558B416C5943100DC1500</string>
</array>
<key>isa</key>
<string>PBXVariantGroup</string>
<key>name</key>
<string>MainMenu.xib</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558B416C5943100DC1500</key>
<dict>
<key>isa</key>
<string>PBXFileReference</string>
<key>lastKnownFileType</key>
<string>file.xib</string>
<key>name</key>
<string>en</string>
<key>path</key>
<string>en.lproj/MainMenu.xib</string>
<key>sourceTree</key>
<string>&lt;group&gt;</string>
</dict>
<key>E57558B516C5943100DC1500</key>
<dict>
<key>fileRef</key>
<string>E57558B316C5943100DC1500</string>
<key>isa</key>
<string>PBXBuildFile</string>
</dict>
<key>E57558B616C5943100DC1500</key>
<dict>
<key>buildSettings</key>
<dict>
<key>ALWAYS_SEARCH_USER_PATHS</key>
<string>NO</string>
<key>ARCHS</key>
<string>$(ARCHS_STANDARD_64_BIT)</string>
<key>CLANG_CXX_LANGUAGE_STANDARD</key>
<string>gnu++0x</string>
<key>CLANG_CXX_LIBRARY</key>
<string>libc++</string>
<key>CLANG_WARN_CONSTANT_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN_EMPTY_BODY</key>
<string>YES</string>
<key>CLANG_WARN_ENUM_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN_INT_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>
<string>YES</string>
<key>COPY_PHASE_STRIP</key>
<string>NO</string>
<key>GCC_C_LANGUAGE_STANDARD</key>
<string>gnu99</string>
<key>GCC_DYNAMIC_NO_PIC</key>
<string>NO</string>
<key>GCC_ENABLE_OBJC_EXCEPTIONS</key>
<string>YES</string>
<key>GCC_OPTIMIZATION_LEVEL</key>
<string>0</string>
<key>GCC_PREPROCESSOR_DEFINITIONS</key>
<array>
<string>DEBUG=1</string>
<string>$(inherited)</string>
</array>
<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
<string>NO</string>
<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
<string>YES</string>
<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
<string>YES</string>
<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
<string>YES</string>
<key>GCC_WARN_UNUSED_VARIABLE</key>
<string>YES</string>
<key>MACOSX_DEPLOYMENT_TARGET</key>
<string>10.8</string>
<key>ONLY_ACTIVE_ARCH</key>
<string>YES</string>
<key>SDKROOT</key>
<string>macosx</string>
</dict>
<key>isa</key>
<string>XCBuildConfiguration</string>
<key>name</key>
<string>Debug</string>
</dict>
<key>E57558B716C5943100DC1500</key>
<dict>
<key>buildSettings</key>
<dict>
<key>ALWAYS_SEARCH_USER_PATHS</key>
<string>NO</string>
<key>ARCHS</key>
<string>$(ARCHS_STANDARD_64_BIT)</string>
<key>CLANG_CXX_LANGUAGE_STANDARD</key>
<string>gnu++0x</string>
<key>CLANG_CXX_LIBRARY</key>
<string>libc++</string>
<key>CLANG_WARN_CONSTANT_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN_EMPTY_BODY</key>
<string>YES</string>
<key>CLANG_WARN_ENUM_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN_INT_CONVERSION</key>
<string>YES</string>
<key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>
<string>YES</string>
<key>COPY_PHASE_STRIP</key>
<string>YES</string>
<key>DEBUG_INFORMATION_FORMAT</key>
<string>dwarf-with-dsym</string>
<key>GCC_C_LANGUAGE_STANDARD</key>
<string>gnu99</string>
<key>GCC_ENABLE_OBJC_EXCEPTIONS</key>
<string>YES</string>
<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
<string>YES</string>
<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
<string>YES</string>
<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
<string>YES</string>
<key>GCC_WARN_UNUSED_VARIABLE</key>
<string>YES</string>
<key>MACOSX_DEPLOYMENT_TARGET</key>
<string>10.8</string>
<key>SDKROOT</key>
<string>macosx</string>
</dict>
<key>isa</key>
<string>XCBuildConfiguration</string>
<key>name</key>
<string>Release</string>
</dict>
<key>E57558B816C5943100DC1500</key>
<dict>
<key>buildConfigurations</key>
<array>
<string>E57558B916C5943100DC1500</string>
<string>E57558BA16C5943100DC1500</string>
</array>
<key>defaultConfigurationIsVisible</key>
<string>0</string>
<key>defaultConfigurationName</key>
<string>Release</string>
<key>isa</key>
<string>XCConfigurationList</string>
</dict>
<key>E57558B916C5943100DC1500</key>
<dict>
<key>baseConfigurationReference</key>
<string>3D5F1AE411C94D8D859334FD</string>
<key>buildSettings</key>
<dict>
<key>COMBINE_HIDPI_IMAGES</key>
<string>YES</string>
<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
<string>YES</string>
<key>GCC_PREFIX_HEADER</key>
<string>SampleApp/SampleApp-Prefix.pch</string>
<key>INFOPLIST_FILE</key>
<string>SampleApp/SampleApp-Info.plist</string>
<key>PRODUCT_NAME</key>
<string>$(TARGET_NAME)</string>
<key>WRAPPER_EXTENSION</key>
<string>app</string>
</dict>
<key>isa</key>
<string>XCBuildConfiguration</string>
<key>name</key>
<string>Debug</string>
</dict>
<key>E57558BA16C5943100DC1500</key>
<dict>
<key>baseConfigurationReference</key>
<string>3D5F1AE411C94D8D859334FD</string>
<key>buildSettings</key>
<dict>
<key>COMBINE_HIDPI_IMAGES</key>
<string>YES</string>
<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
<string>YES</string>
<key>GCC_PREFIX_HEADER</key>
<string>SampleApp/SampleApp-Prefix.pch</string>
<key>INFOPLIST_FILE</key>
<string>SampleApp/SampleApp-Info.plist</string>
<key>PRODUCT_NAME</key>
<string>$(TARGET_NAME)</string>
<key>WRAPPER_EXTENSION</key>
<string>app</string>
</dict>
<key>isa</key>
<string>XCBuildConfiguration</string>
<key>name</key>
<string>Release</string>
</dict>
</dict>
<key>rootObject</key>
<string>E575589316C5943000DC1500</string>
</dict>
</plist>
File References:
- SampleApp:
- CPAppDelegate.h
- CPAppDelegate.m
- MainMenu.xib:
- en
- Supporting Files:
- SampleApp-Info.plist
- InfoPlist.strings:
- en
- main.m
- SampleApp-Prefix.pch
- Credits.rtf:
- en
- Frameworks:
- Cocoa.framework
- Other Frameworks:
- AppKit.framework
- CoreData.framework
- Foundation.framework
- libPods-SampleApp_2.a
- Products:
- SampleApp.app
- Pods-SampleApp_2.xcconfig
Targets:
- SampleApp_2:
Build Phases:
- SourcesBuildPhase:
- main.m
- CPAppDelegate.m
- FrameworksBuildPhase:
- Cocoa.framework
- libPods-SampleApp_2.a
- ResourcesBuildPhase:
- InfoPlist.strings
- Credits.rtf
- MainMenu.xib
- Copy Pods Resources: []
- Copy Pods Resources: []
Build Configurations:
- Debug:
Build Settings:
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
INFOPLIST_FILE: SampleApp/SampleApp-Info.plist
COMBINE_HIDPI_IMAGES: 'YES'
GCC_PREFIX_HEADER: SampleApp/SampleApp-Prefix.pch
WRAPPER_EXTENSION: app
PRODUCT_NAME: $(TARGET_NAME)
Base Configuration: Pods-SampleApp_2.xcconfig
- Release:
Build Settings:
GCC_PRECOMPILE_PREFIX_HEADER: 'YES'
INFOPLIST_FILE: SampleApp/SampleApp-Info.plist
COMBINE_HIDPI_IMAGES: 'YES'
GCC_PREFIX_HEADER: SampleApp/SampleApp-Prefix.pch
WRAPPER_EXTENSION: app
PRODUCT_NAME: $(TARGET_NAME)
Base Configuration: Pods-SampleApp_2.xcconfig
Build Configurations:
- Debug:
Build Settings:
CLANG_WARN_ENUM_CONVERSION: 'YES'
GCC_WARN_ABOUT_RETURN_TYPE: 'YES'
GCC_PREPROCESSOR_DEFINITIONS:
- DEBUG=1
- $(inherited)
ONLY_ACTIVE_ARCH: 'YES'
GCC_SYMBOLS_PRIVATE_EXTERN: 'NO'
GCC_WARN_UNINITIALIZED_AUTOS: 'YES'
CLANG_CXX_LANGUAGE_STANDARD: gnu++0x
CLANG_WARN_INT_CONVERSION: 'YES'
MACOSX_DEPLOYMENT_TARGET: '10.8'
CLANG_WARN_CONSTANT_CONVERSION: 'YES'
GCC_OPTIMIZATION_LEVEL: '0'
GCC_C_LANGUAGE_STANDARD: gnu99
CLANG_WARN__DUPLICATE_METHOD_MATCH: 'YES'
GCC_WARN_64_TO_32_BIT_CONVERSION: 'YES'
CLANG_WARN_EMPTY_BODY: 'YES'
ALWAYS_SEARCH_USER_PATHS: 'NO'
COPY_PHASE_STRIP: 'NO'
SDKROOT: macosx
GCC_DYNAMIC_NO_PIC: 'NO'
ARCHS: $(ARCHS_STANDARD_64_BIT)
GCC_ENABLE_OBJC_EXCEPTIONS: 'YES'
CLANG_CXX_LIBRARY: libc++
GCC_WARN_UNUSED_VARIABLE: 'YES'
- Release:
Build Settings:
DEBUG_INFORMATION_FORMAT: dwarf-with-dsym
GCC_WARN_UNUSED_VARIABLE: 'YES'
GCC_C_LANGUAGE_STANDARD: gnu99
GCC_ENABLE_OBJC_EXCEPTIONS: 'YES'
GCC_WARN_UNINITIALIZED_AUTOS: 'YES'
MACOSX_DEPLOYMENT_TARGET: '10.8'
CLANG_WARN__DUPLICATE_METHOD_MATCH: 'YES'
CLANG_CXX_LANGUAGE_STANDARD: gnu++0x
CLANG_WARN_INT_CONVERSION: 'YES'
CLANG_WARN_EMPTY_BODY: 'YES'
ALWAYS_SEARCH_USER_PATHS: 'NO'
CLANG_WARN_CONSTANT_CONVERSION: 'YES'
ARCHS: $(ARCHS_STANDARD_64_BIT)
CLANG_WARN_ENUM_CONVERSION: 'YES'
GCC_WARN_64_TO_32_BIT_CONVERSION: 'YES'
GCC_WARN_ABOUT_RETURN_TYPE: 'YES'
SDKROOT: macosx
COPY_PHASE_STRIP: 'YES'
CLANG_CXX_LIBRARY: libc++
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
D98448411613472AA3F7A973 /* libPods-SampleApp_2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C42AA5650B0C4CCFBE8437DE /* libPods-SampleApp_2.a */; };
E575589F16C5943000DC1500 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E575589E16C5943000DC1500 /* Cocoa.framework */; };
E57558A916C5943000DC1500 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = E57558A716C5943000DC1500 /* InfoPlist.strings */; };
E57558AB16C5943000DC1500 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = E57558AA16C5943000DC1500 /* main.m */; };
E57558AF16C5943000DC1500 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = E57558AD16C5943000DC1500 /* Credits.rtf */; };
E57558B216C5943000DC1500 /* CPAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = E57558B116C5943000DC1500 /* CPAppDelegate.m */; };
E57558B516C5943100DC1500 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = E57558B316C5943100DC1500 /* MainMenu.xib */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
6347E58BFF84419A8C990401 /* Pods-SampleApp_2.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleApp_2.xcconfig"; path = "Pods/Pods-SampleApp_2.xcconfig"; sourceTree = SOURCE_ROOT; };
C42AA5650B0C4CCFBE8437DE /* libPods-SampleApp_2.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleApp_2.a"; sourceTree = BUILT_PRODUCTS_DIR; };
E575589B16C5943000DC1500 /* SampleApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; name = SampleApp.app; path = SampleApp_2.app; sourceTree = BUILT_PRODUCTS_DIR; };
E575589E16C5943000DC1500 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
E57558A116C5943000DC1500 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
E57558A216C5943000DC1500 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
E57558A316C5943000DC1500 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
E57558A616C5943000DC1500 /* SampleApp-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SampleApp-Info.plist"; sourceTree = "<group>"; };
E57558A816C5943000DC1500 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E57558AA16C5943000DC1500 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
E57558AC16C5943000DC1500 /* SampleApp-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SampleApp-Prefix.pch"; sourceTree = "<group>"; };
E57558AE16C5943000DC1500 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
E57558B016C5943000DC1500 /* CPAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CPAppDelegate.h; sourceTree = "<group>"; };
E57558B116C5943000DC1500 /* CPAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CPAppDelegate.m; sourceTree = "<group>"; };
E57558B416C5943100DC1500 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
E575589816C5943000DC1500 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
E575589F16C5943000DC1500 /* Cocoa.framework in Frameworks */,
D98448411613472AA3F7A973 /* libPods-SampleApp_2.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
E575589216C5943000DC1500 = {
isa = PBXGroup;
children = (
E57558A416C5943000DC1500 /* SampleApp */,
E575589D16C5943000DC1500 /* Frameworks */,
E575589C16C5943000DC1500 /* Products */,
6347E58BFF84419A8C990401 /* Pods-SampleApp_2.xcconfig */,
);
sourceTree = "<group>";
};
E575589C16C5943000DC1500 /* Products */ = {
isa = PBXGroup;
children = (
E575589B16C5943000DC1500 /* SampleApp.app */,
);
name = Products;
sourceTree = "<group>";
};
E575589D16C5943000DC1500 /* Frameworks */ = {
isa = PBXGroup;
children = (
E575589E16C5943000DC1500 /* Cocoa.framework */,
E57558A016C5943000DC1500 /* Other Frameworks */,
C42AA5650B0C4CCFBE8437DE /* libPods-SampleApp_2.a */,
);
name = Frameworks;
sourceTree = "<group>";
};
E57558A016C5943000DC1500 /* Other Frameworks */ = {
isa = PBXGroup;
children = (
E57558A116C5943000DC1500 /* AppKit.framework */,
E57558A216C5943000DC1500 /* CoreData.framework */,
E57558A316C5943000DC1500 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
E57558A416C5943000DC1500 /* SampleApp */ = {
isa = PBXGroup;
children = (
E57558B016C5943000DC1500 /* CPAppDelegate.h */,
E57558B116C5943000DC1500 /* CPAppDelegate.m */,
E57558B316C5943100DC1500 /* MainMenu.xib */,
E57558A516C5943000DC1500 /* Supporting Files */,
);
path = SampleApp;
sourceTree = "<group>";
};
E57558A516C5943000DC1500 /* Supporting Files */ = {
isa = PBXGroup;
children = (
E57558A616C5943000DC1500 /* SampleApp-Info.plist */,
E57558A716C5943000DC1500 /* InfoPlist.strings */,
E57558AA16C5943000DC1500 /* main.m */,
E57558AC16C5943000DC1500 /* SampleApp-Prefix.pch */,
E57558AD16C5943000DC1500 /* Credits.rtf */,
);
name = "Supporting Files";
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
E575589A16C5943000DC1500 /* SampleApp_2 */ = {
isa = PBXNativeTarget;
buildConfigurationList = E57558B816C5943100DC1500 /* Build configuration list for PBXNativeTarget "SampleApp_2" */;
buildPhases = (
E575589716C5943000DC1500 /* Sources */,
E575589816C5943000DC1500 /* Frameworks */,
E575589916C5943000DC1500 /* Resources */,
22EA345846024C4DB585CBDE /* Copy Pods Resources */,
0BFE3134EDA2438BB51CA41B /* Copy Pods Resources */,
);
buildRules = (
);
dependencies = (
);
name = SampleApp_2;
productName = SampleApp;
productReference = E575589B16C5943000DC1500 /* SampleApp.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
E575589316C5943000DC1500 /* Project object */ = {
isa = PBXProject;
attributes = {
CLASSPREFIX = CP;
LastUpgradeCheck = 0460;
ORGANIZATIONNAME = CocoaPods;
};
buildConfigurationList = E575589616C5943000DC1500 /* Build configuration list for PBXProject "SampleApp_2" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = E575589216C5943000DC1500;
productRefGroup = E575589C16C5943000DC1500 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
E575589A16C5943000DC1500 /* SampleApp_2 */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
E575589916C5943000DC1500 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
E57558A916C5943000DC1500 /* InfoPlist.strings in Resources */,
E57558AF16C5943000DC1500 /* Credits.rtf in Resources */,
E57558B516C5943100DC1500 /* MainMenu.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
0BFE3134EDA2438BB51CA41B /* Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Copy Pods Resources";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/Pods/Pods-SampleApp_2-resources.sh\"\n";
};
22EA345846024C4DB585CBDE /* Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Copy Pods Resources";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/Pods/Pods-resources.sh\"\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
E575589716C5943000DC1500 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
E57558AB16C5943000DC1500 /* main.m in Sources */,
E57558B216C5943000DC1500 /* CPAppDelegate.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
E57558A716C5943000DC1500 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
E57558A816C5943000DC1500 /* en */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
E57558AD16C5943000DC1500 /* Credits.rtf */ = {
isa = PBXVariantGroup;
children = (
E57558AE16C5943000DC1500 /* en */,
);
name = Credits.rtf;
sourceTree = "<group>";
};
E57558B316C5943100DC1500 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
E57558B416C5943100DC1500 /* en */,
);
name = MainMenu.xib;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
E57558B616C5943100DC1500 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Debug;
};
E57558B716C5943100DC1500 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
SDKROOT = macosx;
};
name = Release;
};
E57558B916C5943100DC1500 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 6347E58BFF84419A8C990401 /* Pods-SampleApp_2.xcconfig */;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "SampleApp/SampleApp-Prefix.pch";
INFOPLIST_FILE = "SampleApp/SampleApp-Info.plist";
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
name = Debug;
};
E57558BA16C5943100DC1500 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 6347E58BFF84419A8C990401 /* Pods-SampleApp_2.xcconfig */;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "SampleApp/SampleApp-Prefix.pch";
INFOPLIST_FILE = "SampleApp/SampleApp-Info.plist";
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
E575589616C5943000DC1500 /* Build configuration list for PBXProject "SampleApp_2" */ = {
isa = XCConfigurationList;
buildConfigurations = (
E57558B616C5943100DC1500 /* Debug */,
E57558B716C5943100DC1500 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
E57558B816C5943100DC1500 /* Build configuration list for PBXNativeTarget "SampleApp_2" */ = {
isa = XCConfigurationList;
buildConfigurations = (
E57558B916C5943100DC1500 /* Debug */,
E57558BA16C5943100DC1500 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = E575589316C5943000DC1500 /* Project object */;
}
$ pod install --no-update --no-doc --verbose --no-color 2>&1
Analyzing dependencies
Resolving dependencies of `Podfile`
Resolving dependencies for target `Pods' (iOS 6.0)
Resolving dependencies for target `SampleApp_1' (iOS 6.0)
- Reachability (= 3.1.0)
Resolving dependencies for target `SampleApp_2' (iOS 6.0)
- Reachability
Comparing resolved specification to the sandbox manifest
A Reachability
Downloading dependencies
-> Installing Reachability (3.1.0)
> GitHub download
$ /usr/bin/git config core.bare
true
$ /usr/bin/git config core.bare
true
> Updating cache git repo (CACHES_DIR/GitHub/48f11286750afa2e2eb80564e288f42eed7cbab6)
$ /usr/bin/git remote update
Fetching origin
$ /usr/bin/git init
Initialized empty Git repository in ROOT/tmp/install_custom_workspace/Pods/Reachability/.git/
$ /usr/bin/git remote add origin 'CACHES_DIR/GitHub/48f11286750afa2e2eb80564e288f42eed7cbab6'
$ /usr/bin/git fetch origin tags/v3.1.0 2>&1
From CACHES_DIR/GitHub/48f11286750afa2e2eb80564e288f42eed7cbab6
* tag v3.1.0 -> FETCH_HEAD
$ /usr/bin/git reset --hard FETCH_HEAD
HEAD is now at f7176f4 updated podspec
$ /usr/bin/git checkout -b activated-pod-commit 2>&1
Switched to a new branch 'activated-pod-commit'
- Running pre install hooks
Generating Pods project
- Creating Pods project
- Adding source files to Pods project
- Adding resources to Pods project
- Linking headers
- Installing targets
- Installing target `Pods-SampleApp_1` iOS 6.0
- Adding Build files
- Generating xcconfig file at `Pods/Pods-SampleApp_1.xcconfig`
- Generating target header at `Pods/Pods-SampleApp_1-header.h`
- Generating prefix header at `Pods/Pods-SampleApp_1-prefix.pch`
- Generating copy resources script at `Pods/Pods-SampleApp_1-resources.sh`
- Generating acknowledgements at `Pods/Pods-SampleApp_1-acknowledgements.plist`
- Generating acknowledgements at `Pods/Pods-SampleApp_1-acknowledgements.markdown`
- Generating dummy source file at `Pods/Pods-SampleApp_1-dummy.m`
- Installing target `Pods-SampleApp_2` iOS 6.0
- Adding Build files
- Generating xcconfig file at `Pods/Pods-SampleApp_2.xcconfig`
- Generating target header at `Pods/Pods-SampleApp_2-header.h`
- Generating prefix header at `Pods/Pods-SampleApp_2-prefix.pch`
- Generating copy resources script at `Pods/Pods-SampleApp_2-resources.sh`
- Generating acknowledgements at `Pods/Pods-SampleApp_2-acknowledgements.plist`
- Generating acknowledgements at `Pods/Pods-SampleApp_2-acknowledgements.markdown`
- Generating dummy source file at `Pods/Pods-SampleApp_2-dummy.m`
- Running post install hooks
- Writing Xcode project file to `Pods/Pods.xcodeproj`
- Writing Lockfile in `Podfile.lock`
- Writing Manifest in `Pods/Manifest.lock`
Integrating client projects
[!] From now on use `Workspace.xcworkspace`.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment