a88b5ba8bd
o Move all files from sparc64/kernel/ to sparc/kernel - rename as appropriate o Update sparc/Makefile to the changes o Update sparc/kernel/Makefile to include the sparc64 files NOTE: This commit changes link order on sparc64! Link order had to change for either of sparc32 and sparc64. And assuming sparc64 see more testing than sparc32 change link order on sparc64 where issues will be caught faster. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
117 lines
3.2 KiB
Makefile
117 lines
3.2 KiB
Makefile
#
|
|
# sparc/Makefile
|
|
#
|
|
# Makefile for the architecture dependent flags and dependencies on the
|
|
# Sparc and sparc64.
|
|
#
|
|
# Copyright (C) 1994,1996,1998 David S. Miller (davem@caip.rutgers.edu)
|
|
# Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
|
|
|
|
# We are not yet configured - so test on arch
|
|
ifeq ($(ARCH),sparc)
|
|
KBUILD_DEFCONFIG := sparc32_defconfig
|
|
else
|
|
KBUILD_DEFCONFIG := sparc64_defconfig
|
|
endif
|
|
|
|
ifeq ($(CONFIG_SPARC32),y)
|
|
#####
|
|
# sparc32
|
|
#
|
|
|
|
#
|
|
# Uncomment the first KBUILD_CFLAGS if you are doing kgdb source level
|
|
# debugging of the kernel to get the proper debugging information.
|
|
|
|
AS := $(AS) -32
|
|
LDFLAGS := -m elf32_sparc
|
|
CHECKFLAGS += -D__sparc__
|
|
export BITS := 32
|
|
|
|
#KBUILD_CFLAGS += -g -pipe -fcall-used-g5 -fcall-used-g7
|
|
KBUILD_CFLAGS += -m32 -pipe -mno-fpu -fcall-used-g5 -fcall-used-g7
|
|
KBUILD_AFLAGS += -m32
|
|
CPPFLAGS_vmlinux.lds += -m32
|
|
|
|
#LDFLAGS_vmlinux = -N -Ttext 0xf0004000
|
|
# Since 2.5.40, the first stage is left not btfix-ed.
|
|
# Actual linking is done with "make image".
|
|
LDFLAGS_vmlinux = -r
|
|
|
|
# Default target
|
|
all: zImage
|
|
|
|
|
|
else
|
|
#####
|
|
# sparc64
|
|
#
|
|
|
|
CHECKFLAGS += -D__sparc__ -D__sparc_v9__ -D__arch64__ -m64
|
|
|
|
# Undefine sparc when processing vmlinux.lds - it is used
|
|
# And teach CPP we are doing 64 bit builds (for this case)
|
|
CPPFLAGS_vmlinux.lds += -m64 -Usparc
|
|
LDFLAGS := -m elf64_sparc
|
|
export BITS := 64
|
|
|
|
KBUILD_CFLAGS += -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow \
|
|
-ffixed-g4 -ffixed-g5 -fcall-used-g7 -Wno-sign-compare \
|
|
-Wa,--undeclared-regs
|
|
KBUILD_CFLAGS += $(call cc-option,-mtune=ultrasparc3)
|
|
KBUILD_AFLAGS += -m64 -mcpu=ultrasparc -Wa,--undeclared-regs
|
|
|
|
ifeq ($(CONFIG_MCOUNT),y)
|
|
KBUILD_CFLAGS += -pg
|
|
endif
|
|
|
|
endif
|
|
|
|
head-y := arch/sparc/kernel/head_$(BITS).o
|
|
head-y += arch/sparc/kernel/init_task_$(BITS).o
|
|
|
|
core-y += arch/sparc/kernel/
|
|
core-y += arch/sparc/mm/ arch/sparc/math-emu/
|
|
|
|
libs-y += arch/sparc/prom/
|
|
libs-y += arch/sparc/lib/
|
|
|
|
drivers-$(CONFIG_OPROFILE) += arch/sparc/oprofile/
|
|
|
|
# Export what is needed by arch/sparc/boot/Makefile
|
|
export VMLINUX_INIT VMLINUX_MAIN
|
|
VMLINUX_INIT := $(head-y) $(init-y)
|
|
VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/
|
|
VMLINUX_MAIN += $(patsubst %/, %/lib.a, $(libs-y)) $(libs-y)
|
|
VMLINUX_MAIN += $(drivers-y) $(net-y)
|
|
|
|
ifdef CONFIG_KALLSYMS
|
|
export kallsyms.o := .tmp_kallsyms2.o
|
|
endif
|
|
|
|
boot-y := arch/sparc/boot
|
|
boot-$(CONFIG_SPARC64) := arch/sparc64/boot
|
|
|
|
image zImage tftpboot.img vmlinux.aout: vmlinux
|
|
$(Q)$(MAKE) $(build)=$(boot-y) $(boot-y)/$@
|
|
|
|
archclean:
|
|
$(Q)$(MAKE) $(clean)=$(boot-y)
|
|
|
|
# This is the image used for packaging
|
|
KBUILD_IMAGE := $(boot-y)/zImage
|
|
|
|
# Don't use tabs in echo arguments.
|
|
ifeq ($(ARCH),sparc)
|
|
define archhelp
|
|
echo '* image - kernel image ($(boot)/image)'
|
|
echo '* zImage - stripped kernel image ($(boot)/zImage)'
|
|
echo ' tftpboot.img - image prepared for tftp'
|
|
endef
|
|
else
|
|
define archhelp
|
|
echo '* vmlinux - Standard sparc64 kernel'
|
|
echo ' vmlinux.aout - a.out kernel for sparc64'
|
|
echo ' tftpboot.img - image prepared for tftp'
|
|
endef
|
|
endif
|