]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - Makefile
Prepare 2009.08-rc3
[karo-tx-uboot.git] / Makefile
index 4fe32328cbed5c4d52c2aac7164c70f5c4173d15..8fb6562974ebffc5cf37133a060fd34dc512ef48 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,9 +22,9 @@
 #
 
 VERSION = 2009
-PATCHLEVEL = 06
+PATCHLEVEL = 08
 SUBLEVEL =
-EXTRAVERSION =
+EXTRAVERSION = -rc3
 ifneq "$(SUBLEVEL)" ""
 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
 else
@@ -140,13 +140,20 @@ endif
 # The "tools" are needed early, so put this first
 # Don't include stuff already done in $(LIBS)
 SUBDIRS        = tools \
-         examples \
-         api_examples
+         examples/standalone \
+         examples/api
 
 .PHONY : $(SUBDIRS)
 
 ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk))
 
+# Include autoconf.mk before config.mk so that the config options are available
+# to all top level build files.  We need the dummy all: target to prevent the
+# dependency target in autoconf.mk.dep from being the default.
+all:
+sinclude $(obj)include/autoconf.mk.dep
+sinclude $(obj)include/autoconf.mk
+
 # load ARCH, BOARD, and CPU configuration
 include $(obj)include/config.mk
 export ARCH CPU BOARD VENDOR SOC
@@ -214,6 +221,7 @@ LIBS += drivers/net/phy/libphy.a
 LIBS += drivers/net/sk98lin/libsk98lin.a
 LIBS += drivers/pci/libpci.a
 LIBS += drivers/pcmcia/libpcmcia.a
+LIBS += drivers/power/libpower.a
 LIBS += drivers/spi/libspi.a
 ifeq ($(CPU),mpc83xx)
 LIBS += drivers/qe/qe.a
@@ -247,7 +255,17 @@ LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).a
 LIBBOARD := $(addprefix $(obj),$(LIBBOARD))
 
 # Add GCC lib
-PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
+ifdef USE_PRIVATE_LIBGCC
+ifeq ("$(USE_PRIVATE_LIBGCC)", "yes")
+PLATFORM_LIBGCC = -L $(OBJTREE)/lib_$(ARCH) -lgcc
+else
+PLATFORM_LIBGCC = -L $(USE_PRIVATE_LIBGCC) -lgcc
+endif
+else
+PLATFORM_LIBGCC = -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
+endif
+PLATFORM_LIBS += $(PLATFORM_LIBGCC)
+export PLATFORM_LIBS
 
 ifeq ($(CONFIG_NAND_U_BOOT),y)
 NAND_SPL = nand_spl
@@ -308,11 +326,13 @@ GEN_UBOOT = \
                cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \
                        --start-group $(__LIBS) --end-group $(PLATFORM_LIBS) \
                        -Map u-boot.map -o u-boot
-$(obj)u-boot:          depend $(SUBDIRS) $(OBJS) $(LIBBOARD) $(LIBS) $(LDSCRIPT)
+$(obj)u-boot:  depend $(SUBDIRS) $(OBJS) $(LIBBOARD) $(LIBS) $(LDSCRIPT) $(obj)u-boot.lds
                $(GEN_UBOOT)
 ifeq ($(CONFIG_KALLSYMS),y)
-               smap=`$(call SYSTEM_MAP,u-boot) | awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
-               $(CC) $(CFLAGS) -DSYSTEM_MAP="\"$${smap}\"" -c common/system_map.c -o $(obj)common/system_map.o
+               smap=`$(call SYSTEM_MAP,u-boot) | \
+                       awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
+               $(CC) $(CFLAGS) -DSYSTEM_MAP="\"$${smap}\"" \
+                       -c common/system_map.c -o $(obj)common/system_map.o
                $(GEN_UBOOT) $(obj)common/system_map.o
 endif
 
@@ -331,6 +351,9 @@ $(SUBDIRS): depend
 $(LDSCRIPT):   depend
                $(MAKE) -C $(dir $@) $(notdir $@)
 
+$(obj)u-boot.lds: $(LDSCRIPT)
+               $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
+
 $(NAND_SPL):   $(TIMESTAMP_FILE) $(VERSION_FILE) $(obj)include/autoconf.mk
                $(MAKE) -C nand_spl/board/$(BOARDDIR) all
 
