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

TOMOYO Linux Cross Reference
Linux/arch/s390/Makefile

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ 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.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/s390/Makefile (Version linux-6.12-rc7) and /arch/alpha/Makefile (Version linux-2.6.0)


  1 # SPDX-License-Identifier: GPL-2.0             << 
  2 #                                                   1 #
  3 # s390/Makefile                                !!   2 # alpha/Makefile
  4 #                                                   3 #
  5 # This file is included by the global makefile !!   4 # This file is subject to the terms and conditions of the GNU General Public
  6 # architecture-specific flags and dependencies !!   5 # License.  See the file "COPYING" in the main directory of this archive
                                                   >>   6 # for more details.
  7 #                                                   7 #
  8 # Copyright (C) 1994 by Linus Torvalds              8 # Copyright (C) 1994 by Linus Torvalds
  9 #                                                   9 #
 10                                                    10 
 11 LD_BFD          := elf64-s390                  !!  11 NM := $(NM) -B
 12 KBUILD_LDFLAGS  := -m elf64_s390               !!  12 
 13 KBUILD_AFLAGS_MODULE += -fPIC                  !!  13 LDFLAGS_vmlinux := -static -N #-relax
 14 KBUILD_CFLAGS_MODULE += -fPIC                  !!  14 cflags-y        := -pipe -mno-fp-regs -ffixed-8
 15 KBUILD_AFLAGS   += -m64                        !!  15 
 16 KBUILD_CFLAGS   += -m64                        !!  16 # Determine if we can use the BWX instructions with GAS.
 17 KBUILD_CFLAGS   += -fPIC                       !!  17 old_gas := $(shell if $(AS) --version 2>&1 | grep 'version 2.7' > /dev/null; then echo y; else echo n; fi)
 18 LDFLAGS_vmlinux := -no-pie --emit-relocs --dis !!  18 
 19 extra_tools     := relocs                      !!  19 ifeq ($(old_gas),y)
 20 aflags_dwarf    := -Wa,-gdwarf-2               !!  20 $(error The assembler '$(AS)' does not support the BWX instruction)
 21 KBUILD_AFLAGS_DECOMPRESSOR := $(CLANG_FLAGS) - << 
 22 ifndef CONFIG_AS_IS_LLVM                       << 
 23 KBUILD_AFLAGS_DECOMPRESSOR += $(if $(CONFIG_DE << 
 24 endif                                              21 endif
 25 KBUILD_CFLAGS_DECOMPRESSOR := $(CLANG_FLAGS) - << 
 26 KBUILD_CFLAGS_DECOMPRESSOR += -DDISABLE_BRANCH << 
 27 KBUILD_CFLAGS_DECOMPRESSOR += -D__DECOMPRESSOR << 
 28 KBUILD_CFLAGS_DECOMPRESSOR += -fno-delete-null << 
 29 KBUILD_CFLAGS_DECOMPRESSOR += -fno-asynchronou << 
 30 KBUILD_CFLAGS_DECOMPRESSOR += -ffreestanding   << 
 31 KBUILD_CFLAGS_DECOMPRESSOR += -fno-stack-prote << 
 32 KBUILD_CFLAGS_DECOMPRESSOR += -fPIE            << 
 33 KBUILD_CFLAGS_DECOMPRESSOR += $(call cc-disabl << 
 34 KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_DE << 
 35 KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_DE << 
 36 KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_CC << 
 37                                                << 
 38 UTS_MACHINE     := s390x                       << 
 39 STACK_SIZE      := $(if $(CONFIG_KASAN),65536, << 
 40 CHECKFLAGS      += -D__s390__ -D__s390x__      << 
 41                                                << 
 42 export LD_BFD                                  << 
 43                                                << 
 44 mflags-$(CONFIG_MARCH_Z10)    := -march=z10    << 
 45 mflags-$(CONFIG_MARCH_Z196)   := -march=z196   << 
 46 mflags-$(CONFIG_MARCH_ZEC12)  := -march=zEC12  << 
 47 mflags-$(CONFIG_MARCH_Z13)    := -march=z13    << 
 48 mflags-$(CONFIG_MARCH_Z14)    := -march=z14    << 
 49 mflags-$(CONFIG_MARCH_Z15)    := -march=z15    << 
 50 mflags-$(CONFIG_MARCH_Z16)    := -march=z16    << 
 51                                                << 
 52 export CC_FLAGS_MARCH := $(mflags-y)           << 
 53                                                << 
 54 aflags-y += $(mflags-y)                        << 
 55 cflags-y += $(mflags-y)                        << 
 56                                                << 
 57 cflags-$(CONFIG_MARCH_Z10_TUNE)         += -mt << 
 58 cflags-$(CONFIG_MARCH_Z196_TUNE)        += -mt << 
 59 cflags-$(CONFIG_MARCH_ZEC12_TUNE)       += -mt << 
 60 cflags-$(CONFIG_MARCH_Z13_TUNE)         += -mt << 
 61 cflags-$(CONFIG_MARCH_Z14_TUNE)         += -mt << 
 62 cflags-$(CONFIG_MARCH_Z15_TUNE)         += -mt << 
 63 cflags-$(CONFIG_MARCH_Z16_TUNE)         += -mt << 
 64                                                    22 
 65 cflags-y += -Wa,-I$(srctree)/arch/$(ARCH)/incl !!  23 # Determine if GCC understands the -mcpu= option.
                                                   >>  24 have_mcpu := $(shell if $(CC) -mcpu=ev5 -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo y; else echo n; fi)
 66                                                    25 
 67 #                                              !!  26 have_mcpu_pca56 := $(shell if $(CC) -mcpu=pca56 -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo y; else echo n; fi)
 68 # Prevent tail-call optimizations, to get clea << 
 69 #                                              << 
 70 cflags-$(CONFIG_FRAME_POINTER) += -fno-optimiz << 
 71                                                    27 
 72 KBUILD_AFLAGS_DECOMPRESSOR += $(aflags-y)      !!  28 have_mcpu_ev6 := $(shell if $(CC) -mcpu=ev6 -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo y; else echo n; fi)
 73 KBUILD_CFLAGS_DECOMPRESSOR += $(cflags-y)      << 
 74                                                    29 
 75 ifneq ($(call cc-option,-mstack-size=8192 -mst !!  30 have_mcpu_ev67 := $(shell if $(CC) -mcpu=ev67 -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo y; else echo n; fi)
 76   CC_FLAGS_CHECK_STACK := -mstack-size=$(STACK << 
 77   ifeq ($(call cc-option,-mstack-size=8192),)  << 
 78     CC_FLAGS_CHECK_STACK += -mstack-guard=$(CO << 
 79   endif                                        << 
 80   export CC_FLAGS_CHECK_STACK                  << 
 81   cflags-$(CONFIG_CHECK_STACK) += $(CC_FLAGS_C << 
 82 endif                                          << 
 83                                                    31 
 84 ifdef CONFIG_EXPOLINE                          !!  32 have_msmall_data := $(shell if $(CC) -msmall-data -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo y; else echo n; fi)
 85   ifdef CONFIG_EXPOLINE_EXTERN                 !!  33 
 86     CC_FLAGS_EXPOLINE := -mindirect-branch=thu !!  34 cflags-$(have_msmall_data) += -msmall-data
 87     CC_FLAGS_EXPOLINE += -mfunction-return=thu << 
 88   else                                         << 
 89     CC_FLAGS_EXPOLINE := -mindirect-branch=thu << 
 90     CC_FLAGS_EXPOLINE += -mfunction-return=thu << 
 91   endif                                        << 
 92   CC_FLAGS_EXPOLINE += -mindirect-branch-table << 
 93   export CC_FLAGS_EXPOLINE                     << 
 94   cflags-y += $(CC_FLAGS_EXPOLINE) -DCC_USING_ << 
 95   aflags-y += -DCC_USING_EXPOLINE              << 
 96 endif                                          << 
 97                                                    35 
 98 ifdef CONFIG_FUNCTION_TRACER                   !!  36 # Turn on the proper cpu optimizations.
 99   ifeq ($(call cc-option,-mfentry -mnop-mcount !!  37 ifeq ($(have_mcpu),y)
100     # make use of hotpatch feature if the comp !!  38   mcpu_done := n
101     cc_hotpatch := -mhotpatch=0,3              !!  39   # If GENERIC, make sure to turn off any instruction set extensions that
102     ifneq ($(call cc-option,$(cc_hotpatch)),)  !!  40   # the host compiler might have on by default.  Given that EV4 and EV5
103       CC_FLAGS_FTRACE := $(cc_hotpatch)        !!  41   # have the same instruction set, prefer EV5 because an EV5 schedule is
104       KBUILD_AFLAGS     += -DCC_USING_HOTPATCH !!  42   # more likely to keep an EV4 processor busy than vice-versa.
105       KBUILD_CFLAGS     += -DCC_USING_HOTPATCH !!  43   ifeq ($(CONFIG_ALPHA_GENERIC),y)
                                                   >>  44     mcpu := ev5
                                                   >>  45     mcpu_done := y
                                                   >>  46   endif
                                                   >>  47   ifeq ($(mcpu_done)$(CONFIG_ALPHA_SX164)$(have_mcpu_pca56),nyy)
                                                   >>  48     mcpu := pca56
                                                   >>  49     mcpu_done := y
                                                   >>  50   endif
                                                   >>  51   ifeq ($(mcpu_done)$(CONFIG_ALPHA_POLARIS)$(have_mcpu_pca56),nyy)
                                                   >>  52     mcpu := pca56
                                                   >>  53     mcpu_done := y
                                                   >>  54   endif
                                                   >>  55   ifeq ($(mcpu_done)$(CONFIG_ALPHA_EV4),ny)
                                                   >>  56     mcpu := ev4
                                                   >>  57     mcpu_done := y
                                                   >>  58   endif
                                                   >>  59   ifeq ($(mcpu_done)$(CONFIG_ALPHA_EV56),ny)
                                                   >>  60     mcpu := ev56
                                                   >>  61     mcpu_done := y
                                                   >>  62   endif
                                                   >>  63   ifeq ($(mcpu_done)$(CONFIG_ALPHA_EV5),ny)
                                                   >>  64     mcpu := ev5
                                                   >>  65     mcpu_done := y
                                                   >>  66   endif
                                                   >>  67   ifeq ($(mcpu_done)$(CONFIG_ALPHA_EV67)$(have_mcpu_ev67),nyy)
                                                   >>  68     mcpu := ev67
                                                   >>  69     mcpu_done := y
                                                   >>  70   endif
                                                   >>  71   ifeq ($(mcpu_done)$(CONFIG_ALPHA_EV6),ny)
                                                   >>  72     ifeq ($(have_mcpu_ev6),y)
                                                   >>  73       mcpu := ev6
                                                   >>  74     else
                                                   >>  75       ifeq ($(have_mcpu_pca56),y)
                                                   >>  76         mcpu := pca56
                                                   >>  77       else
                                                   >>  78         mcpu=ev56
                                                   >>  79       endif
106     endif                                          80     endif
                                                   >>  81     mcpu_done := y
107   endif                                            82   endif
                                                   >>  83   cflags-$(mcpu_done) += -mcpu=$(mcpu)
108 endif                                              84 endif
109                                                    85 
110 # Test CFI features of binutils                << 
111 cfi := $(call as-instr,.cfi_startproc\n.cfi_va << 
112                                                    86 
113 KBUILD_CFLAGS   += -mpacked-stack -mbackchain  !!  87 # For TSUNAMI, we must have the assembler not emulate our instructions.
114 KBUILD_CFLAGS   += -pipe -Wno-sign-compare     !!  88 # The same is true for IRONGATE, POLARIS, PYXIS.
115 KBUILD_CFLAGS   += -fno-asynchronous-unwind-ta !!  89 # BWX is most important, but we don't really want any emulation ever.
116 KBUILD_AFLAGS   += $(aflags-y) $(cfi)          !!  90 CFLAGS += $(cflags-y) -Wa,-mev6
117 export KBUILD_AFLAGS_DECOMPRESSOR              << 
118 export KBUILD_CFLAGS_DECOMPRESSOR              << 
119                                                << 
120 OBJCOPYFLAGS    := -O binary                   << 
121                                                << 
122 libs-y          += arch/s390/lib/              << 
123                                                << 
124 boot            := arch/s390/boot              << 
125 syscalls        := arch/s390/kernel/syscalls   << 
126 tools           := arch/s390/tools             << 
127                                                << 
128 all: bzImage                                   << 
129                                                << 
130 #KBUILD_IMAGE is necessary for packaging targe << 
131 KBUILD_IMAGE    := $(boot)/bzImage             << 
132                                                << 
133 install:                                       << 
134         $(call cmd,install)                    << 
135                                                << 
136 bzImage: vmlinux                               << 
137         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$ << 
138                                                << 
139 zfcpdump:                                      << 
140         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$ << 
141                                                << 
142 archheaders:                                   << 
143         $(Q)$(MAKE) $(build)=$(syscalls) uapi  << 
144                                                << 
145 archprepare:                                   << 
146         $(Q)$(MAKE) $(build)=$(syscalls) kapi  << 
147         $(Q)$(MAKE) $(build)=$(tools) kapi $(e << 
148 ifeq ($(KBUILD_EXTMOD),)                       << 
149 # We need to generate vdso-offsets.h before co << 
150 # In order to do that, we should use the archp << 
151 # asm-offsets.h is included in some files used << 
152 # asm-offsets.h is built in prepare0, for whic << 
153 # Therefore we need to generate the header aft << 
154 # this hack.                                   << 
155 prepare: vdso_prepare                          << 
156 vdso_prepare: prepare0                         << 
157         $(Q)$(MAKE) $(build)=arch/s390/kernel/ << 
158         $(if $(CONFIG_COMPAT),$(Q)$(MAKE) \    << 
159                 $(build)=arch/s390/kernel/vdso << 
160                                                    91 
161 vdso-install-y                  += arch/s390/k !!  92 head-y := arch/alpha/kernel/head.o
162 vdso-install-$(CONFIG_COMPAT)   += arch/s390/k << 
163                                                    93 
164 endif                                          !!  94 core-y                          += arch/alpha/kernel/ arch/alpha/mm/
                                                   >>  95 core-$(CONFIG_MATHEMU)          += arch/alpha/math-emu/
                                                   >>  96 drivers-$(CONFIG_OPROFILE)      += arch/alpha/oprofile/
                                                   >>  97 libs-y                          += arch/alpha/lib/
                                                   >>  98 
                                                   >>  99 # export what is needed by arch/alpha/boot/Makefile
                                                   >> 100 LIBS_Y := $(patsubst %/, %/lib.a, $(libs-y))
                                                   >> 101 export LIBS_Y
                                                   >> 102 
                                                   >> 103 boot := arch/alpha/boot
                                                   >> 104 
                                                   >> 105 #Default target when executing make with no arguments
                                                   >> 106 all boot: $(boot)/vmlinux.gz
                                                   >> 107 
                                                   >> 108 $(boot)/vmlinux.gz: vmlinux
                                                   >> 109         $(Q)$(MAKE) -f scripts/Makefile.build obj=$(boot) $@
                                                   >> 110 
                                                   >> 111 bootimage bootpfile bootpzfile: vmlinux
                                                   >> 112         $(Q)$(MAKE) -f scripts/Makefile.build obj=$(boot) $(boot)/$@
                                                   >> 113 
                                                   >> 114 
                                                   >> 115 prepare: include/asm-$(ARCH)/asm_offsets.h
                                                   >> 116 
                                                   >> 117 arch/$(ARCH)/kernel/asm-offsets.s: include/asm include/linux/version.h \
                                                   >> 118                                    include/config/MARKER
                                                   >> 119 
                                                   >> 120 include/asm-$(ARCH)/asm_offsets.h: arch/$(ARCH)/kernel/asm-offsets.s
                                                   >> 121         $(call filechk,gen-asm-offsets)
                                                   >> 122 
                                                   >> 123 archclean:
                                                   >> 124         $(Q)$(MAKE) -f scripts/Makefile.clean obj=$(boot)
                                                   >> 125 
                                                   >> 126 CLEAN_FILES += include/asm-$(ARCH)/asm_offsets.h
165                                                   127 
166 # Don't use tabs in echo arguments             << 
167 define archhelp                                   128 define archhelp
168   echo  '* bzImage         - Kernel image for  !! 129   echo '* boot          - Compressed kernel image (arch/alpha/boot/vmlinux.gz)'
169   echo  '  install         - Install kernel us !! 130   echo '  bootimage     - SRM bootable image (arch/alpha/boot/bootimage)'
170   echo  '                    (your) ~/bin/$(IN !! 131   echo '  bootpfile     - BOOTP bootable image (arch/alpha/boot/bootpfile)'
171   echo  '                    (distribution) /s !! 132   echo '  bootpzfile    - compressed kernel BOOTP image (arch/alpha/boot/bootpzfile)'
172   echo  '                    install to $$(INS << 
173 endef                                             133 endef
                                                      

~ [ 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