Added workaround for annoying gettextize behaviour
authorJohn Darrington <john@darrington.wattle.id.au>
Tue, 3 Feb 2004 01:28:35 +0000 (01:28 +0000)
committerJohn Darrington <john@darrington.wattle.id.au>
Tue, 3 Feb 2004 01:28:35 +0000 (01:28 +0000)
Smake
gettextize [new file with mode: 0755]
po/en_GB.po
po/pspp.pot

diff --git a/Smake b/Smake
index 00ae6ca7e42aa1fa30b3cdc272e3d1675b2ad1fc..eae10349e95931c1f01a6450ee6157bf0ceec484 100644 (file)
--- a/Smake
+++ b/Smake
@@ -15,17 +15,7 @@ install-sh Makefile.in: intl Makefile.am aclocal.m4 config.h.in ABOUT-NLS
        automake --add-missing
 
 po/Makefile.in.in intl ABOUT-NLS:
-       touch -f Makefile.am Makefile.am-stamp
-       touch -f configure.ac configure.ac-stamp
-       cp -a configure.ac configure.ac-bak
-       cp -a Makefile.am Makefile.am-bak
-       gettextize -f -c --no-changelog --intl
-       cp -a Makefile.am-bak Makefile.am
-       touch -f Makefile.am-stamp Makefile.am
-       cp -a configure.ac-bak configure.ac
-       touch -f configure.ac-stamp configure.ac
-       $(RM) configure.ac-bak configure.ac-stamp
-       $(RM) Makefile.am-bak Makefile.am-stamp
+       ./gettextize -f -c --no-changelog --intl
 
 
 
