[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-buildsystem
Subject:    very basic SConfigure support available
From:       michael-olbrich () web ! de (Michael Olbrich)
Date:       2005-10-23 14:55:04
Message-ID: 20051023145504.GB24141 () a168 ! apm ! etc ! tu-bs ! de
[Download RAW message or body]

On Sun, Oct 23, 2005 at 03:46:28PM +0200, Stephan Kulow wrote:
> On Sunday 23 October 2005 14:37, Michael Olbrich wrote:
> > In the SConscript file we could then do something like:
> >
> > obj.Requires('bzip2')
> I kind of like the idea, but I'm not sure if practice with be able to hold it.
> 
> You can compile kio_audiocd with any libvorbis version, but kaudiocreator
> needs libvorbis > 1.0 (I made this example up, but it happened in 
> kdemultimedia). So do we want to drop that flexibility?

I can see you point. But I'm sure the syntax could be extended to check
for version requirement.

> And you sill would want to disable whole subdirs or single source files,
> but I guess a 'if env.HasConfig("bzip2")' will do there? But I like where this 
> heads.

The main reason for the syntax I proposed is actually the magic in the
backgroud that's possible:

obj.Requires("foo")
obj.Requires("bar")

vs.

if env.HasConfig("foo") and env.HasConfig("bar"):
    ...
    obj.libs += env.GetConfig("foo").libs + env.GetConfig("bar").libs
    ...

Especially the include paths are easyly forgotten because the header
files happened to be in the global search path for the developer writing
the program.

michael


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic