James, All,
This is a small patch to try to somewhat cleanup the subarch code.
First it moves all the subarch .h files out of arch/i386/mach-xyz into
include/asm-i386/mach-xyz, then it changes the include patch to include
include/asm-i386/mach-xyz and include/asm-i386/mach-generic when
compiling. This allows the compiler to use the arch specific .h files
when needed, and then falls back to the generic .h files if no subarch
specific changes are needed.
Obviously this doesn't work with .c files, so I've split up the Makefile
MACHINE variable into MACHINE_H and MACHINE_C, so subarchs like summit
which does not need any subarch specific .c files can just use the
generic files.
The patch is bziped due to its size, but that is mainly due to moving
all the .h files, the only file changed is arch/i386/Makefile and I've
inlined that diff below.
Please let me know if you have any comments, flames or suggestions.
thanks
-john
diff -Nru a/arch/i386/Makefile b/arch/i386/Makefile
--- a/arch/i386/Makefile Mon Nov 18 18:12:25 2002
+++ b/arch/i386/Makefile Mon Nov 18 18:12:25 2002
@@ -47,9 +47,11 @@
CFLAGS += $(cflags-y)
ifdef CONFIG_VISWS
-MACHINE := mach-visws
+MACHINE_C := mach-visws
+MACHINE_H := mach-visws
else
-MACHINE := mach-generic
+MACHINE_C := mach-generic
+MACHINE_H := mach-generic
endif
HEAD := arch/i386/kernel/head.o arch/i386/kernel/init_task.o
@@ -57,14 +59,14 @@
libs-y += arch/i386/lib/
core-y += arch/i386/kernel/ \
arch/i386/mm/ \
- arch/i386/$(MACHINE)/
+ arch/i386/$(MACHINE_C)/
drivers-$(CONFIG_MATH_EMULATION) += arch/i386/math-emu/
drivers-$(CONFIG_PCI) += arch/i386/pci/
# FIXME: is drivers- right ?
drivers-$(CONFIG_OPROFILE) += arch/i386/oprofile/
-CFLAGS += -Iarch/i386/$(MACHINE)
-AFLAGS += -Iarch/i386/$(MACHINE)
+CFLAGS += -Iinclude/asm-i386/$(MACHINE_H) -Iinclude/asm-i386/mach-generic
+AFLAGS += -Iinclude/asm-i386/$(MACHINE_H) -Iinclude/asm-i386/mach-generic
makeboot = $(call descend,arch/i386/boot,$(1))
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Nov 23 2002 - 22:00:30 EST