[Lldb-commits] [PATCH] D11431: Convert ScriptInterpreters to being first-class plugins

Greg Clayton clayborg at gmail.com
Fri Jul 24 11:50:20 PDT 2015


I can help you figure out the Xcode stuff, it isn't too hard once you see how Xcode does things. I don't have many cycles right now unfortunately.

Greg

> On Jul 24, 2015, at 10:52 AM, Zachary Turner <zturner at google.com> wrote:
> 
> 
> 
> On Fri, Jul 24, 2015 at 10:42 AM Greg Clayton <clayborg at gmail.com> wrote:
> 
> > On Jul 24, 2015, at 10:19 AM, Zachary Turner <zturner at google.com> wrote:
> >
> > zturner added a comment.
> >
> > Hi Greg,
> >
> > I wonder if this has something to do with the fact that the SWIG generation shell script is one of the build phases of LLDB.Framework as you mentioned once before here: http://lists.cs.uiuc.edu/pipermail/lldb-dev/2015-February/006685.html.  Is it possible to change this so that the SWIG wrappers are built along with the regular source?  It seems to me like LLDBWrapPython.cpp should be compiled into Plugins/ScriptInterpreter/Python
> 
> The SWIG stuff needs to be built in your ScriptInterpreterPython static library, not with LLDB.framework. The bindings just use the public API so these swig bindings should be moved to where you are compiling the ScriptInterpreterPython.
> 
> >
> > Or, alternatively, manually fiddle with the linker line as a last resort?
> 
> Hopefully we don't have to do this.
> 
> >  This might be a better approach for now, because moving the location of LLDBWrapPython.cpp might require changes to the shells cript and python script.  Which we can do, but it seems better as a followup CL just so that we can do things in small pieces in order to keep moving forward.
> 
> No, this needs to be done with this CL since you are extracting all python stuff into a plug-in.
> >
> > I'm still a little unclear why the problem happens though.  If LLDBWrapPython.cpp is being linked into liblldb, and ScriptInterpreterPython is being built as a static library, then where are the linker errors coming from?  They're declared extern in the Python plugin, which shouldn't care that they're not visible at link time, because liblldb contains all the definitions.  What part am I missing?
> 
> Not sure. I haven't had time to get tot this yet, but the SWIG stuff should be being built into the static library for ScriptInterpreterPython.
>  
> I can make this work for the CMake build, but I think I will need help getting this working with the Xcode build since it requires changing build phases and is not just adding / moving around source files.
> 
> Is there anyone there that has some cycles to help out with this?  I've had this CL in the pipeline for close to 3 weeks (not including the time I was away on vacation), so I would like to see it closed out.





More information about the lldb-commits mailing list