discuss-gnustep
[Top][All Lists]
Advanced

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

Re: Using GNUstep Categories in Cocoa


From: Marcus Müller
Subject: Re: Using GNUstep Categories in Cocoa
Date: Tue, 23 Apr 2002 14:40:33 +0200

On Monday, April 22, 2002, at 07:39 PM, Edwin Zacharias wrote:

I see why staying Header compatible is a problem. Probably solved by some complex set of preprocessor macros.

I don't hope so! The solution I'd prefer is to have the GNUstep additions in separate headers, but to keep the implementation within gnustep-base. Please note that one cannot put the GNUstep addition implementations into another framework, as they're used by gnustep-base (cyclic dependency). However, it would be of no benefit nevertheless, because the OS X implementations differ, sometimes significantly. I just stumbled across an elegant solution to this:

gnustep-base's build process would incorporate a GSExtensions framework, which consists of headers and a framework stub only. During the build of gnustep-base, all necessary additions would be referenced via the GSExtensions.framework headers (embedded in base during the build), the implementations will stay where they are now. During the gnustep-base install, the GSExtensions.framework will be installed. No GNUstep application needs to link against the GSExtensions.framework, because it is simply used for providing the extensions "declarations".

On OS X you'd have a real framework that you need to link against, but this is no problem nevertheless because the build processes differ anyhow. The location of the headers, on the other hand, is the same.

What this means is that one would have to change minimal things in gnustep-base (basically create the headers, add the new build target, change #include's where necessary to use the new headers). It directly enables the use of the GSExtensions.framework without real need to port applications to OS X.

Cheers,

  Marcus

--
Marcus Mueller  .  .  .  crack-admin/coder ;-)
Mulle kybernetiK  .  http://www.mulle-kybernetik.com
Current projects: finger znek@mulle-kybernetik.com




reply via email to

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