update-copyright-tests: improve portability
[pspp] / tests / test-update-copyright.sh
index b72abbb8cf844cb0587aea5fb690c87d1c6be692..3d157ad157bd9cae53b648974efa7a7f8c01429e 100755 (executable)
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+diffout=`diff -u /dev/null /dev/null 2>&1`
+if test x"$diffout" = x"" && test $? -eq 0; then
+  compare() { diff -u "$@"; }
+else
+  compare() { cmp "$@"; }
+fi
+
 TMP_BASE=update-copyright.test
 
 ## ----------------------------- ##
@@ -24,17 +31,17 @@ TMP_BASE=update-copyright.test
 
 TMP=$TMP_BASE-ex
 cat > $TMP.1 <<EOF
-Copyright (C) 1990-2005, 2007-2009 Free Software Foundation,
-Inc.
+Copyright @copyright{} 1990-2005, 2007-2009 Free Software
+Foundation, Inc.
 EOF
 cat > $TMP.2 <<EOF
-# Copyright (c) 1990-2005, 2007-2009 Free Software
+# Copyright (C) 1990-2005, 2007-2009 Free Software
 # Foundation, Inc.
 EOF
 cat > $TMP.3 <<EOF
 /*
- * Copyright (C) 90,2005,2007-2009 Free Software
- * Foundation, Inc.
+ * Copyright &copy; 90,2005,2007-2009
+ * Free Software Foundation, Inc.
  */
 EOF
 cat > $TMP.4 <<EOF
@@ -53,33 +60,33 @@ EOF
 
 UPDATE_COPYRIGHT_YEAR=2009 \
   update-copyright $TMP.* 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u - $TMP-stderr <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare - $TMP-stderr <<EOF || exit 1
 $TMP.4: warning: FSF copyright statement not found
 $TMP.5: warning: FSF copyright statement not found
 EOF
-diff -u - $TMP.1 <<EOF || exit 1
-Copyright (C) 1990-2005, 2007-2009 Free Software Foundation,
-Inc.
+compare - $TMP.1 <<EOF || exit 1
+Copyright @copyright{} 1990-2005, 2007-2009 Free Software
+Foundation, Inc.
 EOF
-diff -u - $TMP.2 <<EOF || exit 1
-# Copyright (c) 1990-2005, 2007-2009 Free Software
+compare - $TMP.2 <<EOF || exit 1
+# Copyright (C) 1990-2005, 2007-2009 Free Software
 # Foundation, Inc.
 EOF
-diff -u - $TMP.3 <<EOF || exit 1
+compare - $TMP.3 <<EOF || exit 1
 /*
- * Copyright (C) 90,2005,2007-2009 Free Software
- * Foundation, Inc.
+ * Copyright &copy; 90,2005,2007-2009
+ * Free Software Foundation, Inc.
  */
 EOF
-diff -u - $TMP.4 <<EOF || exit 1
+compare - $TMP.4 <<EOF || exit 1
 /* Copyright (C) 1990-2005, 2007-2009 Free Software
  * Foundation, Inc.  */
 
 Copyright (C) 1990-2005, 2007-2009 Free Software Foundation,
 Inc.
 EOF
-diff -u - $TMP.5 <<EOF || exit 1
+compare - $TMP.5 <<EOF || exit 1
 Copyright (C) 1990-2005, 2007-2009 Acme, Inc.
 
 # Copyright (C) 1990-2005, 2007-2009 Free Software
@@ -88,30 +95,31 @@ EOF
 
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP.* 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u - $TMP-stderr <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare - $TMP-stderr <<EOF || exit 1
 $TMP.4: warning: FSF copyright statement not found
 $TMP.5: warning: FSF copyright statement not found
 EOF
-diff -u - $TMP.1 <<EOF || exit 1
-Copyright (C) 1990-2005, 2007-2010 Free Software Foundation, Inc.
+compare - $TMP.1 <<EOF || exit 1
+Copyright @copyright{} 1990-2005, 2007-2010 Free Software Foundation,
+Inc.
 EOF
-diff -u - $TMP.2 <<EOF || exit 1
-# Copyright (c) 1990-2005, 2007-2010 Free Software Foundation, Inc.
+compare - $TMP.2 <<EOF || exit 1
+# Copyright (C) 1990-2005, 2007-2010 Free Software Foundation, Inc.
 EOF
