qubes-installer-qubes-os/anaconda/po/Rules-extract

52 lines
2.2 KiB
Plaintext
Raw Normal View History

# Handle files that xgettext can't handle automatically
# intltool-extract is kind of weird. It treats the input file list as relative
# to what it thinks $srcdir is, which is either the current directory or the
# value of the undocumented -s parameter. For the output filename, it has two
# modes: --update, the default, will output files in the same directory as the
# input file. --local will output files in a tmp/ directory relative to the
# current working directory.
#
# intltool-extract adds "no-c-format" to any lines it finds containing format
# specifiers, which disables the xgettext warnings on format errors. Assume
# instead that anything in a glade file is going to be used as a python format
# string so that our gettext tests work.
#
# All output files need to be in $srcdir for gettext to be able to find them.
%.glade.h: %.glade
@intltool-extract -q --type=gettext/glade -l $< && \
sed 's/no-c-format/python-format/' < tmp/$$(basename $@) > $@ && \
rm -f tmp/$$(basename $@)
%.desktop.in.h: %.desktop.in
@intltool-extract -q --type=gettext/keys -l $< && \
sed 's/no-c-format/python-format/' < tmp/$$(basename $@) > $@ && \
rm -f tmp/$$(basename $@)
%liveinst.h: %liveinst
@intltool-extract -q --type=gettext/quoted -l $< && \
sed 's/no-c-format/python-format/' < tmp/$$(basename $@) > $@ && \
rm -f tmp/$$(basename $@)
# Remove the $top_srcdir prefix from files so that xgettext can search for the file
# relative to $top_srcdir and get the path name right in the .po
%anaconda.po: %anaconda
@input_file="$<" && \
$(XGETTEXT) $(XGETTEXT_OPTIONS) --omit-header --directory=$(top_srcdir) \
--language=Python -o $@ $${input_file##$(top_srcdir)/}
# This file is actually JavaScript, but C is close enough
%fedora-welcome.po: %fedora-welcome
@input_file="$<" && \
$(XGETTEXT) $(XGETTEXT_OPTIONS) --omit-header --directory=$(top_srcdir) \
--language=C -o $@ $${input_file##$(top_srcdir)/}
mostlyclean: mostlyclean-extract
mostlyclean-extract:
rm -f \
$(top_srcdir)/anaconda.po $(top_srcdir)/data/liveinst/gnome/fedora-welcome.po \
$(top_srcdir)/data/liveinst/console.apps/liveinst.h
find $(top_srcdir) \( -name '*.glade.h' -o -name '*.desktop.in.h' \) \
-exec rm -f {} \;