From: Keith Owens <kaos@ocs.com.au> To: linux-kernel@vger.rutgers.edu Subject: Announce: modutils 2.3.13 is available Date: Tue, 25 Jul 2000 19:44:21 +1000 Fastest download from kernel.org. Mirror at ftp://ftp.**.kernel.org/pub/linux/utils/kernel/modutils/v2.3 replace '**' with your favourite kernel.org mirror. Mirror at ftp://oss.sgi.com/pub/mirror/modutils/v2.3. Master at ftp://ftp.ocs.com.au/pub/modutils/v2.3. (slow) patch-modutils-2.3.13.gz Patch from modutils 2.3.12 to 2.3.13 modutils-2.3.13.tar.gz Source tarball, includes RPM spec file modutils-2.3.13-1.src.rpm As above, in SRPM format modutils-2.3.13-1.i386.rpm Compiled with egcs-2.91.66, glibc 2.1.2 Changelog extract * More gzipped objects changes by Willy Tarreau. * Default to no backwards compatibility. See INSTALL if you want modutils to run on 2.0.x kernels, if you want kerneld (died in 2.1.91) or if your libc does not have create_module(), query_module() etc. * IA64, s390 fixes. * Redhat 486 patch. * Redhat modprobe -k patch. * Redhat kallsyms patch. * Add mtd directory, aliases from David Woodhouse. * Handle unaligned IA64 relocations. * Fix for IA64 modules with no cleanup routine, Mike Stephens. * Refuse to load modules compiled with -mconstant-gp. CAUTION: This version changes the defaults on backwards compatibility. Previous versions of modutils defaulted to supporting 2.[01] kernels and used _syscall() instead of glibc. The default is now no backwards compatibility and to use glibc. Those hopefully few people still using 2.[01] kernels or libc without modutils support will have to explicitly select the old code, see INSTALL. IA64 support has had more testing in this release. If modules are compiled with "-mconstant-gp" then insmod or the module will oops every time. IA64 modules must be compiled without -mconstant-gp, the kernel can be compiled with or without -mconstant-gp, your choice. The test patch below against 2.4.0-test1 should clean up the IA64 make. insmod attempts to detect modules compiled with -mconstant-gp and will refuse to load them. However current gcc for IA64 does not set the EF_IA_64_CONS_GP (e_flags & 0x00000040) bit in the ELF header so insmod cannot do its job correctly. Index: 0-test1.20/arch/ia64/Makefile --- 0-test1.20/arch/ia64/Makefile Wed, 12 Jul 2000 15:24:58 +1000 kaos (linux-2.4/c/c/43_Makefile 1.1.1.2 644) +++ 0-test1.20(w)/arch/ia64/Makefile Tue, 25 Jul 2000 16:52:13 +1000 kaos (linux-2.4/c/c/43_Makefile 1.1.1.2 644) @@ -16,7 +16,8 @@ EXTRA = CFLAGS := $(CFLAGS) -pipe $(EXTRA) -Wa,-x -ffixed-r13 -mfixed-range=f10-f15,f32-f127 \ - -mconstant-gp -funwind-tables + -funwind-tables +CFLAGS_KERNEL := -mconstant-gp ifdef CONFIG_IA64_GENERIC CORE_FILES := arch/$(ARCH)/hp/hp.a \ Index: 0-test1.20/Makefile --- 0-test1.20/Makefile Wed, 12 Jul 2000 18:06:30 +1000 kaos (linux-2.4/B/c/27_Makefile 1.1.3.3 644) +++ 0-test1.20(w)/Makefile Tue, 25 Jul 2000 19:10:29 +1000 kaos (linux-2.4/B/c/27_Makefile 1.1.3.3 644) @@ -37,11 +37,13 @@ GENKSYMS = /sbin/genksyms KALLSYMS = /sbin/kallsyms MODFLAGS = -DMODULE +CFLAGS_KERNEL = PERL = perl export VERSION PATCHLEVEL SUBLEVEL EXTRAVERSION KERNELRELEASE ARCH \ CONFIG_SHELL TOPDIR HPATH HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC \ - CPP AR NM STRIP OBJCOPY OBJDUMP MAKE MAKEFILES GENKSYMS MODFLAGS PERL + CPP AR NM STRIP OBJCOPY OBJDUMP MAKE MAKEFILES GENKSYMS MODFLAGS PERL \ + CFLAGS_KERNEL all: do-it-all @@ -197,7 +199,7 @@ @rm -f include/linux/compile.h boot: vmlinux - @$(MAKE) -C arch/$(ARCH)/boot + @$(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" -C arch/$(ARCH)/boot LD_VMLINUX := $(LD) $(LINKFLAGS) $(HEAD) init/main.o init/version.o \ --start-group \ @@ -256,7 +258,7 @@ linuxsubdirs: $(patsubst %, _dir_%, $(SUBDIRS)) $(patsubst %, _dir_%, $(SUBDIRS)) : dummy include/config/MARKER - $(MAKE) -C $(patsubst _dir_%, %, $@) + $(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" -C $(patsubst _dir_%, %, $@) $(TOPDIR)/include/linux/version.h: include/linux/version.h $(TOPDIR)/include/linux/compile.h: include/linux/compile.h @@ -293,13 +295,13 @@ @mv -f .ver $@ init/version.o: init/version.c include/linux/compile.h include/config/MARKER - $(CC) $(CFLAGS) -DUTS_MACHINE='"$(ARCH)"' -c -o init/version.o init/version.c + $(CC) $(CFLAGS) $(CFLAGS_KERNEL) -DUTS_MACHINE='"$(ARCH)"' -c -o init/version.o init/version.c init/main.o: init/main.c include/config/MARKER - $(CC) $(CFLAGS) $(PROFILING) -c -o $*.o $< + $(CC) $(CFLAGS) $(CFLAGS_KERNEL) $(PROFILING) -c -o $*.o $< fs lib mm ipc kernel drivers net: dummy - $(MAKE) $(subst $@, _dir_$@, $@) + $(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" $(subst $@, _dir_$@, $@) TAGS: dummy etags `find include/asm-$(ARCH) -name '*.h'` - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/