mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/virt-viewer
synced 2026-01-05 23:21:29 +00:00
Historically we have relied on intltool to install a standard po/Makefile.in.in which has very limited scope for customization. intltool is deprecated in favour of standard gettextize tools, but these share the same disadvantages. Writing make rules for po file management is no more difficult than any other rules virt-viewer has, so stop using intltool and don't use gettextize ether. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
106 lines
2.6 KiB
Makefile
106 lines
2.6 KiB
Makefile
DOMAIN = $(PACKAGE_NAME)
|
|
COPYRIGHT_HOLDER = The Virt Viewer authors
|
|
MSGID_BUGS_ADDRESS = https://virt-manager.org/bugs/
|
|
|
|
MAINTAINERCLEANFILES = $(GMOFILES) $(POTFILE)
|
|
|
|
LANGS := \
|
|
af am anp ar as ast bal be bg \
|
|
bn_IN bn bo br brx bs ca cs cy da \
|
|
de_CH de el en_GB eo es et eu fa fi \
|
|
fr gl gu he hi hr hu ia \
|
|
id ilo is it ja ka kk km kn ko \
|
|
kw_GB kw@kkcor kw kw@uccor ky lt lv mai mk ml \
|
|
mn mr ms nb nds ne nl nn nso \
|
|
or pa pl pt_BR pt ro ru si sk sl \
|
|
sq sr@latin sr sv ta te tg th tr tw \
|
|
uk ur vi wba yo zh_CN zh_HK zh_TW zu
|
|
|
|
|
|
POTFILE_DEPS := $(shell $(SED) 's,^,$(top_srcdir)/,' $(srcdir)/POTFILES)
|
|
POTFILE := $(srcdir)/$(DOMAIN).pot
|
|
POFILES := $(LANGS:%=$(srcdir)/%.po)
|
|
GMOFILES := $(LANGS:%=$(srcdir)/%.gmo)
|
|
|
|
EXTRA_DIST = \
|
|
POTFILES \
|
|
$(POTFILE) \
|
|
$(POFILES) \
|
|
$(GMOFILES)
|
|
|
|
if HAVE_GNU_GETTEXT_TOOLS
|
|
|
|
XGETTEXT_ARGS = \
|
|
--default-domain=$(DOMAIN) \
|
|
--from-code=utf-8 \
|
|
--add-comments=TRANSLATORS: \
|
|
--keyword=_ --keyword=N_ \
|
|
--copyright-holder='$(COPYRIGHT_HOLDER)' \
|
|
--package-name="$(PACKAGE_NAME)" \
|
|
--package-version="$(PACKAGE_VERSION)" \
|
|
--msgid-bugs-address="$(MSGID_BUGS_ADDRESS)" \
|
|
--directory=$(top_srcdir) \
|
|
$(NULL)
|
|
|
|
SED_PO_FIXUP_ARGS = \
|
|
-e "s|text/plain; charset=CHARSET|text/plain; charset=UTF-8|g" \
|
|
-e "s|SOME DESCRIPTIVE TITLE|Virt Viewer package strings|g" \
|
|
-e "s|Copyright (C) YEAR|Copyright (C) $$(date +'%Y')|" \
|
|
$(NULL)
|
|
|
|
|
|
# Although they're in EXTRA_DIST, we still need to
|
|
# copy these again, because update-gmo will change
|
|
|
|
# their content, and dist-hook runs after the
|
|
# things in EXTRA_DIST are copied.
|
|
dist-hook: $(GMOFILES)
|
|
cp -f $(POTFILE) $(distdir)/
|
|
cp -f $(POFILES) $(distdir)/
|
|
cp -f $(GMOFILES) $(distdir)/
|
|
|
|
update-po: $(POFILES)
|
|
|
|
update-gmo: $(GMOFILES)
|
|
|
|
$(POTFILE): POTFILES $(POTFILE_DEPS)
|
|
$(XGETTEXT) -o $@-t $(XGETTEXT_ARGS) \
|
|
--files-from=$(abs_srcdir)/POTFILES
|
|
$(SED) $(SED_PO_FIXUP_ARGS) < $@-t > $@
|
|
rm -f $@-t
|
|
|
|
$(srcdir)/%.po: $(POTFILE)
|
|
$(MSGMERGE) --backup=off --no-fuzzy-matching --update $@ $(POTFILE)
|
|
|
|
$(srcdir)/%.gmo: $(srcdir)/%.po
|
|
rm -f $@ $@-t
|
|
$(MSGFMT) -c -o $@-t $<
|
|
mv $@-t $@
|
|
|
|
.PRECIOUS: $(POTFILE) $(POFILES)
|
|
|
|
endif HAVE_GNU_GETTEXT_TOOLS
|
|
|
|
if ENABLE_NLS
|
|
|
|
# Cannot use 'localedir' since this conflicts with autoconf.
|
|
langinstdir = $(datadir)/locale
|
|
|
|
install-data-hook: $(GMOFILES)
|
|
mkdir -p $(DESTDIR)$(langinstdir)
|
|
for lang in $(LANGS); do \
|
|
d=$(DESTDIR)$(langinstdir)/$$lang/LC_MESSAGES; \
|
|
mkdir -p $$d; \
|
|
install -m 0644 $(srcdir)/$$lang.gmo $$d/$(DOMAIN).mo; \
|
|
done
|
|
|
|
uninstall-hook:
|
|
for lang in $(LANGS); do \
|
|
d=$(DESTDIR)$(langinstdir)/$$lang/LC_MESSAGES; \
|
|
rm -f $$d/$(DOMAIN).mo; \
|
|
done
|
|
|
|
endif ENABLE_NLS
|
|
|
|
-include $(top_srcdir)/git.mk
|