summaryrefslogtreecommitdiff
path: root/ACE
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
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')
-rw-r--r--ACE/ace/config-macosx-iOS-hardware.h14
-rw-r--r--ACE/ace/config-macosx-iOS-simulator.h8
-rw-r--r--ACE/ace/config-macosx-iOS.h13
-rw-r--r--ACE/ace/config-macosx-leopard.h4
-rw-r--r--ACE/include/makeinclude/platform_macosx_iOS.GNU35
5 files changed, 43 insertions, 31 deletions
diff --git a/ACE/ace/config-macosx-iOS-hardware.h b/ACE/ace/config-macosx-iOS-hardware.h
deleted file mode 100644
index 0d2cc900b85..00000000000
--- a/ACE/ace/config-macosx-iOS-hardware.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef ACE_CONFIG_MACOSX_IPHONE_HARDWARE_H
-#define ACE_CONFIG_MACOSX_IPHONE_HARDWARE_H
-
-#define ACE_HAS_IPHONE
-#define ACE_SIZEOF_LONG_DOUBLE 8
-
-#include "ace/config-macosx-mavericks.h"
-
-#ifdef ACE_HAS_SYSV_IPC
-#undef ACE_HAS_SYSV_IPC
-#endif
-
-#endif /* ACE_CONFIG_MACOSX_IPHONE_HARDWARE_H */
-
diff --git a/ACE/ace/config-macosx-iOS-simulator.h b/ACE/ace/config-macosx-iOS-simulator.h
deleted file mode 100644
index 483dad5530c..00000000000
--- a/ACE/ace/config-macosx-iOS-simulator.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef ACE_CONFIG_MACOSX_IPHONE_SIMULATOR_H
-#define ACE_CONFIG_MACOSX_IPHONE_SIMULATOR_H
-
-#define ACE_HAS_IPHONE
-#include "ace/config-macosx-mavericks.h"
-
-#endif /* ACE_CONFIG_MACOSX_IPHONE_SIMULATOR_H */
-
diff --git a/ACE/ace/config-macosx-iOS.h b/ACE/ace/config-macosx-iOS.h
new file mode 100644
index 00000000000..4fcd1bd406c
--- /dev/null
+++ b/ACE/ace/config-macosx-iOS.h
@@ -0,0 +1,13 @@
+#ifndef ACE_CONFIG_MACOSX_IPHONE_H
+#define ACE_CONFIG_MACOSX_IPHONE_H
+
+#define ACE_HAS_IPHONE
+#define ACE_LACKS_SYSTEM
+
+#include "ace/config-macosx-mojave.h"
+
+#ifdef ACE_HAS_SYSV_IPC
+#undef ACE_HAS_SYSV_IPC
+#endif
+
+#endif /* ACE_CONFIG_MACOSX_IPHONE_H */
diff --git a/ACE/ace/config-macosx-leopard.h b/ACE/ace/config-macosx-leopard.h
index 4e53e3bcada..722a0f3280c 100644
--- a/ACE/ace/config-macosx-leopard.h
+++ b/ACE/ace/config-macosx-leopard.h
@@ -204,11 +204,15 @@
#endif
#define ACE_LACKS_CONDATTR_SETCLOCK
+
+#ifndef ACE_HAS_IPHONE
#if __MAC_OS_X_VERSION_MAX_ALLOWED < 101200
#define ACE_LACKS_CLOCKID_T
#define ACE_LACKS_CLOCK_MONOTONIC
#define ACE_LACKS_CLOCK_REALTIME
#endif
+#endif
+
// dlcompat package (not part of base Darwin) is needed for dlopen().
// You may download directly from sourceforge and install or use fink
// Fink installer puts libraries in /sw/lib and headers in /sw/include
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)