# Makefile for PO directory in any package using GNU gettext.
# Copyright (C) 1995-1997, 2000-2005 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
#
# This file can be copied and used freely without restrictions. It can
# be used in projects which are not available under the GNU General Public
# License but which still want to provide support for the GNU gettext
# functionality.
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
#
# Origin: gettext-0.14.4
PACKAGE = bacula
VERSION = 2.2.6
PACKAGE_BUGREPORT =
SHELL = /bin/sh
srcdir = .
top_srcdir = ..
top_builddir = ../
prefix =
exec_prefix =
datadir = /share
localedir = $(datadir)/locale
gettextsrcdir = $(datadir)/gettext/po
INSTALL = /usr/bin/install -c -o root -g wheel
INSTALL_DATA = install -o root -g wheel -m 444
MKINSTALLDIRS = /mnt/gmirror/ports/sysutils/bacula-bat/work/bacula-2.2.6/autoconf/mkinstalldirs
mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
GMSGFMT = /usr/local/bin/msgfmt
MSGFMT = /usr/local/bin/msgfmt
XGETTEXT = /usr/local/bin/xgettext
MSGMERGE = msgmerge
MSGMERGE_UPDATE = /usr/local/bin/msgmerge --update
MSGINIT = msginit
MSGCONV = msgconv
MSGFILTER = msgfilter
POFILES = fr.po de.po
GMOFILES = fr.gmo de.gmo
UPDATEPOFILES = fr.po-update de.po-update
DUMMYPOFILES = fr.nop de.nop
DISTFILES.common = Makefile.in.in remove-potcdate.sin \
$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3)
DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \
$(POFILES) $(GMOFILES) \
$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3)
POTFILES = \
.././patches/testing/resubst.c \
.././patches/testing/bregsed.c \
.././src/dird/next_vol.c \
.././src/dird/fd_cmds.c \
.././src/dird/ua_label.c \
.././src/dird/backup.c \
.././src/dird/ua_update.c \
.././src/dird/run_conf.c \
.././src/dird/scheduler.c \
.././src/dird/catreq.c \
.././src/dird/msgchan.c \
.././src/dird/ua_acl.c \
.././src/dird/ua_input.c \
.././src/dird/ua_output.c \
.././src/dird/getmsg.c \
.././src/dird/migrate.c \
.././src/dird/ua_query.c \
.././src/dird/ua_select.c \
.././src/dird/verify.c \
.././src/dird/ua_purge.c \
.././src/dird/ua_restore.c \
.././src/dird/ua_status.c \
.././src/dird/newvol.c \
.././src/dird/mountreq.c \
.././src/dird/job.c \
.././src/dird/ua_cmds.c \
.././src/dird/inc_conf.c \
.././src/dird/authenticate.c \
.././src/dird/ua_prune.c \
.././src/dird/expand.c \
.././src/dird/pythondir.c \
.././src/dird/autoprune.c \
.././src/dird/dird.c \
.././src/dird/ua_dotcmds.c \
.././src/dird/restore.c \
.././src/dird/ua_tree.c \
.././src/dird/recycle.c \
.././src/dird/bsr.c \
.././src/dird/dird_conf.c \
.././src/dird/admin.c \
.././src/dird/ua_run.c \
.././src/dird/jobq.c \
.././src/dird/ua_server.c \
.././src/filed/heartbeat.c \
.././src/filed/acl.c \
.././src/filed/verify.c \
.././src/filed/backup.c \
.././src/filed/job.c \
.././src/filed/estimate.c \
.././src/filed/authenticate.c \
.././src/filed/restore.c \
.././src/filed/filed.c \
.././src/filed/status.c \
.././src/filed/verify_vol.c \
.././src/filed/filed_conf.c \
.././src/filed/pythonfd.c \
.././src/gnome2-console/interface.c \
.././src/gnome2-console/console.c \
.././src/gnome2-console/console_conf.c \
.././src/gnome2-console/support.c \
.././src/gnome2-console/authenticate.c \
.././src/gnome2-console/callbacks.c \
.././src/gnome2-console/restore.c \
.././src/cats/sql.c \
.././src/cats/sql_update.c \
.././src/cats/sqlite.c \
.././src/cats/bdb_find.c \
.././src/cats/sql_find.c \
.././src/cats/mysql.c \
.././src/cats/bdb_delete.c \
.././src/cats/bdb_create.c \
.././src/cats/sql_delete.c \
.././src/cats/sql_create.c \
.././src/cats/bdb_get.c \
.././src/cats/sql_get.c \
.././src/cats/postgresql.c \
.././src/cats/sql_cmds.c \
.././src/cats/bdb_list.c \
.././src/cats/bdb.c \
.././src/cats/bdb_update.c \
.././src/cats/sql_list.c \
.././src/wx-console/console_conf.c \
.././src/wx-console/authenticate.c \
.././src/stored/fd_cmds.c \
.././src/stored/autochanger.c \
.././src/stored/stored.c \
.././src/stored/match_bsr.c \
.././src/stored/wait.c \
.././src/stored/stored_conf.c \
.././src/stored/pythonsd.c \
.././src/stored/ebcdic.c \
.././src/stored/read_record.c \
.././src/stored/read.c \
.././src/stored/reserve.c \
.././src/stored/bcopy.c \
.././src/stored/bextract.c \
.././src/stored/dvd.c \
.././src/stored/label.c \
.././src/stored/parse_bsr.c \
.././src/stored/bls.c \
.././src/stored/status.c \
.././src/stored/bscan.c \
.././src/stored/lock.c \
.././src/stored/btape.c \
.././src/stored/spool.c \
.././src/stored/device.c \
.././src/stored/mac.c \
.././src/stored/mount.c \
.././src/stored/dircmd.c \
.././src/stored/append.c \
.././src/stored/job.c \
.././src/stored/askdir.c \
.././src/stored/dev.c \
.././src/stored/authenticate.c \
.././src/stored/record.c \
.././src/stored/butil.c \
.././src/stored/scan.c \
.././src/stored/acquire.c \
.././src/stored/ansi_label.c \
.././src/stored/block.c \
.././src/tools/grow.c \
.././src/tools/testls.c \
.././src/tools/bregtest.c \
.././src/tools/testfind.c \
.././src/tools/bwild.c \
.././src/tools/bbatch.c \
.././src/tools/dbcheck.c \
.././src/tools/gigaslam.c \
.././src/tools/bsmtp.c \
.././src/tools/fstype.c \
.././src/tools/drivetype.c \
.././src/tools/bregex.c \
.././src/console/authenticate.c \
.././src/console/console.c \
.././src/console/conio.c \
.././src/console/console_conf.c \
.././src/win32/scripts/bsleep.c \
.././src/win32/compat/getopt.c \
.././src/win32/compat/winapi.c \
.././src/tray-monitor/authenticate.c \
.././src/tray-monitor/tray-monitor.c \
.././src/tray-monitor/tray_conf.c \
.././src/lib/btime.c \
.././src/lib/workq.c \
.././src/lib/cram-md5.c \
.././src/lib/mem_pool.c \
.././src/lib/hmac.c \
.././src/lib/bregex.c \
.././src/lib/crc32.c \
.././src/lib/util.c \
.././src/lib/dlist.c \
.././src/lib/message.c \
.././src/lib/md5.c \
.././src/lib/berrno.c \
.././src/lib/bnet.c \
.././src/lib/htable.c \
.././src/lib/bpipe.c \
.././src/lib/tree.c \
.././src/lib/watchdog.c \
.././src/lib/bsock.c \
.././src/lib/bsnprintf.c \
.././src/lib/btimers.c \
.././src/lib/pythonlib.c \
.././src/lib/enh_fnmatch.c \
.././src/lib/attr.c \
.././src/lib/jcr.c \
.././src/lib/parse_conf.c \
.././src/lib/scan.c \
.././src/lib/res.c \
.././src/lib/sha1.c \
.././src/lib/rblist.c \
.././src/lib/rwlock.c \
.././src/lib/daemon.c \
.././src/lib/alist.c \
.././src/lib/breg.c \
.././src/lib/serial.c \
.././src/lib/tls.c \
.././src/lib/signal.c \
.././src/lib/bnet_server.c \
.././src/lib/smartall.c \
.././src/lib/fnmatch.c \
.././src/lib/bsys.c \
.././src/lib/crypto.c \
.././src/lib/openssl.c \
.././src/lib/queue.c \
.././src/lib/base64.c \
.././src/lib/edit.c \
.././src/lib/bget_msg.c \
.././src/lib/lex.c \
.././src/lib/var.c \
.././src/lib/runscript.c \
.././src/lib/address_conf.c \
.././src/lib/guid_to_name.c \
.././src/findlib/create_file.c \
.././src/findlib/attribs.c \
.././src/findlib/save-cwd.c \
.././src/findlib/fstype.c \
.././src/findlib/drivetype.c \
.././src/findlib/find.c \
.././src/findlib/find_one.c \
.././src/findlib/bfile.c \
.././src/findlib/enable_priv.c \
.././src/findlib/makepath.c \
.././src/findlib/match.c \
.././platforms/freebsd/tapetest.c \
.././src/dird/jobq.h \
.././src/dird/ua.h \
.././src/dird/dird.h \
.././src/dird/protos.h \
.././src/dird/bsr.h \
.././src/dird/dird_conf.h \
.././src/filed/acl.h \
.././src/filed/filed.h \
.././src/filed/protos.h \
.././src/filed/filed_conf.h \
.././src/qt-console/label/label.h \
.././src/qt-console/select/select.h \
.././src/qt-console/fileset/fileset.h \
.././src/qt-console/bcomm/dircomm.h \
.././src/qt-console/clients/clients.h \
.././src/qt-console/mount/mount.h \
.././src/qt-console/storage/storage.h \
.././src/qt-console/medialist/medialist.h \
.././src/qt-console/joblog/joblog.h \
.././src/qt-console/jobgraphs/jobplot.h \
.././src/qt-console/restore/restore.h \
.././src/qt-console/restore/restoretree.h \
.././src/qt-console/mediaedit/mediaedit.h \
.././src/qt-console/help/help.h \
.././src/qt-console/testprogs/putz/putz.h \
.././src/qt-console/testprogs/examp/mainwindow.h \
.././src/qt-console/jobs/jobs.h \
.././src/qt-console/console/console.h \
.././src/qt-console/run/run.h \
.././src/qt-console/joblist/joblist.h \
.././src/qt-console/relabel/relabel.h \
.././src/qt-console/mainwin.h \
.././src/qt-console/pages.h \
.././src/qt-console/bat.h \
.././src/qt-console/bat_conf.h \
.././src/qt-console/qstd.h \
.././src/gnome2-console/interface.h \
.././src/gnome2-console/console.h \
.././src/gnome2-console/console_conf.h \
.././src/gnome2-console/support.h \
.././src/gnome2-console/callbacks.h \
.././src/gnome2-console/restore.h \
.././src/cats/cats.h \
.././src/cats/protos.h \
.././src/cats/sql_cmds.h \
.././src/cats/bdb.h \
.././src/wx-console/wxbtreectrl.h \
.././src/wx-console/wxbconfigpanel.h \
.././src/wx-console/console_conf.h \
.././src/wx-console/wxbhistorytextctrl.h \
.././src/wx-console/wxblistctrl.h \
.././src/wx-console/wxbrestorepanel.h \
.././src/wx-console/wxbtableparser.h \
.././src/wx-console/wx-console_private.h \
.././src/wx-console/console_thread.h \
.././src/wx-console/wxbconfigfileeditor.h \
.././src/wx-console/wxbmainframe.h \
.././src/wx-console/wxbutils.h \
.././src/wx-console/csprint.h \
.././src/stored/block.h \
.././src/stored/stored.h \
.././src/stored/stored_conf.h \
.././src/stored/reserve.h \
.././src/stored/lock.h \
.././src/stored/dev.h \
.././src/stored/record.h \
.././src/stored/bsr.h \
.././src/stored/protos.h \
.././src/console/func.h \
.././src/console/conio.h \
.././src/console/console_conf.h \
.././src/win32/filed/vss.h \
.././src/win32/filed/who.h \
.././src/win32/wx-console/w32api.h \
.././src/win32/tools/ScsiDeviceList.h \
.././src/win32/dird/who.h \
.././src/win32/compat/arpa/inet.h \
.././src/win32/compat/netinet/in.h \
.././src/win32/compat/sys/ioctl.h \
.././src/win32/compat/sys/stat.h \
.././src/win32/compat/sys/time.h \
.././src/win32/compat/sys/file.h \
.././src/win32/compat/sys/wait.h \
.././src/win32/compat/sys/mtio.h \
.././src/win32/compat/sys/socket.h \
.././src/win32/compat/strings.h \
.././src/win32/compat/pwd.h \
.././src/win32/compat/alloca.h \
.././src/win32/compat/winhost.h \
.././src/win32/compat/netdb.h \
.././src/win32/compat/getopt.h \
.././src/win32/compat/stdint.h \
.././src/win32/compat/unistd.h \
.././src/win32/compat/mingwconfig.h \
.././src/win32/compat/mswinver.h \
.././src/win32/compat/winsock.h \
.././src/win32/compat/ms_atl.h \
.././src/win32/compat/syslog.h \
.././src/win32/compat/compat.h \
.././src/win32/compat/winconfig.h \
.././src/win32/compat/dirent.h \
.././src/win32/compat/grp.h \
.././src/win32/libwin32/res.h \
.././src/win32/libwin32/aboutDialog.h \
.././src/win32/libwin32/win32.h \
.././src/win32/libwin32/statusDialog.h \
.././src/win32/libwin32/protos.h \
.././src/win32/libwin32/trayMonitor.h \
.././src/win32/stored/who.h \
.././src/win32/winapi.h \
.././src/tray-monitor/tray-monitor.h \
.././src/tray-monitor/tray_conf.h \
.././src/lib/runscript.h \
.././src/lib/address_conf.h \
.././src/lib/tcpd.h \
.././src/lib/btime.h \
.././src/lib/bits.h \
.././src/lib/workq.h \
.././src/lib/mem_pool.h \
.././src/lib/bregex.h \
.././src/lib/dlist.h \
.././src/lib/message.h \
.././src/lib/md5.h \
.././src/lib/waitq.h \
.././src/lib/berrno.h \
.././src/lib/htable.h \
.././src/lib/bpipe.h \
.././src/lib/tree.h \
.././src/lib/watchdog.h \
.././src/lib/bsock.h \
.././src/lib/btimers.h \
.././src/lib/enh_fnmatch.h \
.././src/lib/attr.h \
.././src/lib/parse_conf.h \
.././src/lib/protos.h \
.././src/lib/sha1.h \
.././src/lib/rblist.h \
.././src/lib/rwlock.h \
.././src/lib/alist.h \
.././src/lib/breg.h \
.././src/lib/serial.h \
.././src/lib/tls.h \
.././src/lib/lib.h \
.././src/lib/smartall.h \
.././src/lib/fnmatch.h \
.././src/lib/crypto.h \
.././src/lib/openssl.h \
.././src/lib/queue.h \
.././src/lib/base64.h \
.././src/lib/lex.h \
.././src/lib/var.h \
.././src/lib/guid_to_name.h \
.././src/findlib/save-cwd.h \
.././src/findlib/find.h \
.././src/findlib/bfile.h \
.././src/findlib/protos.h \
.././src/bc_types.h \
.././src/baconfig.h \
.././src/jcr.h \
.././src/version.h \
.././src/bacula.h \
.././src/host.h \
.././src/config.h \
.././autoconf/acconfig.h \
.././autoconf/confdefs.h \
.././src/qt-console/label/label.cpp \
.././src/qt-console/select/select.cpp \
.././src/qt-console/fileset/fileset.cpp \
.././src/qt-console/bcomm/dircomm.cpp \
.././src/qt-console/bcomm/dircomm_auth.cpp \
.././src/qt-console/clients/clients.cpp \
.././src/qt-console/mount/mount.cpp \
.././src/qt-console/storage/storage.cpp \
.././src/qt-console/medialist/medialist.cpp \
.././src/qt-console/joblog/joblog.cpp \
.././src/qt-console/jobgraphs/jobplot.cpp \
.././src/qt-console/restore/restore.cpp \
.././src/qt-console/restore/restoretree.cpp \
.././src/qt-console/restore/brestore.cpp \
.././src/qt-console/restore/prerestore.cpp \
.././src/qt-console/mediaedit/mediaedit.cpp \
.././src/qt-console/help/help.cpp \
.././src/qt-console/testprogs/putz/putz.cpp \
.././src/qt-console/testprogs/putz/main.cpp \
.././src/qt-console/testprogs/examp/main.cpp \
.././src/qt-console/testprogs/examp/mainwindow.cpp \
.././src/qt-console/jobs/jobs.cpp \
.././src/qt-console/console/authenticate.cpp \
.././src/qt-console/console/console.cpp \
.././src/qt-console/run/run.cpp \
.././src/qt-console/run/runcmd.cpp \
.././src/qt-console/run/prune.cpp \
.././src/qt-console/run/estimate.cpp \
.././src/qt-console/joblist/joblist.cpp \
.././src/qt-console/relabel/relabel.cpp \
.././src/qt-console/pages.cpp \
.././src/qt-console/bat_conf.cpp \
.././src/qt-console/qstd.cpp \
.././src/qt-console/main.cpp \
.././src/qt-console/mainwin.cpp \
.././src/wx-console/wxbmainframe.cpp \
.././src/wx-console/wxbutils.cpp \
.././src/wx-console/main.cpp \
.././src/wx-console/wxbtreectrl.cpp \
.././src/wx-console/wxbconfigpanel.cpp \
.././src/wx-console/wxbhistorytextctrl.cpp \
.././src/wx-console/wxblistctrl.cpp \
.././src/wx-console/wxbrestorepanel.cpp \
.././src/wx-console/wxbtableparser.cpp \
.././src/wx-console/console_thread.cpp \
.././src/wx-console/wxbconfigfileeditor.cpp \
.././src/win32/filed/service.cpp \
.././src/win32/filed/vss_Vista.cpp \
.././src/win32/filed/vss_W2K3.cpp \
.././src/win32/filed/vss_XP.cpp \
.././src/win32/filed/main.cpp \
.././src/win32/filed/trayMonitor.cpp \
.././src/win32/filed/vss_generic.cpp \
.././src/win32/filed/vss.cpp \
.././src/win32/tools/ScsiDeviceList.cpp \
.././src/win32/tools/scsilist.cpp \
.././src/win32/dird/service.cpp \
.././src/win32/dird/main.cpp \
.././src/win32/compat/compat.cpp \
.././src/win32/compat/print.cpp \
.././src/win32/libwin32/service.cpp \
.././src/win32/libwin32/statusDialog.cpp \
.././src/win32/libwin32/main.cpp \
.././src/win32/libwin32/trayMonitor.cpp \
.././src/win32/libwin32/aboutDialog.cpp \
.././src/win32/stored/postest/postest.cpp \
.././src/win32/stored/service.cpp \
.././src/win32/stored/mtops.cpp \
.././src/win32/stored/main.cpp \
.././src/win32/stored/trayMonitor.cpp
CATALOGS = fr.gmo de.gmo
# Makevars gets inserted here. (Don't remove this line!)
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
DOMAIN = bacula
# These two variables depend on the location of this directory.
subdir = po
top_builddir = ..
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --keyword=_
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = Kern Sibbald
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS = bacula-devel@lists.sourceforge.net
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
.SUFFIXES:
.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update
.po.mo:
@echo "$(MSGFMT) -c -o $@ $<"; \
$(MSGFMT) -c -o t-$@ $< && mv t-$@ $@
.po.gmo:
@lang=`echo $* | sed -e 's,.*/,,'`; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \
cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo
.sin.sed:
sed -e '/^#/d' $< > t-$@
mv t-$@ $@
all: all-no
all-yes: stamp-po
all-no:
# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no
# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because
# we don't want to bother translators with empty POT files). We assume that
# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty.
# In this case, stamp-po is a nop (i.e. a phony target).
# stamp-po is a timestamp denoting the last time at which the CATALOGS have
# been loosely updated. Its purpose is that when a developer or translator
# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS,
# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent
# invocations of "make" will do nothing. This timestamp would not be necessary
# if updating the $(CATALOGS) would always touch them; however, the rule for
# $(POFILES) has been designed to not touch files that don't need to be
# changed.
stamp-po: $(srcdir)/$(DOMAIN).pot
test ! -f $(srcdir)/$(DOMAIN).pot || \
test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES)
@test ! -f $(srcdir)/$(DOMAIN).pot || { \
echo "touch stamp-po" && \
echo timestamp > stamp-poT && \
mv stamp-poT stamp-po; \
}
# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update',
# otherwise packages like GCC can not be built if only parts of the source
# have been downloaded.
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \
else \
msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \
fi; \
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--msgid-bugs-address="$$msgid_bugs_address"
test ! -f $(DOMAIN).po || { \
if test -f $(srcdir)/$(DOMAIN).pot; then \
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \
sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \
if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \
else \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
else \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
}
# This rule has no dependencies: we don't need to update $(DOMAIN).pot at
# every "make" invocation, only create it when it is missing.
# Only "make $(DOMAIN).pot-update" or "make dist" will force an update.
$(srcdir)/$(DOMAIN).pot:
$(MAKE) $(DOMAIN).pot-update
# This target rebuilds a PO file if $(DOMAIN).pot has changed.
# Note that a PO file is not touched if it doesn't need to be changed.
$(POFILES): $(srcdir)/$(DOMAIN).pot
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
if test -f "$(srcdir)/$${lang}.po"; then \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
else \
$(MAKE) $${lang}.po-create; \
fi
install: install-exec install-data
install-exec:
install-data: install-data-no
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
for file in $(DISTFILES.common) Makevars.template; do \
$(INSTALL_DATA) $(srcdir)/$$file \
$(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
for file in Makevars; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
install-data-no: all
install-data-yes: all
$(mkinstalldirs) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkinstalldirs) $(DESTDIR)$$dir; \
if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \
$(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \
echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \
fi; \
done; \
done
install-strip: install
installdirs: installdirs-exec installdirs-data
installdirs-exec:
installdirs-data: installdirs-data-no
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
else \
: ; \
fi
installdirs-data-no:
installdirs-data-yes:
$(mkinstalldirs) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkinstalldirs) $(DESTDIR)$$dir; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
fi; \
done; \
done
# Define this as empty until I found a useful application.
installcheck:
uninstall: uninstall-exec uninstall-data
uninstall-exec:
uninstall-data: uninstall-data-no
if test "$(PACKAGE)" = "gettext-tools"; then \
for file in $(DISTFILES.common) Makevars.template; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
uninstall-data-no:
uninstall-data-yes:
catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
done; \
done
check: all
info dvi ps pdf html tags TAGS ctags CTAGS ID:
mostlyclean:
rm -f remove-potcdate.sed
rm -f stamp-poT
rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po
rm -fr *.o
clean: mostlyclean
distclean: clean
rm -f Makefile Makefile.in POTFILES *.mo
maintainer-clean: distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
rm -f stamp-po $(GMOFILES)
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir:
$(MAKE) update-po
@$(MAKE) dist2
# This is a separate target because 'update-po' must be executed before.
dist2: stamp-po $(DISTFILES)
dists="$(DISTFILES)"; \
if test "$(PACKAGE)" = "gettext-tools"; then \
dists="$$dists Makevars.template"; \
fi; \
if test -f $(srcdir)/$(DOMAIN).pot; then \
dists="$$dists $(DOMAIN).pot stamp-po"; \
fi; \
if test -f $(srcdir)/ChangeLog; then \
dists="$$dists ChangeLog"; \
fi; \
for i in 0 1 2 3 4 5 6 7 8 9; do \
if test -f $(srcdir)/ChangeLog.$$i; then \
dists="$$dists ChangeLog.$$i"; \
fi; \
done; \
if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \
for file in $$dists; do \
if test -f $$file; then \
cp -p $$file $(distdir) || exit 1; \
else \
cp -p $(srcdir)/$$file $(distdir) || exit 1; \
fi; \
done
update-po: Makefile
$(MAKE) $(DOMAIN).pot-update
test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES)
$(MAKE) update-gmo
# General rule for creating PO files.
.nop.po-create:
@lang=`echo $@ | sed -e 's/\.po-create$$//'`; \
echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \
exit 1
# General rule for updating PO files.
.nop.po-update:
@lang=`echo $@ | sed -e 's/\.po-update$$//'`; \
if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
cd $(srcdir); \
if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "msgmerge for $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
$(DUMMYPOFILES):
update-gmo: Makefile $(GMOFILES)
@:
Makefile: Makefile.in.in Makevars $(top_builddir)/config.status POTFILES.in LINGUAS
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
$(SHELL) ./config.status
force:
depend:
gen-potfiles:
echo "# List of source files containing translatable strings." > POTFILES.in
echo "# To generate this file, type 'make gen-potfiles'" >> POTFILES.in
cd .. && find -name "*.c" >> po/POTFILES.in
cd .. && find -name "*.h" >> po/POTFILES.in
cd .. && find -name "*.cpp" >> po/POTFILES.in
# Tell versions [3.59,3.63) of GNU make not to export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
# Special Makefile rules for English message catalogs with quotation marks.
DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot
.SUFFIXES: .insert-header .po-update-en
en@quot.po-create:
$(MAKE) en@quot.po-update
en@boldquot.po-create:
$(MAKE) en@boldquot.po-update
en@quot.po-update: en@quot.po-update-en
en@boldquot.po-update: en@boldquot.po-update-en
.insert-header.po-update-en:
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \
if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
ll=`echo $$lang | sed -e 's/@.*//'`; \
LC_ALL=C; export LC_ALL; \
cd $(srcdir); \
if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "creation of $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
en@quot.insert-header: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header
en@boldquot.insert-header: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header
mostlyclean: mostlyclean-quot
mostlyclean-quot:
rm -f *.insert-header
syntax highlighted by Code2HTML, v. 0.9.1