[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Patch to allow texi2any for EMACS manual compilation
From: |
Vincent Belaïche |
Subject: |
RE: Patch to allow texi2any for EMACS manual compilation |
Date: |
Tue, 23 Sep 2014 22:54:06 +0200 |
Answers below...
----------------------------------------
> From: address@hidden
> To: address@hidden
> Subject: Re: Patch to allow texi2any for EMACS manual compilation
> Date: Mon, 22 Sep 2014 20:59:48 +0200
> CC: address@hidden; address@hidden; address@hidden; address@hidden
>
> Vincent Belaïche <address@hidden> writes:
>
> > === modified file 'configure.ac'
> > --- configure.ac 2014-09-15 00:20:21 +0000
> > +++ configure.ac 2014-09-22 17:36:48 +0000
> > @@ -1099,16 +1099,25 @@
> >
> > ## Need makeinfo >= 4.7 (?) to build the manuals.
> > if test "$MAKEINFO" != "no"; then
> > - if test "$MAKEINFO" = "${am_missing_run}makeinfo"; then
> > - MAKEINFO=makeinfo
> > + for MAKEINFO_IMPLEMENTATION in makeinfo texi2any; do
> > + if test "$MAKEINFO" = "${am_missing_run}${MAKEINFO_IMPLEMENTATION}"; then
> > + MAKEINFO=${MAKEINFO_IMPLEMENTATION}
> > + fi
> > + done
> > + MAKEINFO_VERSION=`($MAKEINFO --version) 2>/dev/null`;
> > + MAKEINFO_CHECK=no;
> > + for MAKEINFO_IMPLEMENTATION in makeinfo texi2any; do
> > + case $MAKEINFO_VERSION in
> > + "$MAKEINFO_IMPLEMENTATION (GNU texinfo) "4.[7-9]* | \
> > + "$MAKEINFO_IMPLEMENTATION (GNU texinfo) "4.[1-9][0-9]* | \
> > + "$MAKEINFO_IMPLEMENTATION (GNU texinfo) "[5-9]* | \
> > + "$MAKEINFO_IMPLEMENTATION (GNU texinfo) "[1-9][0-9]* )
> > + MAKEINFO_CHECK=yes;;
> > + esac
> > + done
> > + if [ $MAKEINFO_CHECK != yes ]; then
> > + MAKEINFO=no;
> > fi
> > - case `($MAKEINFO --version) 2>/dev/null` in
> > - 'makeinfo (GNU texinfo) '4.[[7-9]]* | \
> > - 'makeinfo (GNU texinfo) '4.[[1-9][0-9]]* | \
> > - 'makeinfo (GNU texinfo) '[[5-9]]* | \
> > - 'makeinfo (GNU texinfo) '[[1-9][0-9]]* ) ;;
>
> Why can't you just replace it with a wildcard? What's the point in
> matching the exact program name?
>
There is a version number checking. So we rely on the fact that texi2any
and makeinfo have both:
- consistent version numbers: C based makeinfo version does not go
beyond 4.99 (AFAIK last version is 4.13), while texi2any starts at 5.0
- consistent command line, texi2any command line is a superset of that
makeinfo.
Now, yes it would be possible to use a wildecard, given that it is quite
unlikely than there are other alternative to makeinfo than texi2any.
To make it slightly more restictive, wildcard could be ???????? instead
of * because makeinfo & texi2any both have 8 letters.
BTW, when I did the patch I initially thought that my problem was with
using a fake makeinfo that is indeed a skin of texi2any. But it came out
that this was not the only issue. Current configure.ac uses that sort
of wildcard:
[[7-9]]
with [...] encapsulation around `[7-9]'. This does not work for me and I
did not found any such thing in the manual:
http://www.gnu.org/software/bash/manual/bashref.html#pattern-matching
so I removed also that encapsulation as in the attached patch.
=== modified file 'configure.ac'
--- configure.ac 2014-09-15 00:20:21 +0000
+++ configure.ac 2014-09-23 20:42:43 +0000
@@ -1103,10 +1103,11 @@
MAKEINFO=makeinfo
fi
case `($MAKEINFO --version) 2>/dev/null` in
- 'makeinfo (GNU texinfo) '4.[[7-9]]* | \
- 'makeinfo (GNU texinfo) '4.[[1-9][0-9]]* | \
- 'makeinfo (GNU texinfo) '[[5-9]]* | \
- 'makeinfo (GNU texinfo) '[[1-9][0-9]]* ) ;;
+ # ???????? matches both makeinfo & texi2any
+ ????????' (GNU texinfo) '4.[7-9]* | \
+ ????????' (GNU texinfo) '4.[1-9][0-9]* | \
+ ????????' (GNU texinfo) '[5-9]* | \
+ ????????' (GNU texinfo) '[1-9][0-9]* ) ;;
*) MAKEINFO=no;;
esac
fi
If people agree with this patch I can do the change.
VBR,
Vincent.
> Andreas.
>
> --
> Andreas Schwab, address@hidden
> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
> "And now for something completely different."
>