-diff -u - $TMP.3 <<EOF || exit 1
+compare - $TMP.3 <<EOF || exit 1
 /*
- * Copyright (C) 90, 2005, 2007-2010 Free Software Foundation, Inc.
+ * Copyright &copy; 90, 2005, 2007-2010 Free Software Foundation, Inc.
  */
 EOF
-diff -u - $TMP.4 <<EOF || exit 1
+compare - $TMP.4 <<EOF || exit 1
 /* Copyright (C) 1990-2005, 2007-2009 Free Software
  * Foundation, Inc.  */
 
 Copyright (C) 1990-2005, 2007-2009 Free Software Foundation,
 Inc.
 EOF
-diff -u - $TMP.5 <<EOF || exit 1
+compare - $TMP.5 <<EOF || exit 1
 Copyright (C) 1990-2005, 2007-2009 Acme, Inc.
 
 # Copyright (C) 1990-2005, 2007-2009 Free Software
@@ -132,9 +140,9 @@ cat > $TMP <<EOF
 '\" Inc.
 EOF
 update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+compare - $TMP <<EOF || exit 1
 '\" Copyright (C) 2006, $YEAR Free Software Foundation, Inc.
 EOF
 rm $TMP*
@@ -153,9 +161,9 @@ dnl   Undisturbed text.
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+compare - $TMP <<EOF || exit 1
     Undisturbed text.
 dnl Undisturbed text.
 dnl Copyright (C) 1989, 2010 Free Software Foundation, Inc.
@@ -175,9 +183,9 @@ cat > $TMP <<EOF
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+compare - $TMP <<EOF || exit 1
 #### Copyright (C) 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984,
 #### 1985, 1986, 1987, 1988, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
 #### 2006, 2007, 2008, 2010 Free Software Foundation, Inc.
@@ -196,11 +204,11 @@ cat > $TMP <<EOF
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u - $TMP-stderr <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare - $TMP-stderr <<EOF || exit 1
 $TMP: warning: FSF copyright statement not found
 EOF
-diff -u - $TMP <<EOF || exit 1
+compare - $TMP <<EOF || exit 1
 ####  Copyright (C) 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
 ####  1986, 1987, 1988, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
 ####  2008 Free Software Foundation, Inc.
@@ -225,11 +233,11 @@ Copyright (C) 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u - $TMP-stderr <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare - $TMP-stderr <<EOF || exit 1
 $TMP: warning: FSF copyright statement not found
 EOF
-diff -u - $TMP <<EOF || exit 1
+compare - $TMP <<EOF || exit 1
 #Copyright (C) 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985,
 #
 #1986, 1987, 1988, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
@@ -254,9 +262,9 @@ cat > $TMP <<EOF
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+compare - $TMP <<EOF || exit 1
        Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
        98, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
        2009-2010 Free Software Foundation, Inc.
@@ -275,9 +283,9 @@ cat > $TMP <<EOF
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+compare - $TMP <<EOF || exit 1
                # Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995,
                # 1996, 1997, 98, 1999, 2000, 2001, 2002, 2003, 2004,
                # 2005, 2006, 2007, 2008, 2009-2010 Free Software
@@ -290,20 +298,21 @@ rm $TMP*
 ## --------- ##
 
 TMP=$TMP_BASE-dos-eol
-cat > $TMP <<EOF
-Rem Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
-Rem 98, 1999, 2000, 2001, 2002, 2003,  2004, 2005, 2006, 2007, 2008,
-Rem 2009 Free Software Foundation, Inc.
+tr @ '\015' > $TMP <<\EOF
+Rem Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995, 1996, 1997,@
+Rem 98, 1999, 2000, 2001, 2002, 2003,  2004, 2005, 2006, 2007, 2008,@
+Rem 2009 Free Software Foundation, Inc.@
 EOF
 UPDATE_COPYRIGHT_YEAR=2010 \
   update-copyright $TMP 1> $TMP-stdout 2> $TMP-stderr
-diff -u /dev/null $TMP-stdout || exit 1
-diff -u /dev/null $TMP-stderr || exit 1
-diff -u - $TMP <<EOF || exit 1
-Rem Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 98,
-Rem 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-Rem 2009-2010 Free Software Foundation, Inc.
-EOF
+compare /dev/null $TMP-stdout || exit 1
+compare /dev/null $TMP-stderr || exit 1
+tr @ '\015' > $TMP-exp <<\EOF
+Rem Copyright (C) 87, 88, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 98,@
+Rem 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,@
+Rem 2009-2010 Free Software Foundation, Inc.@
+EOF
+compare $TMP-exp $TMP || exit 1
 rm $TMP*
 
 exit 0