Revert last change to Makefile.in.in - no this is not the Makefile.in.in
authorOwen Taylor <otaylor@redhat.com>
Wed, 5 Sep 2001 13:28:24 +0000 (13:28 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Wed, 5 Sep 2001 13:28:24 +0000 (13:28 +0000)
Wed Sep  5 09:27:34 2001  Owen Taylor  <otaylor@redhat.com>

        * Revert last change to Makefile.in.in - no this
        is not the Makefile.in.in from gettext.

po/ChangeLog
po/Makefile.in.in

index 093bb9a..b7b93ae 100644 (file)
@@ -1,3 +1,8 @@
+Wed Sep  5 09:27:34 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * Revert last change to Makefile.in.in - no this
+       is not the Makefile.in.in from gettext.
+
 2001-09-05  Ross Golder  <ross@golder.org>
 
        * Makefile.in.in: Updated from more recent gettext to fix
index 32b7376..e6a1a75 100644 (file)
@@ -1,18 +1,18 @@
 # Makefile for program source directory in GNU NLS utilities package.
-# Copyright (C) 1995-1997, 2000, 2001 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
+# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
 #
 # This file file be copied and used freely without restrictions.  It can
 # be used in projects which are not available under the GNU Public License
 # but which still want to provide support for the GNU gettext functionality.
 # Please note that the actual code is *not* freely available.
+#
+# - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE
+#   instead of PACKAGE and to look for po2tbl in ./ not in intl/
+#
 
-PACKAGE = @PACKAGE@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
 VERSION = @VERSION@
 
-# These two variables depend on the location of this directory.
-subdir = po
-top_builddir = ..
-
 SHELL = /bin/sh
 @SET_MAKE@
 
@@ -22,20 +22,22 @@ VPATH = @srcdir@
 
 prefix = @prefix@
 exec_prefix = @exec_prefix@
-datadir = @datadir@
+datadir = $(prefix)/@DATADIRNAME@
 localedir = $(datadir)/locale
-gettextsrcdir = $(datadir)/gettext/po
+gnulocaledir = $(prefix)/share/locale
+gettextsrcdir = $(prefix)/share/gettext/po
+subdir = po
 
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
+MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@
 
 CC = @CC@
-GMSGFMT = @GMSGFMT@
+GENCAT = @GENCAT@
+GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
 MSGFMT = @MSGFMT@
-XGETTEXT = @XGETTEXT@
-MSGMERGE = msgmerge
+XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
+MSGMERGE = PATH=../src:$$PATH msgmerge
 
 DEFS = @DEFS@
 CFLAGS = @CFLAGS@
@@ -45,79 +47,125 @@ INCLUDES = -I.. -I$(top_srcdir)/intl
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
+SOURCES = cat-id-tbl.c
 POFILES = @POFILES@
 GMOFILES = @GMOFILES@
-DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
-$(POFILES) $(GMOFILES)
+DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(GETTEXT_PACKAGE).pot \
+stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
 
 POTFILES = \
 
 CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+INSTOBJEXT = @INSTOBJEXT@
 
 .SUFFIXES:
-.SUFFIXES: .c .o .po .pox .gmo .mo
+.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
 
 .c.o:
        $(COMPILE) $<
 
 .po.pox:
-       $(MAKE) $(PACKAGE).pot
-       $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
+       $(MAKE) $(GETTEXT_PACKAGE).pot
+       $(MSGMERGE) $< $(srcdir)/$(GETTEXT_PACKAGE).pot -o $*.pox
 
 .po.mo:
        $(MSGFMT) -o $@ $<
 
 .po.gmo:
        file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
-         && rm -f $$file && $(GMSGFMT) --statistics -o $$file $<
+         && rm -f $$file && $(GMSGFMT) -o $$file $<
+
+.po.cat:
+       sed -f ../intl/po2msg.sed < $< > $*.msg \
+         && rm -f $@ && $(GENCAT) $@ $*.msg
 
 
 all: all-@USE_NLS@
 
-all-yes: $(CATALOGS)
+all-yes: cat-id-tbl.c $(CATALOGS)
 all-no:
 
-# Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot',
-# otherwise packages like GCC can not be built if only parts of the source
-# have been downloaded.
-
-$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
-       $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
+$(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES)
+       $(XGETTEXT) --default-domain=$(GETTEXT_PACKAGE) --directory=$(top_srcdir) \
          --add-comments --keyword=_ --keyword=N_ \
          --files-from=$(srcdir)/POTFILES.in \
-       && test ! -f $(PACKAGE).po \
-          || ( rm -f $(srcdir)/$(PACKAGE).pot \
-               && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
+       && test ! -f $(GETTEXT_PACKAGE).po \
+          || ( rm -f $(srcdir)/$(GETTEXT_PACKAGE).pot \
+               && mv $(GETTEXT_PACKAGE).po $(srcdir)/$(GETTEXT_PACKAGE).pot )
+
+$(srcdir)/cat-id-tbl.c: stamp-cat-id; @:
+$(srcdir)/stamp-cat-id: $(GETTEXT_PACKAGE).pot
+       rm -f cat-id-tbl.tmp
+       sed -f ./po2tbl.sed $(srcdir)/$(GETTEXT_PACKAGE).pot \
+               | sed -e "s/@GETTEXT_PACKAGE NAME@/$(GETTEXT_PACKAGE)/" > cat-id-tbl.tmp
+       if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
+         rm cat-id-tbl.tmp; \
+       else \
+         echo cat-id-tbl.c changed; \
+         rm -f $(srcdir)/cat-id-tbl.c; \
+         mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
+       fi
+       cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
 
 
 install: install-exec install-data
 install-exec:
 install-data: install-data-@USE_NLS@
-       if test "$(PACKAGE)" = "gettext"; then \
-         $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
-         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
-                         $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
-       else \
-         : ; \
-       fi
 install-data-no: all
 install-data-yes: all
-       $(mkinstalldirs) $(DESTDIR)$(datadir)
+       if test -r "$(MKINSTALLDIRS)"; then \
+         $(MKINSTALLDIRS) $(datadir); \
+       else \
+         $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \
+       fi
        @catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
-         dir=$(localedir)/$$lang/LC_MESSAGES; \
-         $(mkinstalldirs) $(DESTDIR)$$dir; \
+         case "$$cat" in \
+           *.gmo) destdir=$(gnulocaledir);; \
+           *)     destdir=$(localedir);; \
+         esac; \
+         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+         dir=$$destdir/$$lang/LC_MESSAGES; \
+         if test -r "$(MKINSTALLDIRS)"; then \
+           $(MKINSTALLDIRS) $$dir; \
+         else \
+           $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
+         fi; \
          if test -r $$cat; then \
