13c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar 23c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarDescription := Target for Darwin using an Apple-style build. 33c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar 41ace4055f79f304750839d73c46bbcaeb994f1b5Eric ChristopherConfigs := Debug Release Profile Static 53c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar 63c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar# We override this with RC_ARCHS because B&I may want to build on an ARCH we 73c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar# haven't explicitly defined support for. If all goes well, this will just work 83c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar# and the resulting lib will just have generic versions for anything unknown. 93c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarUniversalArchs := $(RC_ARCHS) 103c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar 119435c40640a531a49e6b43850b431f20061f225cNick Kledzikifneq (,$(SDKROOT)) 12f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson override CC := $(shell xcrun -sdk $(SDKROOT) -find clang || echo "false") 13f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson AR := $(shell xcrun -sdk $(SDKROOT) -find ar || echo "false") 14f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson RANLIB := $(shell xcrun -sdk $(SDKROOT) -find ranlib || echo "false") 15f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson STRIP := $(shell xcrun -sdk $(SDKROOT) -find strip || echo "false") 16f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson LIPO := $(shell xcrun -sdk $(SDKROOT) -find lipo || echo "false") 17f7e6f383d9c661ccbcd986fc1478336f57f4ce7cBob Wilson DSYMUTIL := $(shell xcrun -sdk $(SDKROOT) -find dsymutil || echo "false") 189435c40640a531a49e6b43850b431f20061f225cNick Kledzikendif 199435c40640a531a49e6b43850b431f20061f225cNick Kledzik 209435c40640a531a49e6b43850b431f20061f225cNick Kledzikifneq ($(IPHONEOS_DEPLOYMENT_TARGET),) 219435c40640a531a49e6b43850b431f20061f225cNick Kledzik DEPLOYMENT_FLAGS := -miphoneos-version-min=$(IPHONEOS_DEPLOYMENT_TARGET) 2262d7d5fdd6db131361f865fe96f5ce4e3b2738a9Nick Kledzikelse 239435c40640a531a49e6b43850b431f20061f225cNick Kledzik ifneq ($(MACOSX_DEPLOYMENT_TARGET),) 249435c40640a531a49e6b43850b431f20061f225cNick Kledzik DEPLOYMENT_FLAGS := -mmacosx-version-min=$(MACOSX_DEPLOYMENT_TARGET) 259435c40640a531a49e6b43850b431f20061f225cNick Kledzik endif 2662d7d5fdd6db131361f865fe96f5ce4e3b2738a9Nick Kledzikendif 2762d7d5fdd6db131361f865fe96f5ce4e3b2738a9Nick Kledzik 289435c40640a531a49e6b43850b431f20061f225cNick Kledzikifneq (,$(SDKROOT)) 299435c40640a531a49e6b43850b431f20061f225cNick Kledzik DEPLOYMENT_FLAGS += -isysroot $(SDKROOT) 309435c40640a531a49e6b43850b431f20061f225cNick Kledzikendif 31182800c03b0e14da4a9afd94cda44bf606fcda5fNick Kledzik 329435c40640a531a49e6b43850b431f20061f225cNick KledzikCFLAGS := -Wall -Os -fomit-frame-pointer -g $(DEPLOYMENT_FLAGS) 339435c40640a531a49e6b43850b431f20061f225cNick KledzikCFLAGS.Static := $(CFLAGS) -static 349435c40640a531a49e6b43850b431f20061f225cNick KledzikDYLIB_FLAGS := $(DEPLOYMENT_FLAGS) \ 359435c40640a531a49e6b43850b431f20061f225cNick Kledzik -Xarch_arm -Wl,-alias_list,$(SRCROOT)/lib/arm/softfloat-alias.list 36afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik 37afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick KledzikVISIBILITY_HIDDEN := 0 38afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick KledzikVISIBILITY_HIDDEN.Static := 1 39182800c03b0e14da4a9afd94cda44bf606fcda5fNick Kledzik 40182800c03b0e14da4a9afd94cda44bf606fcda5fNick Kledzik 413c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarFUNCTIONS := absvdi2 absvsi2 addvdi3 addvsi3 ashldi3 ashrdi3 \ 423c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar clzdi2 clzsi2 cmpdi2 ctzdi2 ctzsi2 \ 433c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar divdc3 divdi3 divsc3 ffsdi2 \ 443c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar fixdfdi fixsfdi fixunsdfdi fixunsdfsi fixunssfdi \ 453c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar fixunssfsi floatdidf floatdisf floatundidf floatundisf \ 46f6f88f3d3e93946d0e51886b359cd70d065c4800Eric Christopher gcc_personality_v0 lshrdi3 moddi3 muldc3 muldi3 mulosi4 \ 47f6f88f3d3e93946d0e51886b359cd70d065c4800Eric Christopher mulodi4 muloti4 mulsc3 mulvdi3 mulvsi3 negdi2 negvdi2 negvsi2 \ 483c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar paritydi2 paritysi2 popcountdi2 popcountsi2 powidf2 \ 493c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar powisf2 subvdi3 subvsi3 ucmpdi2 udivdi3 \ 50e04a1fdc5d173586408421144a0cd79d1767f918Nick Kledzik udivmoddi4 umoddi3 apple_versioning eprintf atomic 513c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar 523c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarFUNCTIONS.i386 := $(FUNCTIONS) \ 533c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar divxc3 fixunsxfdi fixunsxfsi fixxfdi floatdixf \ 543c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar floatundixf mulxc3 powixf2 clear_cache \ 553c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar enable_execute_stack 563c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarFUNCTIONS.ppc := $(FUNCTIONS) \ 573c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar divtc3 fixtfdi fixunstfdi floatditf floatunditf \ 583c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar gcc_qadd gcc_qdiv gcc_qmul gcc_qsub multc3 \ 593c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar powitf2 restFP saveFP trampoline_setup \ 603c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar clear_cache enable_execute_stack 613c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarFUNCTIONS.x86_64 := $(FUNCTIONS) \ 623c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar absvti2 addvti3 ashlti3 ashrti3 clzti2 cmpti2 \ 633c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar ctzti2 divti3 divxc3 ffsti2 fixdfti fixsfti \ 643c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar fixunsdfti fixunssfti fixunsxfdi fixunsxfsi \ 653c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar fixunsxfti fixxfdi fixxfti floatdixf floattidf \ 663c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar floattisf floattixf floatundixf floatuntidf \ 673c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar floatuntisf floatuntixf lshrti3 modti3 multi3 \ 68f6f88f3d3e93946d0e51886b359cd70d065c4800Eric Christopher muloti4 mulvti3 mulxc3 negti2 negvti2 parityti2 \ 693c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar popcountti2 powixf2 subvti3 ucmpti2 udivmodti4 \ 703c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar udivti3 umodti3 clear_cache enable_execute_stack 71a11b52f4527d2b3f0a9ac10c9aa7a67aa1ff8272Nick Kledzik 72a11b52f4527d2b3f0a9ac10c9aa7a67aa1ff8272Nick KledzikFUNCTIONS.armv4t := $(FUNCTIONS) 73a11b52f4527d2b3f0a9ac10c9aa7a67aa1ff8272Nick Kledzik 743c2c684ce20c998bc027c162b7db853a43864e5cNick KledzikFUNCTIONS.armv5 := $(FUNCTIONS) \ 753c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik adddf3 addsf3 bswapdi2 bswapsi2 \ 763c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik comparedf2 comparesf2 extendsfdf2 \ 773c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik divdf3 divsf3 \ 783c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik fixdfsi fixsfsi fixunsdfsi fixunssfsi \ 793c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik floatsidf floatsisf floatunsidf floatunsisf \ 803c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik muldf3 mulsf3 \ 813c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik negdf2 negsf2 \ 823c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik truncdfsf2 \ 835c0809916b70dbb754cf0c999e2923909e5603c6Nick Kledzik modsi3 umodsi3 udivsi3 divsi3 udivmodsi4 divmodsi4 \ 843c2c684ce20c998bc027c162b7db853a43864e5cNick Kledzik switch8 switchu8 switch16 switch32 \ 851ace4055f79f304750839d73c46bbcaeb994f1b5Eric Christopher sync_synchronize 865c0809916b70dbb754cf0c999e2923909e5603c6Nick Kledzik 873c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel DunbarFUNCTIONS.armv6 := $(FUNCTIONS) \ 888dd243303ae52a4bd6b389516a412eab32b25516Nick Kledzik comparedf2 comparesf2 \ 893c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar adddf3vfp addsf3vfp bswapdi2 bswapsi2 divdf3vfp \ 903c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar divsf3vfp eqdf2vfp eqsf2vfp extendsfdf2vfp \ 913c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar fixdfsivfp fixsfsivfp fixunsdfsivfp fixunssfsivfp \ 923c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar floatsidfvfp floatsisfvfp floatunssidfvfp floatunssisfvfp \ 933c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar gedf2vfp gesf2vfp gtdf2vfp gtsf2vfp \ 943c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar ledf2vfp lesf2vfp ltdf2vfp ltsf2vfp \ 953c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar muldf3vfp mulsf3vfp \ 964e8f12f9a62377bbe2ef1f02b3c1ef9b8f8d1407Nick Kledzik nedf2vfp nesf2vfp \ 973c2a776b59f0c349b7ba8ec716266e6691f9df6fDaniel Dunbar subdf3vfp subsf3vfp truncdfsf2vfp unorddf2vfp unordsf2vfp \ 985c0809916b70dbb754cf0c999e2923909e5603c6Nick Kledzik modsi3 umodsi3 udivsi3 divsi3 udivmodsi4 divmodsi4 \ 99afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik switch8 switchu8 switch16 switch32 \ 100afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik restore_vfp_d8_d15_regs save_vfp_d8_d15_regs \ 1011ace4055f79f304750839d73c46bbcaeb994f1b5Eric Christopher sync_synchronize 1025c0809916b70dbb754cf0c999e2923909e5603c6Nick Kledzik 103afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick KledzikFUNCTIONS.armv7 := $(FUNCTIONS) \ 1048dd243303ae52a4bd6b389516a412eab32b25516Nick Kledzik comparedf2 comparesf2 \ 105afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik adddf3vfp addsf3vfp bswapdi2 bswapsi2 divdf3vfp \ 106afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik divsf3vfp eqdf2vfp eqsf2vfp extendsfdf2vfp \ 107afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik fixdfsivfp fixsfsivfp fixunsdfsivfp fixunssfsivfp \ 108afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik floatsidfvfp floatsisfvfp floatunssidfvfp floatunssisfvfp \ 109afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik gedf2vfp gesf2vfp gtdf2vfp gtsf2vfp \ 110afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik ledf2vfp lesf2vfp ltdf2vfp ltsf2vfp \ 111afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik muldf3vfp mulsf3vfp \ 1124e8f12f9a62377bbe2ef1f02b3c1ef9b8f8d1407Nick Kledzik nedf2vfp nesf2vfp \ 113afb7b6e421785106a7e13e13c2a5320e3f1d9bd3Nick Kledzik subdf3vfp subsf3vfp truncdfsf2vfp unorddf2vfp unordsf2vfp \ 1145c0809916b70dbb754cf0c999e2923909e5603c6Nick Kledzik modsi3 umodsi3 udivsi3 divsi3 udivmodsi4 divmodsi4 115004c4340248841aefe5a23d1d20556ac801c871dBob Wilson 116004c4340248841aefe5a23d1d20556ac801c871dBob WilsonFUNCTIONS.armv7s := $(FUNCTIONS.armv7) 117004c4340248841aefe5a23d1d20556ac801c871dBob Wilson 118