patches/uClibc/0.9.28/001-install_dev.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Feb 17 22:08:06 2008 +0000 (2008-02-17)
changeset 431 8bde4c6ea47a
permissions -rw-r--r--
Robert P. J. DAY says:

apparently, the patchset for gcc 4.2.1 applies properly to the
source for gcc 4.2.2 and gcc 4.2.3. so, if you want, you can simply
add support for those last two just by augmenting menuconfig and
adding a couple symlinks for those two directories. seems like a
cheap way to add a couple new versions.
     1 There are at least three weird glitches in the Makefile:
     2  - the test operator is a dual-equal sign (==) when it should be a single one (=);
     3  - the exclude options are not accepted as is by GNU tar;
     4  - how on earth could KERNEL_SOURCE possibly be equal to DEVEL_PREFIX ???
     5 
     6 We (Cedric DUVAL and I, Yann E. MORIN) are not quite sure why it is that way.
     7 We're not quite sure either on how to solve this.
     8 
     9 What we need is to built a toolchain; in no way we need to install the linux headers.
    10   ==> systematically exclude them from the [s]tar command.
    11 
    12 This patch is inspired by the svn repository of uClibc as of 20060209.
    13 diff -dur /home/ymorin/dev/uClibc-0.9.28/Makefile uClibc-0.9.28/Makefile
    14 --- /home/ymorin/dev/uClibc-0.9.28/Makefile	2005-08-18 00:49:49.000000000 +0200
    15 +++ uClibc-0.9.28/Makefile	2006-02-09 17:06:58.000000000 +0100
    16 @@ -158,12 +158,17 @@
    17  	$(INSTALL) -d $(PREFIX)$(DEVEL_PREFIX)lib
    18  	$(INSTALL) -d $(PREFIX)$(DEVEL_PREFIX)include
    19  	-$(INSTALL) -m 644 lib/*.[ao] $(PREFIX)$(DEVEL_PREFIX)lib/
    20 -	if [ "$(KERNEL_SOURCE)" == "$(DEVEL_PREFIX)" ] ; then \
    21 -		extra_exclude="--exclude include/linux --exclude include/asm'*'" ; \
    22 -	else \
    23 -		extra_exclude="" ; \
    24 -	fi ; \
    25 -	tar -chf - include --exclude .svn --exclude CVS $$extra_exclude \
    26 +#	if [ "$(KERNEL_SOURCE)" == "$(DEVEL_PREFIX)" ] ; then \
    27 +#		extra_exclude="--exclude include/linux --exclude include/asm'*'" ; \
    28 +#	else \
    29 +#		extra_exclude="" ; \
    30 +#	fi ; \
    31 +#	tar -chf - include --exclude .svn --exclude CVS $$extra_exclude \
    32 +#		| tar -xf - -C $(PREFIX)$(DEVEL_PREFIX)
    33 +	printf ".svn\n.cvsignore\nCVS\n" > tar_exclude ; \
    34 +	ls -1d include/linux include/asm* >> tar_exclude ; \
    35 +	tar -chf - -X tar_exclude include \
    36  		| tar -xf - -C $(PREFIX)$(DEVEL_PREFIX)
    37 +	rm -f tar_exclude
    38  ifneq ($(strip $(UCLIBC_HAS_FLOATS)),y)
    39  	# Remove floating point related headers since float support is disabled.