@@ -429,7 +452,7 @@ $(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h
        @$(XECHO) Generating $@ ; \
        set -e ; \
        : Generate the dependancies ; \
-       $(CC) -x c -DDO_DEPS_ONLY -M $(HOST_CFLAGS) $(CPPFLAGS) \
+       $(CC) -x c -DDO_DEPS_ONLY -M $(HOSTCFLAGS) $(CPPFLAGS) \
                -MQ $(obj)include/autoconf.mk include/common.h > $@
 
 $(obj)include/autoconf.mk: $(obj)include/config.h
@@ -440,9 +463,6 @@ $(obj)include/autoconf.mk: $(obj)include/config.h
                sed -n -f tools/scripts/define2mk.sed > $@.tmp && \
        mv $@.tmp $@
 
-sinclude $(obj)include/autoconf.mk.dep
-sinclude $(obj)include/autoconf.mk
-
 #########################################################################
 else   # !config.mk
 all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \
@@ -1268,6 +1288,14 @@ CATcenter_33_config:     unconfig
 CMS700_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx cms700 esd
 
+# Compact-Center & DevCon-Center use different U-Boot images
+compactcenter_config \
+devconcenter_config:   unconfig
+       @mkdir -p $(obj)include
+       @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \
+               tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a compactcenter ppc ppc4xx compactcenter gdsys
+
 CPCI2DP_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpci2dp esd
 
@@ -1293,6 +1321,9 @@ csb472_config:    unconfig
 DASA_SIM_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx dasa_sim esd
 
+dlvision_config: unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx dlvision gdsys
+
 DP405_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx dp405 esd
 
@@ -1452,6 +1483,9 @@ PLU405_config:    unconfig
 PMC405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx pmc405 esd
 
+PMC405DE_config:       unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx pmc405de esd
+
 PMC440_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx pmc440 esd
 
@@ -1600,8 +1634,8 @@ xilinx-ppc440-generic_config: unconfig
                >> $(obj)board/xilinx/ppc440-generic/config.tmp
        @$(MKCONFIG) xilinx-ppc440-generic ppc ppc4xx ppc440-generic xilinx
 
-XPEDITE1K_config:      unconfig
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx xpedite1k
+XPEDITE1000_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx xpedite1000 xes
 
 yosemite_config \
 yellowstone_config: unconfig
@@ -1964,6 +1998,9 @@ ZPC1900_config: unconfig
 ## Coldfire
 #########################################################################
 
+M5208EVBE_config :             unconfig
+       @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5208evbe freescale
+
 M52277EVB_config \
 M52277EVB_spansion_config \
 M52277EVB_stmicro_config :     unconfig
@@ -2068,18 +2105,15 @@ M5373EVB_config :       unconfig
        @$(MKCONFIG) -a M5373EVB m68k mcf532x m5373evb freescale
 
 M54451EVB_config \
-M54451EVB_spansion_config \
 M54451EVB_stmicro_config :     unconfig
        @case "$@" in \
-       M54451EVB_config)               FLASH=SPANSION;; \
-       M54451EVB_spansion_config)      FLASH=SPANSION;; \
+       M54451EVB_config)               FLASH=NOR;; \
        M54451EVB_stmicro_config)       FLASH=STMICRO;; \
        esac; \
-       if [ "$${FLASH}" = "SPANSION" ] ; then \
-               echo "#define CONFIG_SYS_SPANSION_BOOT" >> $(obj)include/config.h ; \
+       if [ "$${FLASH}" = "NOR" ] ; then \
                echo "TEXT_BASE = 0x00000000" > $(obj)board/freescale/m54451evb/config.tmp ; \
                cp $(obj)board/freescale/m54451evb/u-boot.spa $(obj)board/freescale/m54451evb/u-boot.lds ; \
-               $(XECHO) "... with SPANSION boot..." ; \
+               $(XECHO) "... with NOR boot..." ; \
        fi; \
        if [ "$${FLASH}" = "STMICRO" ] ; then \
                echo "#define CONFIG_CF_SBF"    >> $(obj)include/config.h ; \
@@ -2346,8 +2380,23 @@ MPC837XERDB_config:      unconfig
 MVBLM7_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx mvblm7 matrix_vision
 
-sbc8349_config:                unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc83xx sbc8349
+sbc8349_config \
+sbc8349_PCI_33_config \
+sbc8349_PCI_66_config: unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _PCI_,$@)" ] ; then \
+               $(XECHO) -n "... PCI HOST at " ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _33_,$@)" ] ; then \
+               $(XECHO) -n "33MHz... " ; \
+               echo "#define PCI_33M" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _66_,$@)" ] ; then \
+               $(XECHO) -n "66MHz... " ; \
+               echo "#define PCI_66M" >>$(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a sbc8349 ppc mpc83xx sbc8349
 
 SIMPC8313_LP_config \
 SIMPC8313_SP_config: unconfig
