[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GDL2 on Mac OS X, stage two
From: |
Mirko Viviani |
Subject: |
Re: GDL2 on Mac OS X, stage two |
Date: |
Sun, 29 Dec 2002 22:25:35 -0000 |
Markus Hitter <address@hidden> ha scritto:
> > I know there is some header incompatibilities with the
> > two foundations and the compilers (at least with 2.95) but resolved
> > these
> > problems it should be quite ok.
>
> One is the #include/#import issue. You can't #include Apple headers. So
> I changed to #import <Foundation/Foundation.h> in all headers.
> Compatible and faster because of precompiled headers here.
I know this, but anyway here they are not precompiled and I don't like to
import all the Foundation in all .h
> All inclusions of EO* headers are sparse (no unneeded inclusions) and
> got #include to satisfy the friends of this keyword ;-)
Not me. I prefer #import and I use it for all the ObjC headers !
> Then, I had to insert the compatibility headers, surrounded by "#ifdef
> __APPLE__"
Is there another way to check for OSX ?
Probably I'll put this in config.h since could be handled nicely by configure.
> A big bunch of other issues could be solved with tweaking these
> compatibility headers. They are at the top level of the archive I've
> uploaded. Mostly, they switch things off, however ...
Ok, I'll take a look at it.
> One thing I remember is:
> ... in the header ...
> #define NSDebugMLLog(level, format, args...) {}
> ... in source ...
> NSDebugMLLog(@"gsdb", @"EOAdaptorLockOperator");
>
> This doesn't work on OS X. Obviously, you can't replace "args..." with
> zero arguments. It's gcc 3.1 here.
That's strange ! I've fixed all of these things some time ago since it does
not work with my gcc 2.95.
> Almost all stuff using ObjC runtime directly seems to be more or less
> incompatible. There's a file in GNUstep base which tries to deal with
> this issue but in detail, there will be some work. The file is in the
> uploaded project, too.
Ok.
> > It does not work in the same way but to take advantage of it your EOs
> > should
> > inherith from GCObject.
>
> You have a few lines of code to demonstrate?
Not at the moment.
> No need for Makefiles on OS X with ProjectBuilder. All you need is the
> .pbproj directory. And a nice place for the compatibility files.
For PBX, not for PB. Anyway if there are no problems (Adam ??) I've no
problems to add them.
> > then send patches!!!!
>
> I'll try to sort the stuff a little bit.
I saw your patch but as I already said I don't want to import all the
Foundation everywhere.
I'm currently updating all the header inclusion and hope to get working on
OSX (unfortunately I can't test it) and see where to put the compatibility
includes.
--
Ciao
Mirko