pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/42474: Tru64: chat/epic4-2.2 does not compile
The following reply was made to PR pkg/42474; it has been noted by GNATS.
From: David Holland <dholland-pbugs%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: pkg/42474: Tru64: chat/epic4-2.2 does not compile
Date: Sun, 15 Aug 2010 03:30:11 +0000
On Sat, Aug 07, 2010 at 08:45:02AM +0000, RUMI Szabolcs wrote:
> checking to see if your struct sockaddr includes a length field... yes
> [...]
> #if defined(_SOCKADDR_LEN) || \
> defined(_KERNEL) || \
> defined(_XOPEN_SOURCE_EXTENDED) || \
> defined(_POSIX_PII_SOCKET)
> [...]
> unsigned char sa_len; /* total length */
> sa_family_t sa_family; /* address family */
> [...]
> #else /* BSD4.3 */
> [...]
> unsigned short sa_family; /* address family */
I thought I remembered something like that...
(I used to use Tru64/Digital Unix a fair amount years back)
The part I don't understand is why one of those symbols is defined
when the configure test runs and then isn't defined when compiling
afterwards. I also don't understand how any of them get defined during
configure, since they don't appear in configure script or anywhere in
the package distribution either.
These two questions probably have the same answer, though. Maybe
there's a header being pulled in during configure that sets one of
them? If you feel inclined, you might look in confdefs.h and see if
there's anything in there that might be related.
> It seems to me that gailib.h (which is included by gailib.c)
> has some workarounds in place for those missing length fields,
> so this may be the reason why it doesn't fail while others do.
Yeah, but those workarounds are based on the HAVE_*_LEN symbols
defined by the configure script; those are also present in the file
that's failing, and they must be getting set, too, because otherwise
it wouldn't be trying to use the _len fields.
> Issuing 'echo "CFLAGS+=-D_SOCKADDR_LEN" >> /usr/pkg/etc/mk.conf'
> does make it compile.
I'm tempted to deal with the problem by adding
CFLAGS.OSF1+=-D_SOCKADDR_LEN
to the package makefile and leave it at that...
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index