[Fwd: [Patch] Configure broken for Solaris 2.6 (PR#12014)]

David Collier-Brown davecb at Canada.Sun.COM
Fri Dec 18 12:56:07 GMT 1998


Jeremy Allison wrote:
>  Samba *looks* for statvfs64
> and will use it if found. If not it will happily
> use statvfs with 64 bit variable sizes.

	Yes, that's correct: I was being fooled by
	a #define artifact into disgnosing the
	wrong thing.
> 
> I think I see the problem - Dave, how do you tell
> the C compiler in Solaris 2.6/2.7 to use the full
> 64 bit wide interfaces (ie. no open64/statvfs64 etc.)
> but just have off_t and friends be 64 bits wide ?

	The canonical way (for Sun: they reserve the
	right to have their own high priests (:-))
	is to use getconf to get the values of
	LFS_CFLAGS, LFS_LDFLAGS, LFS_LIBS and 
	optionally LFS_LINTFLAGS

	This turns out, on 2.6 and 2.7, to 
	be -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 for
	cflags and lintflags, and nothing for the other two.


> Samba is coded to handle this case, as it's how
> it is done on IRIX. The only issue is that when
> the C compiler flags are set to use the 64 bit wide
> interfaces (ie. no open64 etc.) then the explicit
> interfaces (open64 etc.) should *not* be found by autoconf.

	Right!

> Does this help ?
	Sure does: helped me find the underlying problem,
	after I grep'd for stavfs64 and was amazed to
	find it wasn't called after all!

--dave


More information about the samba-technical mailing list