2.2.0-alpha3 - still (still!) compile problem on ReliantUNIX
Jeremy Allison
jeremy at valinux.com
Wed Apr 4 15:23:55 GMT 2001
Gerald Carter wrote:
>
> On Wed, 04 Apr 2001 08:13:13 Andrej Borsenkow wrote:
> >
> > Compiling nsswitch/wb_common.c
> > /usr/include/unistd.h 288: [error]: CFE1020 identifier
> > "off64_t" is undefined extern int ftruncate64(int, off64_t);
> >
> > /usr/include/unistd.h 338: [error]: CFE1020 identifier
> > "off64_t" is undefined extern int lockf64(int, int, off64_t);
> >
> > .... etc etc etc ....
> >
> > Now, that's becoming ridiculous. I asked, if original patch
> > was wrong; I explained, why I needed it; I never got any reply
> > why it wasn't applied.
>
> Well it looks like the configure script is broken actually.
>
> winbind_nss_config.h has the following include...
>
> #ifdef HAVE_UNISTD_H
> #include <unistd.h>
> #endif
>
> So the question is why is
>
> AC_CHECK_HEADERS(unistd.h)
>
> Not finding it. Can you verify that HAVE_UNISTD_H is defined
> in config.h?
It probably is finding it. The issue is that ReliantUNIX
(which to be honest isn't one of our major platforms) is
broken in that it needs this header file to be *first* - before
*anything* else.
The problem with the patch is that it is really specific to
one platform, and includes unistd.h unconditionally, without
any regard to whether it exists or not on a platform.
And it's my fault for not getting back to you earlier to
point out this problem, I apologise, but I've been somewhat
busy coding ACLs up.
I've fixed it in winbind_nss_config.h in the same way
it's fixed in includes.h, with a sucky, platform-specific
#ifdef :-). I *hate* doing that :-).
Check out 2.2 or HEAD and it's fixed in there.
Jeremy.
--
--------------------------------------------------------
Buying an operating system without source is like buying
a self-assembly Space Shuttle with no instructions.
--------------------------------------------------------
More information about the samba-technical
mailing list