~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/s390/boot/Makefile

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/s390/boot/Makefile (Architecture alpha) and /arch/mips/boot/Makefile (Architecture mips)


  1 # SPDX-License-Identifier: GPL-2.0             << 
  2 #                                                   1 #
  3 # Makefile for the linux s390-specific parts o !!   2 # This file is subject to the terms and conditions of the GNU General Public
                                                   >>   3 # License.  See the file "COPYING" in the main directory of this archive
                                                   >>   4 # for more details.
                                                   >>   5 #
                                                   >>   6 # Copyright (C) 1995, 1998, 2001, 2002 by Ralf Baechle
                                                   >>   7 # Copyright (C) 2004  Maciej W. Rozycki
  4 #                                                   8 #
  5                                                << 
  6 # Tooling runtimes are unavailable and cannot  << 
  7 KCOV_INSTRUMENT := n                           << 
  8 GCOV_PROFILE := n                              << 
  9 UBSAN_SANITIZE := n                            << 
 10 KASAN_SANITIZE := n                            << 
 11 KCSAN_SANITIZE := n                            << 
 12 KMSAN_SANITIZE := n                            << 
 13                                                << 
 14 KBUILD_AFLAGS := $(KBUILD_AFLAGS_DECOMPRESSOR) << 
 15 KBUILD_CFLAGS := $(KBUILD_CFLAGS_DECOMPRESSOR) << 
 16                                                     9 
 17 #                                                  10 #
 18 # Use minimum architecture for als.c to be abl !!  11 # Some DECstations need all possible sections of an ECOFF executable
 19 # message if the kernel is started on a machin << 
 20 #                                                  12 #
 21 ifndef CONFIG_CC_IS_CLANG                      !!  13 ifdef CONFIG_MACH_DECSTATION
 22 CC_FLAGS_MARCH_MINIMUM := -march=z900          !!  14   e2eflag := -a
 23 else                                           << 
 24 CC_FLAGS_MARCH_MINIMUM := -march=z10           << 
 25 endif                                              15 endif
 26                                                    16 
 27 ifneq ($(CC_FLAGS_MARCH),$(CC_FLAGS_MARCH_MINI !!  17 #
 28 AFLAGS_REMOVE_head.o            += $(CC_FLAGS_ !!  18 # Drop some uninteresting sections in the kernel.
 29 AFLAGS_head.o                   += $(CC_FLAGS_ !!  19 # This is only relevant for ELF kernels but doesn't hurt a.out
 30 AFLAGS_REMOVE_mem.o             += $(CC_FLAGS_ !!  20 #
 31 AFLAGS_mem.o                    += $(CC_FLAGS_ !!  21 drop-sections := .reginfo .mdebug .comment .note .pdr .options .MIPS.options
 32 CFLAGS_REMOVE_als.o             += $(CC_FLAGS_ !!  22 strip-flags   := $(addprefix --remove-section=,$(drop-sections))
 33 CFLAGS_als.o                    += $(CC_FLAGS_ !!  23 
 34 CFLAGS_REMOVE_sclp_early_core.o += $(CC_FLAGS_ !!  24 hostprogs := elf2ecoff
 35 CFLAGS_sclp_early_core.o        += $(CC_FLAGS_ << 
 36 endif                                          << 
 37                                                    25 
 38 CFLAGS_sclp_early_core.o += -I$(srctree)/drive !!  26 suffix-y                        := bin
                                                   >>  27 suffix-$(CONFIG_KERNEL_BZIP2)   := bz2
                                                   >>  28 suffix-$(CONFIG_KERNEL_GZIP)    := gz
                                                   >>  29 suffix-$(CONFIG_KERNEL_LZMA)    := lzma
                                                   >>  30 suffix-$(CONFIG_KERNEL_LZO)     := lzo
                                                   >>  31 
                                                   >>  32 targets := vmlinux.ecoff
                                                   >>  33 quiet_cmd_ecoff = ECOFF   $@
                                                   >>  34       cmd_ecoff = $(obj)/elf2ecoff $(VMLINUX) $@ $(e2eflag)
                                                   >>  35 $(obj)/vmlinux.ecoff: $(obj)/elf2ecoff $(VMLINUX) FORCE
                                                   >>  36         $(call if_changed,ecoff)
                                                   >>  37 
                                                   >>  38 targets += vmlinux.bin
                                                   >>  39 quiet_cmd_bin = OBJCOPY $@
                                                   >>  40       cmd_bin = $(OBJCOPY) -O binary $(strip-flags) $(VMLINUX) $@
                                                   >>  41 $(obj)/vmlinux.bin: $(VMLINUX) FORCE
                                                   >>  42         $(call if_changed,bin)
                                                   >>  43 
                                                   >>  44 targets += vmlinux.srec
                                                   >>  45 quiet_cmd_srec = OBJCOPY $@
                                                   >>  46       cmd_srec = $(OBJCOPY) -S -O srec $(strip-flags) $(VMLINUX) $@
                                                   >>  47 $(obj)/vmlinux.srec: $(VMLINUX) FORCE
                                                   >>  48         $(call if_changed,srec)
 39                                                    49 
 40 obj-y   := head.o als.o startup.o physmem_info !!  50 UIMAGE_LOADADDR  = $(VMLINUX_LOAD_ADDRESS)
 41 obj-y   += string.o ebcdic.o sclp_early_core.o !!  51 UIMAGE_ENTRYADDR = $(VMLINUX_ENTRY_ADDRESS)
 42 obj-y   += version.o pgm_check_info.o ctype.o  !!  52 
 43 obj-$(CONFIG_RANDOMIZE_BASE)    += kaslr.o     !!  53 #
 44 obj-y   += $(if $(CONFIG_KERNEL_UNCOMPRESSED), !!  54 # Compressed vmlinux images
 45 obj-$(CONFIG_KERNEL_ZSTD) += clz_ctz.o         !!  55 #
 46 obj-$(CONFIG_KMSAN) += kmsan.o                 !!  56 
 47 obj-all := $(obj-y) piggy.o syms.o             !!  57 extra-y += vmlinux.bin.bz2
 48                                                !!  58 extra-y += vmlinux.bin.gz
 49 targets := bzImage section_cmp.boot.data secti !!  59 extra-y += vmlinux.bin.lzma
 50 targets += vmlinux.lds vmlinux vmlinux.bin vml !!  60 extra-y += vmlinux.bin.lzo
 51 targets += vmlinux.bin.xz vmlinux.bin.lzma vml !!  61 
 52 targets += vmlinux.bin.zst info.bin syms.bin v !!  62 $(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin FORCE
 53 targets += relocs.S                            !!  63         $(call if_changed,bzip2)
 54                                                << 
 55 OBJECTS := $(addprefix $(obj)/,$(obj-y))       << 
 56 OBJECTS_ALL := $(addprefix $(obj)/,$(obj-all)) << 
 57                                                << 
 58 clean-files += vmlinux.map                     << 
 59                                                << 
 60 quiet_cmd_section_cmp = SECTCMP $*             << 
 61 define cmd_section_cmp                         << 
 62         s1=`$(OBJDUMP) -t "$<" | grep "\s$*\s\ << 
 63                 sed -n "/0000000000000000/! s/ << 
 64         s2=`$(OBJDUMP) -t "$(word 2,$^)" | gre << 
 65                 sed -n "/0000000000000000/! s/ << 
 66         if [ "$$s1" != "$$s2" ]; then \        << 
 67                 echo "error: section $* differ << 
 68                 exit 1; \                      << 
 69         fi; \                                  << 
 70         touch $@                               << 
 71 endef                                          << 
 72                                                << 
 73 $(obj)/bzImage: $(obj)/vmlinux $(obj)/section_ << 
 74         $(call if_changed,objcopy)             << 
 75                                                << 
 76 $(obj)/section_cmp%: vmlinux $(obj)/vmlinux FO << 
 77         $(call if_changed,section_cmp)         << 
 78                                                << 
 79 LDFLAGS_vmlinux-$(CONFIG_LD_ORPHAN_WARN) := -- << 
 80 LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-y) --ofor << 
 81 $(obj)/vmlinux: $(obj)/vmlinux.lds $(OBJECTS_A << 
 82         $(call if_changed,ld)                  << 
 83                                                << 
 84 LDFLAGS_vmlinux.syms := $(LDFLAGS_vmlinux-y) - << 
 85 $(obj)/vmlinux.syms: $(obj)/vmlinux.lds $(OBJE << 
 86         $(call if_changed,ld)                  << 
 87                                                << 
 88 quiet_cmd_dumpsyms = DUMPSYMS $<               << 
 89 define cmd_dumpsyms                            << 
 90         $(NM) -n -S --format=bsd "$<" | sed -n << 
 91 endef                                          << 
 92                                                << 
 93 $(obj)/syms.bin: $(obj)/vmlinux.syms FORCE     << 
 94         $(call if_changed,dumpsyms)            << 
 95                                                << 
 96 OBJCOPYFLAGS_syms.o := -I binary -O elf64-s390 << 
 97 $(obj)/syms.o: $(obj)/syms.bin FORCE           << 
 98         $(call if_changed,objcopy)             << 
 99                                                << 
100 OBJCOPYFLAGS_info.bin := -O binary --only-sect << 
101 $(obj)/info.bin: vmlinux FORCE                 << 
102         $(call if_changed,objcopy)             << 
103                                                << 
104 OBJCOPYFLAGS_info.o := -I binary -O elf64-s390 << 
105 $(obj)/info.o: $(obj)/info.bin FORCE           << 
106         $(call if_changed,objcopy)             << 
107                                                << 
108 OBJCOPYFLAGS_vmlinux.bin := -O binary --remove << 
109 $(obj)/vmlinux.bin: vmlinux FORCE              << 
110         $(call if_changed,objcopy)             << 
111                                                << 
112 CMD_RELOCS=arch/s390/tools/relocs              << 
113 quiet_cmd_relocs = RELOCS  $@                  << 
114         cmd_relocs = $(CMD_RELOCS) $< > $@     << 
115 $(obj)/relocs.S: vmlinux FORCE                 << 
116         $(call if_changed,relocs)              << 
117                                                << 
118 suffix-$(CONFIG_KERNEL_GZIP)  := .gz           << 
119 suffix-$(CONFIG_KERNEL_BZIP2) := .bz2          << 
120 suffix-$(CONFIG_KERNEL_LZ4)  := .lz4           << 
121 suffix-$(CONFIG_KERNEL_LZMA)  := .lzma         << 
122 suffix-$(CONFIG_KERNEL_LZO)  := .lzo           << 
123 suffix-$(CONFIG_KERNEL_XZ)  := .xz             << 
124 suffix-$(CONFIG_KERNEL_ZSTD)  := .zst          << 
125                                                    64 
126 $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORC     65 $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE
127         $(call if_changed,gzip)                    66         $(call if_changed,gzip)
128 $(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin FOR !!  67 
129         $(call if_changed,bzip2_with_size)     << 
130 $(obj)/vmlinux.bin.lz4: $(obj)/vmlinux.bin FOR << 
131         $(call if_changed,lz4_with_size)       << 
132 $(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FO     68 $(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE
133         $(call if_changed,lzma_with_size)      !!  69         $(call if_changed,lzma)
                                                   >>  70 
134 $(obj)/vmlinux.bin.lzo: $(obj)/vmlinux.bin FOR     71 $(obj)/vmlinux.bin.lzo: $(obj)/vmlinux.bin FORCE
135         $(call if_changed,lzo_with_size)       !!  72         $(call if_changed,lzo)
136 $(obj)/vmlinux.bin.xz: $(obj)/vmlinux.bin FORC !!  73 
137         $(call if_changed,xzkern_with_size)    !!  74 #
138 $(obj)/vmlinux.bin.zst: $(obj)/vmlinux.bin FOR !!  75 # Compressed u-boot images
139         $(call if_changed,zstd22_with_size)    !!  76 #
140                                                !!  77 
141 OBJCOPYFLAGS_piggy.o := -I binary -O elf64-s39 !!  78 targets += uImage
142 $(obj)/piggy.o: $(obj)/vmlinux.bin$(suffix-y)  !!  79 targets += uImage.bin
143         $(call if_changed,objcopy)             !!  80 targets += uImage.bz2
                                                   >>  81 targets += uImage.gz
                                                   >>  82 targets += uImage.lzma
                                                   >>  83 targets += uImage.lzo
                                                   >>  84 
                                                   >>  85 $(obj)/uImage.bin: $(obj)/vmlinux.bin FORCE
                                                   >>  86         $(call if_changed,uimage,none)
                                                   >>  87 
                                                   >>  88 $(obj)/uImage.bz2: $(obj)/vmlinux.bin.bz2 FORCE
                                                   >>  89         $(call if_changed,uimage,bzip2)
                                                   >>  90 
                                                   >>  91 $(obj)/uImage.gz: $(obj)/vmlinux.bin.gz FORCE
                                                   >>  92         $(call if_changed,uimage,gzip)
                                                   >>  93 
                                                   >>  94 $(obj)/uImage.lzma: $(obj)/vmlinux.bin.lzma FORCE
                                                   >>  95         $(call if_changed,uimage,lzma)
                                                   >>  96 
                                                   >>  97 $(obj)/uImage.lzo: $(obj)/vmlinux.bin.lzo FORCE
                                                   >>  98         $(call if_changed,uimage,lzo)
                                                   >>  99 
                                                   >> 100 $(obj)/uImage: $(obj)/uImage.$(suffix-y)
                                                   >> 101         @ln -sf $(notdir $<) $@
                                                   >> 102         @echo '  Image $@ is ready'
                                                   >> 103 
                                                   >> 104 #
                                                   >> 105 # Flattened Image Tree (.itb) images
                                                   >> 106 #
                                                   >> 107 
                                                   >> 108 ifeq ($(ADDR_BITS),32)
                                                   >> 109 itb_addr_cells = 1
                                                   >> 110 endif
                                                   >> 111 ifeq ($(ADDR_BITS),64)
                                                   >> 112 itb_addr_cells = 2
                                                   >> 113 endif
                                                   >> 114 
                                                   >> 115 targets += vmlinux.its.S
                                                   >> 116 
                                                   >> 117 quiet_cmd_its_cat = CAT     $@
                                                   >> 118       cmd_its_cat = cat $(real-prereqs) >$@
                                                   >> 119 
                                                   >> 120 $(obj)/vmlinux.its.S: $(addprefix $(srctree)/arch/mips/$(PLATFORM)/,$(ITS_INPUTS)) FORCE
                                                   >> 121         $(call if_changed,its_cat)
                                                   >> 122 
                                                   >> 123 targets += vmlinux.its
                                                   >> 124 targets += vmlinux.gz.its
                                                   >> 125 targets += vmlinux.bz2.its
                                                   >> 126 targets += vmlinux.lzma.its
                                                   >> 127 targets += vmlinux.lzo.its
                                                   >> 128 
                                                   >> 129 quiet_cmd_cpp_its_S = ITS     $@
                                                   >> 130       cmd_cpp_its_S = $(CPP) -P -C -o $@ $< \
                                                   >> 131                         -DKERNEL_NAME="\"Linux $(KERNELRELEASE)\"" \
                                                   >> 132                         -DVMLINUX_BINARY="\"$(3)\"" \
                                                   >> 133                         -DVMLINUX_COMPRESSION="\"$(2)\"" \
                                                   >> 134                         -DVMLINUX_LOAD_ADDRESS=$(VMLINUX_LOAD_ADDRESS) \
                                                   >> 135                         -DVMLINUX_ENTRY_ADDRESS=$(VMLINUX_ENTRY_ADDRESS) \
                                                   >> 136                         -DADDR_BITS=$(ADDR_BITS) \
                                                   >> 137                         -DADDR_CELLS=$(itb_addr_cells)
                                                   >> 138 
                                                   >> 139 $(obj)/vmlinux.its: $(obj)/vmlinux.its.S $(VMLINUX) FORCE
                                                   >> 140         $(call if_changed,cpp_its_S,none,vmlinux.bin)
                                                   >> 141 
                                                   >> 142 $(obj)/vmlinux.gz.its: $(obj)/vmlinux.its.S $(VMLINUX) FORCE
                                                   >> 143         $(call if_changed,cpp_its_S,gzip,vmlinux.bin.gz)
                                                   >> 144 
                                                   >> 145 $(obj)/vmlinux.bz2.its: $(obj)/vmlinux.its.S $(VMLINUX)  FORCE
                                                   >> 146         $(call if_changed,cpp_its_S,bzip2,vmlinux.bin.bz2)
                                                   >> 147 
                                                   >> 148 $(obj)/vmlinux.lzma.its: $(obj)/vmlinux.its.S $(VMLINUX) FORCE
                                                   >> 149         $(call if_changed,cpp_its_S,lzma,vmlinux.bin.lzma)
                                                   >> 150 
                                                   >> 151 $(obj)/vmlinux.lzo.its: $(obj)/vmlinux.its.S $(VMLINUX) FORCE
                                                   >> 152         $(call if_changed,cpp_its_S,lzo,vmlinux.bin.lzo)
                                                   >> 153 
                                                   >> 154 targets += vmlinux.itb
                                                   >> 155 targets += vmlinux.gz.itb
                                                   >> 156 targets += vmlinux.bz2.itb
                                                   >> 157 targets += vmlinux.lzma.itb
                                                   >> 158 targets += vmlinux.lzo.itb
                                                   >> 159 
                                                   >> 160 quiet_cmd_itb-image = ITB     $@
                                                   >> 161       cmd_itb-image = \
                                                   >> 162                 env PATH="$(objtree)/scripts/dtc:$(PATH)" \
                                                   >> 163                 $(BASH) $(MKIMAGE) \
                                                   >> 164                 -D "-I dts -O dtb -p 500 \
                                                   >> 165                         --include $(objtree)/arch/mips \
                                                   >> 166                         --warning no-unit_address_vs_reg" \
                                                   >> 167                 -f $(2) $@
                                                   >> 168 
                                                   >> 169 $(obj)/vmlinux.itb: $(obj)/vmlinux.its $(obj)/vmlinux.bin FORCE
                                                   >> 170         $(call if_changed,itb-image,$<)
                                                   >> 171 
                                                   >> 172 $(obj)/vmlinux.%.itb: $(obj)/vmlinux.%.its $(obj)/vmlinux.bin.% FORCE
                                                   >> 173         $(call if_changed,itb-image,$<)
                                                   >> 174 
                                                   >> 175 # for cleaning
                                                   >> 176 subdir- += compressed tools
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php