Incompatibility of gcc-4.1.1 build with Make-3.81

Alexander E. Patrakov diy-linux-dev@diy-linux.org
Mon, 11 Dec 2006 16:45:48 +0500


This is a MIME-formatted message.  If you see this text it means that your
E-mail software does not support MIME-formatted messages.

--=_ums.usu.ru-18959-1165837497-0001-2
Content-Type: text/plain; charset=koi8-r; format=flowed
Content-Transfer-Encoding: 7bit

Hello,

Archaic turned my attention to the following piece of GCC Chapter 6 
build log in LFS SVN (also present in the LiveCD trunk logs):

echo | /lfs-livecd/packages/gcc/gcc-build/./gcc/xgcc 
-B/lfs-livecd/packages/gcc/gcc-build/./gcc/ 
-B/usr/i486-pc-linux-gnu/bin/ -B/usr/i486-pc-linux-gnu/lib/ -isystem 
/usr/i486-pc-linux-gnu/include -isystem 
/usr/i486-pc-linux-gnu/sys-include -E -dM - | \
          sed -n 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p ; \
                s/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
          sort -u > tmp-macro_list
sed: -e expression #1, char 88: unterminated address regex

This bug goes away if I downgrade Make to 3.80. Alternatively, the 
attached patch (backported from gcc-4_2-branch) has to be applied.

-- 
Alexander E. Patrakov



--=_ums.usu.ru-18959-1165837497-0001-2
Content-Type: text/x-patch; name="gcc-4.1.1-newmake-1.patch"; charset=iso-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="gcc-4.1.1-newmake-1.patch"

Submitted By: Alexander E. Patrakov
Date: 2006-12-11
Initial Package Version: 4.1.1
Upstream Status: backported from gcc-4_2-branch
Origin: backported from gcc-4_2-branch
Description: Fixes incompatibility with Make-3.81,
that would result in the following messages in the build log:

echo | /lfs-livecd/packages/gcc/gcc-build/./gcc/xgcc -B/lfs-livecd/packages/gcc/gcc-build/./gcc/ -B/usr/i486-pc-linux-gnu/bin/ -B/usr/i486-pc-linux-gnu/lib/ -isystem /usr/i486-pc-linux-gnu/include -isystem /usr/i486-pc-linux-gnu/sys-include -E -dM - | \
          sed -n 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p ; \
                s/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
          sort -u > tmp-macro_list
sed: -e expression #1, char 88: unterminated address regex

--- gcc-4.1.1/gcc/Makefile.in
+++ gcc-4.1.1/gcc/Makefile.in
@@ -3146,8 +3209,8 @@
 macro_list: s-macro_list; @true
 s-macro_list : $(GCC_PASSES) 
 	echo | $(GCC_FOR_TARGET) -E -dM - | \
-	  sed -n 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p ; \
-		s/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
+	  sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \
+		 -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
 	  sort -u > tmp-macro_list
 	$(SHELL) $(srcdir)/../move-if-change tmp-macro_list macro_list
 	$(STAMP) s-macro_list
 

--=_ums.usu.ru-18959-1165837497-0001-2--