diff --git a/gettextize b/gettextize
new file mode 100755 (executable)
index 0000000..2f023c5
--- /dev/null
@@ -0,0 +1,827 @@
+#! /bin/sh
+#
+# Copyright (C) 1995-1998, 2000-2002 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.
+#
+
+# This file was copied from gettextize version 0.11.5 and modified to allow
+# sensible use --- what the gettext maintainers call `misuse' and refuse to
+# support.  John Darrington 3 Feb 2004
+
+progname=$0
+package=gettext
+version=0.11.5-jmd-hacked
+
+# func_usage
+# outputs to stdout the --help usage message.
+func_usage ()
+{
+  echo "\
+Usage: gettextize [OPTION]... [package-dir]
+
+Prepares a source package to use gettext.
+
+Options:
+      --help           print this help and exit
+      --version        print version information and exit
+  -c, --copy           copy files instead of making symlinks
+  -f, --force          force writing of new files even if old exist
+      --intl           install libintl in a subdirectory
+      --no-changelog   don't update or create ChangeLog files
+  -n, --dry-run        print modifications but don't perform them
+
+Report bugs to <bug-gnu-gettext@gnu.org>."
+}
+
+# func_version
+# outputs to stdout the --version message.
+func_version ()
+{
+  echo "$progname (GNU $package) $version"
+  echo "Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+  echo "Written by" "Ulrich Drepper"
+}
+
+# func_fatal_error message
+# outputs to stderr a fatal error message, and terminates the program.
+func_fatal_error ()
+{
+  echo "gettextize: *** $1" 1>&2
+  echo "gettextize: *** Stop." 1>&2
+  exit 1
+}
+
+# Command-line option processing.
+# Removes the OPTIONS from the arguments. Sets the variables:
+# - force           1 if --force was given, 0 otherwise
+# - intldir         yes if --intl was given, empty otherwise
+# - try_ln_s        false if --copy was given, : otherwise
+# - do_changelog    false if --no-changelog was given, : otherwise
+# - doit            false if --dry-run was given, : otherwise
+{
+  force=0
+  intldir=
+  try_ln_s=:
+  do_changelog=:
+  doit=:
+
+  while test $# -gt 0; do
+    case "$1" in
+      -c | --copy | --cop | --co | --c )
+        shift
+        try_ln_s=false ;;
+      -n | --dry-run | --dry-ru | --dry-r | --dry- | --dry | --dr | --d )
+        shift
+        doit=false ;;
+      -f | --force | --forc | --for | --fo | --f )
+        shift
+        force=1 ;;
+      --help | --hel | --he | --h )
+        func_usage; exit 0 ;;
+      --intl | --int | --in | --i )
+        shift
+        intldir=yes ;;
+      --no-changelog | --no-changelo | --no-changel | --no-change | --no-chang | --no-chan | --no-cha | --no-ch | --no-c )
+        shift
+        do_changelog=false ;;
+      --version | --versio | --versi | --vers | --ver | --ve | --v )
+        func_version
+        exit 0 ;;
+      -- )     # Stop option prcessing
+        shift; break ;;
+      -* )
+        echo "gettextize: unknown option $1" 1>&2
+        echo "Try 'gettextize --help' for more information." 1>&2
+        exit 1 ;;
+      * )
+        break ;;
+    esac
+  done
+}
+
+# Command-line argument processing.
+# Analyzes the remaining arguments.
+# Sets the variables
+# - origdir         to the original directory,
+# - srcdir          to the package directory, and cd-s into it.
+{
+  if test $# -gt 1; then
+    func_usage 1>&2
+    exit 1
+  fi
+  origdir=`pwd`
+  if test $# -eq 1; then
+    srcdir=$1
+    if cd "$srcdir"; then
+      srcdir=`pwd`
+    else
+      func_fatal_error "Cannot change directory to '$srcdir'."
+    fi
+  else
+    srcdir=$origdir
+  fi
+}
+
+# The current directory is now $srcdir.
+
+# Set variable
+# - gettext_dir     directory where the sources are stored.
+prefix="/usr"
+gettext_dir="${prefix}/share/gettext"
+
+# Check integrity of package: A configure.in/ac must be present. Sets variable
+# - configure_in    name of configure.in/ac file.
+test -f configure.in || test -f configure.ac ||
+  func_fatal_error "Missing configure.in or configure.ac, please cd to your package first."
+configure_in=NONE
+if test -f configure.in; then
+  configure_in=configure.in
+else
+  if test -f configure.ac; then
+    configure_in=configure.ac
+  fi
+fi
+
+# Check whether the --force option is needed but has not been specified.
+if test $force -eq 0; then
+  if test -d intl; then
+    func_fatal_error "intl/ subdirectory exists: use option -f if you really want to delete it."
+  fi
+  if test -f po/Makefile.in.in; then
+    func_fatal_error "po/Makefile.in.in exists: use option -f if you really want to delete it."
+  fi
+  if test -f ABOUT-NLS; then
+    func_fatal_error "ABOUT-NLS exists: use option -f if you really want to delete it."
+  fi
+fi
+
+# Check in which directory config.rpath, mkinstalldirs etc. belong.
+auxdir=`cat "$configure_in" | grep '^AC_CONFIG_AUX_DIR' | sed -n -e 's/AC_CONFIG_AUX_DIR(\([^()]*\))/\1/p' | sed -e 's/^\[\(.*\)\]$/\1/' | sed -e 1q`
+if test -n "$auxdir"; then
+  auxdir="$auxdir/"
+fi
+
+# For simplicity we change to the gettext source directory.
+cd $gettext_dir ||
+  func_fatal_error "gettext source directory '${gettext_dir}' doesn't exist"
+
+# Variables which keep track what has been modified.
+added_directories=
+removed_directory=
+added_extradist=
+added_acoutput=
+removed_acoutput=" intl/intlh.inst"
+
+# Variable:
+# - please          accumulates instructions for the user.
+please=
+
+# Variable:
+# - date            current date, for use in ChangeLog entries.
+date=`date +%Y-%m-%d`
+
+# func_copy from to
+# copies a file.
+# 'from' is a relative pathname, relative to the current directory.
+# 'to' is a relative pathname, relative to $srcdir.
+func_copy ()
+{
+  if $doit; then
+    rm -f "$srcdir/$2"
+    echo "Copying file $2"
+    cp "$1" "$srcdir/$2"
+  else
+    echo "Copy file $2"
+  fi
+}
+
+# func_linkorcopy from absfrom to
+# links or copies a file.
+# 'from' is a relative pathname, relative to the current directory.
+# 'absfrom' is the corresponding absolute pathname.
+# 'to' is a relative pathname, relative to $srcdir.
+func_linkorcopy ()
+{
+  if $doit; then
+    rm -f "$srcdir/$3"
+    ($try_ln_s && ln -s "$2" "$srcdir/$3" && echo "Symlinking file $3") 2>/dev/null ||
+    { echo "Copying file $3"; cp "$1" "$srcdir/$3"; }
+  else
+    if $try_ln_s; then
+      echo "Symlink file $3"
+    else
+      echo "Copy file $3"
+    fi
+  fi
+}
+
+# func_backup to
+# makes a backup of a file that is about to be overwritten or replaced.
+# 'to' is a relative pathname, relative to $srcdir.
+func_backup ()
+{
+  if $doit; then
+    if test -f "$srcdir/$1"; then
+      rm -f "$srcdir/$1~"
+      cp -p "$srcdir/$1" "$srcdir/$1~"
+    fi
+  fi
+}
+
+# func_remove to
+# removes a file.
+# 'to' is a relative pathname, relative to $srcdir.
+func_remove ()
+{
+  if $doit; then
+    echo "Removing $1"
+    rm -f "$srcdir/$1"
+  else
+    echo "Remove $1"
+  fi
+}
+
+# func_ChangeLog_init
+# func_ChangeLog_add_entry line
+# func_ChangeLog_finish
+# manage the ChangeLog file, relative to $srcdir.
+func_ChangeLog_init ()
+{
+  modified_ChangeLog=
+}
+func_ChangeLog_add_entry ()
+{
+  if $doit; then
+    if test -z "$modified_ChangeLog"; then
+      echo "$date  gettextize  <bug-gnu-gettext@gnu.org>" > "$srcdir/ChangeLog.tmp"
+      echo >> "$srcdir/ChangeLog.tmp"
+      modified_ChangeLog=yes
+    fi
+    echo "$1" >> "$srcdir/ChangeLog.tmp"
+  else
+    modified_ChangeLog=yes
+  fi
+}
+func_ChangeLog_finish ()
+{
+  if test -n "$modified_ChangeLog"; then
+    if $doit; then
+      echo >> "$srcdir/ChangeLog.tmp"
+      if test -f "$srcdir/ChangeLog"; then
+        echo "Adding an entry to ChangeLog (backup is in ChangeLog~)"
+        cat "$srcdir/ChangeLog" >> "$srcdir/ChangeLog.tmp"
+        rm -f "$srcdir/ChangeLog~"
+        cp -p "$srcdir/ChangeLog" "$srcdir/ChangeLog~"
+      else
+        echo "Creating ChangeLog"
+      fi
+      cp "$srcdir/ChangeLog.tmp" "$srcdir/ChangeLog"
+      rm -f "$srcdir/ChangeLog.tmp"
+    else
+      if test -f "$srcdir/ChangeLog"; then
+        echo "Add an entry to ChangeLog"
+      else
+        echo "Create ChangeLog"
+      fi
+    fi
+  fi
+}
+
+# func_poChangeLog_init
+# func_poChangeLog_add_entry line
+# func_poChangeLog_finish
+# manage the po/ChangeLog file, relative to $srcdir.
+func_poChangeLog_init ()
+{
+  modified_poChangeLog=
+}
+func_poChangeLog_add_entry ()
+{
+  if $doit; then
+    if test -z "$modified_poChangeLog"; then
+      echo "$date  gettextize  <bug-gnu-gettext@gnu.org>" > "$srcdir/po/ChangeLog.tmp"
+      echo >> "$srcdir/po/ChangeLog.tmp"
+      modified_poChangeLog=yes
+    fi
+    echo "$1" >> "$srcdir/po/ChangeLog.tmp"
+  else
+    modified_poChangeLog=yes
+  fi
+}
+func_poChangeLog_finish ()
+{
+  if test -n "$modified_poChangeLog"; then
+    if $doit; then
+      echo >> "$srcdir/po/ChangeLog.tmp"
+      if test -f "$srcdir/po/ChangeLog"; then
+        echo "Adding an entry to po/ChangeLog (backup is in po/ChangeLog~)"
+        cat "$srcdir/po/ChangeLog" >> "$srcdir/po/ChangeLog.tmp"
+        rm -f "$srcdir/po/ChangeLog~"
+        cp -p "$srcdir/po/ChangeLog" "$srcdir/po/ChangeLog~"
+      else
+        echo "Creating po/ChangeLog"
+      fi
+      cp "$srcdir/po/ChangeLog.tmp" "$srcdir/po/ChangeLog"
+      rm -f "$srcdir/po/ChangeLog.tmp"
+    else
+      if test -f "$srcdir/po/ChangeLog"; then
+        echo "Add an entry to po/ChangeLog"
+      else
+        echo "Create po/ChangeLog"
+      fi
+    fi
+  fi
+}
+
+# func_m4ChangeLog_init
+# func_m4ChangeLog_add_entry line
+# func_m4ChangeLog_finish
+# manage the $m4dir/ChangeLog file, relative to $srcdir.
+func_m4ChangeLog_init ()
+{
+  modified_m4ChangeLog=
+}
+func_m4ChangeLog_add_entry ()
+{
+  if $doit; then
+    if test -z "$modified_m4ChangeLog"; then
+      echo "$date  gettextize  <bug-gnu-gettext@gnu.org>" > "$srcdir/$m4dir/ChangeLog.tmp"
+      echo >> "$srcdir/$m4dir/ChangeLog.tmp"
+      modified_m4ChangeLog=yes
+    fi
+    echo "$1" >> "$srcdir/$m4dir/ChangeLog.tmp"
+  else
+    modified_m4ChangeLog=yes
+  fi
+}
+func_m4ChangeLog_finish ()
+{
+  if test -n "$modified_m4ChangeLog"; then
+    if $doit; then
+      echo >> "$srcdir/$m4dir/ChangeLog.tmp"
+      if test -f "$srcdir/$m4dir/ChangeLog"; then
+        echo "Adding an entry to $m4dir/ChangeLog (backup is in $m4dir/ChangeLog~)"
+        cat "$srcdir/$m4dir/ChangeLog" >> "$srcdir/$m4dir/ChangeLog.tmp"
+        rm -f "$srcdir/$m4dir/ChangeLog~"
+        cp -p "$srcdir/$m4dir/ChangeLog" "$srcdir/$m4dir/ChangeLog~"
+      else
+        echo "Creating $m4dir/ChangeLog"
+      fi
+      cp "$srcdir/$m4dir/ChangeLog.tmp" "$srcdir/$m4dir/ChangeLog"
+      rm -f "$srcdir/$m4dir/ChangeLog.tmp"
+    else
+      if test -f "$srcdir/$m4dir/ChangeLog"; then
+        echo "Add an entry to $m4dir/ChangeLog"
+      else
+        echo "Create $m4dir/ChangeLog"
+      fi
+    fi
+  fi
+}
+
+if test ! -f "$srcdir/intl/Makefile.in" && test -n "$intldir"; then
+  added_acoutput="$added_acoutput intl/Makefile"
+fi
+if test -f "$srcdir/intl/Makefile.in" && test -z "$intldir"; then
+  removed_acoutput="$removed_acoutput intl/Makefile"
+fi
+if test -d "$srcdir/intl"; then
+  # Remove everything inside intl except for RCS and CVS subdirs and invisible
+  # files.
+  if $doit; then
+    echo "Wiping out intl/ subdirectory"
+    (cd "$srcdir/intl" &&
+     for f in *; do
+       if test CVS != "$f" && test RCS != "$f"; then
+         rm -rf "$f"
+       fi
+     done)
+  else
+    echo "Wipe out intl/ subdirectory"
+  fi
+  if test -z "$intldir"; then
+    removed_directory=intl
+  fi
+else
+  if test -n "$intldir"; then
+    if $doit; then
+      echo "Creating intl/ subdirectory"
+      mkdir "$srcdir/intl" || func_fatal_error "failed to create intl/ subdirectory"
+    else
+      echo "Create intl/ subdirectory"
+    fi
+    added_directories="$added_directories intl"
+  fi
+fi
+
+$do_changelog && func_ChangeLog_init
+
+test -d "$srcdir/po" || {
+  if $doit; then
+    echo "Creating po/ subdirectory"
+    mkdir "$srcdir/po" || func_fatal_error "failed to create po/ subdirectory"
+  else
+    echo "Create po/ subdirectory"
+  fi
+}
+
+# Now copy all files.  Take care for the destination directories.
+for file in *; do
+  case $file in
+    ABOUT-NLS)
+      func_linkorcopy $file "$gettext_dir/$file" $file
+      ;;
+    config.rpath | mkinstalldirs)
+      if test -f "$srcdir/$auxdir$file"; then
+        :
+      else
+        added_extradist="$added_extradist $auxdir$file"
+      fi
+      func_linkorcopy $file "$gettext_dir/$file" "$auxdir$file"
+      ;;
+  esac
+done
+
+# Copy files to intl/ subdirectory.
+if test -n "$intldir"; then
+  cd intl
+  for file in *; do
+    if test $file != COPYING.LIB-2.0 && test $file != COPYING.LIB-2.1; then
+      if test $file != plural.c; then
+        func_linkorcopy $file "$gettext_dir/intl/$file" intl/$file
+      else
+        # plural.c is a generated file; it must be copied and touched.
+        func_copy $file intl/$file
+        if $doit; then
+          (sleep 2; touch "$srcdir/intl/$file") &
+        fi
+      fi
+    fi
+  done
+  cd ..
+else
+  echo "Not copying intl/ directory."
+  please="$please
+Please use AM_GNU_GETTEXT([external]) in order to cause autoconfiguration
+to look for an external libintl.
+"
+fi
+
+# Copy files to po/ subdirectory.
+$do_changelog && func_poChangeLog_init
+cd po
+for file in Makefile.in.in; do
+  same=no
+  if test -f "$srcdir/po/$file"; then
+    if cmp -s $file "$srcdir/po/$file"; then
+      same=yes
+    fi
+  else
+    added_acoutput="$added_acoutput po/Makefile.in"
+  fi
+  if $do_changelog && test $same = no; then
+    if test -f "$srcdir/po/$file"; then
+      func_poChangeLog_add_entry "     * $file: Upgrade to gettext-${version}."
+    else
+      func_poChangeLog_add_entry "     * $file: New file, from gettext-${version}."
+    fi
+  fi
+  func_backup po/$file
+  func_linkorcopy $file "$gettext_dir/po/$file" po/$file
+done
+for file in *; do
+  case $file in
+    Makefile.in.in)
+      # Already handled above.
+      ;;
+    Makevars)
+      func_linkorcopy $file "$gettext_dir/po/$file" po/$file.template
+      if test -f "$srcdir/po/$file"; then
+        sed -n -e 's/[         ]*\([A-Za-z0-9_]*\)[    ]*=.*/\1/p' < "$srcdir/po/$file" | LC_ALL=C sort > "$srcdir/po/$file.tmp1"
+        sed -n -e 's/[         ]*\([A-Za-z0-9_]*\)[    ]*=.*/\1/p' < "$srcdir/po/$file.template" | LC_ALL=C sort > "$srcdir/po/$file.tmp2"
+        missingvars=`LC_ALL=C comm -13 "$srcdir/po/$file.tmp1" "$srcdir/po/$file.tmp2"`
+        rm -f "$srcdir/po/$file.tmp1" "$srcdir/po/$file.tmp2"
+        if test -n "$missingvars"; then
+          please="$please
+Please update po/$file so that it defines all the variables mentioned
+in po/$file.template.
+You can then remove po/$file.template.
+"
+        fi
+      else
+        please="$please
+Please create po/$file from the template in po/$file.template.
+You can then remove po/$file.template.
+"
+      fi
+      ;;
+    *)
+      same=no
+      if test -f "$srcdir/po/$file"; then
+        if cmp -s $file "$srcdir/po/$file"; then
+          same=yes
+        fi
+      fi
+      if $do_changelog && test $same = no; then
+        if test -f "$srcdir/po/$file"; then
+          func_poChangeLog_add_entry " * $file: Upgrade to gettext-${version}."
+        else
+          func_poChangeLog_add_entry " * $file: New file, from gettext-${version}."
+        fi
+      fi
+      func_backup po/$file
+      func_linkorcopy $file $gettext_dir/po/$file po/$file
+      ;;
+  esac
+done
+if test -f "$srcdir/po/cat-id-tbl.c"; then
+  func_remove po/cat-id-tbl.c
+  $do_changelog && func_poChangeLog_add_entry "        * cat-id-tbl.c: Remove file."
+fi
+if test -f "$srcdir/po/stamp-cat-id"; then
+  func_remove po/stamp-cat-id
+  $do_changelog && func_poChangeLog_add_entry "        * stamp-cat-id: Remove file."
+fi
+$do_changelog && func_poChangeLog_finish
+
+m4filelist='  codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 inttypes.m4
+  inttypes_h.m4 inttypes-pri.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4
+  lib-prefix.m4 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4'
+# We cannot omit codeset.m4, glibc21.m4, intdiv0.m4, inttypes.m4,
+# inttypes_h.m4, isc-posix.m4, lcmessage.m4, stdint_h.m4, uintmax_t.m4
+# if test -z "$intldir", otherwise "aclocal -I m4" might give an error.
+# (aclocal doesn't know which macros are really needed, it looks which macros
+# are potentially needed.)
+
+# All sorts of bugs could occur if the configure file was remade with the wrong
+# version of gettext.m4 et al. (because then the configure and the po/Makefile.in.in
+# don't fit together). It is therefore important that the package carries the
+# right versions of gettext.m4 et al. with it.
+if test -f "$srcdir/Makefile.am"; then
+  # A package using automake.
+
+  # Extract the macro directory name from Makefile.am.
+  aclocal_amflags=`grep '^ACLOCAL_AMFLAGS[     ]*=' "$srcdir/Makefile.am" | sed -e 's/^ACLOCAL_AMFLAGS[        ]*=\(.*\)$/\1/'`
+  m4dir=m4
+  m4dir_is_next=
+  for arg in $aclocal_amflags; do
+    if test -n "$m4dir_is_next"; then
+      m4dir="$arg"
+      break
+    else
+      if test "X$arg" = "X-I"; then
+        m4dir_is_next=yes
+      else
+        m4dir_is_next=
+      fi
+    fi
+  done
+
+  # Update the *.m4 files and the corresponding Makefile.am.
+  $do_changelog && func_m4ChangeLog_init
+  added_m4files=
+  if test -d "$srcdir/$m4dir"; then
+    :
+  else
+    if $doit; then
+      echo "Creating directory $m4dir"
+      mkdir "$srcdir/$m4dir"
+    else
+      echo "Create directory $m4dir"
+    fi
+    added_directories="$added_directories $m4dir"
+  fi
+  for file in $m4filelist; do
+    same=no
+    if test -f "$srcdir/$m4dir/$file"; then
+      if cmp -s "${prefix}/share/aclocal/$file" "$srcdir/$m4dir/$file"; then
+        same=yes
+      fi
+    else
+      added_m4files="$added_m4files $file"
+    fi
+    if $do_changelog && test $same = no; then
+      if test -f "$srcdir/$m4dir/$file"; then
+        func_m4ChangeLog_add_entry "   * $file: Upgrade to gettext-${version}."
+      else
+        func_m4ChangeLog_add_entry "   * $file: New file, from gettext-${version}."
+      fi
+    fi
+    func_backup "$m4dir/$file"
+    func_linkorcopy "${prefix}/share/aclocal/$file" "${prefix}/share/aclocal/$file" "$m4dir/$file"
+  done
+  if test -n "$added_m4files"; then
+    if test -f "$srcdir/$m4dir/Makefile.am"; then
+      if $doit; then
+        echo "Updating EXTRA_DIST in $m4dir/Makefile.am (backup is in $m4dir/Makefile.am~)"
+        func_backup "$m4dir/Makefile.am"
+        rm -f "$srcdir/$m4dir/Makefile.am"
+        if grep '^EXTRA_DIST[  ]*=' "$srcdir/$m4dir/Makefile.am~" > /dev/null; then
+          sed -e "s%^\(EXTRA_DIST[     ]*=\)%\\1$added_m4files %" < "$srcdir/$m4dir/Makefile.am~" > "$srcdir/$m4dir/Makefile.am"
+          $do_changelog && func_m4ChangeLog_add_entry "        * Makefile.am (EXTRA_DIST): Add the new files."
+        else
+          (cat "$srcdir/$m4dir/Makefile.am~"; echo; echo "EXTRA_DIST =$added_m4files") > "$srcdir/$m4dir/Makefile.am"
+          $do_changelog && func_m4ChangeLog_add_entry "        * Makefile.am (EXTRA_DIST): New variable."
+        fi
+      else
+        echo "Update EXTRA_DIST in $m4dir/Makefile.am"
+        $do_changelog && func_m4ChangeLog_add_entry "  * Makefile.am (EXTRA_DIST)."
+      fi
+    else
+      if $doit; then
+        echo "Creating $m4dir/Makefile.am"
+        echo "EXTRA_DIST =$added_m4files" > "$srcdir/$m4dir/Makefile.am"
+      else
+        echo "Create $m4dir/Makefile.am"
+      fi
+      $do_changelog && func_m4ChangeLog_add_entry "    * Makefile.am: New file."
+      added_acoutput="$added_acoutput $m4dir/Makefile"
+    fi
+  fi
+  $do_changelog && func_m4ChangeLog_finish
+  # Also create $m4dir/Makefile.in from $m4dir/Makefile.am, because automake
+  # doesn't do it by itself.
+  if $doit; then
+    case "$added_acoutput" in
+      *" $m4dir/Makefile")
+        (cd "$srcdir" && automake "$m4dir/Makefile") 2>/dev/null ||
+        please="$please
+Please run 'automake $m4dir/Makefile' to create $m4dir/Makefile.in
+"
+        ;;
+    esac
+  fi
+
+  # Update the top-level Makefile.am.
+  modified_Makefile_am=
+
+  # [snip]
+
+
+  if test -z "$m4dir_is_next"; then
+    # Also update Makefile.in and, if existent, Makefile. Otherwise they
+    # would take into account the new flags only after a few rounds of
+    # "./configure", "make", "touch configure.in", "make distclean".
+    if $doit; then
+      for file in Makefile.in Makefile; do
+        if test -f "$srcdir/$file"; then
+          func_backup $file
+          rm -f "$srcdir/$file"
+          sed -e "s%(ACLOCAL)%(ACLOCAL) -I $m4dir%" < "$srcdir/$file~" > "$srcdir/$file"
+        fi
+      done
+    fi
+  fi
+  please="$please
+Please run 'aclocal -I $m4dir' to regenerate the aclocal.m4 file.
+You need aclocal from GNU automake 1.5 (or newer) to do this.
+Then run 'autoconf' to regenerate the configure file.
+"
+else
+  please="$please
+Please add the files
+$m4filelist
+from the ${prefix}/share/aclocal directory to your aclocal.m4 file.
+"
+fi
+
+modified_configure_in=
+
+# [snip]
+
+if test -n "$added_acoutput"; then
+  if ! grep '^AC_CONFIG_FILES(' "$srcdir/$configure_in" > /dev/null; then
+    if ! grep '^AC_OUTPUT(' "$srcdir/$configure_in" > /dev/null; then
+      please="$please
+Please add$added_acoutput to the AC_OUTPUT or AC_CONFIG_FILES invocation in the $configure_in file.
+"
+    fi
+  fi
+fi
+if test -n "$removed_acoutput"; then
+  for file in $removed_acoutput; do
+    tag=
+    sedprog='{
+      s%\([[   ]\)'"$file"'[   ]%\1%
+      s%\([[   ]\)'"$file"'\([]),]\)%\1\2%
+      s%[[     ]'"$file"'$%%
+        :a
+        tb
+        :b
+        s%\\$%\\%
+        tc
+        bd
+        :c
+        n
+        s%\([  ]\)'"$file"'[   ]%\1%
+        s%\([  ]\)'"$file"'\([]),]\)%\1\2%
+        s%[    ]'"$file"'$%%
+        ba
+      :d
+    }'
+    sed -e '/^AC_CONFIG_FILES(/'"$sedprog" < "$srcdir/$configure_in" > "$srcdir/$configure_in.tmp"
+    if cmp -s "$srcdir/$configure_in" "$srcdir/$configure_in.tmp"; then
+      sed -e '/^AC_OUTPUT(/'"$sedprog" < "$srcdir/$configure_in" > "$srcdir/$configure_in.tmp"
+      if cmp -s "$srcdir/$configure_in" "$srcdir/$configure_in.tmp"; then
+        :
+      else
+        tag=AC_OUTPUT
+      fi
+    else
+      tag=AC_CONFIG_FILES
+    fi
+    if ! test -n "$tag"; then
+      rm -f "$srcdir/$configure_in.tmp"
+      if test "$file" != intl/intlh.inst; then
+        please="$please
+Please remove $file from the AC_OUTPUT or AC_CONFIG_FILES invocation
+in the $configure_in file.
+"
+      fi
+    fi
+  done
+fi
+sed -e 's%sed -e "/POTFILES =/r po/POTFILES" po/Makefile\.in > po/Makefile *;* *%%' < "$srcdir/$configure_in" > "$srcdir/$configure_in.tmp"
+sed -e '/^\(dnl \|\)AC_LINK_FILES(\$nls_cv_header_libgt, \$nls_cv_header_intl)$/d' < "$srcdir/$configure_in" > "$srcdir/$configure_in.tmp"
+sed -e 's/^AM_GNU_GETTEXT_VERSION([^()]*)/AM_GNU_GETTEXT_VERSION('"$version"')/' < "$srcdir/$configure_in" > "$srcdir/$configure_in.tmp"
+$do_changelog && func_ChangeLog_finish
+
+# Recommend replacement for deprecated Makefile variables.
+use_libtool=`cat "$srcdir/$configure_in" | grep '^A[CM]_PROG_LIBTOOL'`
+for file in `(cd "$srcdir"; find . -name Makefile.am -print; find . -name Makefile.in -print) | sed -e 's,^\./,,'`; do
+  if test -f "$srcdir/$file"; then
+    if test `echo "$file" | sed -e 's,^.*/,,'` = Makefile.in && grep automake "$srcdir/$file" >/dev/null 2>&1; then
+      continue;
+    fi
+    # INTLLIBS is deprecated because it doesn't distinguish the two
+    # cases: with libtool, without libtool.
+    if grep '@''INTLLIBS''@' "$srcdir/$file" >/dev/null 2>&1; then
+      if test -n "$use_libtool"; then
+        please="$please
+Please change $file to use @""LTLIBINTL""@ or @""LIBINTL""@ instead of
+@""INTLLIBS""@. Which one, depends whether it is used with libtool or not.
+@""INTLLIBS""@ will go away.
+"
+      else
+        please="$please
+Please change $file to use @""LIBINTL""@ instead of @""INTLLIBS""@.
+@""INTLLIBS""@ will go away.
+"
+      fi
+    fi
+    # DATADIRNAME is deprecated because we install only .gmo files nowadays,
+    # which can be stored in the platform independent $prefix/share hierarchy.
+    if grep '@''DATADIRNAME''@' "$srcdir/$file" >/dev/null 2>&1; then
+      please="$please
+Please change $file to use the constant string \"share\" instead of
+@""DATADIRNAME""@. @""DATADIRNAME""@ will go away.
+"
+    fi
+    # INSTOBJEXT is deprecated because we install only .gmo files nowadays,
+    # no catgets .cat catalogs.
+    if grep '@''INSTOBJEXT''@' "$srcdir/$file" >/dev/null 2>&1; then
+      please="$please
+Please change $file to use the constant string \".mo\" instead of
+@""INSTOBJEXT""@. @""INSTOBJEXT""@ will go away.
+"
+    fi
+    # GENCAT is deprecated because we install no catgets catalogs anymore.
+    if grep '@''GENCAT''@' "$srcdir/$file" >/dev/null 2>&1; then
+      please="$please
+Please change $file to use the constant string \"gencat\" instead of
+@""GENCAT""@. @""GENCAT""@ will go away. Maybe you don't even need it any more?
+"
+    fi
+    # POSUB is deprecated because it causes "./configure --disable-nls", "make",
+    # "make dist" to create a buggy tarfile.
+    if grep '@''POSUB''@' "$srcdir/$file" >/dev/null 2>&1; then
+      please="$please
+Please change $file to use the constant string \"po\" instead of
+@""POSUB""@. @""POSUB""@ will go away.
+"
+    fi
+  fi
+done
+
+# Recommend replacement for deprecated configure variables.
+if grep '\$nls_cv_header_' "$srcdir/$configure_in" >/dev/null 2>&1; then
+  please="$please
+Please stop using \$nls_cv_header_intl or \$nls_cv_header_libgt in the
+$configure_in file. Both will go away. Use <libintl.h> or \"gettext.h\" instead.
+"
+fi
index 5e60edd3e562988e6be5f727ebd201890c2fc165..5856dfb363711d00962f3a52a55d05ad7893ea89 100644 (file)
@@ -6,14 +6,14 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PSPP 0.3.1\n"
-"Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
-"POT-Creation-Date: 2004-01-30 19:35+0800\n"
+"POT-Creation-Date: 2004-02-03 09:11+0800\n"
 "PO-Revision-Date: 2004-01-23 13:04+0800\n"
 "Last-Translator: John Darrington <john@darrington.wattle.id.au>\n"
 "Language-Team: John Darrington <john@darrington.wattle.id.au>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
 "Plural-Forms: nplurals=2; plural=(n!=1);\n"
 
 #: src/crosstabs.q:255
