Re: gnome-core bombs mightily




Miguel de Icaza <miguel@nuclecu.unam.mx> writes:

> [ Big problem with .m4 file installation, proposed solution ]
> 
> > aclocal: configure.in: 170: macro `AM_PATH_ESD' not found in library
> > 
> > Because, about two days ago, a commit in gnome-core made the whole
> > shebang depend on having esd installed! And, if it's not, aclocal
> > fails, which means autoconf fails.
> 
> This is a problem we keep having.  Every time we add a dependency on a
> new library, we create a .m4 file that is supposed to check for the
> presence of the package on the system and set compilation flags
> accordingly.
> 
> This has a problem: to create the configure file we need to have every
> single optional package we check for installed which I think is
> broken.
> 
> I would very much preffer to have all of the macro checking files in
> the "macros" virtual subdirectory (including gtk+, glib, imlib, esd)
> so that our autogen.sh programs can run always no matter what packages
> are installed on the system.
>
> So, does anyone object to move the .m4 files in every module we have
> to the macros directory?  I really see no point in complicating
> everybody's lifes just to avoid shipping a macros directory in each
> package.

Hmmmm. That's about the ugliest idea I've heard in a long
time, but it does have a certain merit.

First, though, it makes no sense at all when applied to
packages that are mandatory, like GTK+, GLIB, and imlib - 
you can't build gnome-libs without them, so why should
you be able to autoconf gnome-libs from CVS without them?

Second, I hope people have noted, as previously, the
problem that if aclocal finds duplicate macros, it bails
out. So that means that if we do this, we can't install
any of these .m4 files. Which would mean that _any_
package (not just a package in gnome CVS) that wanted
to use esd.m4 would have to include macros/esd.m4,
and (if not in GNOME CVS) would run the risk of getting
an old, outdated copy of those macros.

So, as a prerequisite to using this solution at all, 
aclocal would have to be changed to just use the first
copy of a macro it finds, instead of bailing out.

Regards,
                                        Owen



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