automake
[Top][All Lists]
Advanced

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

Re: AutoGen-5.6.2 w/o libxml2 build problem


From: Bruce Korb
Subject: Re: AutoGen-5.6.2 w/o libxml2 build problem
Date: Fri, 18 Jun 2004 13:14:53 -0700

"Deneys S. Maartens" wrote:
> 
> Hi Bruce
>
> When compiling the autogen source without having libxml2 available, and
> then doing a `make dist' creates a broken distribution package which
> does not include the xml2ag/ subdirectory.
> 
> A configure of the broken dist package fails with the following error
> message:
> 
>     config.status: creating xml2ag/Makefile
>     config.status: error: cannot find input file: xml2ag/Makefile.in
> 
> I've found that adding the line
> 
>     DIST_SUBDIRS   = $(SUBDIRS) xml2ag
> 
> to the Makefile.am file solves this problem.  I've verified that listing
> xml2ag twice does not cause any problems.

Except, perhaps, integrity verification problems.

When you invoke, "make dist" I believe you are claiming that you wish
to construct a new distribution for some distribution-related purpose.
If you merely wish to verify that the parts that you can build are
built correctly, you would invoke, "make check".  If you are making
a distribution, then that distribution needs to be verified that all
parts of it are functional.  It would be difficult to verify the
functionality of ag2xml if you do not have libxml2.  Therefore, I
do not think it is correct to try to do a "make dist" when all components
cannot be built.

I think the question boils down to, "What is the proper way to fail a
`make dist' in a partial-product environment?"  A configure-time message
of "error: cannot find input file: xml2ag/Makefile.in" is a poor choice.
My guess is to add something like:

  AM_CONDITIONAL([FULL_BUILD],
     [if test "X${ag_cv_with_libxml2}" != Xno && \
         test "X${ag_cv_enable_shell}" != Xno
      then true ; else false ; fi])

and augment that list with any new configurable functional components.
Then add to the top level Makefile.am:

  if !FULL_BUILD
  dist : fail_dist
  fail_dist:
        echo "Distributions cannot be made with a partial build" >&2
        exit 1
  endif

Thoughts from either the Automake or AutoGen folks?

Regards, Bruce




reply via email to

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