[Scummvm-devel] Bringing our Core Code to another Level?
fuzzie at users.sourceforge.net
Mon Aug 12 23:19:11 CEST 2013
On Mon, Aug 12, 2013 at 04:05:37PM +0200, Johannes Schickel wrote:
> I think such a split off core resulting in an unbranded (i.e. no ScummVM
> name on it except for credits to its origins) project would be a really
> nice thing to do in the long run. Of course, ScummVM would then use this
> same core as much as possible. Thus, I think we should really discuss
> whether this is something people would agree with.
So, the obvious alternative approach is simply for third-party projects to
simply fork off a copy of the core and try and keep it in sync as needed
(which is what ResidualVM does, for example).
This has some advantages, for example:
* It means the engines and the core code are always kept synced (i.e. if
something changes in the core then the engines will get updated around the
* It means ScummVM developers don't have to care at all about breaking or
removing stuff which other projects might care about.
* It means projects can make invasive changes we don't want (for example
ResidualVM removes almost all the code from surfacesdl and removes almost
all the other backends, and obviously adds all this math/3D code).
Still, all of this would be less painful if the ScummVM core was kept a bit
more logically separated from the engines, even if the core itself isn't
actually split out.
On the other hand I'm sure there are people who don't think we should be
bothering with this *at all* and that we shouldn't be encouraging other
projects to use our code at all.
So there's always the option that other projects really just go and fork
our core without any support from us at all, or that one developer or
some group of developers fork the core to run some not-ScummVM alternative
core shared between other projects.
I think it'd be a pity in terms of wasted effort to end up with a forked
alternative core, but it's something I'd consider as a perfectly valid
option for anything I wanted to do myself with the code.
More information about the Scummvm-devel