Re: [Gnome-devtools] Abstracting Build Systems



On Tue, Apr 18, 2000 at 12:18:03PM -0400, JP Rosevear wrote:
> source = provider of functionality (even if the functionality is
> internal to the source)
> target = a group of dependent sources that form a user runnable program
> (interpreted or whatever).  May rely on libraries.
> library = external, independent provider of functionality to targets
> project = a group of targets that logically form an association
> 
> As far as I know, the concepts of sources, targets, projects and
> libraries apply to every build system we've discussed:
> 
> 1. Auto*
> 2. Imake
> 3. Make (plain 'ol)
> 4. Java
> 5. M$ VS

more or less, but only 1 and 5 have a single step from sources to
targets. So we won't be able to handle every build file for most
of these. (java doesn't even have makefiles really)
 
> Defining anything else specific for an abstract interface would seem to
> favour one build system over another.  This gives rise to
> "configurations" similar to those mentioned by Ed.  Things like c flags,
> ld flags and the like (for autoconf) can be handled by the backends via
> calls in the abstract interface that just hand off to the backends.The
> abstract interface should allow configurations to be associated with
> projects or targets.

How do you mean this? I really don't think not having compiler/linker
flags but only these 'configurations', as you seem to imply here, is
very viable. 




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