[PATCH] improve gate generation

Matthew Wilcox
2004-02-24T01:56:40Z

This patch fixes a couple of things.
- gate.lds.s is generated in the obj tree, not the src tree.
- It can be generated by the normal .s.S rule.
- Adding the extra-y list prevents it from being rebuilt unnecessarily.

Index: arch/ia64/kernel/Makefile
=================================RCS file: /var/cvs/linux-2.6/arch/ia64/kernel/Makefile,v
retrieving revision 1.4
diff -u -p -r1.4 Makefile
--- arch/ia64/kernel/Makefile 7 Jan 2004 21:30:05 -0000 1.4
+++ arch/ia64/kernel/Makefile 24 Feb 2004 01:44:56 -0000
@@ -22,15 +22,15 @@ obj-$(CONFIG_PERFMON) += perfmon_defaul
# The gate DSO image is built using a special linker script.
targets += gate.so gate-syms.o

+extra-y += gate.so gate-syms.o gate.lds.s gate.o
+
AFLAGS_gate.lds.o += -P -C -U$(ARCH)
-arch/ia64/kernel/gate.lds.s: %.s: %.S scripts FORCE
- $(call if_changed_dep,as_s_S)

quiet_cmd_gate = GATE $@
cmd_gate = $(CC) -nostdlib $(GATECFLAGS_$(@F)) -Wl,-T,$(filter-out FORCE,$^) -o $@

GATECFLAGS_gate.so = -shared -s -Wl,-soname=linux-gate.so.1
-$(obj)/gate.so: $(src)/gate.lds.s $(obj)/gate.o FORCE
+$(obj)/gate.so: $(obj)/gate.lds.s $(obj)/gate.o FORCE
$(call if_changed,gate)

$(obj)/built-in.o: $(obj)/gate-syms.o

--
"Next the statesmen will invent cheap lies, putting the blame upon
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince
himself that the war is just, and will thank God for the better sleep
he enjoys after this process of grotesque self-deception." -- Mark Twain