@@ -2332,12 +2332,10 @@ msgid "Boolean"
 msgstr ""
 
 #: src/expr-prs.c:1695
-#, c-format
 msgid "!!TERMINAL!!"
 msgstr ""
 
 #: src/expr-prs.c:1721
-#, c-format
 msgid "!!SENTINEL!!"
 msgstr ""
 
@@ -2655,17 +2653,14 @@ msgid "`)' expected after output format."
 msgstr ""
 
 #: src/formats.c:153
-#, c-format
 msgid "Formats:\n"
 msgstr ""
 
 #: src/formats.c:154
-#, c-format
 msgid "  Name      Print         Write\n"
 msgstr ""
 
 #: src/get.c:110
-#, c-format
 msgid "GET translation table from file to memory:\n"
 msgstr ""
 
@@ -2703,7 +2698,6 @@ msgid "Requested renaming duplicates variable name %s."
 msgstr ""
 
 #: src/get.c:461
-#, c-format
 msgid ""
 "\n"
 "Variables in dictionary:\n"
@@ -2763,7 +2757,6 @@ msgid "expecting COMM or TAPE"
 msgstr ""
 
 #: src/get.c:1393
-#, c-format
 msgid "IMPORT translation table from file to memory:\n"
 msgstr ""
 
@@ -2957,7 +2950,6 @@ msgid "<<fallback>>"
 msgstr ""
 
 #: src/hash.c:492
