autoconf
[Top][All Lists]
Advanced

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

Re: infrastructure for suggested/required packages, and better error rep


From: Matěj Týč
Subject: Re: infrastructure for suggested/required packages, and better error reporting
Date: Sun, 01 Aug 2010 19:04:42 +0200

On Sat, 2010-07-31 at 17:23 +0200, Ralf Wildenhues wrote:
> 1) Autoconf should have macros for delayed error reporting.
> Example: wget foo-1.tar.gz, run configure, find out it needs bar.
> Install bar, only to find out foo also needs baz, etc.
> 
> So, we should have something that allows an error message but also
> continues the configure script in search for other possible errors,
> and summarizes the suggestions and errors at the end.
> 

I agree that this would be a very beneficial thing.
Dumping all checks in some intelligent manner would be a good start,
although one misses those dependencies.
However, those dependencies could be "somehow" found out during
autoreconf phase, even if it means asking the maintainer if
PKG_CHECK_... macros are detected :-)
Next, all stuff could get a number and the output of these checks could
be a list of sets of passed checks required for successful build of the
package... That's what came across my mind.

Exammple: I require (EITHER libtiff OR libjpeg ) AND OpenGL
Then Autoreconf would find out immediately (looking at library checks)
that I need
libtiff libjpeg GL
The next step - dependencies:
  libtiff depends on libjpeg 
  libjpeg depends on zlib.
Now I have the list, so I enumerate it:
1 zlib
2 libtiff
3 libjpeg
4 GL
And I have to tell somewhere (probably in configure.ac) that there are
two possible sets A and B that satisfy successful build:
A = {1 2 4} and  B = {1 3 4}
Maybe the AC_CHECK_LIB-like macros could accept whitespace-separated
list of sets that require that library?
Of course few optional packages would make it a combination hell, but if
one restricts oneself upon required packages, this doesn't seem like the
worst idea ever...
Matej




reply via email to

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