Propose: Is to include the real header of "sdk/wxscintilla/include/wx/wxscintilla.h"
Reason: The use of "wx/wxscintilla.h" inside "include/sdk_common.h" requires all Plugins
that use sdk.h to have the search folder of "sdk/wxscintilla/include" even if they do NOT need "wx/wxscintilla.h".
Problem A: This results in extra search folder being needed.
Problem B: If the search does NOT exist and the PCH of sdk.h does NOT exist it results in error if sdh.h is included in plugin.
I have attached a patch that seems to fix these problem; but, I wish feedback on the idea.
Is this a good fix?
Is there a better fix?
Deleted patch file.
Tim S.
I am testing my fix with these two patches to the Devpak plugin.
The cb_cbp adds the search folder for the PCH without this patch the other one fails with the error can't find wx/wxscintilla.h.
I have NOT yet tested the working of the Devpak plugin.
Tim S.
Added to github https://github.com/stahta01/codeblocks/tree/master/Patches (https://github.com/stahta01/codeblocks/tree/master/Patches)
Quote from: stahta01 on January 24, 2014, 04:21:41 PM
Propose: Is to include the real header of "sdk/wxscintilla/include/wx/wxscintilla.h"
Reason: The use of "wx/wxscintilla.h" inside "include/sdk_common.h" requires all Plugins
that use sdk.h to have the search folder of "sdk/wxscintilla/include" even if they do NOT need "wx/wxscintilla.h".
Problem A: This results in extra search folder being needed.
Problem B: If the search does NOT exist and the PCH of sdk.h does NOT exist it results in error if sdh.h is included in plugin.
I have attached a patch that seems to fix these problem; but, I wish feedback on the idea.
Is this a good fix?
Is there a better fix?
Tim S.
Hi, Tim, thanks.
I'm generally Ok with your change.
Another method could be:
Do not create a new header file named "wxscintilla_cb.h", but replace all the text
#include "wx/wxscintilla.h"with
#include "../sdk/wxscintilla/include/wx/wxscintilla.h"
Decided to do your suggestion because it is simpler than my way.
Uploaded patch file to my github.com location.
Edit: Deleted old patch because it would NOT work on Linux
Tim S.
Hm, I don't think this will work - there is no sdk folder when the headers get installed in the /usr/include on Linux.
Quote from: oBFusCATed on January 25, 2014, 08:20:38 PM
Hm, I don't think this will work - there is no sdk folder when the headers get installed in the /usr/include on Linux.
What is the path it is installed into on Linux?
Is it the same folder as sdk.h?
Tim S.
On my machine:
/usr/include/codeblocks/wxscintilla/include/wx/wxscintilla.h
/usr/include/codeblocks/sdk.h
Quote from: oBFusCATed on January 25, 2014, 08:20:38 PM
Hm, I don't think this will work - there is no sdk folder when the headers get installed in the /usr/include on Linux.
Saved a much larger patch; that will likely need fixes to makefile and cbp files to work.https://github.com/stahta01/codeblocks/blob/master/Patches/cb_all_include_wxscintilla_cb_h.patch (https://github.com/stahta01/codeblocks/blob/master/Patches/cb_all_include_wxscintilla_cb_h.patch)
Edit: Plan to change patch to much smaller patch instead of the above patch.
Tim S.