-#, c-format
 msgid "hash table:"
 msgstr ""
 
@@ -2967,7 +2959,6 @@ msgid "bad ordering of keys %d and %d\n"
 msgstr ""
 
 #: src/heap.c:177
-#, c-format
 msgid "Heap contents:\n"
 msgstr ""
 
@@ -3108,7 +3099,6 @@ msgid "The rest of this command has been discarded."
 msgstr ""
 
 #: src/lexer.c:842 src/print.c:1174
-#, c-format
 msgid "<ERROR>"
 msgstr ""
 
@@ -3426,7 +3416,6 @@ msgid "(long string variable)"
 msgstr ""
 
 #: src/mis-val.c:376
-#, c-format
 msgid "(no missing values)\n"
 msgstr ""
 
@@ -3571,7 +3560,6 @@ msgid "Error reading device definition file."
 msgstr ""
 
 #: src/output.c:462
-#, c-format
 msgid ""
 "Driver classes:\n"
 "\t"
@@ -4168,12 +4156,10 @@ msgid ""
 msgstr ""
 
 #: src/recode.c:869
-#, c-format
 msgid "!!END!!"
 msgstr ""
 
 #: src/recode.c:890 src/recode.c:906
-#, c-format
 msgid "!!ERROR!!"
 msgstr ""
 
