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

List:       kde-core-devel
Subject:    Re: [PATCH] Extra #include options in kconfig_compiler
From:       David Faure <faure () kde ! org>
Date:       2007-11-06 21:30:47
Message-ID: 200711062230.47994.faure () kde ! org
[Download RAW message or body]

On Friday 05 October 2007, David Jarvie wrote:
> Attached is a patch to allow the specification of #include's in the source 
> file generated by kconfig_compiler (as opposed to #include's in the header 
> file which are currently catered for), by the addition of a 
> SourceIncludeFiles keyword in the .kcfgc file. It seems sensible not to force 
> the inclusion of unneeded #include statements in the generated header if they 
> are only needed in the source. This will enable me to easily fix a circular 
> #include chain in code I'm writing, which would need much more work to solve 
> by other means. (The problem isn't because of lack of include guards, but due 
> to classes needing each other to be defined.)
> 
> The patch also allows the specification of #include "xxx.h" instead of 
> #include <xxx.h> by enclosing the name of the header file in double quotes. 
> For example, in the .kcfgc file:
> 
> IncludeFiles=kglobal.h,\"myfile.h\"
> SourceIncludeFiles=\"project.h\",kurl.h

I see this was committed; good feature.

A related question: the .kcfg file can have <include> tags; this is redundant \
(equivalent) with IncludeFiles in the kcfgc, right? However the .kcfg file seems like \
a better place for include specification to me, since it's closer to  where the \
includes are needed (e.g. when a default value needs a #include to compile). The \
problem is that in the .kcfg there is no way to specify "source includes", it seems?

What do I miss? Is there a good reason for specifying includes in the .kcfgc rather \
than in the .kcfg, assuming we add a <sourceinclude> or <include location="source"> \
or something to kcfg files?

-- 
David Faure, faure@kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).


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

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