Fixes #135 - convert Makefile to Xcode project

This commit is contained in:
Shazron Abdullah 2015-07-16 17:26:48 -07:00
parent 7d997b89c7
commit bc1bb0d320
9 changed files with 421 additions and 81 deletions

View File

@ -1,8 +0,0 @@
<?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>get-task-allow</key>
<true/>
</dict>
</plist>

View File

@ -1,24 +0,0 @@
<?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>CFBundleName</key>
<string>demo</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>iPhoneOS</string>
</array>
<key>CFBundleExecutable</key>
<string>demo</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>CFBundleIdentifier</key>
<string>demo</string>
<key>CFBundleResourceSpecification</key>
<string>ResourceRules.plist</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>CFBundleDisplayName</key>
<string>demo</string>
</dict>
</plist>

View File

@ -1,25 +0,0 @@
<?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>rules</key>
<dict>
<key>.*</key>
<true/>
<key>Info.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>ResourceRules.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>100</real>
</dict>
</dict>
</dict>
</plist>

9
demo.c
View File

@ -1,9 +0,0 @@
#include <stdio.h>
int main(int argc, const char* argv[]) {
int i;
for (i = 0; i < argc; i++) {
printf("argv[%d] = %s\n", i, argv[i]);
}
return 0;
}

17
ios-deploy-demo/main.m Normal file
View File

@ -0,0 +1,17 @@
//
// main.m
// ios-deploy-demo
//
// Created by shazron on 7/16/15.
// Copyright (c) 2015 PhoneGap. All rights reserved.
//
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
NSLog(@"Hello, World!");
}
return 0;
}

View File

