]> git.saurik.com Git - apple/xnu.git/blobdiff - makedefs/MakeInc.def
xnu-1228.12.14.tar.gz
[apple/xnu.git] / makedefs / MakeInc.def
index b08213bc0f27992a2fdefe4b974a32bc1df23f65..c4b6c21dc26dbd9b0383fe48623e4c0fefc85344 100644 (file)
@@ -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 # <rdar://problem/6174175>
+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