[Vm-dev] script to add internal plugins ?

tim Rowledge tim at rowledge.org
Thu May 11 00:08:32 UTC 2017

> On 10-05-2017, at 4:57 PM, David T. Lewis <lewis at mail.msen.com> wrote:
> On Wed, May 10, 2017 at 02:36:20PM -0700, tim Rowledge wrote:
>>> On 10-05-2017, at 1:47 PM, Sophie Kaleba <sophie.kaleba at gmail.com> wrote:
>>> Hi Tim,
>>> I hadn't thought about that, thanks ! I will make sure not to create any duplicate of these plugins
>> I???ve never thought to experiment and see what happens if one tried to make both internal and external versions of the same plugin. I???d guess that it might not cause any problems in most cases.. hmm, unless on some platform you actually have to compile with different flags, and then maybe there???d be problems if the internal version were compiled with flag A, the ???.o??? file were left around, the external version compile process found it, therefore didn???t compile with flag B, thus making something fail?
> I have not checked in a while, but I am pretty sure that it is perfectly
> ok to have both an internally compiled plugin as part of the main VM
> executable, and also an externally compiled version of the same plugin
> (a loadable module in a file separate from the main VM executable). In
> that case, the external plugin should override the internal one.
> The idea is that it should be easy to make an external plugin that might
> add some new behaviour, and the plugin developer should be able to do
> this without waiting for somebody else to distribute a new VM.
> If this is not the case, then it certainly /should/ be. Tim, weren't
> you one of the people who invented this loadable module stuff in the
> first place?

D’oh, of course you’re right. Oh the joys of aging…

And what I *should* have said was that I haven’t experimented with making internal and external versions within the same build process, given faint concerns about the object files maybe confusing the matter if one version is built and (incorrect) object files are left for the next version make-rule to find. 
So er, something like build BlobbyPlugin.c -> BlobbyPlugin.o -> link to make vm with internal BlobbyPlugin followed almost immediately by build BlobbyPlugin.c -> ooh, already got BlobbyPlugin.o -> make library BlobbyPlugin.la
I’m imagining a situation where BlobbyPlugin.o actually ought to have been (re)compiled with subtly different flags in order to make a correct library. I may be being paranoid. Or maybe the OS is actually out to get me...

tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful random insult:- So dumb, he faxes face up.

More information about the Vm-dev mailing list