<div dir="ltr">Hi Subbu,<div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 13, 2018 at 12:02 PM, K K Subbu <span dir="ltr"><<a href="mailto:kksubbu.ml@gmail.com" target="_blank">kksubbu.ml@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi,<br>
<br>
Has anyone tried to build a plugin outside the vm tree?<br></blockquote><div><br></div><div>Not easy, even if possible.  But it is straight forward to build an external plugin separate from the VM.  e.g. look at how the external plugins are built for each platform (a process driven from plugins.ext) and invoke make in the same way, but specifying your plugin name.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">In a vm build, how do I generate the necessary header files and libraries to be able to build plugins later outside the source tree?<br></blockquote><div><br></div><div>Not sure I understand the question.  All the include files are in the platforms (platforms/Cross/vm & platforms/Cross/plugins/*/*.h) and relevant source tree.  So if you look at the include paths for a build that'll give you the relevant includes.  If you're building a plugin you *have* to build different versions for V3 (the original pre-Spur VM), 32-bit Spur and 64-bit Spur.  So for example you'll see that src/vm/interp.h spursrc/vm/interp.h and spur64src/vm/interp.h all differ slightly.  So, other than writing a plugin-specific source file, e.g. platforms/Cross/plugins/FilePlugin/FilePlugin.h) and platform-and/or-library-specific include files, everything else should be taken from the opensmalltalk-vm source tree.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">TIA .. Subbu<br>
</blockquote></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div>HTH<br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>