groff
[Top][All Lists]
Advanced

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

Re: [Groff] Problem with `make dist' and VPATH build


From: Keith Marshall
Subject: Re: [Groff] Problem with `make dist' and VPATH build
Date: Fri, 18 Aug 2006 20:46:18 +0100

On Sunday 13 August 2006 6:20 pm, Werner LEMBERG wrote:
> > Here's a work around, retaining the
> > check, but removing the dependency if `groff.info' is already up to
> > date; Werner, would you like me to apply it?
>
> Please do.

Done.  I discovered a further logic problem, in the same macro, which 
I've also fixed; I committed this:

  * m4/groff.m4 (GROFF_MAKEINFO): Correct `makeinfo version testing
  logic; it previously caused an `expr' syntax error, if no version of
  `makinfo' was present.  Also, remove dependency on `makeinfo' in VPATH
  builds, if an up to date `groff.info' is present in either `builddir'
  or in `srcdir'.

Index: m4/groff.m4
===================================================================
RCS file: /cvsroot/groff/groff/m4/groff.m4,v
retrieving revision 1.2
diff -u -r1.2 groff.m4
--- m4/groff.m4 26 Feb 2006 14:03:25 -0000      1.2
+++ m4/groff.m4 18 Aug 2006 19:07:17 -0000
@@ -71,35 +71,20 @@
        | sed -e 's/^.* \([^ ][^ ]*\)$/\1/' -e '1q'`]
      AC_MSG_RESULT([$makeinfo_version])
      # Consider only the first two numbers in version number string.
-     [makeinfo_version_major=`echo $makeinfo_version \
-       | sed 's/^\([0-9]*\).*$/\1/'`]
-     if test -z "$makeinfo_version_major"; then
-       makeinfo_version_major=0
-       makeinfo_version_minor=0
-     else
-       [makeinfo_version_minor=`echo $makeinfo_version \
-        | sed 's/^[^.][^.]*\(.*\)$/\1/'`]
-       # No minor version number at all?
-       if test -z "$makeinfo_version_minor"; then
-        makeinfo_version_minor=0
-       else
-        [makeinfo_version_minor=`echo $makeinfo_version_minor \
-          | sed 's/\.\([0-9]*\).*$/\1/'`]
-        if test -z "$makeinfo_version_minor"; then
-          makeinfo_version_minor=0
-        fi
-       fi
+     makeinfo_version_major=`IFS=.; set x $makeinfo_version; echo 0${2}`
+     makeinfo_version_minor=`IFS=.; set x $makeinfo_version; echo 0${3}`
+     makeinfo_version_numeric=`
+       expr ${makeinfo_version_major}000 \+ ${makeinfo_version_minor}`
+     if test $makeinfo_version_numeric -lt 4008; then
+       missing="\`makeinfo' is too old."
      fi
    fi
-   makeinfo_version_numeric=`expr $makeinfo_version_major '*' 1000 \
-                                 '+' $makeinfo_version_minor`
-   if test $makeinfo_version_numeric -lt 4008; then
-     missing="\`makeinfo' is too old."
-   fi

    if test -n "$missing"; then
-     if test ! -f doc/groff.info \
-       || test ${srcdir}/doc/groff.texinfo -nt doc/groff.info; then
+     infofile=doc/groff.info
+     test -f ${infofile} || infofile=${srcdir}/${infofile}
+     if test ! -f ${infofile} \
+       || test ${srcdir}/doc/groff.texinfo -nt ${infofile}; then
        AC_MSG_ERROR($missing
 [Get the `texinfo' package version 4.8 or newer.])
      else

> > [...] I don't have a quick fix for 2 or 3, but can take a look, if
> > no one else beats me to it.
>
> I'm abroad the next time, so please work on this if your time permits.

A preliminary review suggests that the `m4' directory makes it into the 
distribution more by accident, than by design, and the `xditview' 
components are omitted because `--without-x' explicitly removes the 
associated directories from the list of directories to be built, which 
results in implicit omission from the `make dist' target.  I can 
undertake to overhaul the `make dist' rules, but I don't want to rush it; 
given present limitations on my available time, it will be several weeks 
before I could complete this.

Regards,
Keith.




reply via email to

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