discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ABI compatibility with Cocoa


From: Luboš Doležel
Subject: Re: ABI compatibility with Cocoa
Date: Mon, 06 Aug 2012 17:34:29 +0200
User-agent: Roundcube Webmail/0.5

On Mon, 6 Aug 2012 15:41:20 +0100, David Chisnall wrote:
You might be interested in a NetBSD project that did the same thing
about 8 years ago.  They eventually gave up because all of the
interesting OS X software (e.g. the window server) has hooks so deeply
into the Mach layer, and everything on top of it has close
dependencies on it, that you effectively need 99% of OS X to have
anything interesting.

Oh yes, I've read all about that NetBSD project. But their approach was quite different from mine. They actually tried to make *the system* be like Darwin/OS X, while I'm doing everything in the user space. Just like Wine doesn't emulate any sort of very low level windowing functionality, they simply reimplemented the Windows APIs that are used to create GUIs.

That means I will certainly not be dealing with the window server the level the NetBSD guys did, I'll only be providing a semi-reimplementation of the upper-level libraries the applications use.

I'm also not making any modifications to the Linux kernel at all.

Replacing Cocoa's AppKit with GNUstep is difficult.  In theory, you
should be able to just add Apple runtime parts for the
runtime-specific things in, for example, NSObject.  This isn't
trivial, because OS X does layering in different places to us. You'll
also find problems from any applications that rely on implementation
details of the OS X frameworks.

David


Right, I know there will be a lot of missing libs that will have to be rewritten. But as long as the function calls remain the same API/ABI wise (e.g. same arguments...) between GNUstep and AppKit, it could get many apps running.

Well, I'll let you know of my progress! If things work out, I think it could get more people interested in improving GNUstep.

--
Luboš Doležel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]