forked from OSchip/llvm-project
Un-revert r164907 and r164902 (+ follow-ups), 10.6 build fix to follow.
llvm-svn: 165986
This commit is contained in:
parent
cea596acf7
commit
ccd312520b
|
@ -44,6 +44,11 @@ UniversalArchs.eprintf := $(call CheckArches,i386,eprintf)
|
|||
Configs += 10.4
|
||||
UniversalArchs.10.4 := $(call CheckArches,i386 x86_64,10.4)
|
||||
|
||||
# Configuration for targetting iOS for a couple of functions that didn't
|
||||
# make it into libSystem.
|
||||
Configs += ios
|
||||
UniversalArchs.ios := $(call CheckArches,i386 x86_64 armv7,ios)
|
||||
|
||||
# Configuration for targetting OSX. These functions may not be in libSystem
|
||||
# so we should provide our own.
|
||||
Configs += osx
|
||||
|
@ -51,11 +56,18 @@ UniversalArchs.osx := $(call CheckArches,i386 x86_64,osx)
|
|||
|
||||
# Configuration for use with kernel/kexts.
|
||||
Configs += cc_kext
|
||||
UniversalArchs.cc_kext := $(call CheckArches,i386 x86_64,cc_kext)
|
||||
UniversalArchs.cc_kext := $(call CheckArches,armv7 i386 x86_64,cc_kext)
|
||||
|
||||
# Configuration for use with kernel/kexts for iOS 5.0 and earlier (which used
|
||||
# a different code generation strategy).
|
||||
Configs += cc_kext_ios5
|
||||
UniversalArchs.cc_kext_ios5 := $(call CheckArches,armv7)
|
||||
|
||||
# Configurations which define the profiling support functions.
|
||||
Configs += profile_osx
|
||||
UniversalArchs.profile_osx := $(call CheckArches,i386 x86_64,profile_osx)
|
||||
Configs += profile_ios
|
||||
UniversalArchs.profile_ios := $(call CheckArches,i386 x86_64 armv7,profile_ios)
|
||||
|
||||
# Configurations which define the ASAN support functions.
|
||||
Configs += asan_osx
|
||||
|
@ -64,6 +76,10 @@ UniversalArchs.asan_osx := $(call CheckArches,i386 x86_64,asan_osx)
|
|||
Configs += asan_osx_dynamic
|
||||
UniversalArchs.asan_osx_dynamic := $(call CheckArches,i386 x86_64,asan_osx_dynamic)
|
||||
|
||||
#UniversalArchs.ios += $(call CheckArches,armv7f armv7k armv7s,ios)
|
||||
#UniversalArchs.cc_kext += $(call CheckArches,armv7f armv7k armv7s,cc_kext)
|
||||
#UniversalArchs.cc_kext_ios5 += $(call CheckArches,armv7f armv7k armv7s,cc_kext_ios5)
|
||||
#UniversalArchs.profile_ios += $(call CheckArches,armv7f armv7k armv7s,profile_ios)
|
||||
|
||||
# If RC_SUPPORTED_ARCHS is defined, treat it as a list of the architectures we
|
||||
# are intended to support and limit what we try to build to that.
|
||||
|
@ -91,9 +107,15 @@ CFLAGS := -Wall -Werror -O3 -fomit-frame-pointer
|
|||
# supported deployment target -- nothing in the compiler-rt libraries should
|
||||
# actually depend on the deployment target.
|
||||
OSX_DEPLOYMENT_ARGS := -mmacosx-version-min=10.4
|
||||
IOS_DEPLOYMENT_ARGS := -miphoneos-version-min=1.0
|
||||
IOS6_DEPLOYMENT_ARGS := -miphoneos-version-min=6.0
|
||||
IOSSIM_DEPLOYMENT_ARGS := -miphoneos-version-min=1.0
|
||||
|
||||
# Use our stub SDK as the sysroot to support more portable building.
|
||||
OSX_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
|
||||
IOS_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
|
||||
IOS6_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
|
||||
IOSSIM_DEPLOYMENT_ARGS += -isysroot $(ProjSrcRoot)/SDKs/darwin
|
||||
|
||||
CFLAGS.eprintf := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.10.4 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
|
@ -103,12 +125,32 @@ CFLAGS.asan_osx_dynamic := \
|
|||
$(CFLAGS) -mmacosx-version-min=10.5 -fno-builtin \
|
||||
-DMAC_INTERPOSE_FUNCTIONS=1
|
||||
|
||||
CFLAGS.ios.i386 := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
|
||||
CFLAGS.ios.x86_64 := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
|
||||
CFLAGS.ios.armv7 := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.ios.armv7f := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.ios.armv7k := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.ios.armv7s := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.osx.i386 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.osx.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.i386 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.armv7 := $(CFLAGS) $(IOS6_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.armv7f := $(CFLAGS) $(IOS6_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.armv7k := $(CFLAGS) $(IOS6_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext.armv7s := $(CFLAGS) $(IOS6_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext_ios5.armv7 := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext_ios5.armv7f := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext_ios5.armv7k := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.cc_kext_ios5.armv7s := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_osx.i386 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_osx.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.i386 := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.x86_64 := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.armv7 := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.armv7f := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.armv7k := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
CFLAGS.profile_ios.armv7s := $(CFLAGS) $(IOS_DEPLOYMENT_ARGS)
|
||||
|
||||
# Configure the asan_osx_dynamic library to be built shared.
|
||||
SHARED_LIBRARY.asan_osx_dynamic := 1
|
||||
|
@ -117,9 +159,17 @@ LDFLAGS.asan_osx_dynamic := -framework Foundation -lstdc++
|
|||
FUNCTIONS.eprintf := eprintf
|
||||
FUNCTIONS.10.4 := eprintf floatundidf floatundisf floatundixf
|
||||
|
||||
FUNCTIONS.ios := divmodsi4 udivmodsi4 mulosi4 mulodi4 muloti4
|
||||
# On x86, the divmod functions reference divsi.
|
||||
FUNCTIONS.ios.i386 := $(FUNCTIONS.ios) \
|
||||
divsi3 udivsi3
|
||||
FUNCTIONS.ios.x86_64 := $(FUNCTIONS.ios) \
|
||||
divsi3 udivsi3
|
||||
|
||||
FUNCTIONS.osx := mulosi4 mulodi4 muloti4
|
||||
|
||||
FUNCTIONS.profile_osx := GCDAProfiling
|
||||
FUNCTIONS.profile_ios := GCDAProfiling
|
||||
|
||||
FUNCTIONS.asan_osx := $(AsanFunctions) $(InterceptionFunctions) \
|
||||
$(SanitizerCommonFunctions)
|
||||
|
@ -238,6 +288,49 @@ CCKEXT_ARM_FUNCTIONS := $(CCKEXT_COMMON_FUNCTIONS) \
|
|||
unorddf2 \
|
||||
unordsf2
|
||||
|
||||
CCKEXT_ARMVFP_FUNCTIONS := $(CCKEXT_ARM_FUNCTIONS) \
|
||||
adddf3vfp \
|
||||
addsf3vfp \
|
||||
divdf3vfp \
|
||||
divsf3vfp \
|
||||
eqdf2vfp \
|
||||
eqsf2vfp \
|
||||
extendsfdf2vfp \
|
||||
fixdfsivfp \
|
||||
fixsfsivfp \
|
||||
fixunsdfsivfp \
|
||||
fixunssfsivfp \
|
||||
floatsidfvfp \
|
||||
floatsisfvfp \
|
||||
floatunssidfvfp \
|
||||
floatunssisfvfp \
|
||||
gedf2vfp \
|
||||
gesf2vfp \
|
||||
gtdf2vfp \
|
||||
gtsf2vfp \
|
||||
ledf2vfp \
|
||||
lesf2vfp \
|
||||
ltdf2vfp \
|
||||
ltsf2vfp \
|
||||
muldf3vfp \
|
||||
mulsf3vfp \
|
||||
nedf2vfp \
|
||||
nesf2vfp \
|
||||
subdf3vfp \
|
||||
subsf3vfp \
|
||||
truncdfsf2vfp \
|
||||
unorddf2vfp \
|
||||
unordsf2vfp
|
||||
|
||||
FUNCTIONS.cc_kext.armv7 := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext.armv7f := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext.armv7k := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext.armv7s := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext_ios5.armv7 := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext_ios5.armv7f := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext_ios5.armv7k := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
FUNCTIONS.cc_kext_ios5.armv7s := $(CCKEXT_ARMVFP_FUNCTIONS)
|
||||
|
||||
CCKEXT_X86_FUNCTIONS := $(CCKEXT_COMMON_FUNCTIONS) \
|
||||
divxc3 \
|
||||
fixunsxfdi \
|
||||
|
@ -311,11 +404,28 @@ CCKEXT_MISSING_FUNCTIONS := \
|
|||
aeabi_fcmpge aeabi_fcmpgt aeabi_fcmple aeabi_fcmplt aeabi_frsub aeabi_idivmod \
|
||||
aeabi_uidivmod
|
||||
|
||||
FUNCTIONS.cc_kext.armv7 := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.armv7))
|
||||
FUNCTIONS.cc_kext.armv7f := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.armv7f))
|
||||
FUNCTIONS.cc_kext.armv7k := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.armv7k))
|
||||
FUNCTIONS.cc_kext.armv7s := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.armv7s))
|
||||
FUNCTIONS.cc_kext_ios5.armv7 := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext_ios5.armv7))
|
||||
FUNCTIONS.cc_kext_ios5.armv7f := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext_ios5.armv7f))
|
||||
FUNCTIONS.cc_kext_ios5.armv7k := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext_ios5.armv7k))
|
||||
FUNCTIONS.cc_kext_ios5.armv7s := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext_ios5.armv7s))
|
||||
FUNCTIONS.cc_kext.i386 := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.i386))
|
||||
FUNCTIONS.cc_kext.x86_64 := \
|
||||
$(filter-out $(CCKEXT_MISSING_FUNCTIONS),$(FUNCTIONS.cc_kext.x86_64))
|
||||
|
||||
KERNEL_USE.cc_kext := 1
|
||||
KERNEL_USE.cc_kext_ios5 := 1
|
||||
|
||||
VISIBILITY_HIDDEN := 1
|
||||
|
|
Loading…
Reference in New Issue