@ -0,0 +1,394 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
7E70899C1B587DE4004D23AA /* ios-deploy.c in Sources */ = {isa = PBXBuildFile; fileRef = 7E7089991B587DE4004D23AA /* ios-deploy.c */; settings = {COMPILER_FLAGS = "-x objective-c -fno-objc-arc"; }; };
7E70899E1B587F29004D23AA /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E70899D1B587F29004D23AA /* CoreFoundation.framework */; };
7E7089A01B58801E004D23AA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E70899F1B58801E004D23AA /* Foundation.framework */; };
7E7089B31B58826A004D23AA /* demo.c in Sources */ = {isa = PBXBuildFile; fileRef = 7E7089AF1B58826A004D23AA /* demo.c */; };
7E7089B41B5882C3004D23AA /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E70899D1B587F29004D23AA /* CoreFoundation.framework */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
7E70898C1B587BF3004D23AA /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
7E7089A51B58825B004D23AA /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
7E70898E1B587BF3004D23AA /* ios-deploy */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "ios-deploy"; sourceTree = BUILT_PRODUCTS_DIR; };
7E7089991B587DE4004D23AA /* ios-deploy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "ios-deploy.c"; path = "src/ios-deploy.c"; sourceTree = SOURCE_ROOT; };
7E70899A1B587DE4004D23AA /* errors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = errors.h; path = src/errors.h; sourceTree = SOURCE_ROOT; };
7E70899B1B587DE4004D23AA /* MobileDevice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MobileDevice.h; path = src/MobileDevice.h; sourceTree = SOURCE_ROOT; };
7E70899D1B587F29004D23AA /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
7E70899F1B58801E004D23AA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
7E7089A71B58825B004D23AA /* ios-deploy-demo */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "ios-deploy-demo"; sourceTree = BUILT_PRODUCTS_DIR; };
7E7089A91B58825B004D23AA /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
7E7089AF1B58826A004D23AA /* demo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = demo.c; sourceTree = "<group>"; };
7E7089B01B58826A004D23AA /* Entitlements.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Entitlements.plist; sourceTree = "<group>"; };
7E7089B11B58826A004D23AA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
7E7089B21B58826A004D23AA /* ResourceRules.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ResourceRules.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
7E70898B1B587BF3004D23AA /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
7E7089A01B58801E004D23AA /* Foundation.framework in Frameworks */,
7E70899E1B587F29004D23AA /* CoreFoundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
7E7089A41B58825B004D23AA /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
7E7089B41B5882C3004D23AA /* CoreFoundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
7E7089851B587BF3004D23AA = {
isa = PBXGroup;
children = (
7E7089AE1B58826A004D23AA /* demo */,
7E7089901B587BF3004D23AA /* ios-deploy */,
7E7089A81B58825B004D23AA /* ios-deploy-demo */,
7E7089A21B588219004D23AA /* Frameworks */,
7E70898F1B587BF3004D23AA /* Products */,
);
sourceTree = "<group>";
};
7E70898F1B587BF3004D23AA /* Products */ = {
isa = PBXGroup;
children = (
7E70898E1B587BF3004D23AA /* ios-deploy */,
7E7089A71B58825B004D23AA /* ios-deploy-demo */,
);
name = Products;
sourceTree = "<group>";
};
7E7089901B587BF3004D23AA /* ios-deploy */ = {
isa = PBXGroup;
children = (
7E7089991B587DE4004D23AA /* ios-deploy.c */,
7E70899A1B587DE4004D23AA /* errors.h */,
7E70899B1B587DE4004D23AA /* MobileDevice.h */,
);
path = "ios-deploy";
sourceTree = "<group>";
};
7E7089A21B588219004D23AA /* Frameworks */ = {
isa = PBXGroup;
children = (
7E70899F1B58801E004D23AA /* Foundation.framework */,
7E70899D1B587F29004D23AA /* CoreFoundation.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
7E7089A81B58825B004D23AA /* ios-deploy-demo */ = {
isa = PBXGroup;
children = (
7E7089A91B58825B004D23AA /* main.m */,
);
path = "ios-deploy-demo";
sourceTree = "<group>";
};
7E7089AE1B58826A004D23AA /* demo */ = {
isa = PBXGroup;
children = (
7E7089AF1B58826A004D23AA /* demo.c */,
7E7089B01B58826A004D23AA /* Entitlements.plist */,
7E7089B11B58826A004D23AA /* Info.plist */,
7E7089B21B58826A004D23AA /* ResourceRules.plist */,
);
path = demo;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
7E70898D1B587BF3004D23AA /* ios-deploy */ = {
isa = PBXNativeTarget;
buildConfigurationList = 7E7089951B587BF3004D23AA /* Build configuration list for PBXNativeTarget "ios-deploy" */;
buildPhases = (
7E70898A1B587BF3004D23AA /* Sources */,
7E70898B1B587BF3004D23AA /* Frameworks */,
7E70898C1B587BF3004D23AA /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = "ios-deploy";
productName = "ios-deploy";
productReference = 7E70898E1B587BF3004D23AA /* ios-deploy */;
productType = "com.apple.product-type.tool";
};
7E7089A61B58825B004D23AA /* ios-deploy-demo */ = {
isa = PBXNativeTarget;
buildConfigurationList = 7E7089AB1B58825B004D23AA /* Build configuration list for PBXNativeTarget "ios-deploy-demo" */;
buildPhases = (
7E7089A31B58825B004D23AA /* Sources */,
7E7089A41B58825B004D23AA /* Frameworks */,
7E7089A51B58825B004D23AA /* CopyFiles */,
7E7089B51B5882EC004D23AA /* ShellScript */,
);
buildRules = (
);
dependencies = (
);
name = "ios-deploy-demo";
productName = "ios-deploy-demo";
productReference = 7E7089A71B58825B004D23AA /* ios-deploy-demo */;
productType = "com.apple.product-type.tool";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
7E7089861B587BF3004D23AA /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0640;
ORGANIZATIONNAME = PhoneGap;
TargetAttributes = {
7E70898D1B587BF3004D23AA = {
CreatedOnToolsVersion = 6.4;
};
7E7089A61B58825B004D23AA = {
CreatedOnToolsVersion = 6.4;
};
};
};
buildConfigurationList = 7E7089891B587BF3004D23AA /* Build configuration list for PBXProject "ios-deploy" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = 7E7089851B587BF3004D23AA;
productRefGroup = 7E70898F1B587BF3004D23AA /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
7E70898D1B587BF3004D23AA /* ios-deploy */,
7E7089A61B58825B004D23AA /* ios-deploy-demo */,
);
};
/* End PBXProject section */
/* Begin PBXShellScriptBuildPhase section */
7E7089B51B5882EC004D23AA /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "#mkdir -p demo.app\n#cp demo demo.app/\n#cp Info.plist ResourceRules.plist demo.app/\n#codesign -f -s \"iPhone Developer\" --entitlements Entitlements.plist demo.app";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
7E70898A1B587BF3004D23AA /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
7E70899C1B587DE4004D23AA /* ios-deploy.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
7E7089A31B58825B004D23AA /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
7E7089B31B58826A004D23AA /* demo.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
7E7089931B587BF3004D23AA /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = 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_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = (
"-framework",
MobileDevice,
"-F/System/Library/PrivateFrameworks",
);
SDKROOT = macosx;
};
name = Debug;
};
7E7089941B587BF3004D23AA /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
MTL_ENABLE_DEBUG_INFO = NO;
OTHER_LDFLAGS = (
"-framework",
MobileDevice,
"-F/System/Library/PrivateFrameworks",
);
SDKROOT = macosx;
};
name = Release;
};
7E7089961B587BF3004D23AA /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
7E7089971B587BF3004D23AA /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
7E7089AC1B58825B004D23AA /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
MACOSX_DEPLOYMENT_TARGET = 10.8;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
7E7089AD1B58825B004D23AA /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.8;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
7E7089891B587BF3004D23AA /* Build configuration list for PBXProject "ios-deploy" */ = {
isa = XCConfigurationList;
buildConfigurations = (
7E7089931B587BF3004D23AA /* Debug */,
7E7089941B587BF3004D23AA /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
7E7089951B587BF3004D23AA /* Build configuration list for PBXNativeTarget "ios-deploy" */ = {
isa = XCConfigurationList;
buildConfigurations = (
7E7089961B587BF3004D23AA /* Debug */,
7E7089971B587BF3004D23AA /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
7E7089AB1B58825B004D23AA /* Build configuration list for PBXNativeTarget "ios-deploy-demo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
7E7089AC1B58825B004D23AA /* Debug */,
7E7089AD1B58825B004D23AA /* Release */,
);
defaultConfigurationIsVisible = 0;
};
/* End XCConfigurationList section */
};
rootObject = 7E7089861B587BF3004D23AA /* Project object */;
}

View File

@ -169,7 +169,7 @@ char *app_path = NULL;
char *device_id = NULL;
char *args = NULL;
char *list_root = NULL;
int timeout = 0;
int _timeout = 0;
int port = 0; // 0 means "dynamically assigned"
CFStringRef last_path = NULL;
service_conn_t gdbfd;
@ -315,7 +315,7 @@ const char *get_home() {
CFStringRef copy_xcode_path_for(CFStringRef subPath, CFStringRef search) {
CFStringRef xcodeDevPath = copy_xcode_dev_path();
CFStringRef path;
CFStringRef path = NULL;
bool found = false;
const char* home = get_home();
CFRange slashLocation;
@ -846,7 +846,7 @@ int kill_ptree(pid_t root, int signum);
void
server_callback (CFSocketRef s, CFSocketCallBackType callbackType, CFDataRef address, const void *data, void *info)
{
int res;
ssize_t res;
if (CFDataGetLength (data) == 0) {
// close the socket on which we've got end-of-file, the server_socket.
@ -956,7 +956,7 @@ int kill_ptree(pid_t root, int signum) {
return -1;
}
kill_ptree_inner(root, signum, kp, len / sizeof(struct kinfo_proc));
kill_ptree_inner(root, signum, kp, (int)(len / sizeof(struct kinfo_proc)));
free(kp);
return 0;
@ -1338,7 +1338,6 @@ void list_bundle_id(AMDeviceRef device)
const void *keys[count];
CFDictionaryGetKeysAndValues(result, keys, NULL);
for(int i = 0; i < count; ++i) {
CFStringRef test = (CFStringRef)keys[i];
NSLogOut(@"%@", (CFStringRef)keys[i]);
}
@ -1485,8 +1484,6 @@ void upload_file(AMDeviceRef device) {
void make_directory(AMDeviceRef device) {
service_conn_t houseFd = start_house_arrest_service(device);
afc_file_ref file_ref;
afc_connection afc_conn;
afc_connection* afc_conn_p = &afc_conn;
AFCConnectionOpen(houseFd, 0, &afc_conn_p);
@ -1498,8 +1495,6 @@ void make_directory(AMDeviceRef device) {
void remove_path(AMDeviceRef device) {
service_conn_t houseFd = start_house_arrest_service(device);
afc_file_ref file_ref;
afc_connection afc_conn;
afc_connection* afc_conn_p = &afc_conn;
AFCConnectionOpen(houseFd, 0, &afc_conn_p);
@ -1833,7 +1828,7 @@ int main(int argc, char *argv[]) {
verbose = 1;
break;
case 't':
timeout = atoi(optarg);
_timeout = atoi(optarg);
break;
case 'u':
unbuffered = 1;
@ -1922,8 +1917,8 @@ int main(int argc, char *argv[]) {
setbuf(stderr, NULL);
}
if (detect_only && timeout == 0) {
timeout = 5;
if (detect_only && _timeout == 0) {
_timeout = 5;
}
if (app_path) {
@ -1933,11 +1928,11 @@ int main(int argc, char *argv[]) {
}
AMDSetLogLevel(5); // otherwise syslog gets flooded with crap
if (timeout > 0)
if (_timeout > 0)
{
CFRunLoopTimerRef timer = CFRunLoopTimerCreate(NULL, CFAbsoluteTimeGetCurrent() + timeout, 0, 0, 0, timeout_callback, NULL);
CFRunLoopTimerRef timer = CFRunLoopTimerCreate(NULL, CFAbsoluteTimeGetCurrent() + _timeout, 0, 0, 0, timeout_callback, NULL);
CFRunLoopAddTimer(CFRunLoopGetCurrent(), timer, kCFRunLoopCommonModes);
NSLogOut(@"[....] Waiting up to %d seconds for iOS device to be connected", timeout);
NSLogOut(@"[....] Waiting up to %d seconds for iOS device to be connected", _timeout);
}
else
{