Hi everyone,


Last week I had sent an email to the devel mailing list 
asking if anyone knew of any possible issues there would be
with porting WineLib to MacOS X.  I received a number of
potential issues.  The main ones, summarized from an email
from Patrik Stridvall, are:

===============<START>=============
> -> According to the "MacOS X Kernel Environment" book, pg. 37,
>    Mac OSX does not support memory mapped devices through the mmap 
>    API.  This would affects at least streaming sound playback.

But it supports mmap for files? Especially MAP_SHARED?

Speaking of mmap. Does MacOS X support sendmsg/recvmsg?
If not you can forget about porting Wine unless you can
convince Alexandre that the Wineserver should be redesigned.

> -> Must ensure that behaviour of lower level UNIX resources 
>    like sockets, threads, files are the way WINE expects it.

Wine currently expects that the file API works on socket descriptors.
This is not the case on BeOS but I determined that this was a
fixable issue. I just never did it.

===============<FINISH>=============

To test these concerns, I made four test apps and compiled and ran them
on Mac OS X.  I used the "Mac OS X Public Beta Developer Tools CD"
which is downloadable from http://connect.apple.com
The first test app used mmap and MAP_SHARED option, the second sent
messages between two programs using sendto over a socket, the third
used file I/O functions (like read,write) to send messages over a 
socket, the fourth sent an FD over a socket to another process 
using sendmsg/recvmsg.

I have good news, each of these programs compiled without
modification on MacOS X with the standard cc, and ran perfectly!!

So, I don't think there are any show stoppers that would
keep us from being able to port WineLib to MacOS X.   
Of course there would be work to do, but at least it 
is definitely possible.


Thanks for all of the help,
-James


-- 
James Hatheway
Software Designer - Macadamian Technologies, Inc.
[EMAIL PROTECTED] ~ http://www.macadamian.com

   "Nothing is a problem once you debug the code."


Reply via email to