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