VM source stucture
Tim Rowledge
tim at sumeru.stanford.edu
Tue Oct 3 23:47:59 UTC 2000
Edward P Luwish <eluwish at uswest.com> is widely believed to have written:
> The class InterpreterSupportCode currently contains only the Mac-specific
> files. I suggest that we create subclasses for each platform and maintain
> the port-specific code and build instructions as part of the Squeak sources
> (or at least, allow for platform-specific fileins).
I kindof agree, but it would be some pretty big literal strings to bung
about. I think there is a reasonable argument for actually getting rid
of the Mac stuff and having a minimalistic exemplar pseudo-platform.
I realised while trolling through Ian's latest makefile stuff that it
ought to be possible to (ab)use his idea of (from the README):-
> The directory structure is as follows:
>
> [A-Z]*/ - hand-written platform-independent plugin source
> generated/ - automatically generated VM source
> generated/*Plugin.c - automatically generated plugin source
> generated/LargeIntegers.c - automatically generated plugin source
> unix/ - hand-written Unix-specific VM source
> unix/[A-Z]*/ - hand-written Unix-specific plugin source
>
> Note that hand-written plugin source files must be in directories
> whose names begin with a capital letter, and generated plugins in
> files called "generated/*Plugin.c", in order for configure to
> recognise them. (With the exception of "generated/LargeIntegers.c",
> since there always has to be someone who likes to make life difficult
> by being different.)
... such that FilePlugin (for example) could be actually one of those
[A-Z]* directories despite the fact that it is not handwritten nor
entirely platform independant. Indeed, most plugins are a mix of
generated, portable, hand-written etc.
It may even be possible to understand enough of the magical
auto-make/config/whatever to make it work with a sensible structure.
tim
--
Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
Useful random insult:- Wise as the world is flat.
More information about the Squeak-dev
mailing list
|