axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gary Mazzaferro" <ga...@oedata.com>
Subject [AXIS2C] on Solaris 10 64bit -Need help finishing util/configure.ac
Date Sun, 11 Mar 2007 20:47:41 GMT
Hi,
 
I'm trying to get axis2c ver .96 building on solaris 10 64bit sparc. I have
identified a two issues with the util/configure.ac and have corrected one of
them. 
The other how ever is a little more complicated and I don't know how to fix
it. I was hoping some one could direct me.
 
The Problem:
The test, AC_CHECK_TYPES([struct lifreq]) in configure.ac fails. The build
of file ./util/src/platforms/unix/uuid_gen_unix.c defaults to Darwin 
Description:
Solaris 10 64bit redefines "struct lifreq" as only a 64bits structure,  32
bit programs do not have access to the data structure. Solaris gcc compiler
defaults to 32bit builds, so "struct lifreq" is undefined with the current
util/configure.ac. To build in 64bit mode, the build environment must have
the "__sparcv9" preprocessor symbol defined. When the AC_CHECK_TYPES([struct
lifreq]) test fails, preprocessor symbol HAVE_STRUCT_LIFREQ is undefined.
This leaves ./util/src/platforms/unix/uuid_gen_unix.c building Darwin code.
See code excerpts on the bottom.:

Using #ifdef HAVE_STRUCT_LIFREQ  may not be the best way to determine the
platform, but that's all good IF the AC_CHECK_TYPES([struct lifreq])  test
passes. 

I have tried several different ways to get "__sparcv9" preprocessor symbol
defined. I can't seem to get it to show up in config.h and pass the test. 

Please help me !!

>From ./util/src/platforms/unix/uuid_gen_unix.c  line 236 

    #else
    #ifdef HAVE_STRUCT_LIFREQ  /* Solaris-ish */
    /* code modified from that posted on:
    * http://forum.sun.com/jive/thread.jspa?threadID=84804
<http://forum.sun.com/jive/thread.jspa?threadID=84804&tstart=30> &tstart=30
    */
    char * AXIS2_CALL
    axis2_uuid_get_mac_addr()


>From ./util/src/platforms/unix/uuid_gen_unix.c  line 307 
    # else /* Darwin */   
    #ifndef max
    #define        max(a,b)        ((a) > (b) ? (a) : (b))
    #endif /* !max */
    char * AXIS2_CALL
    axis2_uuid_get_mac_addr()
    {


-thx
gary
 
 
 
 
 
 

Mime
View raw message