Re: Porting to Darwin

Brian de Alwis <[email protected]> Thu, 19 Jun 2008 18:41:11 -0700 (PDT)
Newsgroups gmane.comp.lang.smalltalk.strongtalk
Message-ID <803b9992-3c81-477e-9695-9f37a9c645fc@w34g2000prm.googlegroups.com>
You're right, __fxstat is a glibcism.  It won't work in the *BSDs
either.

I do have VMWare Fusion.  I tried rebuilding an image last night from
the Strongtalk 2.0 binary distribution, but it failed and I didn't
have time to investigate why.  From searching on the newsgroups, it
appeared that rebuilding the image only used the in-memory source
code, and not the changes on disk.  Is that correct?  Is there a way
to instead load the file-outs from disk?

I'm only pushing file prims as I'm seeking a way for new ports to
escape from my same bootstrapping catch-22: I can't get a headless VM
running because of the __fxstat issue causes it to crash, but I can't
file in a change (even if only a hack) to rewrite the file I/O code to
get the VM working as filing in uses the file I/O code which refers to
non-existent OS functions like __fxstat.  Perhaps we could have just
two simple primitive for bootstrapping purposes only: get-directory-
contents and read-file-contents.  And port SWIG to access everything
else.

Porting the VM to Darwin was pretty trivial thanks to your help and -
mstackrealign -- the heavy lifting has been done in the port to
Linux.  The os_darwin.cpp I've made is a lightly modified copy of the
os_linux.cpp.  To make porting to new platforms a bit easier, I'd
suggest is instead of having to reimplement os for each new platform,
we provide an implementation for posix systems that Linux, Darwin,
etc. can specialize as necessary.  The appropriate `os' instance would
be set in main().

Brian.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Strongtalk-general" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/strongtalk-general?hl=en
-~----------~----~----~----~------~----~------~--~---