bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gnulib-tool: support for hierarchies of modules


From: Ralf Wildenhues
Subject: Re: gnulib-tool: support for hierarchies of modules
Date: Tue, 9 Jan 2007 20:47:02 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

Hello Bruno,

* Bruno Haible wrote on Tue, Jan 09, 2007 at 02:39:43PM CET:

> !       | sed -e '/^CVS$/d' -e '/[/]CVS$/d' \
> !             -e '/^ChangeLog$/d' -e '/[/]ChangeLog$/d' \
> !             -e '/^COPYING$/d' -e '/[/]COPYING$/d' \
> !             -e '/^README$/d' -e '/[/]README$/d' \
> !             -e '/^TEMPLATE$/d' \
> !             -e '/^TEMPLATE-TESTS$/d' \
> !             -e '/~$/d' \

As noted in
<http://www.gnu.org/software/autoconf/manual/html_node/Limitations-of-Usual-Tools.html#index-g_t_0040command_007bsed_007d-1292>
this isn't POSIX-conforming.  For example:

$ echo | sed -e '/[/]CVS$/d'
sed: 1: "/[/]CVS$/d": RE error: [ ] imbalance or syntax error

Yes, I know that nobody really uses gnulib-tool on this Cray.
But backslash-escaping is similarly easy and guaranteed to work
on POSIX-conformant systems.  So here's a proposed patch.

(I bet I mixed up the meaning of conforming/-ant again now...)

Cheers,
Ralf

2007-01-09  Ralf Wildenhues  <address@hidden>

        * gnulib-tool (func_all_modules): Use POSIX conforming escaping
        in sed script.

Index: gnulib-tool
===================================================================
RCS file: /cvsroot/gnulib/gnulib/gnulib-tool,v
retrieving revision 1.210
diff -u -r1.210 gnulib-tool
--- gnulib-tool 9 Jan 2007 13:44:33 -0000       1.210
+++ gnulib-tool 9 Jan 2007 19:44:37 -0000
@@ -819,10 +819,10 @@
       (cd "$local_gnulib_dir" && find modules -type f -print | sed -e 
's,^modules/,,' -e 's,\.diff$,,')
     fi
   } \
-      | sed -e '/^CVS$/d' -e '/[/]CVS$/d' \
-            -e '/^ChangeLog$/d' -e '/[/]ChangeLog$/d' \
-            -e '/^COPYING$/d' -e '/[/]COPYING$/d' \
-            -e '/^README$/d' -e '/[/]README$/d' \
+      | sed -e '/^CVS$/d' -e '/\/CVS$/d' \
+            -e '/^ChangeLog$/d' -e '/\/ChangeLog$/d' \
+            -e '/^COPYING$/d' -e '/\/COPYING$/d' \
+            -e '/^README$/d' -e '/\/README$/d' \
             -e '/^TEMPLATE$/d' \
             -e '/^TEMPLATE-TESTS$/d' \
             -e '/~$/d' \




reply via email to

[Prev in Thread] Current Thread [Next in Thread]