From 6218f42f568f3dd1f31a25572eb865a704c512aa Mon Sep 17 00:00:00 2001 From: Tim Northover Date: Fri, 30 Oct 2015 16:30:51 +0000 Subject: [PATCH] Support watchOS and tvOS in compiler-rt builds Hopefully autotools will be deprecated soon and this entire file can go away, but until then... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@251712 91177308-0d34-0410-b5e6-96231b3b80d8 --- runtime/compiler-rt/Makefile | 39 +++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/runtime/compiler-rt/Makefile b/runtime/compiler-rt/Makefile index 55642a6f0c..029fe1e293 100644 --- a/runtime/compiler-rt/Makefile +++ b/runtime/compiler-rt/Makefile @@ -83,6 +83,25 @@ RuntimeLibrary.darwin.Configs := \ IOS_SDK := $(shell xcrun --show-sdk-path -sdk iphoneos 2> /dev/null) IOSSIM_SDK := $(shell xcrun --show-sdk-path -sdk iphonesimulator 2> /dev/null) +TVOS_SDK := $(shell xcrun --show-sdk-path -sdk appletvos 2> /dev/null) +TVOSSIM_SDK := $(shell xcrun --show-sdk-path -sdk appletvsimulator 2> /dev/null) +WATCHOS_SDK := $(shell xcrun --show-sdk-path -sdk watchos 2> /dev/null) +WATCHOSSIM_SDK := $(shell xcrun --show-sdk-path -sdk watchsimulator 2> /dev/null) + +LinkerSupportedArches = \ + $(shell \ + result=""; \ + for arch in $1; do \ + if $(LD) -v 2>&1 | grep "configured to support" | tr ' ' '\n' | grep "^$$arch$$" >/dev/null 2>/dev/null; then \ + result="$$result$$arch "; \ + fi; \ + done; \ + echo $$result) + + +RuntimeLibrary.macho_embedded.Configs := \ + hard_static.a hard_pic.a +ifneq (,$(findstring ARM,$(TARGETS_TO_BUILD))) ifneq ($(IOS_SDK)$(IOSSIM_SDK),) RuntimeLibrary.darwin.Configs += ios.a profile_ios.a @@ -99,9 +118,23 @@ RuntimeLibrary.darwin.Configs += asan_iossim_dynamic.dylib \ ubsan_iossim_dynamic.dylib endif -RuntimeLibrary.macho_embedded.Configs := \ - hard_static.a hard_pic.a -ifneq (,$(findstring ARM,$(TARGETS_TO_BUILD))) + +ifneq ($(TVOS_SDK)$(TVOSSIM_SDK),) +RuntimeLibrary.darwin.Configs += tvos.a profile_tvos.a +endif + +ifneq ($(TVOS_SDK),) +RuntimeLibrary.darwin.Configs += cc_kext_tvos.a +endif + +ifneq ($(WATCHOS_SDK)$(WATCHOSSIM_SDK),) +RuntimeLibrary.darwin.Configs += watchos.a profile_watchos.a +endif + +ifneq ($(WATCHOS_SDK),) +RuntimeLibrary.darwin.Configs += cc_kext_watchos.a +endif + RuntimeLibrary.macho_embedded.Configs += \ soft_static.a soft_pic.a endif -- 2.50.1