patches/linux/2.4.26/170-linux-2.4-bsd-expr.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Jul 31 09:08:33 2008 +0000 (2008-07-31)
changeset 752 b037a5643e04
permissions -rw-r--r--
Have the glibc build use the cross-objdump, rather than the host one.
On some distros (eg. Fedora), the native objdump can not interpret objects not for the native system, and thus fail.
This commit adds a new patch against glibc-2.7 that introduces OBJDUMP_FOR_HOST, wich, if set, overides the detected objdump.

Note: bizarely enough, glibc already has code to detect the cross-objdump, but that does not work for an unknown reason... :-(

/trunk/patches/glibc/2.7/220-objdump_for_host.patch | 13 13 0 0 +++++++++
/trunk/scripts/build/libc_glibc.sh | 37 21 16 0 +++++++++++++++------------
2 files changed, 34 insertions(+), 16 deletions(-)
     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