Review Request 124139: Added clang settings pages

Sergey Kalinichev kalinichev.so.0 at gmail.com
Tue Jul 14 09:58:35 UTC 2015



> On July 14, 2015, 1:27 a.m., Maciej Poleski wrote:
> > I not fully understand what is happening there. But in case of Clang (as a tool, not necessary compiler) settings like command line arguments are crucial (these consists of language standard version, but also lot of other settings like defines and include paths). In general these options may arbitrary influence compilation process (from triggering compilation error up to change in behavior). For this purpose Clang introduced conception of CompilationDatabase - set of command line arguments for each translation unit. Compilation database is (very likely) already used in kdev-clang (and also independently used by me in refactorings code). In case of CMake projects it is basically compile_commands.json file (which Clang handles automaticaly), in case of others... WIP.
> > 
> > I don't want to disturb Your work. I just wanted to mention about topic. From user point of view it could be handy to have these settings handled automaticaly (and also provably correct).

Yes, I'm aware of it. See the discussion at https://git.reviewboard.kde.org/r/121777/

Also what if you didn't configure/build a project (either forgot, didn't want to or simply couldn't do that), yet interested in the code? In that case no json file is generated.


- Sergey


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124139/#review82477
-----------------------------------------------------------


On July 12, 2015, 1:36 p.m., Sergey Kalinichev wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124139/
> -----------------------------------------------------------
> 
> (Updated July 12, 2015, 1:36 p.m.)
> 
> 
> Review request for KDevelop.
> 
> 
> Repository: kdev-clang
> 
> 
> Description
> -------
> 
> This adds two pages: One for session settings (code-completion, assistants), another one for project settings (parser command-line arguments).
> 
> Known issue: now we can set language standard in two places: DaIM - for deducing standard macros/includes and here - for the internal parser.
> To solve this problem we can copy/move compilers infrastructure to kdev-clang. Also we can expose the compiler provider interface through DaIM (which is a much better solution imo). Suggestions?
> 
> 
> Diffs
> -----
> 
>   CMakeLists.txt 218cdcd 
>   clangparsejob.cpp 127e0a9 
>   clangsettings/CMakeLists.txt PRE-CREATION 
>   clangsettings/clangsettingsmanager.h PRE-CREATION 
>   clangsettings/clangsettingsmanager.cpp PRE-CREATION 
>   clangsettings/sessionsettings/sessionconfig.kcfg PRE-CREATION 
>   clangsettings/sessionsettings/sessionconfig.kcfgc PRE-CREATION 
>   clangsettings/sessionsettings/sessionconfigskeleton.h PRE-CREATION 
>   clangsettings/sessionsettings/sessionsettings.h PRE-CREATION 
>   clangsettings/sessionsettings/sessionsettings.cpp PRE-CREATION 
>   clangsettings/sessionsettings/sessionsettings.ui PRE-CREATION 
>   clangsupport.h 8ed1ec9 
>   clangsupport.cpp e22c554 
>   codecompletion/context.cpp f26921f 
>   duchain/CMakeLists.txt e07ef70 
>   duchain/clangparsingenvironment.h 2e4ea8b 
>   duchain/clangparsingenvironment.cpp 20a2dbf 
>   duchain/parsesession.h 74999de 
>   duchain/parsesession.cpp cfafa33 
>   duchain/unknowndeclarationproblem.cpp 908a518 
> 
> Diff: https://git.reviewboard.kde.org/r/124139/diff/
> 
> 
> Testing
> -------
> 
> 
> File Attachments
> ----------------
> 
> project settings.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/06/21/f4bb2220-dc63-478d-b423-f31434496afb__project_settings.png
> session settings.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/06/21/e1f59a46-f0b4-46fa-9f19-ffca4b887cf5__session_settings.png
> 
> 
> Thanks,
> 
> Sergey Kalinichev
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20150714/037671da/attachment-0001.html>


More information about the KDevelop-devel mailing list