Bug 1013

Summary: openssh > 3.8p1 make failure on Solaris
Product: Portable OpenSSH Reporter: Sigmund Straumsnes <sigmunds>
Component: Build systemAssignee: OpenSSH Bugzilla mailing list <openssh-bugs>
Status: CLOSED INVALID    
Severity: critical CC: ray.mccaffity
Priority: P2    
Version: 4.0p1   
Hardware: All   
OS: Solaris   
Attachments:
Description Flags
Attempted fix
none
config.h
none
config.log none

Description Sigmund Straumsnes 2005-04-12 19:40:18 AEST
make fails with:
[...]
In file included from bsd-arc4random.c:18:
../log.h: In function `fatal':
../log.h:56: warning: empty declaration
../log.h:65: error: parse error before "volatile"
../log.h:65: error: old-style parameter declarations in prototyped function
definition
../log.h:56: error: parameter name omitted
bsd-arc4random.c:20: error: `rcsid' undeclared (first use in this function)
bsd-arc4random.c:20: error: (Each undeclared identifier is reported only once
bsd-arc4random.c:20: error: for each function it appears in.)
bsd-arc4random.c:20: warning: left-hand operand of comma expression has no effect
bsd-arc4random.c:20: error: parse error before '}' token
make[1]: *** [bsd-arc4random.o] Error 1
make[1]: Leaving directory `/usr/src/openssh-4.0p1/openbsd-compat'
make: *** [openbsd-compat/libopenbsd-compat.a] Error 2

If log.h is reverted to the 3.8p1 version, it builds ok. The problem seems to be
the inclusion of __dead in two declarations in that file.
Comment 1 Damien Miller 2005-04-12 19:43:48 AEST
Created attachment 871 [details]
Attempted fix

Does this patch help?
Comment 2 Sigmund Straumsnes 2005-04-12 19:47:33 AEST
Created attachment 872 [details]
config.h
Comment 3 Sigmund Straumsnes 2005-04-12 19:48:18 AEST
Created attachment 873 [details]
config.log
Comment 4 Sigmund Straumsnes 2005-04-12 20:00:19 AEST
http://bugzilla.mindrot.org/attachment.cgi?id=871 did not help. Same error.
Comment 5 Darren Tucker 2005-04-12 20:15:12 AEST
I used config.h from attachment #872 [details] and built with it on Solaris 8 w/gcc-3.4.3
(after commenting out HAVE_SYS_CDEFS_H since it has no <sys/cdefs.h>).

What compiler are you using?  If gcc, where did you obtain it?
Comment 6 Sigmund Straumsnes 2005-04-13 01:31:56 AEST
I use gcc-3.4.3 built from source from gcc.gnu.org
Comment 7 Sigmund Straumsnes 2005-04-25 22:13:12 AEST
I obviously didn't read Darren Tucker's comment thoroughly enough; I have tried
to comment out HAVE_CDEFS_H and then it compiles.
It seems there was an old cdefs.h on the system which should not have been included.

I'm setting the resolution to invalid.

Thanks for the help, and sorry.
Comment 8 Darren Tucker 2005-07-09 13:52:07 AEST
*** Bug 1062 has been marked as a duplicate of this bug. ***
Comment 9 Darren Tucker 2006-10-07 11:39:34 AEST
Change all RESOLVED bug to CLOSED with the exception of the ones fixed post-4.4.