X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=Makefile;h=5f93646994ef863c68d72c0234c638172f3a0346;hb=6639562e6a7f2ae3160ef120d18b7796a2ff8e19;hp=205e710866770aa1745990909d6df741cdf7a520;hpb=e0f0e527f8290bdf72d0fb5e5937c6b943879bf8;p=u-boot diff --git a/Makefile b/Makefile index 205e710866..5f93646994 100644 --- a/Makefile +++ b/Makefile @@ -22,7 +22,7 @@ # VERSION = 2010 -PATCHLEVEL = 09 +PATCHLEVEL = 12 SUBLEVEL = EXTRAVERSION = ifneq "$(SUBLEVEL)" "" @@ -180,96 +180,96 @@ endif OBJS := $(addprefix $(obj),$(OBJS)) -LIBS = lib/libgeneric.a -LIBS += lib/lzma/liblzma.a -LIBS += lib/lzo/liblzo.a +LIBS = lib/libgeneric.o +LIBS += lib/lzma/liblzma.o +LIBS += lib/lzo/liblzo.o LIBS += $(shell if [ -f board/$(VENDOR)/common/Makefile ]; then echo \ - "board/$(VENDOR)/common/lib$(VENDOR).a"; fi) -LIBS += $(CPUDIR)/lib$(CPU).a + "board/$(VENDOR)/common/lib$(VENDOR).o"; fi) +LIBS += $(CPUDIR)/lib$(CPU).o ifdef SOC -LIBS += $(CPUDIR)/$(SOC)/lib$(SOC).a +LIBS += $(CPUDIR)/$(SOC)/lib$(SOC).o endif ifeq ($(CPU),ixp) -LIBS += arch/arm/cpu/ixp/npe/libnpe.a +LIBS += arch/arm/cpu/ixp/npe/libnpe.o endif -LIBS += arch/$(ARCH)/lib/lib$(ARCH).a -LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a \ - fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a fs/yaffs2/libyaffs2.a \ - fs/ubifs/libubifs.a -LIBS += net/libnet.a -LIBS += disk/libdisk.a -LIBS += drivers/bios_emulator/libatibiosemu.a -LIBS += drivers/block/libblock.a -LIBS += drivers/dma/libdma.a -LIBS += drivers/fpga/libfpga.a -LIBS += drivers/gpio/libgpio.a -LIBS += drivers/hwmon/libhwmon.a -LIBS += drivers/i2c/libi2c.a -LIBS += drivers/input/libinput.a -LIBS += drivers/misc/libmisc.a -LIBS += drivers/mmc/libmmc.a -LIBS += drivers/mtd/libmtd.a -LIBS += drivers/mtd/nand/libnand.a -LIBS += drivers/mtd/onenand/libonenand.a -LIBS += drivers/mtd/ubi/libubi.a -LIBS += drivers/mtd/spi/libspi_flash.a -LIBS += drivers/net/libnet.a -LIBS += drivers/net/phy/libphy.a -LIBS += drivers/pci/libpci.a -LIBS += drivers/pcmcia/libpcmcia.a -LIBS += drivers/power/libpower.a -LIBS += drivers/spi/libspi.a +LIBS += arch/$(ARCH)/lib/lib$(ARCH).o +LIBS += fs/cramfs/libcramfs.o fs/fat/libfat.o fs/fdos/libfdos.o fs/jffs2/libjffs2.o \ + fs/reiserfs/libreiserfs.o fs/ext2/libext2fs.o fs/yaffs2/libyaffs2.o \ + fs/ubifs/libubifs.o +LIBS += net/libnet.o +LIBS += disk/libdisk.o +LIBS += drivers/bios_emulator/libatibiosemu.o +LIBS += drivers/block/libblock.o +LIBS += drivers/dma/libdma.o +LIBS += drivers/fpga/libfpga.o +LIBS += drivers/gpio/libgpio.o +LIBS += drivers/hwmon/libhwmon.o +LIBS += drivers/i2c/libi2c.o +LIBS += drivers/input/libinput.o +LIBS += drivers/misc/libmisc.o +LIBS += drivers/mmc/libmmc.o +LIBS += drivers/mtd/libmtd.o +LIBS += drivers/mtd/nand/libnand.o +LIBS += drivers/mtd/onenand/libonenand.o +LIBS += drivers/mtd/ubi/libubi.o +LIBS += drivers/mtd/spi/libspi_flash.o +LIBS += drivers/net/libnet.o +LIBS += drivers/net/phy/libphy.o +LIBS += drivers/pci/libpci.o +LIBS += drivers/pcmcia/libpcmcia.o +LIBS += drivers/power/libpower.o +LIBS += drivers/spi/libspi.o ifeq ($(CPU),mpc83xx) -LIBS += drivers/qe/qe.a -LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.a +LIBS += drivers/qe/libqe.o +LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.o endif ifeq ($(CPU),mpc85xx) -LIBS += drivers/qe/qe.a -LIBS += arch/powerpc/cpu/mpc8xxx/ddr/libddr.a -LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.a +LIBS += drivers/qe/libqe.o +LIBS += arch/powerpc/cpu/mpc8xxx/ddr/libddr.o +LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.o endif ifeq ($(CPU),mpc86xx) -LIBS += arch/powerpc/cpu/mpc8xxx/ddr/libddr.a -LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.a +LIBS += arch/powerpc/cpu/mpc8xxx/ddr/libddr.o +LIBS += arch/powerpc/cpu/mpc8xxx/lib8xxx.o endif -LIBS += drivers/rtc/librtc.a -LIBS += drivers/serial/libserial.a -LIBS += drivers/twserial/libtws.a -LIBS += drivers/usb/gadget/libusb_gadget.a -LIBS += drivers/usb/host/libusb_host.a -LIBS += drivers/usb/musb/libusb_musb.a -LIBS += drivers/usb/phy/libusb_phy.a -LIBS += drivers/video/libvideo.a -LIBS += drivers/watchdog/libwatchdog.a -LIBS += common/libcommon.a -LIBS += lib/libfdt/libfdt.a -LIBS += api/libapi.a -LIBS += post/libpost.a +LIBS += drivers/rtc/librtc.o +LIBS += drivers/serial/libserial.o +LIBS += drivers/twserial/libtws.o +LIBS += drivers/usb/gadget/libusb_gadget.o +LIBS += drivers/usb/host/libusb_host.o +LIBS += drivers/usb/musb/libusb_musb.o +LIBS += drivers/usb/phy/libusb_phy.o +LIBS += drivers/video/libvideo.o +LIBS += drivers/watchdog/libwatchdog.o +LIBS += common/libcommon.o +LIBS += lib/libfdt/libfdt.o +LIBS += api/libapi.o +LIBS += post/libpost.o ifeq ($(SOC),omap3) -LIBS += $(CPUDIR)/omap-common/libomap-common.a +LIBS += $(CPUDIR)/omap-common/libomap-common.o endif ifeq ($(SOC),omap4) -LIBS += $(CPUDIR)/omap-common/libomap-common.a +LIBS += $(CPUDIR)/omap-common/libomap-common.o endif ifeq ($(SOC),s5pc1xx) -LIBS += $(CPUDIR)/s5p-common/libs5p-common.a +LIBS += $(CPUDIR)/s5p-common/libs5p-common.o endif ifeq ($(SOC),s5pc2xx) -LIBS += $(CPUDIR)/s5p-common/libs5p-common.a +LIBS += $(CPUDIR)/s5p-common/libs5p-common.o endif -LIBS := $(addprefix $(obj),$(LIBS)) +LIBS := $(addprefix $(obj),$(sort $(LIBS))) .PHONY : $(LIBS) $(TIMESTAMP_FILE) $(VERSION_FILE) -LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).a +LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).o LIBBOARD := $(addprefix $(obj),$(LIBBOARD)) # Add GCC lib ifdef USE_PRIVATE_LIBGCC ifeq ("$(USE_PRIVATE_LIBGCC)", "yes") -PLATFORM_LIBGCC = -L $(OBJTREE)/arch/$(ARCH)/lib -lgcc +PLATFORM_LIBGCC = $(OBJTREE)/arch/$(ARCH)/lib/libgcc.o else PLATFORM_LIBGCC = -L $(USE_PRIVATE_LIBGCC) -lgcc endif @@ -357,7 +357,7 @@ $(obj)u-boot.imx: $(obj)u-boot.bin -e $(CONFIG_SYS_TEXT_BASE) -d $< $@ $(obj)u-boot.kwb: $(obj)u-boot.bin - $(obj)tools/mkimage -n $(KWD_CONFIG) -T kwbimage \ + $(obj)tools/mkimage -n $(CONFIG_SYS_KWD_CONFIG) -T kwbimage \ -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -d $< $@ $(obj)u-boot.sha1: $(obj)u-boot.bin @@ -369,10 +369,11 @@ $(obj)u-boot.dis: $(obj)u-boot GEN_UBOOT = \ UNDEF_SYM=`$(OBJDUMP) -x $(LIBBOARD) $(LIBS) | \ sed -n -e 's/.*\($(SYM_PREFIX)__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\ - cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \ + cd $(LNDIR) && $(LD) $(LDFLAGS) $(LDFLAGS_$(@F)) $$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.lds +$(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) | \ @@ -400,7 +401,7 @@ $(LDSCRIPT): depend $(obj)u-boot.lds: $(LDSCRIPT) $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@ -$(NAND_SPL): $(TIMESTAMP_FILE) $(VERSION_FILE) $(obj)include/autoconf.mk +$(NAND_SPL): $(TIMESTAMP_FILE) $(VERSION_FILE) depend $(MAKE) -C nand_spl/board/$(BOARDDIR) all $(U_BOOT_NAND): $(NAND_SPL) $(obj)u-boot.bin @@ -426,7 +427,9 @@ updater: # Explicitly make _depend in subdirs containing multiple targets to prevent # parallel sub-makes creating .depend files simultaneously. -depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) $(obj)include/autoconf.mk +depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) \ + $(obj)include/autoconf.mk \ + $(obj)include/generated/generic-asm-offsets.h for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \ $(MAKE) -C $$dir _depend ; done @@ -473,6 +476,18 @@ $(obj)include/autoconf.mk: $(obj)include/config.h sed -n -f tools/scripts/define2mk.sed > $@.tmp && \ mv $@.tmp $@ +$(obj)include/generated/generic-asm-offsets.h: $(obj)include/autoconf.mk.dep \ + $(obj)lib/asm-offsets.s + @$(XECHO) Generating $@ + tools/scripts/make-asm-offsets $(obj)lib/asm-offsets.s $@ + +$(obj)lib/asm-offsets.s: $(obj)include/autoconf.mk.dep \ + $(src)lib/asm-offsets.c + @mkdir -p $(obj)lib + $(CC) -DDO_DEPS_ONLY \ + $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \ + -o $@ $(src)lib/asm-offsets.c -c -S + ######################################################################### else # !config.mk all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \ @@ -510,8 +525,8 @@ unconfig: %_config:: unconfig @$(MKCONFIG) -A $(@:_config=) -sinclude .boards.depend -.boards.depend: boards.cfg +sinclude $(obj).boards.depend +$(obj).boards.depend: boards.cfg awk '(NF && $$1 !~ /^#/) { print $$1 ": " $$1 "_config; $$(MAKE)" }' $< > $@ # @@ -1052,7 +1067,6 @@ mx31pdk_nand_config : unconfig echo "#define CONFIG_NAND_U_BOOT" >> $(obj)include/config.h; \ else \ echo "#define CONFIG_SKIP_LOWLEVEL_INIT" >> $(obj)include/config.h; \ - echo "#define CONFIG_SKIP_RELOCATE_UBOOT" >> $(obj)include/config.h; \ fi @$(MKCONFIG) -n $@ -a mx31pdk arm arm1136 mx31pdk freescale mx31 @@ -1176,88 +1190,6 @@ NIOS2_GENERIC = nios2-generic $(NIOS2_GENERIC:%=%_config) : unconfig @$(MKCONFIG) $@ nios2 nios2 nios2-generic altera -#======================================================================== -# Blackfin -#======================================================================== - -bf527-ezkit-v2_config : unconfig - @$(MKCONFIG) -t BF527_EZKIT_REV_2_1 \ - bf527-ezkit blackfin blackfin bf527-ezkit - -#======================================================================== -# SH3 (SuperH) -#======================================================================== - -######################################################################### -## sh3 (Renesas SuperH) -######################################################################### - -mpr2_config: unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_MPR2 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh3 mpr2 - -ms7720se_config: unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_MS7720SE 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh3 ms7720se - -######################################################################### -## sh4 (Renesas SuperH) -######################################################################### - -MigoR_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_MIGO_R 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 MigoR renesas - -ms7750se_config: unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_MS7750SE 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 ms7750se - -ms7722se_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_MS7722SE 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 ms7722se - -r2dplus_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_R2DPLUS 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 r2dplus renesas - -r7780mp_config: unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_R7780MP 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 r7780mp renesas - -sh7763rdp_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_SH7763RDP 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 sh7763rdp renesas - -sh7785lcr_32bit_config \ -sh7785lcr_config : unconfig - @mkdir -p $(obj)include - @mkdir -p $(obj)board/renesas/sh7785lcr - @echo "#define CONFIG_SH7785LCR 1" > $(obj)include/config.h - @if [ "$(findstring 32bit, $@)" ] ; then \ - echo "#define CONFIG_SH_32BIT 1" >> $(obj)include/config.h ; \ - echo "CONFIG_SYS_TEXT_BASE = 0x8ff80000" > \ - $(obj)board/renesas/sh7785lcr/config.tmp ; \ - fi - @$(MKCONFIG) -n $@ -a sh7785lcr sh sh4 sh7785lcr renesas - -ap325rxa_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_AP325RXA 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 ap325rxa renesas - -espt_config : unconfig - @mkdir -p $(obj)include - @echo "#define CONFIG_ESPT 1" > $(obj)include/config.h - @$(MKCONFIG) -a $@ sh sh4 espt - ######################################################################### ######################################################################### @@ -1288,6 +1220,7 @@ clean: $(obj)u-boot.lds \ $(obj)arch/blackfin/cpu/bootrom-asm-offsets.[chs] @rm -f $(obj)include/bmp_logo.h + @rm -f $(obj)lib/asm-offsets.s @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.map} @rm -f $(ONENAND_BIN) @@ -1310,7 +1243,8 @@ clobber: clean @rm -f $(obj)u-boot.imx @rm -f $(obj)tools/{env/crc32.c,inca-swap-bytes} @rm -f $(obj)arch/powerpc/cpu/mpc824x/bedbug_603e.c - @rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm + @rm -fr $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm + @rm -fr $(obj)include/generated @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -name "*" -type l -print | xargs rm -f @[ ! -d $(obj)onenand_ipl ] || find $(obj)onenand_ipl -name "*" -type l -print | xargs rm -f