unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* #defines and MacOS X
@ 2005-10-27 17:18 Adrian Robert
  2005-10-28  2:28 ` YAMAMOTO Mitsuharu
  2005-10-28  8:36 ` Kim F. Storm
  0 siblings, 2 replies; 7+ messages in thread
From: Adrian Robert @ 2005-10-27 17:18 UTC (permalink / raw)


Hi,

I've been working on the Emacs.app GNUstep/Cocoa (Nextstep) port of  
Emacs, using the unicode-2 branch -- initial release expected in the  
next couple of weeks.  One issue that comes up is #ifdef constant  
naming semantics, because the both ports have historically assumed  
they are the only windowing system port on the Mac, and therefore  
used constants like "MAC_OS" to delineate their code.

In particular, the Carbon port uses:

MAC_OS
- sometimes relevant to all MacOS, but sometimes just relevant to the  
Carbon port on 8/9 and X

MAC_OSX
- sometimes relevant to Darwin and/or OS X, but sometimes just  
relevant to Carbon on OS X

TARGET_API_MAC_CARBON
  - relevant to Carbon port on OS X only

USE_CARBON_EVENTS
  - pertaining to historical use of differing event mechanisms in  
Carbon on OS X


Meanwhile, I already updated the Nextstep port to avoid this problem  
using:

HAVE_NS
  - relevant to NeXTstep window system (on either GNUstep or OS X/Cocoa)

     GNUSTEP
      - relevant to GNUstep only

     COCOA
      - relevant to Cocoa / OS X only


I want to change the use of MAC_OS and MAC_OSX to indicate the  
operating system, not the GUI API used on it.  Therefore, we would get:

MAC_OS_8, MAC_OS_9
  - non-graphical code relevant on MacOS 8/9

DARWIN
  - non-graphical code relevant on MacOS X, as well as other Darwin  
BSD distributions

MAC_OSX
  - non-graphical code relevant only on MacOS X

---------

MAC_TOOLBOX
  - code relevant to the Classic and Carbon ports on MacOS

     CLASSIC
      - graphical code for MacOS 8/9 only

     CARBON
      - graphical code for MacOS X only

     HAVE_CARBON_EVENTS
      - as before


Obviously there's more than one way to do this (using combinations,  
etc.), and I'm in no way wedded to the above proposal.  If anyone has  
suggestions or preferences, please say so.

Whatever is agreed upon, I'm willing to generate the patches for both  
HEAD and the unicode-2 branch.

thanks,
Adrian

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2005-10-28 15:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-27 17:18 #defines and MacOS X Adrian Robert
2005-10-28  2:28 ` YAMAMOTO Mitsuharu
2005-10-28 15:11   ` Adrian Robert
2005-10-28  8:36 ` Kim F. Storm
2005-10-28 11:22   ` Miles Bader
2005-10-28 11:48     ` Kim F. Storm
2005-10-28 15:22   ` Adrian Robert

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).