patches/linux/2.4.26/linux-2.4-bsd-expr.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
     1 # http://in3www.epfl.ch/~schaffne/linux-2.4-bsd-expr.patch
     2 The following makes it possible to compile linux 2.4.19 to 2.4.25 on Mac OS X,
     3 where "expr" doesn't understand the "length" construct
     4 (which it doesn't have to, according to SuSv3
     5 (see http://www.opengroup.org/onlinepubs/007904975/utilities/expr.html)
     6 See also http://sources.redhat.com/ml/crossgcc/2004-02/msg00131.html
     7 
     8 Fixes error
     9   expr: syntax error
    10   KERNELRELEASE "2.4.21" exceeds 64 characters
    11   make: *** [include/linux/version.h] Error 1
    12 
    13 
    14 diff -ur linux-2.4.23-old/Makefile linux-2.4.23/Makefile
    15 --- linux-2.4.23-old/Makefile	2003-12-09 14:27:56.000000000 +0100
    16 +++ linux-2.4.23/Makefile	2003-12-09 14:28:37.000000000 +0100
    17 @@ -353,7 +353,7 @@
    18  	@rm -f .ver1
    19  
    20  include/linux/version.h: ./Makefile
    21 -	@expr length "$(KERNELRELEASE)" \<= $(uts_len) > /dev/null || \
    22 +	@expr "$(KERNELRELEASE)" : '.*' \<= $(uts_len) > /dev/null || \
    23  	  (echo KERNELRELEASE \"$(KERNELRELEASE)\" exceeds $(uts_len) characters >&2; false)
    24  	@echo \#define UTS_RELEASE \"$(KERNELRELEASE)\" > .ver
    25  	@echo \#define LINUX_VERSION_CODE `expr $(VERSION) \\* 65536 + $(PATCHLEVEL) \\* 256 + $(SUBLEVEL)` >> .ver