KDE/kdelibs
Ralf Habacker
ralf.habacker at freenet.de
Wed Oct 12 17:30:02 CEST 2005
Am Mittwoch, 12. Oktober 2005 17:09 schrieb LiuCougar:
> On 10/12/05, Ralf Habacker <ralf.habacker at freenet.de> wrote:
> > Am Mittwoch, 12. Oktober 2005 14:59 schrieb LiuCougar:
> > > On 10/12/05, Ralf Habacker <ralf.habacker at freenet.de> wrote:
> > > > Am Mittwoch, 12. Oktober 2005 04:24 schrieben Sie:
> > > > > SVN commit 469699 by liucougar:
> > > > >
> > > > > # better dummy.cpp support
> > > > > # updated amtool.py to read libraries/programs/headers/includes
> > > > > # new am2bksys.py module: use
> > > > > python bksys/am2bksys.py
> > > > > to run it
> > > > > # now subdirs: kparts, kutils, kdeprint, khtml, kde3support
> > > > > compilable
> > > >
> > > > great work. I have some little issues, see below
> > > >
> > > > > A khtml/css/SConscript
> > > > > A khtml/dom/SConscript
> > > > > A khtml/ecma/SConscript
> > > > > A khtml/html/SConscript
> > > > > A khtml/imload/SConscript
> > > > > A khtml/imload/decoders/SConscript
> > > > > A khtml/java/SConscript
> > > > > A khtml/misc/SConscript
> > > > >
> > > > >
> > > > > includes = '#/dcop #/kio #/libltdl #/khtml #/kutils '
> > > >
> > > > I think it would be better not to refer the build dir instead the
> > > > dirs in kdelibs should be referenced
> > > >
> > > > includes = 'dcop kio libltdl khtml kutils '
> > >
> > > AFAICT (from generic.py fixpath function), without leading #, both
> > > build and source dir will be included (not the opposite
> >
> > ... which is required. Includes files are in the source tree and some
> > generated source files like moc and dcopidl produced files are located in
> > the build dir tree and must be included. scons has an option to copy all
> > source files into the build dir, but this is disabled for bksys.
>
> ah, I misunderstood you.
>
> Then without # or /, a dir will be treated as relative one, so if change it
> to: includes = 'dcop kio libltdl khtml kutils '
>
> It won't compile any more.
> I introduced a double # prefix, which will add both dirs, so this will
> achieve what you said:
> includes = '##/dcop ##/kio ##/libltdl ##/khtml ##/kutils '
>
> But as in Makefile.am, not every build dir is useful, so I think we
> should only add ## to those necessary ones
>
sorry, this was a example if all directories would be subdirectories from
recent subdir. I try to explain more in detail
kdeui for example uses the following include statement
INCLUDES= -I$(top_srcdir)/kdefx -I$(top_srcdir)/interfaces $(all_includes)
Thee examples:
1. includes = '../kdefx ../interfaces'
-> includes <source-root>/kdefx <build-root>/kdefx
<source-root>/interfaces <build-root>/interfaces
2. includes = '#/kdefx #/interfaces'
-> includes <build-root>/kdefx <build-root>/interfaces
3. includes = '##/kdefx ##/interfaces'
-> includes <source-root>/kdefx <build-root>/kdefx
<source-root>/interfaces <build-root>/interfaces
Are I'm right ?
Ralf
More information about the Kde-buildsystem
mailing list