2 # linux/arch/arm/boot/compressed/Makefile
4 # create a compressed vmlinuz image from the original vmlinux
9 FONTC
= drivers
/video
/console
/font_acorn_8x8.c
11 FONT
= $(addprefix ..
/..
/..
/..
/drivers
/video
/console
/, font_acorn_8x8.o
)
14 # Architecture dependencies
16 ifeq ($(CONFIG_ARCH_ACORN
),y
)
17 OBJS
+= ll_char_wr.o
$(FONT
)
20 ifeq ($(CONFIG_ARCH_SHARK
),y
)
21 OBJS
+= head-shark.o ofw-shark.o
24 ifeq ($(CONFIG_ARCH_L7200
),y
)
28 ifeq ($(CONFIG_ARCH_CLPS7500
),y
)
29 HEAD
= head-clps7500.o
32 ifeq ($(CONFIG_ARCH_P720T
),y
)
33 # Borrow this code from SA1100
37 ifeq ($(CONFIG_ARCH_SA1100
),y
)
41 ifeq ($(CONFIG_ARCH_S3C44B0
),y
)
45 ifeq ($(CONFIG_ARCH_P2001
),y
)
49 ifeq ($(CONFIG_ARCH_ESPD_4510B
),y
)
50 HEAD
= head-espd_4510b.o
52 ifeq ($(CONFIG_CPU_XSCALE
),y
)
56 ifeq ($(CONFIG_PXA_SHARPSL
),y
)
57 OBJS
+= head-sharpsl.o
60 ifeq ($(CONFIG_ARCH_KS8695
),y
)
64 ifeq ($(CONFIG_ARCH_AT91RM9200
),y
)
65 OBJS
+= head-at91rm9200.o
68 ifeq ($(CONFIG_CPU_BIG_ENDIAN
),y
)
69 ifeq ($(CONFIG_CPU_CP15
),y
)
72 # The endian should be set by h/w design.
77 # We now have a PIC decompressor implementation. Decompressors running
78 # from RAM should not define ZTEXTADDR. Decompressors running directly
79 # from ROM or Flash must define ZTEXTADDR (preferably via the config)
80 # FIXME: Previous assignment to ztextaddr-y is lost here. See SHARK
81 ifeq ($(CONFIG_ZBOOT_ROM
),y
)
82 ZTEXTADDR
:= $(CONFIG_ZBOOT_ROM_TEXT
)
83 ZBSSADDR
:= $(CONFIG_ZBOOT_ROM_BSS
)
89 SEDFLAGS
= s
/TEXT_START
/$(ZTEXTADDR
)/;s
/LOAD_ADDR
/$(ZRELADDR
)/;s
/BSS_START
/$(ZBSSADDR
)/
91 targets
:= vmlinux vmlinux.lds piggy.gz piggy.o
$(FONT
) \
96 # Supply ZRELADDR, INITRD_PHYS and PARAMS_PHYS to the decompressor via
97 # linker symbols. We only define initrd_phys and params_phys if the
98 # machine class defined the corresponding makefile variable.
99 LDFLAGS_vmlinux
:= --defsym zreladdr
=$(ZRELADDR
)
100 ifneq ($(INITRD_PHYS
),)
101 LDFLAGS_vmlinux
+= --defsym initrd_phys
=$(INITRD_PHYS
)
103 ifneq ($(PARAMS_PHYS
),)
104 LDFLAGS_vmlinux
+= --defsym params_phys
=$(PARAMS_PHYS
)
106 LDFLAGS_vmlinux
+= -p
--no-undefined
-X \
107 $(shell $(CC
) $(CFLAGS
) --print-libgcc-file-name
) -T
109 # Don't allow any static data in misc.o, which
110 # would otherwise mess up our GOT table
111 CFLAGS_misc.o
:= -Dstatic
=
113 $(obj
)/vmlinux
: $(obj
)/vmlinux.lds
$(obj
)/$(HEAD
) $(obj
)/piggy.o \
114 $(addprefix $(obj
)/, $(OBJS
)) FORCE
115 $(call if_changed
,ld)
118 $(obj
)/piggy.gz
: $(obj
)/..
/Image FORCE
119 $(call if_changed
,gzip
)
121 $(obj
)/piggy.o
: $(obj
)/piggy.gz FORCE
123 CFLAGS_font_acorn_8x8.o
:= -Dstatic
=
125 $(obj
)/vmlinux.lds
: $(obj
)/vmlinux.lds.in arch
/arm
/boot
/Makefile .config
126 @sed
"$(SEDFLAGS)" < $< > $@
128 $(obj
)/misc.o
: $(obj
)/misc.c
include/asm
/arch
/uncompress.h lib
/inflate.c