@@ -2367,6 +2416,8 @@ SIMPC8313_SP_config: unconfig
 TQM834x_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx tqm834x tqc
 
+vme8349_config:                unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc83xx vme8349 esd
 
 #########################################################################
 ## MPC85xx Systems
@@ -2852,6 +2903,9 @@ lpd7a400_config \
 lpd7a404_config:       unconfig
        @$(MKCONFIG) $(@:_config=) arm lh7a40x lpd7a40x
 
+mv88f6281gtw_ge_config: unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs $(@:_config=) Marvell kirkwood
+
 mx1ads_config  :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t mx1ads NULL imx
 
@@ -2917,12 +2971,18 @@ omap730p2_cs3boot_config :      unconfig
        fi;
        @$(MKCONFIG) -a $(call xtract_omap730p2,$@) arm arm926ejs omap730p2 NULL omap
 
+rd6281a_config: unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs $(@:_config=) Marvell kirkwood
+
 sbc2410x_config: unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t sbc2410x NULL s3c24x0
 
 scb9328_config :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t scb9328 NULL imx
 
+sheevaplug_config: unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs $(@:_config=) Marvell kirkwood
+
 smdk2400_config        :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t smdk2400 samsung s3c24x0
 
@@ -3167,7 +3227,6 @@ omap2420h4_config : unconfig
 qong_config            : unconfig
        @$(MKCONFIG) $(@:_config=) arm arm1136 qong davedenx mx31
 
-
 #########################################################################
 ## ARM1176 Systems
 #########################################################################
@@ -3592,11 +3651,16 @@ grsim_leon2_config : unconfig
 #########################################################################
 
 clean:
-       @rm -f $(obj)examples/82559_eeprom $(obj)examples/eepro100_eeprom \
-              $(obj)examples/hello_world  $(obj)examples/interrupt       \
-              $(obj)examples/mem_to_mem_idma2intr                        \
-              $(obj)examples/sched        $(obj)examples/smc91111_eeprom \
-              $(obj)examples/test_burst   $(obj)examples/timer
+       @rm -f $(obj)examples/standalone/82559_eeprom                     \
+              $(obj)examples/standalone/eepro100_eeprom                  \
+              $(obj)examples/standalone/hello_world                      \
+              $(obj)examples/standalone/interrupt                        \
+              $(obj)examples/standalone/mem_to_mem_idma2intr             \
+              $(obj)examples/standalone/sched                            \
+              $(obj)examples/standalone/smc91111_eeprom                  \
+              $(obj)examples/standalone/test_burst                       \
+              $(obj)examples/standalone/timer
+       @rm -f $(obj)examples/api/demo{,.bin}
        @rm -f $(obj)tools/bmp_logo        $(obj)tools/easylogo/easylogo  \
               $(obj)tools/env/{fw_printenv,fw_setenv}                    \
               $(obj)tools/envcrc                                         \
@@ -3609,11 +3673,13 @@ clean:
               $(obj)board/trab/trab_fkt   $(obj)board/voiceblue/eeprom   \
               $(obj)board/armltd/{integratorap,integratorcp}/u-boot.lds  \
               $(obj)lib_blackfin/u-boot.lds                              \
+              $(obj)u-boot.lds                                           \
               $(obj)cpu/blackfin/bootrom-asm-offsets.[chs]
        @rm -f $(obj)include/bmp_logo.h
-       @rm -f $(obj)nand_spl/{u-boot-spl,u-boot-spl.map,System.map}
+       @rm -f $(obj)nand_spl/{u-boot.lds,u-boot-spl,u-boot-spl.map,System.map}
        @rm -f $(obj)onenand_ipl/onenand-{ipl,ipl.bin,ipl-2k.bin,ipl-4k.bin,ipl.map}
-       @rm -f $(obj)api_examples/demo $(TIMESTAMP_FILE) $(VERSION_FILE)
+       @rm -f $(obj)onenand_ipl/u-boot.lds
+       @rm -f $(TIMESTAMP_FILE) $(VERSION_FILE)
        @find $(OBJTREE) -type f \
                \( -name 'core' -o -name '*.bak' -o -name '*~' \
                -o -name '*.o'  -o -name '*.a' -o -name '*.exe' \) -print \