1 # SPDX-License-Identifier: GPL-2.0-only !! 1 # 2 OBJCOPYFLAGS :=-O binary !! 2 # sparc/Makefile 3 GZFLAGS :=-9 !! 3 # >> 4 # Makefile for the architecture dependent flags and dependencies on the >> 5 # Sparc and sparc64. >> 6 # >> 7 # Copyright (C) 1994,1996,1998 David S. Miller (davem@caip.rutgers.edu) >> 8 # Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz) 4 9 5 ifdef CONFIG_CPU_HAS_FPU !! 10 # We are not yet configured - so test on arch 6 FPUEXT = f !! 11 ifeq ($(ARCH),sparc) >> 12 KBUILD_DEFCONFIG := sparc32_defconfig >> 13 else >> 14 KBUILD_DEFCONFIG := sparc64_defconfig 7 endif 15 endif 8 16 9 ifdef CONFIG_CPU_HAS_VDSP !! 17 ifeq ($(CONFIG_SPARC32),y) 10 VDSPEXT = v !! 18 ##### 11 endif !! 19 # sparc32 >> 20 # 12 21 13 ifdef CONFIG_CPU_HAS_TEE !! 22 CHECKFLAGS += -D__sparc__ 14 TEEEXT = t !! 23 LDFLAGS := -m elf32_sparc 15 endif !! 24 export BITS := 32 >> 25 UTS_MACHINE := sparc 16 26 17 ifdef CONFIG_CPU_CK610 !! 27 # We are adding -Wa,-Av8 to KBUILD_CFLAGS to deal with a specs bug in some 18 CPUTYPE = ck610 !! 28 # versions of gcc. Some gcc versions won't pass -Av8 to binutils when you 19 CSKYABI = abiv1 !! 29 # give -mcpu=v8. This silently worked with older bintutils versions but 20 endif !! 30 # does not any more. >> 31 KBUILD_CFLAGS += -m32 -mcpu=v8 -pipe -mno-fpu -fcall-used-g5 -fcall-used-g7 >> 32 KBUILD_CFLAGS += -Wa,-Av8 21 33 22 ifdef CONFIG_CPU_CK810 !! 34 KBUILD_AFLAGS += -m32 -Wa,-Av8 23 CPUTYPE = ck810 << 24 CSKYABI = abiv2 << 25 endif << 26 35 27 ifdef CONFIG_CPU_CK807 !! 36 else 28 CPUTYPE = ck807 !! 37 ##### 29 CSKYABI = abiv2 !! 38 # sparc64 30 endif !! 39 # 31 40 32 ifdef CONFIG_CPU_CK860 !! 41 CHECKFLAGS += -D__sparc__ -D__sparc_v9__ -D__arch64__ -m64 33 CPUTYPE = ck860 !! 42 LDFLAGS := -m elf64_sparc 34 CSKYABI = abiv2 !! 43 export BITS := 64 35 endif !! 44 UTS_MACHINE := sparc64 36 45 37 ifneq ($(CSKYABI),) !! 46 KBUILD_CFLAGS += -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow 38 MCPU_STR = $(CPUTYPE)$(FPUEXT)$(VDSPEXT)$(TEEE !! 47 KBUILD_CFLAGS += -ffixed-g4 -ffixed-g5 -fcall-used-g7 -Wno-sign-compare 39 KBUILD_CFLAGS += -mcpu=$(CPUTYPE) -Wa,-mcpu=$( !! 48 KBUILD_CFLAGS += -Wa,--undeclared-regs 40 KBUILD_CFLAGS += -DCSKYCPU_DEF_NAME=\"$(MCPU_S !! 49 KBUILD_CFLAGS += $(call cc-option,-mtune=ultrasparc3) 41 KBUILD_CFLAGS += -msoft-float -mdiv !! 50 KBUILD_AFLAGS += -m64 -mcpu=ultrasparc -Wa,--undeclared-regs 42 KBUILD_CFLAGS += -fno-tree-vectorize << 43 endif << 44 51 45 KBUILD_CFLAGS += -pipe !! 52 ifeq ($(CONFIG_MCOUNT),y) 46 ifeq ($(CSKYABI),abiv2) !! 53 KBUILD_CFLAGS += -pg 47 KBUILD_CFLAGS += -mno-stack-size << 48 endif 54 endif 49 55 50 ifdef CONFIG_FRAME_POINTER << 51 KBUILD_CFLAGS += -mbacktrace << 52 endif 56 endif 53 57 54 abidirs := $(patsubst %,arch/csky/%/,$(CSKYABI !! 58 head-y := arch/sparc/kernel/head_$(BITS).o 55 KBUILD_CFLAGS += $(patsubst %,-I$(srctree)/%in << 56 59 57 KBUILD_CPPFLAGS += -mlittle-endian !! 60 # See arch/sparc/Kbuild for the core part of the kernel 58 LDFLAGS += -EL !! 61 core-y += arch/sparc/ 59 62 60 KBUILD_AFLAGS += $(KBUILD_CFLAGS) !! 63 libs-y += arch/sparc/prom/ >> 64 libs-y += arch/sparc/lib/ 61 65 62 core-y += arch/csky/$(CSKYABI)/ !! 66 drivers-$(CONFIG_PM) += arch/sparc/power/ >> 67 drivers-$(CONFIG_OPROFILE) += arch/sparc/oprofile/ 63 68 64 libs-y += arch/csky/lib/ \ !! 69 boot := arch/sparc/boot 65 $(shell $(CC) $(KBUILD_CFLAGS) $(KCFLA << 66 << 67 boot := arch/csky/boot << 68 70 >> 71 # Default target 69 all: zImage 72 all: zImage 70 73 71 zImage Image uImage: vmlinux !! 74 image zImage uImage tftpboot.img vmlinux.aout: vmlinux 72 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$ 75 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ 73 76 >> 77 install: >> 78 $(Q)$(MAKE) $(build)=$(boot) $@ >> 79 >> 80 archclean: >> 81 $(Q)$(MAKE) $(clean)=$(boot) >> 82 >> 83 # This is the image used for packaging >> 84 KBUILD_IMAGE := $(boot)/zImage >> 85 >> 86 # Don't use tabs in echo arguments. >> 87 ifeq ($(ARCH),sparc) 74 define archhelp 88 define archhelp 75 echo '* zImage - Compressed kernel im !! 89 echo '* image - kernel image ($(boot)/image)' 76 echo ' Image - Uncompressed kernel !! 90 echo '* zImage - stripped kernel image ($(boot)/zImage)' 77 echo ' uImage - U-Boot wrapped zImag !! 91 echo ' uImage - U-Boot SPARC32 Image (only for LEON)' >> 92 echo ' tftpboot.img - image prepared for tftp' 78 endef 93 endef >> 94 else >> 95 define archhelp >> 96 echo '* vmlinux - standard sparc64 kernel' >> 97 echo '* zImage - stripped and compressed sparc64 kernel ($(boot)/zImage)' >> 98 echo ' vmlinux.aout - a.out kernel for sparc64' >> 99 echo ' tftpboot.img - image prepared for tftp' >> 100 endef >> 101 endif
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.