On Mar 15, 2010, at 1:08 PM, Borut Razem wrote:
>>    I've been working on building sdcc under Solaris with the Sun
>> Studio 12 compiler.  I've not gotten all the way there, but I've made
>> substantial progress.  I've detailed a few simple things that need
>> fixing for this to work.  Most of them seem to come from the autoconf
>> scripts' assumption that GCC will be used to compile sdcc.  I'm NOT
>> asking that sdcc be modified to specifically support Sun's compilers,
>> but if autoconf is going to check to see if GCC is in use, and finds
>> that it isn't but still allows the user to continue, it shouldn't put
>> GCC-specific options into CFLAGS. :)
>
> Quite some time ago, before the SourceForge Compile Farm died, the  
> sdcc
> nightly builds were done also on Solaris, but, if I remember well,  
> they
> were compiled with gcc.

   It really is a shame about that compile farm going away.

>>    I'm working with 2.9.7, one of the source snapshots from a few
>> days ago, 20100313-5734.
>>
>>    The first thing that breaks is the automatic inclusion of -Wall
>> (which is GCC-specific) in CFLAGS.
>>
>>    Next comes this line in src/pic/ralloc.c:
>>
>> #define FENTRY2                 1 ? (void)0 : printf
>>
>>    I removed the void cast; that allowed it to compile.
>
> This should not be a problem. I'll try it on gcc without the cast. We
> can still use #ifdef SOLARIS or something. Can you tell me which is  
> the
> most appropriate preprocessor symbol defined by the Sun Studio 12  
> compiler?

   Yes, I usually check for "defined(sun) && defined(__SVR4)".

>>    The last one is a weird problem that I've not really dug into yet;
>> I think it probably has to do with -E handling.  The Makefile.dep
>> files end up being huge (several megabytes) and contain lots of C
>> source code fragments.  I ended up just turning that into "touch
>> Makefile.dep" in the Makefiles and being careful about doing a "make
>> clean" between builds, which is obviously not the correct solution.
>
> Tis is the hardest one: the gcc preprocessor understands -M command  
> line
> option, which generates the makefile dependencies. I don't know if
> Solaris cc can do this. If not, an external toll should be found  
> and used.

   It can; the option for thisis "-xM".

>>    Anyway, as I said, I'm still working on it, and I'm not sure how
>> much farther I'm going to get before I need to spend time on other
>> things.  I'm hoping that someone will be willing to make these
>> portability changes whenever he/she has time.
>
> I hope you'll come to the end.

   I should be able to spend some more time on it tonight.

> If we'll solve all the problems, can your machine be used for nightly
> snapshot builds?

   Yes.  We actually talked about this a couple of years ago, then I  
got busy and couldn't do it on my end.  Maybe we can do it now.

> I'm very unsatisfied with the current situation, since we have only
> Linux on amd64 and Mac OS X on PPC.

   I understand.  I can probably help with this; I've just set up a  
large VMware host machine here since I now need to support some  
consulting clients running VMware.  It runs full-time, and it is WAY  
overpowered for my immediate needs (two SCO virtual machines).  I can  
easily spin up a few more VMs on it and get you Solaris/x86, NetBSD/ 
i386 and possibly FreeBSD, if it runs nicely under VMware (which it  
probably does).

   Do you have a shell script or something set up to pull from svn  
and do a build?  If so, and if it were self-contained and relatively  
portable, it'd make this very easy to set up.

> Is Solaris on sparc or x86?

   This is on UltraSPARC, as that's my primary platform here, as well  
as that of my employer, so I have plenty of capacity available.

            -Dave
>


-- 
Dave McGuire
Port Charlotte, FL


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to