123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #
- # linux/arch/unicore32/boot/compressed/Makefile
- #
- # create a compressed vmlinuz image from the original vmlinux
- #
- # This file is subject to the terms and conditions of the GNU General Public
- # License. See the file "COPYING" in the main directory of this archive
- # for more details.
- #
- # Copyright (C) 2001~2010 GUAN Xue-tao
- #
- ccflags-y := -fpic -fno-builtin
- asflags-y := -Wa,-march=all
- OBJS := misc.o
- # font.c and font.o
- CFLAGS_font.o := -Dstatic=
- $(obj)/font.c: $(srctree)/drivers/video/console/font_8x8.c
- $(call cmd,shipped)
- # piggy.S and piggy.o
- suffix_$(CONFIG_KERNEL_GZIP) := gzip
- suffix_$(CONFIG_KERNEL_BZIP2) := bz2
- suffix_$(CONFIG_KERNEL_LZO) := lzo
- suffix_$(CONFIG_KERNEL_LZMA) := lzma
- $(obj)/piggy.$(suffix_y): $(obj)/../Image FORCE
- $(call if_changed,$(suffix_y))
- SEDFLAGS_piggy = s/DECOMP_SUFFIX/$(suffix_y)/
- $(obj)/piggy.S: $(obj)/piggy.S.in
- @sed "$(SEDFLAGS_piggy)" < $< > $@
- $(obj)/piggy.o: $(obj)/piggy.$(suffix_y) $(obj)/piggy.S FORCE
- targets := vmlinux vmlinux.lds font.o font.c head.o misc.o \
- piggy.$(suffix_y) piggy.o piggy.S \
- # Make sure files are removed during clean
- extra-y += piggy.gzip piggy.bz2 piggy.lzo piggy.lzma
- # ?
- LDFLAGS_vmlinux += -p
- # Report unresolved symbol references
- LDFLAGS_vmlinux += --no-undefined
- # Delete all temporary local symbols
- LDFLAGS_vmlinux += -X
- # Next argument is a linker script
- LDFLAGS_vmlinux += -T
- # For uidivmod
- $(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/head.o $(obj)/piggy.o \
- $(obj)/misc.o FORCE
- $(call if_changed,ld)
- @:
- # We now have a PIC decompressor implementation. Decompressors running
- # from RAM should not define ZTEXTADDR. Decompressors running directly
- # from ROM or Flash must define ZTEXTADDR (preferably via the config)
- ZTEXTADDR := 0x03000000
- ZBSSADDR := ALIGN(4)
- SEDFLAGS_lds = s/TEXT_START/$(ZTEXTADDR)/;s/BSS_START/$(ZBSSADDR)/
- $(obj)/vmlinux.lds: $(obj)/vmlinux.lds.in arch/unicore32/boot/Makefile $(KCONFIG_CONFIG)
- @sed "$(SEDFLAGS_lds)" < $< > $@
|