On 1 September 2016 at 00:55, Thomas Martitz kugel@rockbox.org wrote:
Am 31.08.2016 um 16:52 schrieb Lex Trotman:
On 1 September 2016 at 00:43, Thomas Martitz kugel@rockbox.org wrote:
Am 31.08.2016 um 16:39 schrieb Matthew Brush:
I can't speak to all compiler libraries, but at least libclang, libpython and libvala "compile" the source (well just the front-end of the compiler is needed). They literally use the built-in compiler front ends to understand the code. In the case of libclang, it additionally provides helpful methods for performing IDE-related features on the AST, while say with libvala, the ft-plugin would be required to perform it's own analysis of the AST to implement those feaures, which is still a lot less work than in Geany/TM since it has access to the full AST/context and the ft-plugin need not fear encoding language specific semantics into its logic.
How do you pass {C,CXX,CPP}FLAGS to libclang? And where do you get them from?
Libclang needs the full-fat build knowledge that "project" systems on other IDEs provide. Another reason to keep it separate from Geany.
So one would have to adjust the build settings and one or more ft-plugins all the time?
I am guessing that one of the reasons Matthew mentioned build settings access in #1195 is so that the plugins with complex build requirements can set Geany's simple build system to match their complex one.
IMO, complex build system integration is out of scope for ft-plugins. But I see that not all features can be supported properly without build system.
I am not sure I understand you? That sounds like you are saying that plugins cannot be allowed to have complex build systems inside the plugin for its own use, or do I misunderstand?
Best regards _______________________________________________ Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel