yann@1: # http://in3www.epfl.ch/~schaffne/linux-2.4-bsd-expr.patch yann@1: The following makes it possible to compile linux 2.4.19 to 2.4.25 on Mac OS X, yann@1: where "expr" doesn't understand the "length" construct yann@1: (which it doesn't have to, according to SuSv3 yann@1: (see http://www.opengroup.org/onlinepubs/007904975/utilities/expr.html) yann@1: See also http://sources.redhat.com/ml/crossgcc/2004-02/msg00131.html yann@1: yann@1: Fixes error yann@1: expr: syntax error yann@1: KERNELRELEASE "2.4.21" exceeds 64 characters yann@1: make: *** [include/linux/version.h] Error 1 yann@1: yann@1: yann@1: diff -ur linux-2.4.23-old/Makefile linux-2.4.23/Makefile yann@1: --- linux-2.4.23-old/Makefile 2003-12-09 14:27:56.000000000 +0100 yann@1: +++ linux-2.4.23/Makefile 2003-12-09 14:28:37.000000000 +0100 yann@1: @@ -353,7 +353,7 @@ yann@1: @rm -f .ver1 yann@1: yann@1: include/linux/version.h: ./Makefile yann@1: - @expr length "$(KERNELRELEASE)" \<= $(uts_len) > /dev/null || \ yann@1: + @expr "$(KERNELRELEASE)" : '.*' \<= $(uts_len) > /dev/null || \ yann@1: (echo KERNELRELEASE \"$(KERNELRELEASE)\" exceeds $(uts_len) characters >&2; false) yann@1: @echo \#define UTS_RELEASE \"$(KERNELRELEASE)\" > .ver yann@1: @echo \#define LINUX_VERSION_CODE `expr $(VERSION) \\* 65536 + $(PATCHLEVEL) \\* 256 + $(SUBLEVEL)` >> .ver