nkeynes@1: # Makefile for program source directory in GNU NLS utilities package. nkeynes@1: # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper nkeynes@1: # nkeynes@1: # This file file be copied and used freely without restrictions. It can nkeynes@1: # be used in projects which are not available under the GNU Public License nkeynes@1: # but which still want to provide support for the GNU gettext functionality. nkeynes@1: # Please note that the actual code is *not* freely available. nkeynes@1: # nkeynes@1: # - Modified by Owen Taylor to use GETTEXT_PACKAGE nkeynes@1: # instead of PACKAGE and to look for po2tbl in ./ not in intl/ nkeynes@1: # nkeynes@1: # - Modified by jacob berkman to install nkeynes@1: # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize nkeynes@1: nkeynes@1: GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ nkeynes@1: PACKAGE = @PACKAGE@ nkeynes@1: VERSION = @VERSION@ nkeynes@1: nkeynes@1: SHELL = /bin/sh nkeynes@1: @SET_MAKE@ nkeynes@1: nkeynes@1: srcdir = @srcdir@ nkeynes@1: top_srcdir = @top_srcdir@ nkeynes@1: VPATH = @srcdir@ nkeynes@1: nkeynes@1: prefix = @prefix@ nkeynes@1: exec_prefix = @exec_prefix@ nkeynes@1: datadir = @datadir@ nkeynes@1: libdir = @libdir@ nkeynes@1: localedir = $(libdir)/locale nkeynes@1: gnulocaledir = $(datadir)/locale nkeynes@1: gettextsrcdir = $(datadir)/glib-2.0/gettext/po nkeynes@1: subdir = po nkeynes@1: nkeynes@1: INSTALL = @INSTALL@ nkeynes@1: INSTALL_DATA = @INSTALL_DATA@ nkeynes@1: MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@ nkeynes@1: nkeynes@1: CC = @CC@ nkeynes@1: GENCAT = @GENCAT@ nkeynes@1: GMSGFMT = @GMSGFMT@ nkeynes@1: MSGFMT = @MSGFMT@ nkeynes@1: XGETTEXT = @XGETTEXT@ nkeynes@1: MSGMERGE = msgmerge nkeynes@1: nkeynes@1: DEFS = @DEFS@ nkeynes@1: CFLAGS = @CFLAGS@ nkeynes@1: CPPFLAGS = @CPPFLAGS@ nkeynes@1: nkeynes@1: INCLUDES = -I.. -I$(top_srcdir)/intl nkeynes@1: nkeynes@1: COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) nkeynes@1: nkeynes@1: SOURCES = nkeynes@1: POFILES = @POFILES@ nkeynes@1: GMOFILES = @GMOFILES@ nkeynes@1: DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(GETTEXT_PACKAGE).pot \ nkeynes@1: $(POFILES) $(GMOFILES) $(SOURCES) nkeynes@1: nkeynes@1: POTFILES = \ nkeynes@1: nkeynes@1: CATALOGS = @CATALOGS@ nkeynes@1: CATOBJEXT = @CATOBJEXT@ nkeynes@1: INSTOBJEXT = @INSTOBJEXT@ nkeynes@1: nkeynes@1: .SUFFIXES: nkeynes@1: .SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat nkeynes@1: nkeynes@1: .c.o: nkeynes@1: $(COMPILE) $< nkeynes@1: nkeynes@1: .po.pox: nkeynes@1: $(MAKE) $(GETTEXT_PACKAGE).pot nkeynes@1: $(MSGMERGE) $< $(srcdir)/$(GETTEXT_PACKAGE).pot -o $*.pox nkeynes@1: nkeynes@1: .po.mo: nkeynes@1: $(MSGFMT) -o $@ $< nkeynes@1: nkeynes@1: .po.gmo: nkeynes@1: file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ nkeynes@10: && rm -f $$file && $(GMSGFMT) -c -o $$file $< nkeynes@1: nkeynes@1: .po.cat: nkeynes@1: sed -f ../intl/po2msg.sed < $< > $*.msg \ nkeynes@1: && rm -f $@ && $(GENCAT) $@ $*.msg nkeynes@1: nkeynes@1: nkeynes@1: all: all-@USE_NLS@ nkeynes@1: nkeynes@1: all-yes: $(CATALOGS) nkeynes@1: all-no: nkeynes@1: nkeynes@1: $(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES) nkeynes@1: $(XGETTEXT) --default-domain=$(GETTEXT_PACKAGE) --directory=$(top_srcdir) \ nkeynes@1: --add-comments --keyword=_ --keyword=N_ \ nkeynes@10: --flag=g_strdup_printf:1:c-format \ nkeynes@10: --flag=g_string_printf:2:c-format \ nkeynes@10: --flag=g_string_append_printf:2:c-format \ nkeynes@10: --flag=g_error_new:3:c-format \ nkeynes@10: --flag=g_set_error:4:c-format \ nkeynes@10: --flag=g_markup_printf_escaped:1:c-format \ nkeynes@10: --flag=g_log:3:c-format \ nkeynes@10: --flag=g_print:1:c-format \ nkeynes@10: --flag=g_printerr:1:c-format \ nkeynes@10: --flag=g_printf:1:c-format \ nkeynes@10: --flag=g_fprintf:2:c-format \ nkeynes@10: --flag=g_sprintf:2:c-format \ nkeynes@10: --flag=g_snprintf:3:c-format \ nkeynes@10: --flag=g_scanner_error:2:c-format \ nkeynes@10: --flag=g_scanner_warn:2:c-format \ nkeynes@1: --files-from=$(srcdir)/POTFILES.in \ nkeynes@1: && test ! -f $(GETTEXT_PACKAGE).po \ nkeynes@1: || ( rm -f $(srcdir)/$(GETTEXT_PACKAGE).pot \ nkeynes@1: && mv $(GETTEXT_PACKAGE).po $(srcdir)/$(GETTEXT_PACKAGE).pot ) nkeynes@1: nkeynes@1: install: install-exec install-data nkeynes@1: install-exec: nkeynes@1: install-data: install-data-@USE_NLS@ nkeynes@1: install-data-no: all nkeynes@1: install-data-yes: all nkeynes@1: if test -r "$(MKINSTALLDIRS)"; then \ nkeynes@1: $(MKINSTALLDIRS) $(DESTDIR)$(datadir); \ nkeynes@1: else \ nkeynes@1: $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \ nkeynes@1: fi nkeynes@1: @catalogs='$(CATALOGS)'; \ nkeynes@1: for cat in $$catalogs; do \ nkeynes@1: cat=`basename $$cat`; \ nkeynes@1: case "$$cat" in \ nkeynes@1: *.gmo) destdir=$(gnulocaledir);; \ nkeynes@1: *) destdir=$(localedir);; \ nkeynes@1: esac; \ nkeynes@1: lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ nkeynes@1: dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \ nkeynes@1: if test -r "$(MKINSTALLDIRS)"; then \ nkeynes@1: $(MKINSTALLDIRS) $$dir; \ nkeynes@1: else \ nkeynes@1: $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \ nkeynes@1: fi; \ nkeynes@1: if test -r $$cat; then \ nkeynes@1: $(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \ nkeynes@1: echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \ nkeynes@1: else \ nkeynes@1: $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \ nkeynes@1: echo "installing $(srcdir)/$$cat as" \ nkeynes@1: "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \ nkeynes@1: fi; \ nkeynes@1: if test -r $$cat.m; then \ nkeynes@1: $(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \ nkeynes@1: echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \ nkeynes@1: else \ nkeynes@1: if test -r $(srcdir)/$$cat.m ; then \ nkeynes@1: $(INSTALL_DATA) $(srcdir)/$$cat.m \ nkeynes@1: $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \ nkeynes@1: echo "installing $(srcdir)/$$cat as" \ nkeynes@1: "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \ nkeynes@1: else \ nkeynes@1: true; \ nkeynes@1: fi; \ nkeynes@1: fi; \ nkeynes@1: done nkeynes@1: if test "$(PACKAGE)" = "glib"; then \ nkeynes@1: if test -r "$(MKINSTALLDIRS)"; then \ nkeynes@1: $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \ nkeynes@1: else \ nkeynes@1: $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \ nkeynes@1: fi; \ nkeynes@1: $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ nkeynes@1: $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ nkeynes@1: else \ nkeynes@1: : ; \ nkeynes@1: fi nkeynes@1: nkeynes@1: # Define this as empty until I found a useful application. nkeynes@1: installcheck: nkeynes@1: nkeynes@1: uninstall: nkeynes@1: catalogs='$(CATALOGS)'; \ nkeynes@1: for cat in $$catalogs; do \ nkeynes@1: cat=`basename $$cat`; \ nkeynes@1: lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ nkeynes@1: rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \ nkeynes@1: rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \ nkeynes@1: rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \ nkeynes@1: rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \ nkeynes@1: done nkeynes@1: if test "$(PACKAGE)" = "glib"; then \ nkeynes@1: rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ nkeynes@1: fi nkeynes@1: nkeynes@1: check: all nkeynes@1: nkeynes@1: dvi info tags TAGS ID: nkeynes@1: nkeynes@1: mostlyclean: nkeynes@1: rm -f core core.* *.pox $(GETTEXT_PACKAGE).po *.old.po cat-id-tbl.tmp nkeynes@1: rm -fr *.o nkeynes@1: nkeynes@1: clean: mostlyclean nkeynes@1: nkeynes@1: distclean: clean nkeynes@1: rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m nkeynes@1: nkeynes@1: maintainer-clean: distclean nkeynes@1: @echo "This command is intended for maintainers to use;" nkeynes@1: @echo "it deletes files that may require special tools to rebuild." nkeynes@1: rm -f $(GMOFILES) nkeynes@1: nkeynes@1: distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir) nkeynes@1: dist distdir: update-po $(DISTFILES) nkeynes@1: dists="$(DISTFILES)"; \ nkeynes@1: for file in $$dists; do \ nkeynes@1: ln $(srcdir)/$$file $(distdir) 2> /dev/null \ nkeynes@1: || cp -p $(srcdir)/$$file $(distdir); \ nkeynes@1: done nkeynes@1: nkeynes@1: update-po: Makefile nkeynes@1: $(MAKE) $(GETTEXT_PACKAGE).pot nkeynes@1: tmpdir=`pwd`; \ nkeynes@1: cd $(srcdir); \ nkeynes@1: catalogs='$(CATALOGS)'; \ nkeynes@1: for cat in $$catalogs; do \ nkeynes@1: cat=`basename $$cat`; \ nkeynes@1: lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ nkeynes@1: echo "$$lang:"; \ nkeynes@1: if $(MSGMERGE) $$lang.po $(GETTEXT_PACKAGE).pot -o $$tmpdir/$$lang.new.po; then \ nkeynes@1: if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ nkeynes@1: rm -f $$tmpdir/$$lang.new.po; \ nkeynes@1: else \ nkeynes@1: if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ nkeynes@1: :; \ nkeynes@1: else \ nkeynes@1: echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ nkeynes@1: rm -f $$tmpdir/$$lang.new.po; \ nkeynes@1: exit 1; \ nkeynes@1: fi; \ nkeynes@1: fi; \ nkeynes@1: else \ nkeynes@1: echo "msgmerge for $$cat failed!"; \ nkeynes@1: rm -f $$tmpdir/$$lang.new.po; \ nkeynes@1: fi; \ nkeynes@1: done nkeynes@1: nkeynes@1: # POTFILES is created from POTFILES.in by stripping comments, empty lines nkeynes@1: # and Intltool tags (enclosed in square brackets), and appending a full nkeynes@1: # relative path to them nkeynes@1: POTFILES: POTFILES.in nkeynes@1: ( if test 'x$(srcdir)' != 'x.'; then \ nkeynes@1: posrcprefix='$(top_srcdir)/'; \ nkeynes@1: else \ nkeynes@1: posrcprefix="../"; \ nkeynes@1: fi; \ nkeynes@1: rm -f $@-t $@ \ nkeynes@1: && (sed -e '/^#/d' \ nkeynes@1: -e "s/^\[.*\] +//" \ nkeynes@1: -e '/^[ ]*$$/d' \ nkeynes@1: -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \ nkeynes@1: | sed -e '$$s/\\$$//') > $@-t \ nkeynes@1: && chmod a-w $@-t \ nkeynes@1: && mv $@-t $@ ) nkeynes@1: nkeynes@1: Makefile: Makefile.in.in ../config.status POTFILES nkeynes@1: cd .. \ nkeynes@1: && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ nkeynes@1: $(SHELL) ./config.status nkeynes@1: nkeynes@1: # Tell versions [3.59,3.63) of GNU make not to export all variables. nkeynes@1: # Otherwise a system limit (for SysV at least) may be exceeded. nkeynes@1: .NOEXPORT: