automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: proposed patch: parallel-tests: per-extension test driver: ext_COMPI


From: Akim Demaille
Subject: Re: proposed patch: parallel-tests: per-extension test driver: ext_COMPILE.
Date: Mon, 30 Mar 2009 21:25:30 +0200


Le 24 mars 09 à 22:57, Ralf Wildenhues a écrit :

Hi Akim,

Hi Ralf!

* Akim Demaille wrote on Sat, Mar 14, 2009 at 01:52:33PM CET:
Le 14 mars 09 à 12:08, Ralf Wildenhues a écrit :

Corollary: the test driver may not be called CXXCOMPILE.  General:
For extension `.ext', we cannot use `EXTCOMPILE' as driver.
ext_COMPILE or
extCOMPILE

seem awkward to me too, as these do not allow for generalization
either, and the notational difference would be unintuitive (or even
dangerous, think of preprocessed Fortran with .F extension).
What else comes to mind?
EXTTESTCOMPILE
EXT_TESTCOMPILE
EXT_TEST_COMPILE
EXTLOGCOMPILE
EXT_LOGCOMPILE
EXT_LOG_COMPILE

I vote for the last one.  Maybe COMPILER instead of COMPILE, and have
the COMPILER + FLAGS go into COMPILE.

Maybe we should depart from COMPILE/COMPILER bw.  I like it, but it
might be misleading. Maybe CONVERT/TRANSLATE or something more general
that COMPILE?  Or FROM_EXT_TO_LOG.  Not so nice :(

How about this?  I really appreciate a look over this.

I really appreciate your work :)

Note that for extension .foo, the variable names will be FOO_LOG_*,
i.e., remove the dot, then uppercase the rest.

I chose to go all the way and add AM_*FLAGS too.

One could, as a generalization, even add, for the non-extension rules,
add
 LOG_COMPILER = $(LOG_COMPILE) $(AM_LOG_FLAGS) $(LOG_FLAGS)

I think you meant

   LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS)

But what is a non-extension rule?  You mean if the rule is

        foo: ...

?

index 7073d6a..d7bf2fa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -29,7 +29,7 @@ AC_CANONICAL_BUILD
AC_SUBST([am_AUTOCONF], ["${AUTOCONF-autoconf}"])
AC_SUBST([am_AUTOHEADER], ["${AUTOHEADER-autoheader}"])

-AM_INIT_AUTOMAKE([1.10a dist-bzip2 filename-length-max=99 color- tests]) +AM_INIT_AUTOMAKE([1.10a dist-bzip2 filename-length-max=99 color- tests parallel-tests])

This is good :)


address@hidden
+TESTS = foo.pl bar.py
+TEST_EXTENSIONS = .pl .py
+PL_LOG_COMPILER = $(PERL)
+PL_LOG_FLAGS = -w
+PY_LOG_COMPILER = $(PYTHON)
+PY_LOG_FLAGS = -v
address@hidden example
+
address@hidden
+will invoke @samp{$(PERL) -w foo.pl} and @samp{$(PYTHON) -v bar.py} to
+produce @file{foo.log} and @file{bar.log}, respectively.  The
address@hidden variable is still expanded before the driver,
+but should be reserved for the user.

Brilliant!





reply via email to

[Prev in Thread] Current Thread [Next in Thread]