X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/2d21ac55c334faf3a56e5634905ed6987fc787d4..c910b4d9d2451126ae3917b931cd4390c11e1d52:/makedefs/MakeInc.def diff --git a/makedefs/MakeInc.def b/makedefs/MakeInc.def index b08213bc0..c4b6c21dc 100644 --- a/makedefs/MakeInc.def +++ b/makedefs/MakeInc.def @@ -84,47 +84,10 @@ $(error There were $(words $(KERNEL_CONFIG)) parameters passed to KERNEL_CONFIG Are you sure? To specify multiple configurations please use KERNEL_CONFIGS) endif -# -# Machine Configuration options -# -# ppc supported configurations : none -# i386 supported configurations : none -# arm supported configurations : LN2410SBC MX31ADS INTEGRATORCP S5I3000SMDK S5L8900XFPGA S5L8900XRB OLOCREEK -# -ifndef SUPPORTED_MACHINE_CONFIGS -export SUPPORTED_MACHINE_CONFIGS = LN2410SBC MX31ADS INTEGRATORCP S5I3000SMDK S5L8900XFPGA S5L8900XRB OLOCREEK DEFAULT -endif - -export DEFAULT_ARM_MACHINE_CONFIG = S5L8900XRB - ifndef MACHINE_CONFIG export MACHINE_CONFIG = DEFAULT endif -ifndef MACHINE_FLAGS_LN2410SBC -export MACHINE_FLAGS_LN2410SBC = -DARM_BOARD_CONFIG_LN2410_920T -endif -ifndef MACHINE_FLAGS_MX31ADS -export MACHINE_FLAGS_MX31ADS = -DARM_BOARD_CONFIG_MX31ADS_1136JFS -endif -ifndef MACHINE_FLAGS_INTEGRATORCP -export MACHINE_FLAGS_INTEGRATORCP = -DARM_BOARD_CONFIG_INTEGRATORCP_1136JFS -endif -ifndef MACHINE_FLAGS_S5I3000SMDK -export MACHINE_FLAGS_S5I3000SMDK = -DARM_BOARD_CONFIG_S5I3000SMDK_1176JZFS -endif -ifndef MACHINE_FLAGS_S5L8900XFPGA -export MACHINE_FLAGS_S5L8900XFPGA = -DARM_BOARD_CONFIG_S5L8900XFPGA_1136JFS -endif -ifndef MACHINE_FLAGS_S5L8900XRB -export MACHINE_FLAGS_S5L8900XRB = -DARM_BOARD_CONFIG_S5L8900XRB -endif -ifndef MACHINE_FLAGS_OLOCREEK -export MACHINE_FLAGS_OLOCREEK = -DARM_BOARD_CONFIG_OLOCREEK -endif -ifndef MACHINE_FLAGS_DEFAULT -export MACHINE_FLAGS_DEFAULT = -endif # # Target configuration options. NOTE - target configurations will @@ -147,7 +110,7 @@ endif # default architecture configuration = system architecture where you are running make. # default machine configuration for ppc = none at this time. # default machine configuration for i386 = none at this time. -# default machine configuration for arm = "S5L8900XRB". +# default machine configuration for arm = "S5L8900X". # ifndef TARGET_CONFIGS_UC ifdef TARGET_CONFIGS @@ -234,13 +197,10 @@ ARCH_FLAGS_PPC = -arch ppc ARCH_FLAGS_I386 = -arch i386 ARCH_FLAGS_ARM = $($(addsuffix $(MACHINE_CONFIG),ARCH_FLAGS_ARM_)) -ARCH_FLAGS_ARM_LN2410SBC = -arch arm -ARCH_FLAGS_ARM_MX31ADS = -arch armv6 -ARCH_FLAGS_ARM_INTEGRATORCP = -arch armv6 -ARCH_FLAGS_ARM_S5I3000SMDK = -arch armv6 -ARCH_FLAGS_ARM_S5L8900XFPGA = -arch armv6 -ARCH_FLAGS_ARM_S5L8900XRB = -arch armv6 -ARCH_FLAGS_ARM_OLOCREEK = -arch arm +ARCH_FLAGS_ALL_PPC = $(ARCH_FLAGS_PPC) +ARCH_FLAGS_ALL_I386 = $(ARCH_FLAGS_I386) +ARCH_FLAGS_ALL_ARM = -arch arm + # # Default CFLAGS @@ -255,41 +215,44 @@ export DSYMBUILDDIR = ./Contents/Resources/DWARF/ # We must not use -fno-keep-inline-functions, or it will remove the dtrace # probes from the kernel. # -export CFLAGS_GEN = -static $(DEBUG_CFLAGS) -nostdinc -nostdlib -no-cpp-precomp \ +export CFLAGS_GEN = -static $(DEBUG_CFLAGS) -nostdinc -nostdlib \ -fno-builtin -finline -msoft-float \ -fsigned-bitfields $(OTHER_CFLAGS) +ifeq ($(BUILD_STABS),1) +export CFLAGS_GEN += -gstabs+ +export BUILD_DWARF = 0 +export BUILD_STABS = 1 +else +export CFLAGS_GEN += -gdwarf-2 +export BUILD_DWARF = 1 +export BUILD_STABS = 0 +endif + export CFLAGS_RELEASE = export CFLAGS_DEVELOPMENT = export CFLAGS_DEBUG = export CFLAGS_PROFILE = -pg -ifeq ($(ARCH_CONFIG),ARM) -BUILD_STABS = 1 -endif - -ifeq ($(BUILD_STABS),1) -export CFLAGS_PPC = -Dppc -DPPC -D__PPC__ -DPAGE_SIZE_FIXED \ - -mno-altivec -gstabs+ -force_cpusubtype_ALL -export CFLAGS_I386 = -Di386 -DI386 -D__I386__ \ - -DPAGE_SIZE_FIXED -gstabs+ -force_cpusubtype_ALL -export CFLAGS_ARM = -Darm -DARM -D__ARM__ -DPAGE_SIZE_FIXED \ - -fno-strict-aliasing -gstabs+ -fno-keep-inline-functions -export BUILD_DWARF = 0 -export BUILD_STABS = 1 -else export CFLAGS_PPC = -Dppc -DPPC -D__PPC__ -DPAGE_SIZE_FIXED \ - -mno-altivec -gdwarf-2 -force_cpusubtype_ALL + -mno-altivec -force_cpusubtype_ALL export CFLAGS_I386 = -Di386 -DI386 -D__I386__ \ - -DPAGE_SIZE_FIXED -gdwarf-2 -force_cpusubtype_ALL + -DPAGE_SIZE_FIXED -force_cpusubtype_ALL export CFLAGS_ARM = -Darm -DARM -D__ARM__ -DPAGE_SIZE_FIXED \ - -fno-strict-aliasing -gdwarf-2 -fno-keep-inline-functions -export BUILD_DWARF = 1 -export BUILD_STABS = 0 + -fno-strict-aliasing -fno-keep-inline-functions + +ifeq (-arch armv7,$(ARCH_FLAGS_ARM)) +CFLAGS_ARM += -mthumb endif ifeq (-arch armv6,$(ARCH_FLAGS_ARM)) CFLAGS_ARM += -mthumb endif +ifeq (-arch armv5,$(ARCH_FLAGS_ARM)) +#CFLAGS_ARM += -mthumb # +endif +ifeq (-arch xscale,$(ARCH_FLAGS_ARM)) +CFLAGS_ARM += -mthumb +endif export CFLAGS_RELEASEPPC = -O2 -mcpu=750 -mmultiple export CFLAGS_RELEASE_TRACEPPC = -O2 -mcpu=750 -mmultiple @@ -369,7 +332,7 @@ export LDFLAGS_COMPONENT_PROFILE = $(COMP_LDFLAGS_COMPONENT_PROFILE) export LDFLAGS_COMPONENT_PPC = $(COMP_LDFLAGS_COMPONENT_PPC) -force_cpusubtype_ALL export LDFLAGS_COMPONENT_I386 = $(COMP_LDFLAGS_COMPONENT_i386) -export LDFLAGS_COMPONENT_ARM = $(COMP_LDFLAGS_COMPONENT_ARM) +export LDFLAGS_COMPONENT_ARM = $(COMP_LDFLAGS_COMPONENT_ARM) -Wl,-new_linker export LDFLAGS_COMPONENT = $(LDFLAGS_COMPONENT_GEN) \ $($(addsuffix $(ARCH_CONFIG),ARCH_FLAGS_)) \ @@ -406,6 +369,7 @@ export LDFLAGS_KERNEL_I386 = \ -Wl,-segaddr,__TEXT,0x111000 export LDFLAGS_KERNEL_ARM = \ + -Wl,-new_linker \ -Wl,-segaddr,__HIB,0xC0000000 \ -Wl,-segaddr,__TEXT,0xC0008000