home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / OS2 / gnuinfo.zip / po / Makefile.in.in < prev    next >
Makefile  |  1997-06-14  |  7KB  |  255 lines

  1. # Makefile for program source directory in GNU NLS utilities package.
  2. # Copyright (C) 1995, 1996 Free Software Foundation, Inc.
  3. #
  4. # This program is free software; you can redistribute it and/or modify
  5. # it under the terms of the GNU General Public License as published by
  6. # the Free Software Foundation; either version 2, or (at your option)
  7. # any later version.
  8. #
  9. # This program is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. # GNU General Public License for more details.
  13. #
  14. # You should have received a copy of the GNU General Public License
  15. # along with this program; if not, write to the Free Software
  16. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  17.  
  18. PACKAGE = @PACKAGE@
  19. VERSION = @VERSION@
  20.  
  21. SHELL = /bin/sh
  22. @SET_MAKE@
  23.  
  24. srcdir = @srcdir@
  25. top_srcdir = @top_srcdir@
  26. VPATH = @srcdir@
  27.  
  28. prefix = @prefix@
  29. exec_prefix = @exec_prefix@
  30. datadir = $(prefix)/@DATADIRNAME@
  31. localedir = $(datadir)/locale
  32. gnulocaledir = $(prefix)/share/locale
  33. gettextsrcdir = $(prefix)/share/gettext/po
  34. subdir = po
  35.  
  36. INSTALL = @INSTALL@
  37. INSTALL_DATA = @INSTALL_DATA@
  38. MKINSTALLDIRS = @MKINSTALLDIRS@
  39.  
  40. CC = @CC@
  41. GENCAT = @GENCAT@
  42. GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
  43. MSGFMT = @MSGFMT@
  44. XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
  45. MSGMERGE = PATH=../src:$$PATH msgmerge
  46.  
  47. DEFS = @DEFS@
  48. CFLAGS = @CFLAGS@
  49. CPPFLAGS = @CPPFLAGS@
  50.  
  51. INCLUDES = -I.. -I$(top_srcdir)/intl
  52.  
  53. COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
  54.  
  55. SOURCES = cat-id-tbl.c
  56. POFILES = @POFILES@
  57. GMOFILES = @GMOFILES@
  58. DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
  59. stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
  60.  
  61. POTFILES = \
  62.  
  63. CATALOGS = @CATALOGS@
  64. CATOBJEXT = @CATOBJEXT@
  65. INSTOBJEXT = @INSTOBJEXT@
  66.  
  67. .SUFFIXES:
  68. .SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
  69.  
  70. .c.o:
  71.     $(COMPILE) $<
  72.  
  73. .po.pox:
  74.     $(MAKE) $(PACKAGE).pot
  75.     $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
  76.  
  77. .po.mo:
  78.     $(MSGFMT) -o $@ $<
  79.  
  80. .po.gmo:
  81.     file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
  82.       && rm -f $$file && $(GMSGFMT) -o $$file $<
  83.  
  84. .po.cat:
  85.     sed -f ../intl/po2msg.sed < $< > $*.msg \
  86.       && rm -f $@ && $(GENCAT) $@ $*.msg
  87.  
  88.  
  89. all: all-@USE_NLS@
  90.  
  91. all-yes: cat-id-tbl.c $(CATALOGS)
  92. all-no:
  93.  
  94. $(PACKAGE).pot: $(POTFILES)
  95.     $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
  96.       --add-comments --keyword=_ --keyword=N_ \
  97.       --files-from=$(srcdir)/POTFILES.in
  98.     if [ ! -s $(PACKAGE).po ] \
  99.       || cmp -s $(PACKAGE).po $(srcdir)/$(PACKAGE).pot; then \
  100.       rm -f $(PACKAGE).po; \
  101.     else \
  102.       rm -f $(srcdir)/$(PACKAGE).pot \
  103.         && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot; \
  104.     fi
  105.  
  106. cat-id-tbl.c: stamp-cat-id
  107. stamp-cat-id: $(PACKAGE).pot
  108.     rm -f cat-id-tbl.tmp
  109.     sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \
  110.         | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp
  111.     if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
  112.       rm cat-id-tbl.tmp; \
  113.     else \
  114.       echo cat-id-tbl.c changed; \
  115.       rm -f $(srcdir)/cat-id-tbl.c; \
  116.       mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
  117.     fi
  118.     cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
  119.  
  120.  
  121. install: install-exec install-data
  122. install-exec:
  123. install-data: install-data-@USE_NLS@
  124. install-data-no: all
  125. install-data-yes: all
  126.     if test -r $(MKINSTALLDIRS); then \
  127.       $(MKINSTALLDIRS) $(datadir); \
  128.     else \
  129.       $(top_srcdir)/mkinstalldirs $(datadir); \
  130.     fi
  131.     @catalogs='$(CATALOGS)'; \
  132.     for cat in $$catalogs; do \
  133.       case "$$cat" in \
  134.         *.gmo) destdir=$(gnulocaledir);; \
  135.         *)     destdir=$(localedir);; \
  136.       esac; \
  137.       lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
  138.       dir=$$destdir/$$lang/LC_MESSAGES; \
  139.       if test -r $(MKINSTALLDIRS); then \
  140.         $(MKINSTALLDIRS) $$dir; \
  141.       else \
  142.         $(top_srcdir)/mkinstalldirs $$dir; \
  143.       fi; \
  144.       if test -r $$cat; then \
  145.         $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
  146.         echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \
  147.       else \
  148.         $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
  149.         echo "installing $(srcdir)/$$cat as" \
  150.          "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \
  151.       fi; \
  152.       if test -r $$cat.m; then \
  153.         $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
  154.         echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
  155.       else \
  156.         if test -r $(srcdir)/$$cat.m ; then \
  157.           $(INSTALL_DATA) $(srcdir)/$$cat.m \
  158.         $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
  159.           echo "installing $(srcdir)/$$cat as" \
  160.            "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
  161.         else \
  162.           true; \
  163.         fi; \
  164.       fi; \
  165.     done
  166.     if test "$(PACKAGE)" = "gettext"; then \
  167.       if test -r $(MKINSTALLDIRS); then \
  168.         $(MKINSTALLDIRS) $(gettextsrcdir); \
  169.       else \
  170.         $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
  171.       fi; \
  172.       cd $(srcdir) && \
  173.         $(INSTALL_DATA) Makefile.in.in $(gettextsrcdir)/Makefile.in.in; \
  174.     else \
  175.       : ; \
  176.     fi
  177.  
  178. # Define this as empty until I found a useful application.
  179. installcheck:
  180.  
  181. uninstall:
  182.     catalogs='$(CATALOGS)'; \
  183.     for cat in $$catalogs; do \
  184.       lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
  185.       rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
  186.       rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
  187.       rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
  188.       rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
  189.     done
  190.     rm -f $(gettextsrcdir)/po-Makefile.in.in
  191.  
  192. check: all
  193.  
  194. cat-id-tbl.o: ../intl/libgettext.h
  195.  
  196. dvi info tags TAGS ID:
  197.  
  198. mostlyclean:
  199.     rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp
  200.     rm -fr *.o
  201.  
  202. clean: mostlyclean
  203.  
  204. distclean: clean
  205.     rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
  206.  
  207. maintainer-clean: distclean
  208.     @echo "This command is intended for maintainers to use;"
  209.     @echo "it deletes files that may require special tools to rebuild."
  210.  
  211. distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
  212. dist distdir: update-po $(DISTFILES)
  213.     dists="$(DISTFILES)"; \
  214.     for file in $$dists; do \
  215.       ln $(srcdir)/$$file $(distdir) 2> /dev/null \
  216.         || cp -p $(srcdir)/$$file $(distdir); \
  217.     done
  218.  
  219. update-po: Makefile
  220.     $(MAKE) $(PACKAGE).pot
  221.     PATH=`pwd`/../src:$$PATH; \
  222.     cd $(srcdir); \
  223.     catalogs='$(CATALOGS)'; \
  224.     for cat in $$catalogs; do \
  225.       lang=`echo $$cat | sed 's/$(CATOBJEXT)$$//'`; \
  226.       mv $$lang.po $$lang.old.po; \
  227.       echo "$$lang:"; \
  228.       if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
  229.         rm -f $$lang.old.po; \
  230.       else \
  231.         echo "msgmerge for $$cat failed!"; \
  232.         rm -f $$lang.po; \
  233.         mv $$lang.old.po $$lang.po; \
  234.       fi; \
  235.     done
  236.  
  237. POTFILES: POTFILES.in
  238.     ( if test 'x$(srcdir)' != 'x.'; then \
  239.         posrcprefix='$(top_srcdir)/'; \
  240.       else \
  241.         posrcprefix="../"; \
  242.       fi; \
  243.       sed -e '/^#/d' -e '/^[     ]*$$/d' \
  244.           -e "s@.*@    $$posrcprefix& \\\\@" \
  245.           -e '$$s/\(.*\) \\/\1/' < $(srcdir)/POTFILES.in > POTFILES )
  246.  
  247. Makefile: Makefile.in.in ../config.status POTFILES
  248.     cd .. \
  249.       && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
  250.            $(SHELL) ./config.status
  251.  
  252. # Tell versions [3.59,3.63) of GNU make not to export all variables.
  253. # Otherwise a system limit (for SysV at least) may be exceeded.
  254. .NOEXPORT:
  255.