Imported Upstream version 2.8.5
[platform/upstream/man-db.git] / man / po4a / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2 ##
3 ## Copyright (C) 2008 Colin Watson.
4 ##
5 ## This file is part of man-db.
6 ##
7 ## man-db is free software; you can redistribute it and/or modify it
8 ## under the terms of the GNU General Public License as published by
9 ## the Free Software Foundation; either version 2 of the License, or
10 ## (at your option) any later version.
11 ##
12 ## man-db is distributed in the hope that it will be useful, but
13 ## WITHOUT ANY WARRANTY; without even the implied warranty of
14 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ## GNU General Public License for more details.
16 ##
17 ## You should have received a copy of the GNU General Public License
18 ## along with man-db; if not, write to the Free Software Foundation,
19 ## Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20
21 DOMAIN = man-db-manpages
22 POFILES = \
23         po/da.po \
24         po/de.po \
25         po/es.po \
26         po/fr.po \
27         po/id.po \
28         po/ja.po \
29         po/nl.po \
30         po/pl.po \
31         po/pt.po \
32         po/pt_BR.po \
33         po/ru.po \
34         po/sr.po \
35         po/sv.po \
36         po/tr.po \
37         po/zh_CN.po
38
39 EXTRA_DIST = po4a.cfg Locale/Po4a/Manext.pm po/$(DOMAIN).pot $(POFILES)
40
41 if PO4A
42 PO4A_ENVIRONMENT = PERL5LIB=$(srcdir)
43 STAGING = $(builddir)/tmp-po
44
45 # Always generate output files even if poorly translated, since Automake's
46 # generated rules will get upset otherwise.
47 PO4A_ARGS = --variable srcdir=$(top_srcdir)/man \
48             --variable builddir=$(top_builddir)/man \
49             --variable podir=$(STAGING) \
50             --keep 0
51
52 RUN_PO4A = $(PO4A_ENVIRONMENT) $(PO4A) $(PO4A_ARGS)
53
54 all-local:
55         rm -rf $(STAGING)
56         $(MKDIR_P) $(STAGING)
57         set -e; for f in po/$(DOMAIN).pot $(POFILES); do \
58                 base=`basename $$f`; \
59                 cp -p $(srcdir)/$$f $(STAGING)/; \
60                 chmod u+w $(STAGING)/$$base; \
61         done
62         $(RUN_PO4A) $(srcdir)/po4a.cfg
63         rm -rf $(STAGING)
64
65 update-po-real:
66         @$(MAKE) -C $(top_builddir)/po remove-potcdate.sed
67         rm -rf $(STAGING)
68         $(MKDIR_P) $(STAGING)
69         set -e; for f in po/$(DOMAIN).pot $(POFILES); do \
70                 base=`basename $$f`; \
71                 cp -p $(srcdir)/$$f $(STAGING)/; \
72                 chmod u+w $(STAGING)/$$base; \
73         done
74         $(RUN_PO4A) --force --no-translations $(srcdir)/po4a.cfg
75         sed -f $(top_builddir)/po/remove-potcdate.sed \
76                 < $(srcdir)/po/$(DOMAIN).pot > $(STAGING)/$(DOMAIN).1po
77         sed -f $(top_builddir)/po/remove-potcdate.sed \
78                 < $(STAGING)/$(DOMAIN).pot > $(STAGING)/$(DOMAIN).2po
79         set -e; if ! cmp $(STAGING)/$(DOMAIN).1po $(STAGING)/$(DOMAIN).2po \
80                         >/dev/null 2>&1; then \
81                 for f in po/$(DOMAIN).pot $(POFILES); do \
82                         base=`basename $$f`; \
83                         mv -f $(STAGING)/$$base $(srcdir)/$$f; \
84                 done; \
85         fi
86         rm -rf $(STAGING)
87
88 update-po:
89         @set -e; if test $(srcdir) = $(builddir); then \
90                 $(MAKE) update-po-real; \
91         else \
92                 echo "update-po does not yet work with out-of-tree builds."; \
93         fi
94
95 po/man-db-manpages.pot:
96         $(MAKE) update-po
97
98 clean-local:
99         rm -rf $(STAGING)
100 endif