-           $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
-           echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \
+           $(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
+           echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
          else \
-           $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
+           $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
            echo "installing $(srcdir)/$$cat as" \
-                "$(DESTDIR)$$dir/$(PACKAGE).mo"; \
+                "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
+         fi; \
+         if test -r $$cat.m; then \
+           $(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
+           echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
+         else \
+           if test -r $(srcdir)/$$cat.m ; then \
+             $(INSTALL_DATA) $(srcdir)/$$cat.m \
+               $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
+             echo "installing $(srcdir)/$$cat as" \
+                  "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
+           else \
+             true; \
+           fi; \
          fi; \
        done
+       if test "$(GETTEXT_PACKAGE)" = "gettext"; then \
+         if test -r "$(MKINSTALLDIRS)"; then \
+           $(MKINSTALLDIRS) $(gettextsrcdir); \
+         else \
+           $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
+         fi; \
+         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
+                         $(gettextsrcdir)/Makefile.in.in; \
+       else \
+         : ; \
+       fi
 
 # Define this as empty until I found a useful application.
 installcheck:
@@ -126,68 +174,76 @@ uninstall:
        catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
-         rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
+         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+         rm -f $(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
+         rm -f $(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
+         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
+         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
        done
-       if test "$(PACKAGE)" = "gettext"; then \
-         rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
-       else \
-         : ; \
-       fi
+       rm -f $(gettextsrcdir)/po-Makefile.in.in
 
 check: all
 
+cat-id-tbl.o: ../intl/libgettext.h
+
 dvi info tags TAGS ID:
 
 mostlyclean:
-       rm -f core core.* *.pox $(PACKAGE).po *.new.po
+       rm -f core core.* *.pox $(GETTEXT_PACKAGE).po *.old.po cat-id-tbl.tmp
        rm -fr *.o
 
 clean: mostlyclean
 
 distclean: clean
-       rm -f Makefile Makefile.in POTFILES *.mo
+       rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
 
 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 $(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: $(DISTFILES)
+distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir)
+dist distdir: update-po $(DISTFILES)
        dists="$(DISTFILES)"; \
        for file in $$dists; do \
-         if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
-         cp -p $$dir/$$file $(distdir); \
+         ln $(srcdir)/$$file $(distdir) 2> /dev/null \
+           || cp -p $(srcdir)/$$file $(distdir); \
        done
 
 update-po: Makefile
-       $(MAKE) $(PACKAGE).pot
-       if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \
+       $(MAKE) $(GETTEXT_PACKAGE).pot
+       PATH=`pwd`/../src:$$PATH; \
        cd $(srcdir); \
-       catalogs='$(GMOFILES)'; \
+       catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
+         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+         mv $$lang.po $$lang.old.po; \
          echo "$$lang:"; \
-         if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \
-           mv -f $$lang.new.po $$lang.po; \
+         if $(MSGMERGE) $$lang.old.po $(GETTEXT_PACKAGE).pot -o $$lang.po; then \
+           rm -f $$lang.old.po; \
          else \
            echo "msgmerge for $$cat failed!"; \
-           rm -f $$lang.new.po; \
+           rm -f $$lang.po; \
+           mv $$lang.old.po $$lang.po; \
          fi; \
        done
-       $(MAKE) update-gmo
-
-update-gmo: Makefile $(GMOFILES)
-       @:
 
-Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in
-       cd $(top_builddir) \
+POTFILES: POTFILES.in
+       ( if test 'x$(srcdir)' != 'x.'; then \
+           posrcprefix='$(top_srcdir)/'; \
+         else \
+           posrcprefix="../"; \
+         fi; \
+         rm -f $@-t $@ \
+           && (sed -e '/^#/d' -e '/^[  ]*$$/d' \
+                   -e "s@.*@   $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
+               | sed -e '$$s/\\$$//') > $@-t \
+           && chmod a-w $@-t \
+           && mv $@-t $@ )
+
+Makefile: Makefile.in.in ../config.status POTFILES
+       cd .. \
          && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
               $(SHELL) ./config.status