@@ -5007,7 +4993,6 @@ msgid "Value labels:"
 msgstr ""
 
 #: src/val-labs.c:237
-#, c-format
 msgid "    (no value labels)\n"
 msgstr ""
 
@@ -5020,12 +5005,10 @@ msgid "Truncating variable label to 120 characters."
 msgstr ""
 
 #: src/var-labs.c:87
-#, c-format
 msgid "Variable labels:\n"
 msgstr ""
 
 #: src/var-labs.c:94
-#, c-format
 msgid "(no variable label)"
 msgstr ""
 
index 26b6e93666d617d6ab94585ffd32c318cd7e886f..b31c6c572eba0aba1ae51c1bec6a186082690018 100644 (file)
@@ -7,8 +7,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
-"POT-Creation-Date: 2004-01-30 19:35+0800\n"
+"POT-Creation-Date: 2004-02-03 09:11+0800\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2333,12 +2332,10 @@ msgid "Boolean"
 msgstr ""
 
 #: src/expr-prs.c:1695
-#, c-format
 msgid "!!TERMINAL!!"
 msgstr ""
 
 #: src/expr-prs.c:1721
-#, c-format
 msgid "!!SENTINEL!!"
 msgstr ""
 
@@ -2656,17 +2653,14 @@ msgid "`)' expected after output format."
 msgstr ""
 
 #: src/formats.c:153
