On 24 August 2018 at 19:45, Dylan Baker <[email protected]> wrote:
> Quoting Emil Velikov (2018-08-24 08:57:29)
>> On Fri, 24 Aug 2018 at 15:16, Dylan Baker <[email protected]> wrote:
>> >
>> > Meson won't put the .gmo files in the layout that python's
>> > gettext.translation() expects, so we need to handle them differently,
>> > this switch allows the script to load the files as meson lays them out
>>
>> No obvious reason comes to mind why we want divergence here.
>> Can you elaborate more what's happening here - what are the .gmo
>> files, I though we're using .mo ones?
>
> Meson uses .gmo to distinguish that they are specifics GNU mo files, as
> opposed
> to one of the other flaovrs like the solaris mo files, which use a completely
> different syntax. The real difference is that autotools generates a folder
> hierarchy to place the .mo (or .gmo) files in, but meson doesn't guarantee
> folder structures in the build directory, so mimicking the autotools behavior
> isn't guaranteed to work or continue working.
>
>>
>> If the only difference is a) extension and b) .mo file location - we
>> could update the autoconf/others to follow the same pattern.
>
> We certainly could change autotools to follow the same pattern if that's what
> you wanted to do. I just don't have the expertise with autotools to do it
> quickly, and I wanted to get something wired for meson.
>
Off the top of my head, the following should work pretty much
everywhere - android/autoconf/scons(?)
s/\/LC_MESSAGES\/options// -- change $lang/LC_MESSAGES/options.mo -> $lang.mo
s/\<mo\>/gmo/;s/\<MOS\>/GMOS/ -- change .mo -> .gmo
s/$$lang\/LC_MESSAGES/$(@D)/ -- change $lang/LD_MESSAGES -> current_builddir
Autoconf patch - formatting may be off:
LANGS=$(POS:%.po=%)
-MOS=$(POS:%.po=%/LC_MESSAGES/options.mo)
+GMOS=$(POS:%.po=%.gmo)
POT=xmlpool.pot
-.PHONY: all clean pot po mo
+.PHONY: all clean pot po gmo
EXTRA_DIST = \
gen_xmlpool.py \
options.h \
t_options.h \
$(POS) \
- $(MOS) \
+ $(GMOS) \
SConscript \
meson.build
@@ -65,19 +65,19 @@ BUILT_SOURCES = options.h
CLEANFILES = \
options.h
$(POS) \
- $(MOS)
+ $(GMOS)
# Default target options.h
LOCALEDIR := .
options.h: t_options.h $(GMOS)
$(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/gen_xmlpool.py
$(srcdir)/t_options.h $(LOCALEDIR) $(LANGS) > options.h
-# Update .mo files from the corresponding .po files.
-%/LC_MESSAGES/options.mo: %.po
- @mo="$@"; \
- lang=$${mo%%/*}; \
+# Update .gmo files from the corresponding .po files.
+%.gmo: %.po
+ @gmo="$@"; \
+ lang=$${gmo%%/*}; \
echo "Updating ($$lang) $@ from $?."; \
- $(MKDIR_P) $$lang/LC_MESSAGES; \
+ $(MKDIR_P) $(@D); \
msgfmt -o $@ $?
# Use this target to create or update .po files with new messages in
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev