diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2012-05-05 10:18:41 +0200 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2012-05-05 21:19:33 +0200 |
commit | 1f2bfbd00e466ff3489b2ca5cc75b1cccd14c123 (patch) | |
tree | 6c630d3ee90a34d17f85d5c07dde67d4c27883a8 /arch/um | |
parent | 95698570510b7be9ab1542a4a908242c05a9b0ed (diff) |
kbuild: link of vmlinux moved to a script
Move the final link of vmlinux to a script to improve
readability and maintainability of the code.
The Makefile fragments used to link vmlinux has over the
years seen far too many changes and the logic had become
hard to follow.
As the process by nature is serialized there was
nothing gained including this in the Makefile.
"um" has special link requirments - and the
only way to handle this was to hard-code the linking
of "um" in the script.
This was better than trying to modularize it only for the
benefit of "um" anyway.
The shell script has been improved after input from:
Arnaud Lacombe <lacombar@gmail.com>
Nick Bowler <nbowler@elliptictech.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Arnaud Lacombe <lacombar@gmail.com>
Cc: Nick Bowler <nbowler@elliptictech.com>
Cc: Richard Weinberger <richard@nod.at>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'arch/um')
-rw-r--r-- | arch/um/Makefile | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/arch/um/Makefile b/arch/um/Makefile index 55c0661e2b5..097091059aa 100644 --- a/arch/um/Makefile +++ b/arch/um/Makefile @@ -121,15 +121,8 @@ LINK_WRAPS = -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc LD_FLAGS_CMDLINE = $(foreach opt,$(LDFLAGS),-Wl,$(opt)) -CFLAGS_vmlinux := $(LINK-y) $(LINK_WRAPS) $(LD_FLAGS_CMDLINE) -define cmd_vmlinux__ - $(CC) $(CFLAGS_vmlinux) -o $@ \ - -Wl,-T,$(vmlinux-lds) $(vmlinux-init) \ - -Wl,--start-group $(vmlinux-main) -Wl,--end-group \ - -lutil \ - $(filter-out $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) vmlinux.o \ - FORCE ,$^) ; rm -f linux -endef +# Used by link-vmlinux.sh which has special support for um link +export CFLAGS_vmlinux := $(LINK-y) $(LINK_WRAPS) $(LD_FLAGS_CMDLINE) # When cleaning we don't include .config, so we don't include # TT or skas makefiles and don't clean skas_ptregs.h. |