-#, c-format
 msgid "Formats:\n"
 msgstr ""
 
 #: src/formats.c:154
-#, c-format
 msgid "  Name      Print         Write\n"
 msgstr ""
 
 #: src/get.c:110
-#, c-format
 msgid "GET translation table from file to memory:\n"
 msgstr ""
 
@@ -2704,7 +2698,6 @@ msgid "Requested renaming duplicates variable name %s."
 msgstr ""
 
 #: src/get.c:461
-#, c-format
 msgid ""
 "\n"
 "Variables in dictionary:\n"
@@ -2764,7 +2757,6 @@ msgid "expecting COMM or TAPE"
 msgstr ""
 
 #: src/get.c:1393
-#, c-format
 msgid "IMPORT translation table from file to memory:\n"
 msgstr ""
 
@@ -2958,7 +2950,6 @@ msgid "<<fallback>>"
 msgstr ""
 
 #: src/hash.c:492
-#, c-format
 msgid "hash table:"
 msgstr ""
 
@@ -2968,7 +2959,6 @@ msgid "bad ordering of keys %d and %d\n"
 msgstr ""
 
 #: src/heap.c:177
-#, c-format
 msgid "Heap contents:\n"
 msgstr ""
 
@@ -3109,7 +3099,6 @@ msgid "The rest of this command has been discarded."
 msgstr ""
 
 #: src/lexer.c:842 src/print.c:1174
