Re: Building 4.1.0 rc1 on Solaris 8 and 9 with gcc 3.3.2

Yngve Svendsen <[email protected]> Thu, 18 Nov 2004 22:31:08 +0100
Newsgroups gmane.comp.bug-tracking.gnats.bugs
Message-ID <[email protected]>
Chad Walstrom wrote:

>I wrote:
>  
>
>>Nowhere in the config.in is HAVE_DECL_GETOPT defined, nor is configure
>>testing for it at all.  It appears that getopt and basename both
>>require manual definitions of HAVE_DECL_*=1 to skip the function
>>declaration or 0 to use it.  Try throwing these defines in your CFLAGS
>>and see what happens.
>>    
>>
>
>OK.  Looks like this problem isn't a new one in free software projects.
>Google pointed out numerous projects having to use their base
>configure.{in,ac} files to make the define.  I've attached a patch that
>should, hopefully, fix the getopt/basename issues.
>
>Try the patch.  If it works, I'll commit it to CVS.
>  
>
Works on Solaris 8 and 9 with gcc.

However, with Sun Workshop 8 cc, I still get the following:

/opt/SUNWspro8/bin/cc -c -I. -I. -I./../include  -g -Dconst=   
-DHAVE_CONFIG_H 
-DGNATSD_USER_ACCESS_FILE=\"/usr/local/etc/gnats/gnatsd.user_access\" 
-DGNATSD_HOST_ACCESS_FILE=\"/usr/local/etc/gnats/gnatsd.host_access\" 
-DDEFAULT_GNATS_SERVICE=\"support\" 
-DGLOBAL_DB_LIST_FILE=\"/usr/local/etc/gnats/databases\" 
-DGNATS_USER=\"gnats\" fconfigl.c
"/usr/include/unistd.h", line 282: identifier redeclared: getopt
        current : function(int, pointer to const pointer to char, 
pointer to const char) returning int
        previous: function(int, pointer to pointer to char, pointer to 
char) returning int : "/usr/include/stdio.h", line 265
"/usr/include/unistd.h", line 382: identifier redeclared: rename
        current : function(pointer to const char, pointer to const char) 
returning int
        previous: function(pointer to char, pointer to char) returning 
int : "/usr/include/iso/stdio_iso.h", line 165
"/usr/include/stdlib.h", line 165: identifier redeclared: getsubopt
        current : function(pointer to pointer to char, pointer to const 
pointer to char, pointer to pointer to char) returning int
        previous: function(pointer to pointer to char, pointer to 
pointer to char, pointer to pointer to char) returning int : 
"/usr/include/stdio.h", line 267
"./fconfigl.l", line 584: cannot recover from previous errors
cc: acomp failed for fconfigl.c
gmake[1]: *** [fconfigl.o] Error 2

- Yngve