Use an all-permissive copyright notice, recommended by RMS.
[gnulib.git] / config / srclist-update
index 40619e2..a77e0e0 100755 (executable)
@@ -1,11 +1,31 @@
 #!/bin/sh
-# $Id: srclist-update,v 1.10 2003-07-16 12:47:48 karl Exp $
+# $Id: srclist-update,v 1.15 2004-06-22 18:28:25 eggert Exp $
 #
 # Check for files in directory $1 being up to date, according to the
 # list on stdin.  Don't actually make any changes, just show the diffs.
 #
 # Source `dirname $0`/srclistvars.sh first, if it exists.
 
+# Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# Written by Karl Berry.
+
+
 if test -n "$1"; then
   cd "$1" || exit 1
 fi
@@ -21,28 +41,24 @@ test -r $mydir/srclistvars.sh && . $mydir/srclistvars.sh
 
 
 # \f
-# $1 is input, output to stdout with gpl.
-#
-fixlicense() \
-{
-    sed '
-
-  /^\([[:space:]]*#[[:space:]]*\)Th[ei][ s].* is free software/,/^[[:space:]]*#.*USA\./c\
-#      This program is free software; you can redistribute it and/or modify\
-#      it under the terms of the GNU General Public License as published by\
-#      the Free Software Foundation; either version 2, or (at your option)\
-#      any later version.\
+# sed command to fix the license to be GPL.
+fixlicense='
+  /^[[:space:]]*#[[:space:]]*Th[ei][ s].* is free software/,/^[[:space:]]*#.*USA\./c\
+#   This program is free software; you can redistribute it and/or modify\
+#   it under the terms of the GNU General Public License as published by\
+#   the Free Software Foundation; either version 2, or (at your option)\
+#   any later version.\
 #\
-#      This program is distributed in the hope that it will be useful,\
-#      but WITHOUT ANY WARRANTY; without even the implied warranty of\
-#      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\
-#      GNU General Public License for more details.\
+#   This program is distributed in the hope that it will be useful,\
+#   but WITHOUT ANY WARRANTY; without even the implied warranty of\
+#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\
+#   GNU General Public License for more details.\
 #\
-#      You should have received a copy of the GNU General Public License along\
-#      with this program; if not, write to the Free Software Foundation,\
-#      Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#   You should have received a copy of the GNU General Public License along\
+#   with this program; if not, write to the Free Software Foundation,\
+#   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-  /Th[ei][ s].* is free software/,/USA\.  *\*\//c\
+  /Th[ei][ s].* is free software/,/\*\//c\
    This program is free software; you can redistribute it and/or modify\
    it under the terms of the GNU General Public License as published by\
    the Free Software Foundation; either version 2, or (at your option)\
@@ -56,9 +72,11 @@ fixlicense() \
    You should have received a copy of the GNU General Public License along\
    with this program; if not, write to the Free Software Foundation,\
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
-' $1
-}
+'
 
+# sed command to remove lines containing $Id lines.
+# Quote the $Id so that CVS does not expand it in this script.
+remove_id_lines='/[$]Id:.*[$]/d'
 
 # $1 is input file, $2 is output.
 # Remove $Id lines, since they'll differ between source locations.
@@ -67,13 +85,14 @@ fixlicense() \
 #
 fixfile() \
 {
+  sed_command="$remove_id_lines"
+
   case " $options " in
   *' gpl '*)
-    fixlicense $1;;
-  *)
-    cat $1;;
-  esac \
-  | grep -v '[$]Id:.*[$]' >$2 2>&1
+    sed_command="$sed_command; $fixlicense";;
+  esac
+
+  sed "$sed_command" $1 >$2
 }
 
 
@@ -98,7 +117,7 @@ cat | while read src dst options; do
   eval dst=$dst
   test -d $dst && dst=$dst/`basename $src`
 
-  # Do license changes and $Id removal in both src and dst, for the sake
+  # Fix files in both src and dst, for the sake
   # of a clean comparison.
   srctmp=$TMPDIR/`basename $src`
   fixfile $src $srctmp