<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.32.2">
</HEAD>
<BODY>
On Wed, 2011-06-22 at 08:46 -0700, Dan Nicholson wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
On Wed, Jun 22, 2011 at 7:55 AM, Gaetan Nadon &lt;<A HREF="mailto:memsize@videotron.ca">memsize@videotron.ca</A>&gt; wrote:
&gt; Following the same pattern as XMLTO and friends.
&gt; Allows all modules to use the same interface, variables
&gt; and options to check for perl.
&gt; Perl is used in libX11 and xserver.
&gt;
&gt; Signed-off-by: Gaetan Nadon &lt;<A HREF="mailto:memsize@videotron.ca">memsize@videotron.ca</A>&gt;

Seems like a bit of overkill, but I guess there's not any harm besides
churning things more.
</PRE>
</BLOCKQUOTE>
Same here. You never know when usage will grow. I recall running around all the modules with docs to replace existing code.
<BLOCKQUOTE TYPE=CITE>
<PRE>

&gt; ---
&gt; &nbsp;xorg-macros.m4.in | &nbsp; 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++
&gt; &nbsp;1 files changed, 58 insertions(+), 0 deletions(-)
&gt;
&gt; diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in
&gt; index d3b0b7e..756ff2d 100644
&gt; --- a/xorg-macros.m4.in
&gt; +++ b/xorg-macros.m4.in
&gt; @@ -494,6 +494,64 @@ m4_ifval([$1],[AC_MSG_WARN(Checking for MIN-VERSION is not implemented.)])
&gt; &nbsp;AM_CONDITIONAL([HAVE_XSLTPROC], [test &quot;$have_xsltproc&quot; = yes])
&gt; &nbsp;]) # XORG_WITH_XSLTPROC
&gt;
&gt; +# XORG_WITH_PERL([MIN-VERSION], [DEFAULT])
&gt; +# ----------------------------------------
&gt; +# Minimum version: 1.15.0
&gt; +#
&gt; +# PERL (Practical Extraction and Report Language) is a language optimized for
&gt; +# scanning arbitrary text files, extracting information from those text files,
&gt; +# and printing reports based on that information.
&gt; +#
&gt; +# When DEFAULT is not specified, --with-perl assumes 'auto'.
&gt; +#
&gt; +# Interface to module:
&gt; +# HAVE_PERL: used in makefiles to conditionally scan text files
&gt; +# PERL: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; returns the path of the perl program found
&gt; +# &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; returns the path set by the user in the environment
&gt; +# --with-perl: 'yes' user instructs the module to use perl
&gt; +# &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'no' user instructs the module not to use perl
&gt; +# have_perl: returns yes if perl found in PATH or no
&gt; +#
&gt; +# If the user sets the value of PERL, AC_PATH_PROG skips testing the path.
&gt; +#
&gt; +AC_DEFUN([XORG_WITH_PERL],[
&gt; +AC_ARG_VAR([PERL], [Path to perl command])
&gt; +m4_define([_defopt], m4_default([$2], [auto]))
&gt; +AC_ARG_WITH(perl,
&gt; + &nbsp; &nbsp; &nbsp; AS_HELP_STRING([--with-perl],
&gt; + &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[Use perl for extracting information from files (default: ]_defopt[)]),
&gt; + &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[use_perl=$withval], [use_perl=]_defopt)
&gt; +m4_undefine([_defopt])
&gt; +
&gt; +if test &quot;x$use_perl&quot; = x&quot;auto&quot;; then
&gt; + &nbsp; AC_PATH_PROG([PERL], [perl])
&gt; + &nbsp; if test &quot;x$PERL&quot; = &quot;x&quot;; then
&gt; + &nbsp; &nbsp; &nbsp; &nbsp;AC_MSG_WARN([perl not found - cannot extract information and report])
&gt; + &nbsp; &nbsp; &nbsp; have_perl=no
&gt; + &nbsp; else
&gt; + &nbsp; &nbsp; &nbsp; &nbsp;have_perl=yes
&gt; + &nbsp; fi
&gt; +elif test &quot;x$use_perl&quot; = x&quot;yes&quot; ; then
&gt; + &nbsp; AC_PATH_PROG([PERL], [perl])
&gt; + &nbsp; if test &quot;x$PERL&quot; = &quot;x&quot;; then
&gt; + &nbsp; &nbsp; &nbsp; &nbsp;AC_MSG_ERROR([--with-perl=yes specified but perl not found in PATH])
&gt; + &nbsp; fi
&gt; + &nbsp; have_perl=yes
&gt; +elif test &quot;x$use_perl&quot; = x&quot;no&quot; ; then
&gt; + &nbsp; if test &quot;x$PERL&quot; != &quot;x&quot;; then
&gt; + &nbsp; &nbsp; &nbsp;AC_MSG_WARN([ignoring PERL environment variable since --with-perl=no was specified])
&gt; + &nbsp; fi
&gt; + &nbsp; have_perl=no
&gt; +else
&gt; + &nbsp; AC_MSG_ERROR([--with-perl expects 'yes' or 'no'])
&gt; +fi
&gt; +
&gt; +# Checking for minimum version is not implemented
&gt; +# but we want to keep the interface consistent with other commands
&gt; +m4_ifval([$1],[AC_MSG_WARN(Checking for MIN-VERSION is not implemented.)])

Instead of AC_MSG_WARN, wouldn't it be better to spit the warning with
m4 so you can tell the person specifying the version that it's
unsupported? Once configure is built, nothing can be done about it. I
suggest:

</PRE>
</BLOCKQUOTE>
Ah, yes. Unlearning is harder than learning. The separation of roles, one creating the configuration versus one running it. Will do.<BR>
<BR>
Thanks!
<BLOCKQUOTE TYPE=CITE>
<PRE>
m4_ifval([$1], [m4_warn([syntax], [Checking for perl MIN-VERSION is
not implemented])])

Then you'd get something like this when autoconf is run:

configure.ac:17: warning: Checking for perl MIN-VERSION is not implemented

--
Dan
</PRE>
</BLOCKQUOTE>
<BR>
</BODY>
</HTML>