summaryrefslogtreecommitdiff
path: root/ACE/include/makeinclude
diff options
context:
space:
mode:
authorAdam Mitz <mitza@objectcomputing.com>2020-02-07 11:05:19 -0600
committerGitHub <noreply@github.com>2020-02-07 11:05:19 -0600
commit4d7f65535e1050d284dcf1d16f78751b38adfdde (patch)
tree9177fa34c7a1eec007f6cc395eeb822237549e8f /ACE/include/makeinclude
parent937821529f194235a709d6db7b5622368857d272 (diff)
parent76ee5a67011243f5ae7595e324f08ee77a73408a (diff)
downloadATCD-4d7f65535e1050d284dcf1d16f78751b38adfdde.tar.gz
Merge pull request #1039 from jonesc-oci/iOS-changes
Configuration changes for iOS builds.
Diffstat (limited to 'ACE/include/makeinclude')
-rw-r--r--ACE/include/makeinclude/platform_macosx_iOS.GNU35
1 files changed, 26 insertions, 9 deletions
diff --git a/ACE/include/makeinclude/platform_macosx_iOS.GNU b/ACE/include/makeinclude/platform_macosx_iOS.GNU
index 4e554174a6f..c0acc1f9143 100644
--- a/ACE/include/makeinclude/platform_macosx_iOS.GNU
+++ b/ACE/include/makeinclude/platform_macosx_iOS.GNU
@@ -9,23 +9,35 @@ else
XCODE:=/Applications/Xcode.app
endif
+ifndef IPHONE_TARGET
+ $(error Please set IPHONE_TARGET to SIMULATOR or HARDWARE)
+endif
+
ifeq ($(IPHONE_TARGET), SIMULATOR)
+ CROSS-COMPILE=1
IPHONE_PLATFORM:=$(XCODE)/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer
IPHONE_SDK:=$(IPHONE_PLATFORM)/SDKs/iPhoneSimulator${IPHONE_VERSION}.sdk
- IPHONE_HARDWARE_ARCHITECTURE=i386
+ IPHONE_HARDWARE_ARCHITECTURE=x86_64
- # crt1.10.7.o is missing under MacOSX 10.7, fallback to 10.6
- # until apple provides the missing crt1.10.7.o
- CFLAGS += -mmacosx-version-min=10.6
- CCFLAGS += -mmacosx-version-min=10.6
- LDFLAGS += -mmacosx-version-min=10.6
+# June 2017 release, iPhone 6s and later
+ CFLAGS += -miphoneos-version-min=12.0
+ CCFLAGS += -miphoneos-version-min=12.0
+ LDFLAGS += -miphoneos-version-min=12.0
endif
ifeq ($(IPHONE_TARGET), HARDWARE)
CROSS-COMPILE=1
IPHONE_PLATFORM:=$(XCODE)/Contents/Developer/Platforms/iPhoneOS.platform/Developer
IPHONE_SDK:=$(IPHONE_PLATFORM)/SDKs/iPhoneOS${IPHONE_VERSION}.sdk
- IPHONE_HARDWARE_ARCHITECTURE=armv7
+# arm64 iPhone 6 and later
+ IPHONE_HARDWARE_ARCHITECTURE=arm64
+
+ifeq ($(iphone_bitcode),1)
+# enable bitcode
+ CFLAGS += -fembed-bitcode
+ CCFLAGS += -fembed-bitcode
+endif
+
ifeq ($(iphone_codesign),1)
CODESIGN_ALLOCATE:=$(IPHONE_PLATFORM)/usr/bin/codesign_allocate
POSTLINK=; codesign -f -s "iPhone Developer" $(BIN)
@@ -33,10 +45,15 @@ endif
rwho = 0
endif
+# pass a flag to the preprocessor
+CFLAGS += -DACE_HAS_IOS
+CCFLAGS += -DACE_HAS_IOS
+
CC:=$(XCODE)/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
CXX:=$(XCODE)/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
-AR:=$(IPHONE_PLATFORM)/usr/bin/ar
-RANLIB:=$(IPHONE_PLATFORM)/usr/bin/ranlib
+AR:=$(XCODE)/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar
+ARFLAGS = rSv
+RANLIB:=$(XCODE)/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib -no_warning_for_no_symbols
DLD = $(CXX)
LD = $(CXX)
CFLAGS += -arch $(IPHONE_HARDWARE_ARCHITECTURE) -isysroot $(IPHONE_SDK)