mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-18 16:27:34 +01:00
55 lines
1.8 KiB
Makefile
55 lines
1.8 KiB
Makefile
# Configure per-platform variables
|
|
# For some reason, all the variables aren't very consistent. For example, the
|
|
# keyword used to specify a minimum OS version doesn't always match the one used
|
|
# to specify an SDK (e.g. "iphonesimulator" vs "ios-simulator").
|
|
|
|
ifeq ($(APPLE_PLATFORM),ios)
|
|
APPLE_SDK = iphoneos
|
|
APPLE_PLATFORM_MIN_VERSION_KEYWORD = iphoneos
|
|
else ifeq ($(APPLE_PLATFORM),ios-simulator)
|
|
APPLE_SDK = iphonesimulator
|
|
APPLE_PLATFORM_MIN_VERSION_KEYWORD = ios-simulator
|
|
else ifeq ($(APPLE_PLATFORM),macos)
|
|
APPLE_SDK = macosx
|
|
APPLE_PLATFORM_MIN_VERSION_KEYWORD = macosx
|
|
else
|
|
$(error Unrecognized APPLE_PLATFORM)
|
|
endif
|
|
|
|
IOS_PLATFORM_VERSION = $(shell xcrun --sdk $(APPLE_SDK) --show-sdk-version)
|
|
IOS_PLATFORM_BUILD = $(shell xcrun --sdk $(APPLE_SDK) --show-sdk-build-version)
|
|
IOS_BUILD_MACHINE_OS_BUILD = $(shell sw_vers -buildVersion)
|
|
# FIXME: Make the following variables actually automatic
|
|
IOS_XCODE_VERSION = "1010"
|
|
IOS_XCODE_BUILD = "10B61"
|
|
IOS_COMPILER = "com.apple.compilers.llvm.clang.1_0"
|
|
|
|
ifdef ARCH
|
|
|
|
CC = $(shell xcrun --sdk $(APPLE_SDK) --find clang)
|
|
CXX = $(shell xcrun --sdk $(APPLE_SDK) --find clang++)
|
|
LD = $(shell xcrun --sdk $(APPLE_SDK) --find clang++)
|
|
|
|
SYSROOT = $(shell xcrun --sdk $(APPLE_SDK) --show-sdk-path)
|
|
|
|
SFLAGS += -arch $(ARCH)
|
|
SFLAGS += -isysroot $(SYSROOT)
|
|
SFLAGS += -fPIC
|
|
SFLAGS += -m$(APPLE_PLATFORM_MIN_VERSION_KEYWORD)-version-min=$(APPLE_PLATFORM_MIN_VERSION)
|
|
|
|
LDFLAGS += -arch $(ARCH)
|
|
LDFLAGS += -isysroot $(SYSROOT)
|
|
LDFLAGS += -m$(APPLE_PLATFORM_MIN_VERSION_KEYWORD)-version-min=$(APPLE_PLATFORM_MIN_VERSION)
|
|
|
|
else
|
|
|
|
CC = echo "Error: ARCH has not been defined" ; false
|
|
CXX = $(CC)
|
|
LD = $(CC)
|
|
|
|
endif
|
|
|
|
ACTOOL = $(shell xcrun --sdk $(APPLE_SDK) --find actool)
|
|
IBTOOL = $(shell xcrun --sdk $(APPLE_SDK) --find ibtool)
|
|
LIPO = $(shell xcrun --sdk $(APPLE_SDK) --find lipo)
|