![]() |
What is it?As some of you may know (and most of you probably don't), Apple is currently developing MacOS X, a replacement to MacOS based on top of Mach3 and BSD but with the traditional Macintosh look and feel. In order to allow developers to quickly port their existing MacOS-based applications to MacOS X, Apple has created a portability layer named Carbon. Carbon takes the nearly 9000 MacOS APIs, trims the dead weight, adds some new stuff, and offers the remaining 6000 APIs for use on top of MacOS X. All developers need to do is tweak their existing MacOS code to fit the new Carbon API and their apps will run in a separate process, taking full advantage of MacOS X's memory protection and pre-emptiveness. To this end, we have made those modifcations to Mozilla so that a single binary will run on both MacOS 8.5 and MacOS X. These modifications (code named Fizzilla while they lived on Pink's hard drive) are now in the tip of the Mozilla tree, but are hidden behind an ifdef. One day we will flip the switch for daily builds, but for the time being, only those of us who want to build with these changes will. Fizzilla made its public debut onstage at the MacOS X Session at Apple's WWDC '99. People liked it. So?Basing MacMozilla upon CarbonLib instead of the MacOS libraries gets us the following:
Fine. Now what?The following documents discuss where to go from here and how you can help Why not base Mozilla on Cocoa (Yellow Box)?Why start over from scratch (new NSPR, new GFX, new Widget...) when the exact same code base that we use for our MacOS product will get us to this new platform? And besides, no one wants to write in objective-C. Special ThanksMany thanks to the following people at Apple for helping out: Eoin Norris, Dave Evans, Curt Rothert, John Signa, Christine O'Sullivan
written by Mike Pinkerton (pinkerton@netscape.com) |
|||
|
Copyright © 1998-1999 The Mozilla Organization.
Last modified May 12, 1999. |
|||