r308 - in x86/branches/utf8: . packages/gawk

alexander at linuxfromscratch.org alexander at linuxfromscratch.org
Fri Jul 8 03:44:00 PDT 2005


Author: alexander
Date: 2005-07-08 04:43:59 -0600 (Fri, 08 Jul 2005)
New Revision: 308

Modified:
   x86/branches/utf8/Makefile
   x86/branches/utf8/packages/gawk/Makefile
Log:
Added Debian patches to gawk (because all relevant RedHat patches have
a Debian duplicate, but not the other way round).

If you add 17_fix-non-numeric-constants.dpatch later, please also add
the -locale patch from RedHat.



Modified: x86/branches/utf8/Makefile
===================================================================
--- x86/branches/utf8/Makefile	2005-07-08 07:47:45 UTC (rev 307)
+++ x86/branches/utf8/Makefile	2005-07-08 10:43:59 UTC (rev 308)
@@ -170,7 +170,7 @@
 	@-mount -f -t devpts -o gid=4,mode=620 devpts $(MP)/dev/pts
 
 pre-bash: createdirs createfiles popdev ch-linux-libc-headers ch-man-pages ch-glibc ch-re-adjust-toolchain \
-	ch-binutils ch-gcc ch-redhat-patches ch-coreutils ch-zlib ch-mktemp ch-iana-etc stop-here ch-findutils ch-gawk ch-sharutils ch-gpm ch-ncurses \
+	ch-binutils ch-gcc ch-redhat-patches ch-coreutils ch-zlib ch-mktemp ch-iana-etc ch-findutils ch-gawk stop-here ch-sharutils ch-gpm ch-ncurses \
 	ch-readline ch-vim ch-m4 ch-bison ch-less ch-groff ch-sed ch-flex ch-gettext ch-inetutils \
 	ch-iproute2 ch-perl ch-texinfo ch-autoconf ch-automake ch-bash
 

Modified: x86/branches/utf8/packages/gawk/Makefile
===================================================================
--- x86/branches/utf8/packages/gawk/Makefile	2005-07-08 07:47:45 UTC (rev 307)
+++ x86/branches/utf8/packages/gawk/Makefile	2005-07-08 10:43:59 UTC (rev 308)
@@ -5,8 +5,51 @@
 VRS= 3.1.4
 DIR= $(NM)-$(VRS)
 FILE= $(DIR).tar.bz2
+PATCH= $(NM)_$(VRS)-2.diff
 URL= $(HTTP)/$(NM)/$(FILE)
+URL1= http://ftp.debian.org/debian/pool/main/g/gawk/$(PATCH).gz
 
+# Descriptions of RedHat patches:
+# -dfacache: disables DFA cache. This cache is meant to speed up operation in
+#       locales with multibyte character sets, but in fact produces incorrect
+#       result e. g. for LC_ALL=de_DE.UTF-8 ./gawk '/^[ \t]/ { print }'
+#       RedHat BZ #135210, #131498.
+#       See also http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=266519
+#       TODO: replace with the upstream fix (but where is upstream?)
+#       Duplicate: 10_dfa.c-disable-cache.dpatch from Debian.
+#
+# -nextc: prevents gawk from reading beyond EOF in multibyte locales.
+#       Duplicate: 16_awkgram.y-stop-at-eof.dpatch from Debian
+#
+# -uplow: accounts for the fact that upper- and lowercase versions of a
+#       character may differ in the number of bytes (that is the case for
+#       Turkish, "i" <-> "I with dot above")
+#       Duplicate: 15_builtin.c-fix-wide-char.dpatch from Debian
+#
+# -getpgrp_void: looks like RedHat-specific compiler problem. BZ #114246.
+#
+# -flonum: "improved" handling of non-numeric constants. Buggy, needs to
+#       be amended with the -locale patch.
+#       Similar, but not identical, to 17_fix-non-numeric-constants.dpatch
+#
+# -locale: fixes crash of gawk patched with -flonum when usng non-decimal
+#       data in command-line parameters:
+#         gawk --non-decimal-data -v a=0x1 'BEGIN { print a+0 }'
+#       XXX: maybe this breaks the POSIX mandated behavior that `.'
+#       always be the decimal point for command line assignments.
+
+# Descriptions of Debian patches can be found in the patches themselves.
+#
+DEBPATCHES= \
+	04_it.po-charset.dpatch \
+	10_dfa.c-disable-cache.dpatch \
+	11_dfa.c-ignorecase.dpatch \
+	12_dfa.c-ignorecase-range.dpatch \
+	13_dfa.c-charclass-bracket.dpatch \
+	14_io.c-fix-redirect-hang.dpatch \
+	15_builtin.c-fix-wide-char.dpatch \
+	17_fix-non-numeric-constants.dpatch
+
 # RULES
 
 .PHONY: stage1 clean chroot stage2
@@ -30,9 +73,14 @@
 	@echo ""
 	@if [ ! -f $(SRC)/$(FILE) ] ; then $(WGET) $(URL) && \
 	 mv $(FILE) $(SRC) ; fi
+	@if [ ! -f $(PATCH) ] ; then $(WGET) $(URL1) && \
+	 gunzip $(PATCH).gz ; fi
 	@if [ ! -f /usr/bin/gawk ] ; then unpack $(SRC)/$(FILE) && cd $(DIR) && \
+	 patch -Np1 -i ../$(PATCH) && \
+	 for DPATCH in $(DEBPATCHES) ; do \
+	  patch -Np1 -i debian/patches/$$DPATCH ; done && \
 	 ./configure --prefix=/usr --libexecdir=/usr/lib && \
-	 make -j3 && make install ; fi
+	 make -j3 && make -C po update-gmo && make install ; fi
 	@make clean
 
 clean:




More information about the livecd mailing list