-#, c-format
 msgid "<ERROR>"
 msgstr ""
 
@@ -3427,7 +3416,6 @@ msgid "(long string variable)"
 msgstr ""
 
 #: src/mis-val.c:376
-#, c-format
 msgid "(no missing values)\n"
 msgstr ""
 
@@ -3572,7 +3560,6 @@ msgid "Error reading device definition file."
 msgstr ""
 
 #: src/output.c:462
-#, c-format
 msgid ""
 "Driver classes:\n"
 "\t"
@@ -4169,12 +4156,10 @@ msgid ""
 msgstr ""
 
 #: src/recode.c:869
-#, c-format
 msgid "!!END!!"
 msgstr ""
 
 #: src/recode.c:890 src/recode.c:906
-#, c-format
 msgid "!!ERROR!!"
 msgstr ""
 
@@ -5008,7 +4993,6 @@ msgid "Value labels:"
 msgstr ""
 
 #: src/val-labs.c:237
-#, c-format
 msgid "    (no value labels)\n"
 msgstr ""
 
@@ -5021,12 +5005,10 @@ msgid "Truncating variable label to 120 characters."
 msgstr ""
 
 #: src/var-labs.c:87
-#, c-format
 msgid "Variable labels:\n"
 msgstr ""
 
 #: src/var-labs.c:94
-#, c-format
 msgid "(no variable label)"
 msgstr ""