[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ABI compatibility with Cocoa
From: |
David Chisnall |
Subject: |
Re: ABI compatibility with Cocoa |
Date: |
Mon, 6 Aug 2012 15:41:20 +0100 |
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.
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
On 5 Aug 2012, at 14:32, Luboš Doležel wrote:
> Hello,
>
> as part of my diploma thesis I'm working on a userspace Darwin compatibility
> layer for Linux. The primary task is to get unmodified console applications
> running on top of a Wine-like layer. Currently, I'm working on a compatible
> libSystem.dylib reimplementation - i.e. resolving ABI issues and implementing
> missing Mach and BSD kernel calls, albeit in many cases it's just a dummy
> function.
>
> http://darling.dolezel.info/
>
> As a long-term aim, I would also like to get other applications running -
> personally especially 3D games, but ordinary GUI apps as well. One of the
> important pieces is Cocoa and GNUstep seems to be a good choice for dealing
> with AppKit implementation on Linux.
>
> Towards this end, I'd like to ask what you see as the biggest hurdles in ABI
> (not just API) compatibility when replacing Apple's AppKit with GNUstep?
>
> I'd like to note that I realize what I'm trying to achieve is a *tremendous*
> task, but well, I believe it can be done!
>
> Regards,
> --
> Luboš Doležel
>
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnustep
-- Sent from my brain