1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
# libguestfs
# Copyright (C) 2009-2012 Red Hat Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
include $(top_srcdir)/subdir-rules.mk
# Old RHEL 5 autoconf doesn't have abs_srcdir.
abs_srcdir ?= $(shell cd $(top_srcdir)/po && pwd)
DOMAIN = $(PACKAGE_NAME)
COPYRIGHT_HOLDER = Red Hat Inc.
MSGID_BUGS_ADDRESS = https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
# Languages.
# Don't use LINGUAS (uppercase) as Gentoo defines it (RHBZ#804464).
linguas := en_GB es gu hi kn ml mr nl or pa pl ta te uk
POTFILES := $(shell $(SED) 's,^,$(top_srcdir)/,' $(srcdir)/POTFILES)
POTFILES_ML := $(shell $(SED) 's,^,$(top_srcdir)/,' $(srcdir)/POTFILES-ml)
POFILES := $(linguas:%=%.po)
GMOFILES := $(linguas:%=%.gmo)
EXTRA_DIST = \
POTFILES POTFILES-ml \
$(DOMAIN).pot \
$(POFILES) \
$(GMOFILES)
if HAVE_GNU_GETTEXT
dist-hook:
$(MAKE) update-po
cp *.po *.gmo $(distdir)/
update-po:
$(MAKE) $(DOMAIN).pot
$(MAKE) $(POFILES)
$(MAKE) update-gmo
update-gmo: Makefile $(GMOFILES)
$(DOMAIN).pot: Makefile $(POTFILES) $(POTFILES-ml)
rm -f $@-t $@-ml
$(XGETTEXT) \
-o $@-t \
--default-domain=$(DOMAIN) \
--add-comments=TRANSLATORS: \
--keyword=_ --keyword=N_ --keyword=__ --keyword=__x \
--flag=error:3:c-format \
--flag=error_at_line:5:c-format \
--flag=asprintf:2:c-format \
--flag=vasprintf:2:c-format \
--flag=xasprintf:1:c-format \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--package-name="$(PACKAGE_NAME)" \
--package-version="$(PACKAGE_VERSION)" \
--msgid-bugs-address="$(MSGID_BUGS_ADDRESS)" \
--directory=$(top_srcdir) \
--files-from=$(abs_srcdir)/POTFILES
if HAVE_OCAML_GETTEXT
$(OCAML_GETTEXT) --action extract --extract-pot $@-ml $(POTFILES_ML)
# Don't trust msgcat since it will definitely screw up. Instead, chop
# the head from the second file and append it to the first.
echo >> $@-t
awk '/^#:/{i++}i{print}' < $@-ml >> $@-t
rm $@-ml
endif
mv $@-t $@
%.po: $(DOMAIN).pot
cd $(srcdir) && $(MSGMERGE) -N --update $@ $(DOMAIN).pot
.po.gmo:
rm -f $@ $@-t
$(MSGFMT) -c -o $@-t $(srcdir)/$<
mv $@-t $@
# Install.
# Cannot use 'localedir' since this conflicts with autoconf.
langinstdir = $(datadir)/locale
install-data-hook: $(GMOFILES)
mkdir -p $(DESTDIR)$(langinstdir)
for lang in $(linguas); do \
d=$(DESTDIR)$(langinstdir)/$$lang/LC_MESSAGES; \
mkdir -p $$d; \
install -m 0644 $$lang.gmo $$d/$(DOMAIN).mo; \
done
.PRECIOUS: $(DOMAIN).pot $(POFILES)
SUFFIXES = .po .gmo
else
# If no GNU gettext, 'make update-po' is a dummy rule.
update-po:
endif
|