Re: We interrupt you regularly scheduled catfight for.. Linux 2.2.18pre13

From: Christoph Hellwig (hch@caldera.de)
Date: Sat Sep 30 2000 - 18:07:55 EST


> o Fix the 'which' compiler stuff (Horst von Brand,
> Peter Samuelson)
> | Can someone verify for me this works on Slackware and
> | on Caldera ?

It breaks on Caldera.
The errors are:

------ snip -----
bin/sh: syntax error near unexpected token `(/'
/bin/sh: -c: line 1: `if which: no gcc272 in (/bin:/usr/bin:/usr/sbin:/sbin:/home/lstguest/hch/bin)
which: no kgcc in (/bin:/usr/bin:/usr/sbin:/sbin:/home/lstguest/hch/bin) cc -D__KERNEL__
-I/home.stand/lstguest/hch/linux/include -fno-strict-aliasing -S -o /dev/null -xc /dev/null >/dev/null
2>&1; then echo "-fno-strict-aliasing"; fi'
(/bin:/usr/bin:/usr/sbin:/sbin:/home/lstguest/hch/bin) cc -D__KERNEL__
-I/home.stand/lstguest/hch/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -D__SMP__
-pipe -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -v 2>&1
------ snip -----

The problem is that the which output is not ignored.
The following patch fixes it:

----- snip -----

--- Makefile~ Sun Oct 1 00:46:27 2000
+++ Makefile Sun Oct 1 00:49:27 2000
@@ -23,7 +23,7 @@
 AS =$(CROSS_COMPILE)as
 LD =$(CROSS_COMPILE)ld
 CC =$(shell if [ -n "$(CROSS_COMPILE)" ]; then echo $(CROSS_COMPILE)cc; else \
- which gcc272 2>/dev/null || which kgcc 2>/dev/null || echo cc; fi) \
+ which gcc272 >/dev/null 2>/dev/null || which kgcc > /dev/null 2>/dev/null || echo cc; fi) \
         -D__KERNEL__ -I$(HPATH)
 #CC =$(CROSS_COMPILE)cc -D__KERNEL__ -I$(HPATH)
 CPP =$(CC) -E
----- snip -----

I personally dislike the 'autmatically detect kgcc and gcc272' patches a lot,
and I think we should put a sentence like

If you are using a distribution that ships with a default C compiler that is
not able to compile linux kernel, use make CC=kgcc (redhat) or CC=gcc272
(debian) instead.

into README, instead of fiddling around with a command/program with lots of
different and incompatible versions.

        Christoph

-- 
Always remember that you are unique.  Just like everyone else.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 30 2000 - 21:00:27 EST