[PATCH] fix 2.4.22-rc2 x86-64 compile failure

From: Mikael Pettersson
Date: Sat Aug 09 2003 - 14:39:48 EST


EXPORT_SYMBOL(mmu_cr4_features) was added recently to
arch/x86-64/kernel/setup.c but arch/x86-64/kernel/Makefile
wasn't simultaneously updated to list setup.o in export-objs.
This causes a CONFIG_MODULES=y build to fail with:

x86_64-unknown-linux-gcc -D__KERNEL__ -I/tmp/linux-2.4.22-rc2/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -mno-red-zone -mcmodel=kernel -pipe -fno-reorder-blocks -finline-limit=2000 -fno-strength-reduce -Wno-sign-compare -fno-asynchronous-unwind-tables -nostdinc -iwithprefix include -DKBUILD_BASENAME=setup -c -o setup.o setup.c
setup.c:62: syntax error before "this_object_must_be_defined_as_export_objs_in_the_Makefile"
setup.c:62: warning: type defaults to `int' in declaration of `this_object_must_be_defined_as_export_objs_in_the_Makefile'
setup.c:62: warning: data definition has no type or storage class
make[1]: *** [setup.o] Error 1
make[1]: Leaving directory `/tmp/linux-2.4.22-rc2/arch/x86_64/kernel'
make: *** [_dir_arch/x86_64/kernel] Error 2

Fixed by the trivial patch below.

/Mikael

--- linux-2.4.22-rc2/arch/x86_64/kernel/Makefile.~1~ 2003-08-09 20:15:54.000000000 +0200
+++ linux-2.4.22-rc2/arch/x86_64/kernel/Makefile 2003-08-09 20:26:17.000000000 +0200
@@ -15,7 +15,7 @@
O_TARGET := kernel.o


-export-objs := mtrr.o msr.o cpuid.o x8664_ksyms.o pci-gart.o
+export-objs := mtrr.o msr.o cpuid.o x8664_ksyms.o pci-gart.o setup.o

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 \
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/