1## Makefile for the po subdirectory of the GNU C++ Standard library. 2## 3## Copyright (C) 2001-2017 Free Software Foundation, Inc. 4## 5## This file is part of the libstdc++ version 3 distribution. 6## Process this file with automake to produce Makefile.in. 7 8## This file is part of the GNU ISO C++ Library. This library is free 9## software; you can redistribute it and/or modify it under the 10## terms of the GNU General Public License as published by the 11## Free Software Foundation; either version 3, or (at your option) 12## any later version. 13 14## This library is distributed in the hope that it will be useful, 15## but WITHOUT ANY WARRANTY; without even the implied warranty of 16## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17## GNU General Public License for more details. 18 19## You should have received a copy of the GNU General Public License along 20## with this library; see the file COPYING3. If not see 21## <http://www.gnu.org/licenses/>. 22 23include $(top_srcdir)/fragment.am 24 25# Location of installation directories. 26locale_installdir = $(DESTDIR)$(datadir)/locale 27locale_builddir = $(glibcxx_localedir) 28 29# Tell automake that foo.po makes foo.mo 30SUFFIXES = .po .mo 31 32LOCALE_IN = $(glibcxx_POFILES) 33LOCALE_OUT = $(glibcxx_MOFILES) 34 35MSGFMT = msgfmt 36 37# Necessary files. 38EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN) 39 40.po.mo: 41 $(MSGFMT) -o $@ $< 42 43all-local: all-local-$(USE_NLS) 44all-local-no: 45all-local-yes: $(LOCALE_OUT) 46 47# 'make check' needs the catalogs constructed in build directory. 48check: check-$(USE_NLS) 49check-no: 50check-yes: 51 $(mkinstalldirs) $(locale_builddir) 52 catalogs='$(LOCALE_OUT)'; \ 53 for cat in $$catalogs; do \ 54 cat=`basename $$cat`; \ 55 lang=`echo $$cat | sed 's/\.mo$$//'`; \ 56 install_dir=$(locale_builddir)/$$lang/LC_MESSAGES; \ 57 $(mkinstalldirs) $$install_dir; \ 58 $(INSTALL_DATA) $$cat $$install_dir/$(PACKAGE).mo; \ 59 done 60 61# Install rules here. 62# Wish install could just `cp -R ./share $(locale_installdir)` ... 63install-data-local: install-data-local-$(USE_NLS) 64install-data-local-no: 65install-data-local-yes: all-local-yes 66 $(mkinstalldirs) $(locale_installdir) 67 catalogs='$(LOCALE_OUT)'; \ 68 for cat in $$catalogs; do \ 69 cat=`basename $$cat`; \ 70 lang=`echo $$cat | sed 's/\.mo$$//'`; \ 71 install_dir=$(locale_installdir)/$$lang/LC_MESSAGES; \ 72 $(mkinstalldirs) $$install_dir; \ 73 $(INSTALL_DATA) $$cat $$install_dir/$(PACKAGE).mo; \ 74 done 75 76# Maintainence of the .po template file. This rule is never run automatically, 77# and updates the source directory. 78pot: 79 cd $(glibcxx_srcdir); \ 80 xgettext --default-domain=$(PACKAGE) --add-comments --c++ --debug \ 81 --join-existing -o po/$(PACKAGE).pot --keyword=__N \ 82 `grep -r -l '__N(".*")' .` 83 84# Specify what gets cleaned up on a 'make clean' 85CLEANFILES = $(LOCALE_OUT) 86