From b08246f960f65b59369b2bcedc04885e8a028109 Mon Sep 17 00:00:00 2001 From: Romain Goyet Date: Mon, 18 Mar 2019 18:27:13 +0100 Subject: [PATCH] [ion/sdl/ios] Build with customizable min_ios_version --- ion/src/sdl/ios/Info.plist | 8 +------- ion/src/sdl/ios/Makefile | 18 +++++++++--------- scripts/platform.sdl.ios.mak | 4 ++++ scripts/toolchain.ios.mak | 14 ++++++++++---- 4 files changed, 24 insertions(+), 20 deletions(-) diff --git a/ion/src/sdl/ios/Info.plist b/ion/src/sdl/ios/Info.plist index c577a0c3c..136757409 100644 --- a/ion/src/sdl/ios/Info.plist +++ b/ion/src/sdl/ios/Info.plist @@ -16,14 +16,8 @@ APPL CFBundleSupportedPlatforms - iPhoneSimulator + iPhoneOS - DTPlatformVersion - 12.1 - DTSDKBuild - 16B91 - DTSDKName - iphonesimulator12.1 LSRequiresIPhoneOS UIDeviceFamily diff --git a/ion/src/sdl/ios/Makefile b/ion/src/sdl/ios/Makefile index 1e0c069b7..54db9da48 100644 --- a/ion/src/sdl/ios/Makefile +++ b/ion/src/sdl/ios/Makefile @@ -29,11 +29,6 @@ $(call ios_resource,Epsilon): $(patsubst %,$(BUILD_DIR)/%/epsilon.bin,$(ARCHS)) $(call rule_label,LIPO) $(Q) lipo -create $^ -output $@ -.PHONY: $(call ios_resource,Epsilon).signed -$(call ios_resource,Epsilon).signed: $(call ios_resource,Epsilon) $(BUILD_DIR)/app/entitlements.plist - $(call rule_label,SIGN) - $(Q) codesign --force --entitlements $(BUILD_DIR)/app/entitlements.plist --sign "iPhone Distribution: NumWorks" $< - $(call ios_resource,background.jpg): ion/src/sdl/assets/background.jpg $(call rule_label,COPY) $(Q) cp $^ $@ @@ -43,7 +38,10 @@ $(call ios_resource,Info.plist): ion/src/sdl/ios/Info.plist $(call ios_resource, $(Q) cp $< $@ $(Q) plutil -insert "MinimumOSVersion" -string "$(IOS_MIN_VERSION)" $@ $(Q) plutil -insert "DTPlatformName" -string "$(IOS_PLATFORM)" $@ - $(Q) plutil -insert "CFBundleVersion" -string "$(EPSILON_VERSION).$(PATCH_LEVEL)" $@ + $(Q) plutil -insert "DTPlatformVersion" -string "$(IOS_PLATFORM_VERSION)" $@ + $(Q) plutil -insert "DTSDKName" -string "$(IOS_PLATFORM)$(IOS_PLATFORM_VERSION)" $@ + $(Q) plutil -insert "DTSDKBuild" -string "$(IOS_PLATFORM_BUILD)" $@ + $(Q) plutil -insert "CFBundleVersion" -string "$(EPSILON_VERSION)" $@ $(Q) plutil -insert "CFBundleShortVersionString" -string "$(EPSILON_VERSION)" $@ $(foreach arch,$(ARCHS),$(Q) plutil -insert "UIRequiredDeviceCapabilities.0" -string "$(arch)" $@) $(Q) plutil -replace CFBundleIcons -json `plutil -extract CFBundleIcons json -o - $(BUILD_DIR)/app/assets/partial.plist` $@ @@ -51,7 +49,7 @@ $(call ios_resource,Info.plist): ion/src/sdl/ios/Info.plist $(call ios_resource, $(call ios_resource,launch.storyboardc): ion/src/sdl/ios/launch.storyboard $(call rule_label,IBTOOL) - $(Q) ibtool --compile $@ $^ + $(Q) ibtool --minimum-deployment-target $(IOS_MIN_VERSION) --compile $@ $^ $(call ios_resource,embedded.mobileprovision): $(IOS_PROVISIONNING_PROFILE) $(call rule_label,COPY) @@ -78,7 +76,7 @@ $(call ios_resource,Assets.car): $(call asset_for,Contents.json) epsilon_ipa_deps: $(call ios_resource,\ Assets.car \ - Epsilon.signed \ + Epsilon \ Info.plist \ background.jpg \ embedded.mobileprovision \ @@ -87,7 +85,9 @@ epsilon_ipa_deps: $(call ios_resource,\ $(epsilon_ipa_deps): | $$(@D)/. -$(BUILD_DIR)/app/epsilon.ipa: epsilon_ipa_deps +$(BUILD_DIR)/app/epsilon.ipa: epsilon_ipa_deps $(BUILD_DIR)/app/entitlements.plist + $(call rule_label,SIGN) + $(Q) codesign --force --entitlements $(BUILD_DIR)/app/entitlements.plist --sign "iPhone Distribution: NumWorks" $(BUILD_DIR)/app/Payload/Epsilon.app $(call rule_label,ZIP) $(Q) cd $(dir $@) ; zip -qr9 $(notdir $@) Payload diff --git a/scripts/platform.sdl.ios.mak b/scripts/platform.sdl.ios.mak index 4d793d402..c647e02ba 100644 --- a/scripts/platform.sdl.ios.mak +++ b/scripts/platform.sdl.ios.mak @@ -6,6 +6,10 @@ IOS_MIN_VERSION = 8.0 IOS_IDENTIFIER ?= unknown IOS_PROVISIONNING_PROFILE ?= unknown +# Stop from here +IOS_PLATFORM_VERSION = $(shell xcrun --sdk $(IOS_PLATFORM) --show-sdk-version) +IOS_PLATFORM_BUILD = $(shell xcrun --sdk $(IOS_PLATFORM) --show-sdk-build-version) + BUILD_DIR := $(BUILD_DIR)/$(IOS_PLATFORM) ifdef ARCH diff --git a/scripts/toolchain.ios.mak b/scripts/toolchain.ios.mak index dba1e01d6..62d0ea300 100644 --- a/scripts/toolchain.ios.mak +++ b/scripts/toolchain.ios.mak @@ -7,8 +7,14 @@ LD = clang++ # ARCH = arm64 # SDK = iphoneos -SYSROOT = $(shell xcrun --sdk $(SDK) --show-sdk-path) +SYSROOT = $(shell xcrun --sdk $(IOS_PLATFORM) --show-sdk-path) -SFLAGS += -fPIC -arch $(ARCH) -isysroot $(SYSROOT) -LDFLAGS += -arch $(ARCH) -isysroot $(SYSROOT) -#-framework Foundation -framework OpenGLES -framework UIKit -framework AVFoundation -framework AudioToolbox -framework QuartzCore -framework GameController -framework CoreGraphics -framework CoreMotion +SFLAGS += -arch $(ARCH) +SFLAGS += -isysroot $(SYSROOT) +SFLAGS += -fPIC +SFLAGS += -miphoneos-version-min=$(IOS_MIN_VERSION) +#SFLAGS += -mios-simulator-version-min=$(IOS_MIN_VERSION) + +LDFLAGS += -arch $(ARCH) +LDFLAGS += -isysroot $(SYSROOT) +LDFLAGS += -miphoneos-version-min=$(IOS_MIN_VERSION)