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

Zachary Turner zturner at google.com
Fri Jul 24 10:52:08 PDT 2015


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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20150724/6bd31310/attachment.html>


More information about the lldb-commits mailing list