[RFC libX11 2/2] nls: Verify Compose at build

Mihail Konev k.mvc at ya.ru
Fri Apr 7 00:56:56 UTC 2017


On Thu, Apr 06, 2017 at 09:37:02PM +0300, Ran Benita wrote:
> On Sun, Apr 02, 2017 at 10:27:28PM +0500, Mihail Konev wrote:
> > Signed-off-by: Mihail Konev <k.mvc at ya.ru>
> > ---
> >  nls/Makefile.am | 18 +++++++++++-------
> >  1 file changed, 11 insertions(+), 7 deletions(-)
> > 
> > diff --git a/nls/Makefile.am b/nls/Makefile.am
> > index 57665fff4282..c0f0d0c7181f 100644
> > --- a/nls/Makefile.am
> > +++ b/nls/Makefile.am
> > @@ -24,7 +24,7 @@ locale.alias: locale.alias.pre
> >          < locale.alias.l1 > locale.alias.l2
> >  	cat locale.alias.l2 locale.alias.l1 > locale.alias
> >  
> > -compose.dir: compose.dir.pre
> > +compose.dir: compose.dir.pre compose-check
> >  	$(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/compose.dir.pre | $(CPP_SED_MAGIC) > compose.dir.l1
> >  	$(SED) -e '/^[^#][^	 ]*:/s/://' -e '/^[^#].*[	 ].*:/d' \
> >          < compose.dir.l1 > compose.dir.l2
> > @@ -36,12 +36,6 @@ locale.dir: locale.dir.pre
> >          < locale.dir.l1 > locale.dir.l2
> >  	cat locale.dir.l2 locale.dir.l1 > locale.dir
> >  
> > -if HAVE_PERL
> > -LOG_COMPILER = $(PERL)
> 
> I don't think you should remove this. I have no idea what it does, but
> it seems to have some function:
> https://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=3cdb6c3a1646f670afa03d424ec12ac418181d1e

It's interpreter for $(TESTS) (but now there are none).

> 
> Ran
> 
> > -TESTS = compose-check.pl
> > -endif HAVE_PERL
> > -
> > -
> >  # Per-locale data files
> >  
> >  XI18N_FILES = $(locales:%=%/XI18N_OBJS)
> > @@ -54,3 +48,13 @@ nobase_x11locale_DATA = $(XLC_FILES) $(COMPOSE_FILES)
> >  EXTRA_DIST += $(nobase_x11locale_DATA:%=%.pre)
> >  CLEANFILES += $(nobase_x11locale_DATA)
> >  
> > +# Checks for per-locale data files
> > +
> > +compose-check: $(COMPOSE_FILES)
> > +if HAVE_PERL
> > +	@ $(PERL) $(srcdir)/compose-check.pl
> > +else !HAVE_PERL
> > +	@:
> > +endif !HAVE_PERL
> > +
> > +.PHONY: compose-check
> > -- 
> > 2.9.2
Mihail
-------------- next part --------------
[automake]$ echo; grep '[{]ext[}]_LOG_COMPILER[}]' doc/automake.texi -B2 -A17

For tests that match an extension @code{. at var{ext}} listed in
@code{TEST_EXTENSIONS}, you can provide a custom ``test runner'' using
the variable @code{@var{ext}_LOG_COMPILER} (note the upper-case
extension) and pass options in @code{AM_ at var{ext}_LOG_FLAGS} and allow
the user to pass options in @code{@var{ext}_LOG_FLAGS}.  It will cause
all tests with this extension to be called with this runner.  For all
tests without a registered extension, the variables @code{LOG_COMPILER},
@code{AM_LOG_FLAGS}, and @code{LOG_FLAGS} may be used.  For example,

@c Keep in sync with parallel-tests-log-compiler-example.sh
@example
TESTS = foo.pl bar.py baz
TEST_EXTENSIONS = .pl .py
PL_LOG_COMPILER = $(PERL)
AM_PL_LOG_FLAGS = -w
PY_LOG_COMPILER = $(PYTHON)
AM_PY_LOG_FLAGS = -v
LOG_COMPILER = ./wrapper-script
AM_LOG_FLAGS = -d
@end example

[libX11] $ grep '$(LOG_COMPILER)' nls/Makefile
LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS)

[libX11]$ grep '$(LOG_COMPILE)' nls/Makefile -B5 -A2
compose-check.pl.log: compose-check.pl
	@p='compose-check.pl'; \
	b='compose-check.pl'; \
	$(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
	--log-file $$b.log --trs-file $$b.trs \
	$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
	"$$tst" $(AM_TESTS_FD_REDIRECT)
.test.log:



More information about the xorg-devel mailing list