automation: Problem with builddir != srcdir requirement

2006-03-02 Thread Claudio Fontana
Hello,

I am building a generic installation program for GNU
coding standards-compliant packages.
http://www.gnu.org/software/sourceinstall/

I am also helping all GNU projects with a
non-compliant build system make the move to the GNU
coding standards, with patches and support.

I have a problem with current builddir != srcdir
requirement in glibc and recent versions of gcc.
Maybe you can give me an advice, or tweak your build
system around this problem.

This program is general enough to build most parts of
a GNU/Linux system automatically from source without
any overhead, or manual tweak.

The problem is that, while an user can read a message
like:

configure: error: you must configure in a separate
build directory

A program does not expect this. The trivial solution,
to modify the program to build all packages from a
separate directory, breaks many other packages, which
rely on srcdir == builddir .

There is no mention in the GNU coding standards about
such a requirement. The result is that many packages
break if not built with srcdir == builddir.

If it is really not possible to build in the source
directory, could you detect this and automatically
create a directory "build"? There could also be a
configure option to specify an alternative directory
name, if name clashes are possible.

Thank you,

CLaudio








___ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it


Re: automation: Problem with builddir != srcdir requirement

2006-03-02 Thread Claudio Fontana
Hello Andrew,

thanks for your answer.

--- Andrew Pinski <[EMAIL PROTECTED]> ha scritto:


> 
> On Mar 2, 2006, at 7:23 PM, Claudio Fontana wrote:
> > The problem is that, while an user can read a
> message
> > like:
> >
> > configure: error: you must configure in a separate
> > build directory
> 
> This is a bug only in the 4.0.x series of GCC and
> nowhere else.

I'm happy to hear that. I've tried 4.1 and it works
like a charm. I hope that the same happens with glibc.

> -- Pinski

Thanks,

CLaudio




___ 
Yahoo! Messenger with Voice: chiama da PC a telefono a tariffe esclusive 
http://it.messenger.yahoo.com


Re: automation: Problem with builddir != srcdir requirement

2006-03-03 Thread Claudio Fontana

Ciao Paolo,

--- Paolo Bonzini <[EMAIL PROTECTED]> ha
scritto: 

> > I'm happy to hear that. I've tried 4.1 and it
> works
> > like a charm. I hope that the same happens with
> glibc.
> 
> I doubt that.  And glibc is much harder to set up
> and is usually built 
> only by "people that know what they're doing"; which
> means you have a ~0 
> chance of getting the maintainers to do the change.

That's sad news. Maybe they would would consider a
well-written patch; I have to try.

> (Note that GCC 4.1.x is just building with builddir
> != srcdir under your feet).

That's perfectly good for me.

> Paolo

Thanks,
CLaudio







___ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it


Re: automation: Problem with builddir != srcdir requirement

2006-03-03 Thread Claudio Fontana
Hello,

--- Paolo Bonzini <[EMAIL PROTECTED]> wrote:

> > That's sad news. Maybe they would would consider a
> > well-written patch; I have to try.
> If you want to remain sane, don't look at their
> makefiles. :-)
> >> (Note that GCC 4.1.x is just building with
> builddir
> >> != srcdir under your feet).
> >> 
> > That's perfectly good for me.
> >   
> That was to mean, that there are good reasons, when
> the build system 
> becomes complex, to support only builddir != srcdir.

Yes, I agree. There are also good reasons not to fail
noisily in this case, and satisfy the requirement
automatically as it's the case with gcc-4.1.x .

>  Programs that do 
> not support it are buggy and should be reported to
> the author.

This might be good in theory, but in practice it's not
that simple. I am screening _all_ GNU projects, and
I'm testing, contacting the maintainers, advicing,
writing many, many patches and whole new build systems
just to have all GNU projects support the existence of
a working configure script, or a Makefile with the
common targets.

Maybe when all GNU projects are mostly ok with the GNU
coding standards, then we can be picky and start to
fix projects with builddir == srcdir assumption.
Now it's not a realistic goal.

> Paolo

Thanks,
CLaudio





___ 
Yahoo! Messenger with Voice: chiama da PC a telefono a tariffe esclusive 
http://it.messenger.yahoo.com


RE: automation: Problem with builddir != srcdir requirement

2006-03-03 Thread Claudio Fontana

--- Dave Korn <[EMAIL PROTECTED]> wrote: 

> On 03 March 2006 11:38, Claudio Fontana wrote:
> 
> 
> >>  Programs that do
> >> not support it are buggy and should be reported
> to
> >> the author.
> > 
> > This might be good in theory, but in practice it's
> not
> > that simple. I am screening _all_ GNU projects,
> and
> > I'm testing, contacting the maintainers, advicing,
> > writing many, many patches and whole new build
> systems
> > just to have all GNU projects support the
> existence of
> > a working configure script, or a Makefile with the
> > common targets.
> > 
> > Maybe when all GNU projects are mostly ok with the
> GNU
> > coding standards, then we can be picky and start
> to
> > fix projects with builddir == srcdir assumption.
> > Now it's not a realistic goal.
> 
>   Surely, now, when you're going over the build
> systems of all these projects
> and tidying them up to standard, rather than later,
> in an entire subsequent
> second pass over all the same ground again, is
> /exactly/ the right time to do
> it. 

Yes, when I have the chance to provide a completely
new build system, I try to offer a complete and good
one.

> Supporting builddir!=srcdir is only a tiny
> amount extra on top of what
> you're already doing, probably mostly handled simply
> by modifying your
> standard templates for configure scripts.  Doing it
> in a second pass would
> require a /vast/ amount of redundant effort.

Sometimes the maintainers are not too happy to have
their build systems changed, so it happens that I have
to keep changes to a minimum in order to get anything
at all.

>   _Please_ think very seriously about doing it now,
> as you go along.
> 

When I can, I do it. In practice I'll need more than
one pass, and even more than two (test the release
when it comes out, point out remaining problems, or
bugs that crept in for example in the dist: rule,..)

> cheers,
>   DaveK
> -- 
> Can't think of a witty .sigline today

Bye,

CLaudio








___ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it