Index: ObjFW.xcodeproj/project.pbxproj ================================================================== --- ObjFW.xcodeproj/project.pbxproj +++ ObjFW.xcodeproj/project.pbxproj @@ -5,10 +5,22 @@ }; objectVersion = 46; objects = { /* Begin PBXAggregateTarget section */ + 4B596D8D1EED62A500A6D140 /* configure (iOS) */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 4B596D911EED62A500A6D140 /* Build configuration list for PBXAggregateTarget "configure (iOS)" */; + buildPhases = ( + 4B596D901EED62A500A6D140 /* Run Script */, + ); + dependencies = ( + 4B596D8E1EED62A500A6D140 /* PBXTargetDependency */, + ); + name = "configure (iOS)"; + productName = configure; + }; 4B5D8DDD1099E1B0000896FF /* autoreconf */ = { isa = PBXAggregateTarget; buildConfigurationList = 4B5D8DE51099E1C5000896FF /* Build configuration list for PBXAggregateTarget "autoreconf" */; buildPhases = ( 4B5D8DE11099E1BF000896FF /* ShellScript */, @@ -16,20 +28,20 @@ dependencies = ( ); name = autoreconf; productName = autoreconf; }; - 4BDF37AD1338047700F9A81A /* configure */ = { + 4BDF37AD1338047700F9A81A /* configure (Mac) */ = { isa = PBXAggregateTarget; - buildConfigurationList = 4BDF37AE1338047700F9A81A /* Build configuration list for PBXAggregateTarget "configure" */; + buildConfigurationList = 4BDF37AE1338047700F9A81A /* Build configuration list for PBXAggregateTarget "configure (Mac)" */; buildPhases = ( 4BDF37B11338047D00F9A81A /* Run Script */, ); dependencies = ( 4BDF37B31338049600F9A81A /* PBXTargetDependency */, ); - name = configure; + name = "configure (Mac)"; productName = configure; }; /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ @@ -1014,16 +1026,23 @@ containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; remoteGlobalIDString = 4B3D23751337FBC800DD29B8; remoteInfo = ObjFW; }; - 4B2C211D1DA292BE00735907 /* PBXContainerItemProxy */ = { + 4B596D8F1EED62A500A6D140 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 4B5D8DDD1099E1B0000896FF; + remoteInfo = autoreconf; + }; + 4B596D941EED62B300A6D140 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 4BDF37AD1338047700F9A81A; - remoteInfo = configure; + remoteGlobalIDString = 4B596D8D1EED62A500A6D140; + remoteInfo = "configure (iOS)"; }; 4B7E83E91DA2B78100BA5689 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; @@ -2919,11 +2938,11 @@ 4B2C22AB1DA292BE00735907 /* CopyFiles */, ); buildRules = ( ); dependencies = ( - 4B2C211C1DA292BE00735907 /* PBXTargetDependency */, + 4B596D951EED62B300A6D140 /* PBXTargetDependency */, ); name = "ObjFW (iOS)"; productName = ObjFW; productReference = 4B2C22B01DA292BE00735907 /* ObjFW.framework */; productType = "com.apple.product-type.framework"; @@ -3050,11 +3069,12 @@ 4B187E0D163EA29F0049A832 /* ObjFW_Bridge (Mac) */, 4B0E296A1DA2A8A400323A76 /* ObjFW_Bridge (iOS) */, 4B23CA89133811610047A1D9 /* TestPlugin (Mac) */, 4B5D706A1DA2F87A00B3B2D7 /* TestPlugin (iOS) */, 4B5D8DDD1099E1B0000896FF /* autoreconf */, - 4BDF37AD1338047700F9A81A /* configure */, + 4BDF37AD1338047700F9A81A /* configure (Mac) */, + 4B596D8D1EED62A500A6D140 /* configure (iOS) */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ @@ -3084,10 +3104,24 @@ runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 4B596D901EED62A500A6D140 /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [ \"configure\" -nt \"buildsys.mk\" -o \"buildsys.mk.in\" -nt \"buildsys.mk\" ]; then\n ./configure --host=arm-apple-darwin OBJC=\"xcrun clang -arch arm64\" || exit 1\nfi"; + }; 4B5D8DE11099E1BF000896FF /* ShellScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); @@ -3110,11 +3144,11 @@ name = "Run Script"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if [ \"configure\" -nt \"buildsys.mk\" -o \"buildsys.mk.in\" -nt \"buildsys.mk\" ]; then\n for i in $VALID_ARCHS; do\n export CFLAGS=\"-arch $i $CFLAGS\"\n export OBJCFLAGS=\"-arch $i $OBJCFLAGS\"\n export LDFLAGS=\"-arch $i $LDFLAGS\"\n done\n ./configure || exit 1\nfi"; + shellScript = "if [ \"configure\" -nt \"buildsys.mk\" -o \"buildsys.mk.in\" -nt \"buildsys.mk\" ]; then\n ./configure || exit 1\nfi"; }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ 4B0E296B1DA2A8A400323A76 /* Sources */ = { @@ -3669,14 +3703,19 @@ 4B23CA91133811BA0047A1D9 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 4B3D23751337FBC800DD29B8 /* ObjFW (Mac) */; targetProxy = 4B23CA90133811BA0047A1D9 /* PBXContainerItemProxy */; }; - 4B2C211C1DA292BE00735907 /* PBXTargetDependency */ = { + 4B596D8E1EED62A500A6D140 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 4B5D8DDD1099E1B0000896FF /* autoreconf */; + targetProxy = 4B596D8F1EED62A500A6D140 /* PBXContainerItemProxy */; + }; + 4B596D951EED62B300A6D140 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = 4BDF37AD1338047700F9A81A /* configure */; - targetProxy = 4B2C211D1DA292BE00735907 /* PBXContainerItemProxy */; + target = 4B596D8D1EED62A500A6D140 /* configure (iOS) */; + targetProxy = 4B596D941EED62B300A6D140 /* PBXContainerItemProxy */; }; 4B7E83EA1DA2B78100BA5689 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 4B3D23751337FBC800DD29B8 /* ObjFW (Mac) */; targetProxy = 4B7E83E91DA2B78100BA5689 /* PBXContainerItemProxy */; @@ -3686,11 +3725,11 @@ target = 4B2C211B1DA292BE00735907 /* ObjFW (iOS) */; targetProxy = 4B7E83EB1DA2B78900BA5689 /* PBXContainerItemProxy */; }; 4B8BA41C133805A700E65070 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = 4BDF37AD1338047700F9A81A /* configure */; + target = 4BDF37AD1338047700F9A81A /* configure (Mac) */; targetProxy = 4B8BA41B133805A700E65070 /* PBXContainerItemProxy */; }; 4BA2FD2F1DA2FA8B0089E945 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 4B2C211B1DA292BE00735907 /* ObjFW (iOS) */; @@ -4059,10 +4098,26 @@ PRODUCT_NAME = ObjFW; SDKROOT = macosx; WRAPPER_EXTENSION = framework; }; name = Release; + }; + 4B596D921EED62A500A6D140 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + }; + name = Debug; + }; + 4B596D931EED62A500A6D140 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + }; + name = Release; }; 4B5D70731DA2F87A00B3B2D7 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { DYLIB_COMPATIBILITY_VERSION = ""; @@ -4260,10 +4315,19 @@ 4B3D23871337FBC800DD29B8 /* Debug */, 4B3D23881337FBC800DD29B8 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; + }; + 4B596D911EED62A500A6D140 /* Build configuration list for PBXAggregateTarget "configure (iOS)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4B596D921EED62A500A6D140 /* Debug */, + 4B596D931EED62A500A6D140 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 4B5D70721DA2F87A00B3B2D7 /* Build configuration list for PBXNativeTarget "TestPlugin (iOS)" */ = { isa = XCConfigurationList; buildConfigurations = ( 4B5D70731DA2F87A00B3B2D7 /* Debug */, @@ -4288,11 +4352,11 @@ 4B76F48A1DA2C2BB00CFF831 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4BDF37AE1338047700F9A81A /* Build configuration list for PBXAggregateTarget "configure" */ = { + 4BDF37AE1338047700F9A81A /* Build configuration list for PBXAggregateTarget "configure (Mac)" */ = { isa = XCConfigurationList; buildConfigurations = ( 4BDF37AF1338047700F9A81A /* Debug */, 4BDF37B01338047700F9A81A /* Release */, ); Index: src/platform.h ================================================================== --- src/platform.h +++ src/platform.h @@ -71,14 +71,10 @@ #if defined(__APPLE__) # include # if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE # define OF_IOS -/* - * iOS has the functions, so configure will find them, but they cannot be used. - */ -# undef OF_HAVE_PROCESSES # else # define OF_MACOS # endif #elif defined(__linux__) # define OF_LINUX