Due to some prodding from a /. post, here's the updated patch to enable
the StackGuard version of gcc be able to compile a 2.4.0-prerelease
kernel properly.
This patch is also available at:
http://immunix.org/ImmunixOS/7.0-beta/i386/extras/
thanks,
greg k-h
--
greg@(kroah|wirex).com
http://immunix.org/~greg
diff -Naur -X /home/greg/linux/dontdiff linux-2.4.0-prerelease/Makefile
linux-2.4.0-prerelease-greg/Makefile
--- linux-2.4.0-prerelease/Makefile Tue Jan 2 10:26:10 2001
+++ linux-2.4.0-prerelease-greg/Makefile Tue Jan 2 10:31:04 2001
@@ -227,6 +227,10 @@
include arch/$(ARCH)/Makefile
+# if we have a StackGuard compiler, then we need to turn off the canary death handler
+stuff
+CFLAGS += $(shell if $(CC) -fno-canary-all-functions -S -o /dev/null -xc /dev/null
+>/dev/null 2>&1; then echo "-fno-canary-all-functions"; fi)
+CFLAGS += $(shell if $(CC) -mno-terminator-canary -S -o /dev/null -xc /dev/null
+>/dev/null 2>&1; then echo "-mno-terminator-canary"; fi)
+
export CPPFLAGS CFLAGS AFLAGS
export NETWORKS DRIVERS LIBS HEAD LDFLAGS LINKFLAGS MAKEBOOT ASFLAGS
diff -Naur -X /home/greg/linux/dontdiff
linux-2.4.0-prerelease/arch/i386/boot/compressed/Makefile
linux-2.4.0-prerelease-greg/arch/i386/boot/compressed/Makefile
--- linux-2.4.0-prerelease/arch/i386/boot/compressed/Makefile Tue Mar 7 11:04:12
2000
+++ linux-2.4.0-prerelease-greg/arch/i386/boot/compressed/Makefile Tue Jan 2
+10:31:04 2001
@@ -12,6 +12,12 @@
CFLAGS = $(CPPFLAGS) -O2 -DSTDC_HEADERS
ZLDFLAGS = -e startup_32
+# if we have a StackGuard compiler, then we need to turn off the canary death handler
+stuff
+CFLAGS += $(shell if $(CC) -fno-canary-all-functions -S -o /dev/null -xc /dev/null
+>/dev/null 2>&1; then echo "-fno-canary-all-functions"; fi)
+CFLAGS += $(shell if $(CC) -mno-terminator-canary -S -o /dev/null -xc /dev/null
+>/dev/null 2>&1; then echo "-mno-terminator-canary"; fi)
+
+
+
#
# ZIMAGE_OFFSET is the load offset of the compression loader
# BZIMAGE_OFFSET is the load offset of the high loaded compression loader