Hello,

On penktadienis 13 Lapkritis 2009 11:52:30 Modestas Vainius wrote:
> On ketvirtadienis 12 Lapkritis 2009 22:47:57 Joey Hess wrote:
> > Obviously yes, but I hope reordering (implicitly or explicitly) the
> > build systems is not the only way to accomplish that.
> >
> > We could store the build system used for configure in
> > debian/buildsystem.debhelper and have that override autodetection for
> > the other steps.
> 
> Yeah it would be, but... unfortunately that's not less troublesome because:
> 
> 1) dh_auto_configure might be called more than once with different --
> sourcedirectory/--builddirectory options;
> 2) dh_auto_configure might not be called at all (i.e. overrided);
> 3) some build systems do not use configure step. So we would have to log
>  build system usage at each step somehow.

Actually, I think I got a bit better idea which is a mix of yours and mine. I 
will post a patch in ~6 hours from now but in short, auto-selection process 
would look like:

1) Do a simple check_auto_buildable() test (exactly like it is now - the first 
check_auto_buildable() (based on the @BUILDSYSTEMS order) build system is 
selected) for current step. If found it becomes the base one. If not found, NO 
build system could be auto-selected, the process terminates.

2) Then do the same simple check_auto_buildable() for all steps before current 
one. E.g. if we are at dh_auto_install, collect check_auto_buildable() results 
for "configure" and "build"

3) Test all build systems found in 2) for isa() relationship against the base 
one found in 1). The first one for which condition is true is assumed to be 
auto-selected for current step. If the condition isn't true for either, the 
base build system (found in 2) ) is assumed to be auto-selected for current 
step.

What do you think? This process takes both feedback from earlier steps and 
specificness into account.

-- 
Modestas Vainius <modes...@vainius.eu>

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to