Files

42 lines
1.2 KiB
Makefile

# iOS host for monero depends system (arm64 simulator for dev).
# Targets modern iOS (14+) on Apple Silicon simulators / devices.
IOS_MIN_VERSION=13.0
LD64_VERSION=609
ifndef IOS_PLATFORM
IOS_PLATFORM=SIMULATOR
endif
ifeq ($(IOS_PLATFORM),SIMULATOR)
IOS_SDK_ROOT := $(shell xcrun --sdk iphonesimulator --show-sdk-path)
CC_target=aarch64-apple-ios-simulator
else
IOS_SDK_ROOT := $(shell xcrun --sdk iphoneos --show-sdk-path)
CC_target=aarch64-apple-ios
endif
ios_CC=clang -target $(CC_target) -miphoneos-version-min=$(IOS_MIN_VERSION) --sysroot $(IOS_SDK_ROOT) -mlinker-version=$(LD64_VERSION)
ios_CXX=clang++ -target $(CC_target) -miphoneos-version-min=$(IOS_MIN_VERSION) --sysroot $(IOS_SDK_ROOT) -mlinker-version=$(LD64_VERSION) -stdlib=libc++
ios_CFLAGS=-pipe -isysroot $(IOS_SDK_ROOT)
ios_CXXFLAGS=-pipe -isysroot $(IOS_SDK_ROOT) -std=c++14 -stdlib=libc++
ios_ARFLAGS=cr
ios_release_CFLAGS=-O1
ios_release_CXXFLAGS=$(ios_release_CFLAGS)
ios_debug_CFLAGS=-O1
ios_debug_CXXFLAGS=$(ios_debug_CFLAGS)
ios_native_toolchain=native_cctools darwin_sdk
# iOS uses the system (macOS) ar/ranlib/strip/nm for cross-compiled archives.
ios_AR=ar
ios_RANLIB=ranlib
ios_STRIP=strip
ios_NM=nm
ios_LIBTOOL=libtool
ios_OTOOL=otool
ios_INSTALL_NAME_TOOL=install_name_tool