swarm-support
[Top][All Lists]
Advanced

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

Re: [Swarm-Support] Pls bring me up to speed on gcc-4.7 and Swarm. Anybo


From: Scott Christley
Subject: Re: [Swarm-Support] Pls bring me up to speed on gcc-4.7 and Swarm. Anybody?
Date: Thu, 31 May 2012 14:08:07 -0500

On May 30, 2012, at 4:43 PM, Paul Johnson wrote:

> On 05/30/2012 04:12 PM, Scott Christley wrote:
>> Hi Paul,
>> 
>> Swarm will not work with gcc-4.7.0.  More specifically, gcc-4.7.0 has the 
>> new GNU Objective-C runtime library which has been extensively changed to be 
>> compatible with Objective-C v2.0 from Apple.
>> 
> 
> Bummer.
> 
> Is there anything to be done?

Yes.  Porting Swarm to Mac required me to write an objc abstraction layer, 
during that process Apple came out with ObjC V2 so I naturally wrote the 
abstraction layer to match Apple's API.  If you look at the file 
swarm-objc-apple2.h in src/defobj, you will see that all of the Swarm objc 
functions are just #define'd to the Apple objc functions.  The same thing can 
be done for GNU objc by creating a swarm-objc-gnu2.h then have it be included 
from swarm-objc-api.h under the right conditions (i.e. some check for GNU and 
objc version).  If the Apple and GNU runtimes have the same behavior, which I 
think they are suppose to, then the objc abstraction layer can be tossed 
completely and ObjC V2 used directly.

Forwarding and ffcall are separate issues not directly related to the objc 
version.

cheers
Scott

> 
> Does your work on the Mac version of Swarm take you up to a point where you 
> could write a "porting guide" that the rest
> of us could use to bring the rest of Swarm source into a workable state?  The 
> details of forwarding and fcall are so far
> over my head it would take you longer to explain the theory to me than, well, 
> it will take the rest of the polar ice
> caps to melt.  But, I am pretty good at time-consuming editing that 
> translates code from one style to another. I'm
> willing to delete Java Swarm altogether if necessary, all of my interesting 
> stuff is in Objective-C anyway.
> 
> I guess I can just install gcc-4.6.3 in a separate folder and run with that.  
> As long as it can be compiled, anyway.
> 
>> My guess is that Swarm seemed to build because it was looking at the ObjC 
>> header files within Swarm itself, while Heatbugs is looking at the system 
>> header files (/usr/include/objc) and thus the conflict.
>> 
>> Scott
>> 
>> 
> 
> -- 
> Paul E. Johnson                       email: address@hidden
> http://pj.freefaculty.org     Assoc. Director
> Professor, Political Science  Center for Research Methods and Data Analysis
> 1541 Lilac Lane, Rm 504               1425 Jayhawk Blvd.      
> University of Kansas          Watson Library, Rm. 470         
> Lawrence, Kansas 66045-3129   Lawrence, Kansas 66045-7555
> Ph: (785) 864-3523            Ph: (785) 864-3353
> 
> _______________________________________________
> Support mailing list
> address@hidden
> http://www.swarm.org/mailman/listinfo/support



reply via email to

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