Commit f94e5fd7 authored by Sam Ravnborg's avatar Sam Ravnborg

kbuild: Introduced extra-y, as replacement for EXTRA_TARGETS

EXTRA_TARGETS has been overloaded with functionality.
This is now split in two:
targets := list targets kbuild did not know of otherwise
extra-y := list targets to be build when not building modules only.
extra-y is mainly used to list .o files that is not to be included
in the fnal built-in.o file for a directory.
parent 0be6a9a0
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o
extra-y := head.o
EXTRA_AFLAGS := $(CFLAGS)
EXTRA_CFLAGS := -Werror -Wno-sign-compare
......
......@@ -7,7 +7,7 @@ ZLDFLAGS =-p -X -T $(obj)/bootp.lds \
--defsym initrd_addr=$(INITRD_PHYS) \
--defsym params=$(PARAMS_PHYS)
EXTRA_TARGETS := bootp
extra-y := bootp
# Note that bootp.lds picks up kernel.o and initrd.o
$(obj)/bootp: $(addprefix $(obj)/,init.o kernel.o initrd.o bootp.lds)
......
......@@ -11,9 +11,6 @@ AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
obj-y := arch.o compat.o dma.o $(ENTRY_OBJ) entry-common.o irq.o \
process.o ptrace.o semaphore.o setup.o signal.o sys_arm.o \
time.o traps.o
obj-m :=
obj-n :=
obj- :=
obj-$(CONFIG_APM) += apm.o
obj-$(CONFIG_PM) += pm.o
......@@ -35,7 +32,7 @@ head-y := head.o
obj-$(CONFIG_DEBUG_LL) += debug.o
endif
EXTRA_TARGETS := $(head-y) init_task.o
extra-y := $(head-y) init_task.o
# Spell out some dependencies that `make dep' doesn't spot
$(obj)/entry-armv.o: $(obj)/entry-header.S include/asm-arm/constants.h
......
......@@ -6,12 +6,9 @@
obj-y := arch.o dma.o fault.o irq.o mm.o oldlatches.o \
small_page.o
obj-m :=
obj-n :=
obj- :=
obj-$(CONFIG_DEBUG_LL) += debug.o
EXTRA_TARGETS := head.o
extra-y := head.o
AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
......@@ -3,7 +3,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o
extra-y := head.o
obj-y := process.o signal.o entry.o traps.o irq.o \
ptrace.o setup.o time.o sys_cris.o shadows.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y := process.o semaphore.o signal.o entry.o traps.o irq.o vm86.o \
ptrace.o i8259.o ioport.o ldt.o setup.o time.o sys_i386.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y := acpi.o entry.o gate.o efi.o efi_stub.o ia64_ksyms.o \
irq.o irq_ia64.o irq_lsapic.o ivt.o \
......
......@@ -3,9 +3,9 @@
#
ifndef CONFIG_SUN3
EXTRA_TARGETS := head.o
extra-y := head.o
else
EXTRA_TARGETS := sun3-head.o
extra-y := sun3-head.o
endif
obj-y := entry.o process.o traps.o ints.o signal.o ptrace.o \
......
......@@ -18,4 +18,4 @@ endif
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -18,4 +18,4 @@ endif
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -18,4 +18,4 @@ endif
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -18,4 +18,4 @@ endif
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -20,5 +20,5 @@ obj-$(CONFIG_COLDFIRE) += entry.o
obj-$(CONFIG_M5307) += config.o
ifeq ($(CONFIG_M5307),y)
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
endif
......@@ -18,4 +18,4 @@ endif
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -7,7 +7,7 @@ obj-$(CONFIG_M68EZ328) += entry.o ints.o
obj-$(CONFIG_M68VZ328) += entry.o ints.o
ifeq ($(CONFIG_M68328),y)
EXTRA_TARGETS := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
endif
$(obj)/$(BOARD)/bootlogo.rh: $(src)/bootlogo.h
......
......@@ -4,4 +4,4 @@
obj-y := config.o commproc.o entry.o ints.o
EXTRA_TARGETS := $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/crt0_$(MODEL).o
......@@ -4,7 +4,7 @@
obj-y := config.o
EXTRA_TARGETS := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
$(obj)/$(BOARD)/bootlogo.rh: $(src)/bootlogo.h
perl $(src)/../68328/bootlogo.pl < $(src)/bootlogo.h \
......
......@@ -4,7 +4,7 @@
obj-y := $(BOARD)/config.o
EXTRA_TARGETS := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
extra-y := $(BOARD)/bootlogo.rh $(BOARD)/crt0_$(MODEL).o
$(obj)/$(BOARD)/bootlogo.rh: $(src)/../68EZ328/bootlogo.h
perl $(src)/../68328/bootlogo.pl < $(src)/../68EZ328/bootlogo.h \
......
......@@ -4,7 +4,7 @@
# EXTRA_AFLAGS = -mips3 -mcpu=r4000 # not used?
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y += branch.o process.o signal.o entry.o \
traps.o ptrace.o vm86.o ioport.o reset.o \
semaphore.o setup.o syscall.o sysmips.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the Linux/MIPS kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y := branch.o entry.o proc.o process.o ptrace.o r4k_cache.o r4k_fpu.o \
r4k_genex.o r4k_switch.o r4k_tlb.o r4k_tlb_debug.o r4k_tlb_glue.o \
......
......@@ -3,7 +3,7 @@
# under Linux.
#
EXTRA_TARGETS := ip32-irq-glue.o
extra-y := ip32-irq-glue.o
obj-y += ip32-irq.o ip32-rtc.o ip32-setup.o ip32-irq-glue.o \
ip32-berr.o ip32-timer.o crime.o
......
......@@ -4,7 +4,8 @@
head-y := head.o
head-$(CONFIG_PARISC64) := head64.o
EXTRA_TARGETS := init_task.o pdc_cons.o process.o unaligned.o $(head-y)
extra-y := init_task.o pdc_cons.o process.o
unaligned.o $(head-y)
AFLAGS_entry.o := -traditional
AFLAGS_pacache.o := -traditional
......
......@@ -15,7 +15,7 @@ HEAD-$(CONFIG_40x) := head_4xx.o
HEAD-$(CONFIG_8xx) := head_8xx.o
HEAD-$(CONFIG_6xx) += idle_6xx.o
EXTRA_TARGETS := $(HEAD-y)
extra-y := $(HEAD-y)
obj-y := entry.o traps.o irq.o idle.o time.o misc.o \
process.o signal.o ptrace.o align.o \
......
......@@ -64,7 +64,7 @@ targets += zImage zImage.initrd imagesize.c \
$(patsubst $(obj)/%,%, $(call src-sec, $(required) $(initrd))) \
$(patsubst $(obj)/%,%, $(call gz-sec, $(required) $(initrd))) \
vmlinux.sm vmlinux.initrd vmlinux.sminitrd
EXTRA_TARGETS := sysmap.o initrd.o
extra-y := sysmap.o initrd.o
quiet_cmd_sysmap = SYSMAP $@
cmd_sysmap = $(obj)/addSystemMap System.map $< $@
......
......@@ -3,7 +3,7 @@
#
EXTRA_CFLAGS += -mno-minimal-toc
EXTRA_TARGETS := head.o
extra-y := head.o
obj-y := setup.o entry.o traps.o irq.o idle.o \
time.o process.o signal.o syscalls.o misc.o ptrace.o \
align.o semaphore.o bitops.o stab.o htab.o pacaData.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
EXTRA_AFLAGS := -traditional
obj-y := entry.o bitmap.o traps.o time.o process.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
EXTRA_AFLAGS := -traditional
obj-y := entry.o bitmap.o traps.o time.o process.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the Linux/SuperH kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y := process.o signal.o entry.o traps.o irq.o irq_ipr.o \
ptrace.o setup.o time.o sys_sh.o semaphore.o \
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
EXTRA_AFLAGS := -ansi
......
......@@ -5,7 +5,7 @@
EXTRA_AFLAGS := -ansi
EXTRA_CFLAGS := -Werror
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y := process.o setup.o cpu.o idprom.o \
traps.o devices.o auxio.o \
......
......@@ -3,7 +3,7 @@
# Licensed under the GPL
#
EXTRA_TARGETS := unmap_fin.o
extra-y := unmap_fin.o
obj-y = exec_kern.o exec_user.o gdb.o ksyms.o mem.o mem_user.o process_kern.o \
syscall_kern.o syscall_user.o time.o tlb.o tracer.o trap_user.o \
......
......@@ -9,7 +9,7 @@
# for more details.
#
EXTRA_TARGETS := head.o init_task.o
extra-y := head.o init_task.o
obj-y += intv.o entry.o process.o syscalls.o time.o semaphore.o setup.o \
signal.o irq.o mach.o ptrace.o bug.o
......
......@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
EXTRA_TARGETS := head.o head64.o init_task.o
extra-y := head.o head64.o init_task.o
EXTRA_AFLAGS := -traditional
obj-y := process.o semaphore.o signal.o entry.o traps.o irq.o \
ptrace.o i8259.o ioport.o ldt.o setup.o time.o sys_x86_64.o \
......
......@@ -15,6 +15,10 @@ include $(obj)/Makefile
include scripts/Makefile.lib
ifdef EXTRA_TARGETS
$(warning kbuild: $(obj)/Makefile - Usage of EXTRA_TARGETS is obsolete in 2.5. Please fix!)
endif
ifdef export-objs
$(warning kbuild: $(obj)/Makefile - Usage of export-objs is obsolete in 2.5. Please fix!)
endif
......@@ -53,7 +57,7 @@ endif
touch-module = @echo $(@:.o=.ko) > $(MODVERDIR)/$(@F:.o=.mod)
__build: $(if $(KBUILD_BUILTIN),$(O_TARGET) $(L_TARGET) $(EXTRA_TARGETS)) \
__build: $(if $(KBUILD_BUILTIN),$(O_TARGET) $(L_TARGET) $(extra-y)) \
$(if $(KBUILD_MODULES),$(obj-m)) \
$(subdir-ym) $(build-targets)
@:
......@@ -198,7 +202,7 @@ cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
%.o: %.S FORCE
$(call if_changed_dep,as_o_S)
targets += $(real-objs-y) $(real-objs-m) $(EXTRA_TARGETS) $(MAKECMDGOALS) \
targets += $(real-objs-y) $(real-objs-m) $(extra-y) $(MAKECMDGOALS) \
$(build-targets)
# Build the compiled-in targets
......
......@@ -28,7 +28,7 @@ subdir-ymn := $(sort $(subdir-ym) $(subdir-n) $(subdir-))
# Add subdir path
EXTRA_TARGETS := $(addprefix $(obj)/,$(EXTRA_TARGETS))
extra-y := $(addprefix $(obj)/,$(extra-y) $(EXTRA_TARGETS))
targets := $(addprefix $(obj)/,$(targets))
clean-files := $(addprefix $(obj)/,$(clean-files))
host-progs := $(addprefix $(obj)/,$(host-progs))
......@@ -36,7 +36,7 @@ subdir-ymn := $(addprefix $(obj)/,$(subdir-ymn))
# ==========================================================================
__clean-files := $(wildcard $(EXTRA_TARGETS) $(host-progs) $(clean-files) $(targets))
__clean-files := $(wildcard $(extra-y) $(host-progs) $(clean-files) $(targets))
quiet_cmd_clean = CLEAN $(obj)
cmd_clean = rm -f $(__clean-files); $(clean-rule)
......
......@@ -8,6 +8,8 @@ comma := ,
empty :=
space := $(empty) $(empty)
# Backward compatibility - to be removed...
extra-y += $(EXTRA_TARGETS)
# Figure out what we need to build from the various variables
# ===========================================================================
......@@ -51,7 +53,7 @@ multi-objs := $(multi-objs-y) $(multi-objs-m)
subdir-obj-y := $(foreach o,$(obj-y),$(if $(filter-out $(o),$(notdir $(o))),$(o)))
# Replace multi-part objects by their individual parts, look at local dir only
real-objs-y := $(foreach m, $(filter-out $(subdir-obj-y), $(obj-y)), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m))) $(EXTRA_TARGETS)
real-objs-y := $(foreach m, $(filter-out $(subdir-obj-y), $(obj-y)), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m))) $(extra-y)
real-objs-m := $(foreach m, $(obj-m), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m)))
# C code
......@@ -84,7 +86,7 @@ host-cshobjs := $(sort $(foreach m,$(host-cshlib),$($(m:.so=-objs))))
# Add subdir path
EXTRA_TARGETS := $(addprefix $(obj)/,$(EXTRA_TARGETS))
extra-y := $(addprefix $(obj)/,$(extra-y))
build-targets := $(addprefix $(obj)/,$(build-targets))
targets := $(addprefix $(obj)/,$(targets))
obj-y := $(addprefix $(obj)/,$(obj-y))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment