You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
239 lines
5.8 KiB
239 lines
5.8 KiB
#! /bin/sh
|
|
#
|
|
# Copyright (C) 1995, 1996, 1997, 1998 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 is meant for authors or maintainers which want to
|
|
# internationalize their package with the help of GNU gettext. For
|
|
# further information how to use it consult the GNU gettext manual.
|
|
|
|
echo=echo
|
|
progname=$0
|
|
force=0
|
|
configstatus=0
|
|
origdir=`pwd`
|
|
usage="\
|
|
Usage: gettextize [OPTION]... [package-dir]
|
|
--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
|
|
Report bugs to <bug-gnu-utils@prep.ai.mit.edu>."
|
|
package=@PACKAGE@
|
|
version=@VERSION@
|
|
aclocal_version=@ACLOCAL_VERSION@
|
|
try_ln_s=:
|
|
|
|
while test $# -gt 0; do
|
|
case "$1" in
|
|
-c | --copy | --c* )
|
|
shift
|
|
try_ln_s=false ;;
|
|
-f | --force | --f* )
|
|
shift
|
|
force=1 ;;
|
|
-r | --run | --r* )
|
|
shift
|
|
configstatus=1 ;;
|
|
--help | --h* )
|
|
$echo "$usage"; exit 0 ;;
|
|
--version | --v* )
|
|
echo "$progname (GNU $package) $version"
|
|
$echo "Copyright (C) 1996, 1997, 1998 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"
|
|
exit 0 ;;
|
|
-- ) # Stop option prcessing
|
|
shift; break ;;
|
|
-* )
|
|
$echo "gettextize: unknown option $1"
|
|
$echo "Try \`gettextize --help' for more information."; exit 1 ;;
|
|
* )
|
|
break ;;
|
|
esac
|
|
done
|
|
|
|
if test $# -gt 1; then
|
|
$echo "$usage"
|
|
exit 1
|
|
fi
|
|
|
|
# Fill in the command line options value.
|
|
if test $# -eq 1; then
|
|
srcdir=$1
|
|
if cd $srcdir; then
|
|
srcdir=`pwd`
|
|
else
|
|
$echo "Cannot change directory to \`$srcdir'"
|
|
exit 1
|
|
fi
|
|
else
|
|
srcdir=$origdir
|
|
fi
|
|
|
|
# Directory where the sources are stored.
|
|
prefix=@prefix@
|
|
gettext_dir=@datadir@/gettext
|
|
aclocal_dir=@aclocaldir@
|
|
|
|
test -f configure.in || {
|
|
$echo "Missing configure.in, please cd to your package first."
|
|
exit 1
|
|
}
|
|
|
|
if test -d intl && test $force -eq 0; then
|
|
$echo "\
|
|
intl/ subdirectory exists: use option -f if you really want to delete it."
|
|
exit 1
|
|
fi
|
|
|
|
if test -f po/Makefile.in.in && test $force -eq 0; then
|
|
$echo "\
|
|
po/Makefile.in.in exists: use option -f if you really want to delete it."
|
|
exit 1
|
|
fi
|
|
|
|
if test -f NLS && test $force -eq 0; then
|
|
$echo "NLS exists: use option -f if you really want to delete it."
|
|
exit 1
|
|
fi
|
|
|
|
rm -fr intl
|
|
mkdir intl || {
|
|
$echo "failed to create intl/ subdirectory"
|
|
exit 1;
|
|
}
|
|
|
|
test -d po || mkdir po || {
|
|
$echo "failed to create po/ subdirectory"
|
|
exit 1
|
|
}
|
|
|
|
# For simplicity we changed to the gettext source directory.
|
|
cd $gettext_dir
|
|
|
|
# Now copy all files. Take care for the destination directories.
|
|
for file in *; do
|
|
case $file in
|
|
intl | po | demo)
|
|
;;
|
|
*)
|
|
rm -f $srcdir/$file
|
|
($try_ln_s && ln -s $gettext_dir/$file $srcdir/$file) 2>/dev/null ||
|
|
cp $file $srcdir/$file
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Copy files to intl/ subdirectory.
|
|
cd intl
|
|
for file in *; do
|
|
rm -f $srcdir/intl/$file
|
|
($try_ln_s && ln -s $gettext_dir/intl/$file $srcdir/intl/$file) 2>/dev/null ||
|
|
cp $file $srcdir/intl/$file
|
|
done
|
|
|
|
# Copy files to po/ subdirectory.
|
|
cd ../po
|
|
for file in *; do
|
|
rm -f $srcdir/po/$file
|
|
($try_ln_s && ln -s $gettext_dir/po/$file $srcdir/po/$file) 2>/dev/null ||
|
|
cp $file $srcdir/po/$file
|
|
done
|
|
|
|
|
|
# Check whether we can run config.status to produce intl/Makefile.in.
|
|
cd $origdir
|
|
if test -f ./config.status; then
|
|
if test $configstatus -eq 0; then
|
|
echo "Shall I run config.status? (y/N)"
|
|
read ans
|
|
case "$ans" in
|
|
y* | Y* | 1* )
|
|
configstatus=1 ;;
|
|
* )
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
test $configstatus -ne 0 &&
|
|
(CONFIG_FILES=intl/Makefile CONFIG_HEADERS= ./config.status)
|
|
fi
|
|
|
|
merge=no
|
|
OLD_IFS="$IFS"
|
|
IFS="."
|
|
cntr=0
|
|
major=0; minor=0; subminor=0
|
|
for num in $aclocal_version; do
|
|
case $cntr in
|
|
0) major=$num;;
|
|
1) minor=$num;;
|
|
2) subminor=$num;;
|
|
esac
|
|
cntr=`expr $cntr + 1`
|
|
done
|
|
IFS="$OLD_IFS"
|
|
|
|
set `sed -e 's/.*Last updated for gettext-\([0-9][0-9]*\)\.\([0-9][0-9]*\)\.\([0-9][0-9]\)*.*/\1 \2 \3/p' -e d aclocal.m4` >/dev/null
|
|
|
|
|
|
if test $# -lt 2 || test $# -gt 3; then
|
|
merge=yes
|
|
else
|
|
here_major=$1; here_minor=$2
|
|
if test $# -eq 2; then
|
|
here_subminor=0
|
|
else
|
|
here_subminor=$3
|
|
fi
|
|
|
|
if test $major -eq $here_major; then
|
|
if test $minor -eq $here_minor; then
|
|
if test $subminor -lt $here_subminor; then
|
|
merge=gettext
|
|
elif test $subminor -gt $here_subminor; then
|
|
merge=yes
|
|
fi
|
|
else
|
|
if test $minor -lt $here_minor; then
|
|
merge=gettext
|
|
else
|
|
merge=yes
|
|
fi
|
|
fi
|
|
else
|
|
if test $major -lt $here_major; then
|
|
merge=gettext
|
|
else
|
|
merge=yes
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
if test "$merge" = "yes"; then
|
|
$echo "You should update your own \`aclocal.m4' by adding the necessary"
|
|
$echo "macro packages gettext.m4, lcmessage.m4 and progtest.m4 from"
|
|
$echo "the directory \`$aclocal_dir'"
|
|
elif test "$merge" = "gettext"; then
|
|
$echo "Your \`aclocal.m4' file is newer than the installed gettext"
|
|
$echo "program. Consider upgrading to a recent GNU gettext version."
|
|
fi
|
|
|
|
exit 0
|