Document GObject api additions
[glib.git] / glib-gettextize.in
blob01ce883f5b673df90f2cbb0c031fdc3d327de73e
1 #! /bin/sh
3 # Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2, or (at your option)
8 # any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 # - Modified in October 2001 by jacob berkman <jacob@ximian.com> to
21 # work with glib's Makefile.in.in and po2tbl.sed.in, to not copy in
22 # intl/, and to not add ChangeLog entries to po/ChangeLog
24 # This file is meant for authors or maintainers which want to
25 # internationalize their package with the help of GNU gettext. For
26 # further information how to use it consult the GNU gettext manual.
28 echo=echo
29 progname=$0
30 force=0
31 configstatus=0
32 origdir=`pwd`
33 usage="\
34 Usage: glib-gettextize [OPTION]... [package-dir]
35 --help print this help and exit
36 --version print version information and exit
37 -c, --copy copy files instead of making symlinks
38 -f, --force force writing of new files even if old exist
39 Report bugs to http://bugzilla.gnome.org/."
40 package=@PACKAGE@
41 version=@VERSION@
42 try_ln_s=:
44 # Directory where the sources are stored.
45 prefix=@prefix@
46 gettext_dir=@prefix@/share/glib-2.0/gettext
48 while test $# -gt 0; do
49 case "$1" in
50 -c | --copy | --c* )
51 shift
52 try_ln_s=false ;;
53 -f | --force | --f* )
54 shift
55 force=1 ;;
56 -r | --run | --r* )
57 shift
58 configstatus=1 ;;
59 --help | --h* )
60 $echo "$usage"; exit 0 ;;
61 --version | --v* )
62 echo "$progname (GNU $package) $version"
63 $echo "Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc.
64 This is free software; see the source for copying conditions. There is NO
65 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
66 $echo "Written by" "Ulrich Drepper"
67 exit 0 ;;
68 -- ) # Stop option prcessing
69 shift; break ;;
70 -* )
71 $echo "glib-gettextize: unknown option $1"
72 $echo "Try \`glib-gettextize --help' for more information."; exit 1 ;;
73 * )
74 break ;;
75 esac
76 done
78 if test $# -gt 1; then
79 $echo "$usage"
80 exit 1
83 # Fill in the command line options value.
84 if test $# -eq 1; then
85 srcdir=$1
86 if cd "$srcdir"; then
87 srcdir=`pwd`
88 else
89 $echo "Cannot change directory to \`$srcdir'"
90 exit 1
92 else
93 srcdir=$origdir
96 test -f configure.in || test -f configure.ac || {
97 $echo "Missing configure.in or configure.ac, please cd to your package first."
98 exit 1
101 configure_in=NONE
102 if test -f configure.in; then
103 configure_in=configure.in
104 else
105 if test -f configure.ac; then
106 configure_in=configure.ac
109 # Check in which directory config.rpath, mkinstalldirs etc. belong.
110 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`
111 if test -n "$auxdir"; then
112 auxdir="$auxdir/"
115 if test -f po/Makefile.in.in && test $force -eq 0; then
116 $echo "\
117 po/Makefile.in.in exists: use option -f if you really want to delete it."
118 exit 1
121 test -d po || {
122 $echo "Creating po/ subdirectory"
123 mkdir po || {
124 $echo "failed to create po/ subdirectory"
125 exit 1
129 # For simplicity we changed to the gettext source directory.
130 cd $gettext_dir || {
131 $echo "gettext source directory '${gettext_dir}' doesn't exist"
132 exit 1
135 # Now copy all files. Take care for the destination directories.
136 for file in *; do
137 case $file in
138 intl | po)
140 mkinstalldirs)
141 rm -f "$srcdir/$auxdir$file"
142 ($try_ln_s && ln -s $gettext_dir/$file "$srcdir/$auxdir$file" && $echo "Symlinking file $file") 2>/dev/null ||
143 { $echo "Copying file $file"; cp $file "$srcdir/$auxdir$file"; }
146 rm -f "$srcdir/$file"
147 ($try_ln_s && ln -s $gettext_dir/$file "$srcdir/$file" && $echo "Symlinking file $file") 2>/dev/null ||
148 { $echo "Copying file $file"; cp $file "$srcdir/$file"; }
150 esac
151 done
153 # Copy files to po/ subdirectory.
154 cd po
155 for file in *; do
156 rm -f "$srcdir/po/$file"
157 ($try_ln_s && ln -s $gettext_dir/po/$file "$srcdir/po/$file" && $echo "Symlinking file po/$file") 2>/dev/null ||
158 { $echo "Copying file po/$file"; cp $file "$srcdir/po/$file"; }
159 done
160 if test -f "$srcdir/po/cat-id-tbl.c"; then
161 $echo "Removing po/cat-id-tbl.c"
162 rm -f "$srcdir/po/cat-id-tbl.c"
164 if test -f "$srcdir/po/stamp-cat-id"; then
165 $echo "Removing po/stamp-cat-id"
166 rm -f "$srcdir/po/stamp-cat-id"
169 echo
170 echo "Please add the files"
171 echo " codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4"
172 echo " progtest.m4"
173 echo "from the @datadir@/aclocal directory to your autoconf macro directory"
174 echo "or directly to your aclocal.m4 file."
175 echo "You will also need config.guess and config.sub, which you can get from"
176 echo "ftp://ftp.gnu.org/pub/gnu/config/."
177 echo
179 exit 0