[ion/sdl/ios] Build with customizable min_ios_version

This commit is contained in:
Romain Goyet
2019-03-18 18:27:13 +01:00
parent ed69789eac
commit b08246f960
4 changed files with 24 additions and 20 deletions

View File

@@ -16,14 +16,8 @@
<string>APPL</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>iPhoneSimulator</string>
<string>iPhoneOS</string>
</array>
<key>DTPlatformVersion</key>
<string>12.1</string>
<key>DTSDKBuild</key>
<string>16B91</string>
<key>DTSDKName</key>
<string>iphonesimulator12.1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UIDeviceFamily</key>

View File

@@ -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

View File

@@ -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

View File

@@ -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)