gpg 1.0.3 on Solaris w/ large file support
Nils at infosun.fmi.uni-passau.de
Tue Oct 17 16:05:28 CEST 2000
>>>"LH" == Lars Hecking <lhecking at nmrc.ie> writes:
LH> On Wed, 4 Oct 2000 15:27:15 +0200 (CEST), Nils Ellmenreich wrote:
>> This is because Solaris
>> requires the compilation flag -D_LARGEFILE64_SOURCE to support these
LH> From my understanding of large file support, this is not correct.
OK, what I meant was that the 1.0.3 code required this flag under
Solaris 2.6 to compile, which is correct (at least on my machines). ;-)
LH> According http://ftp.sas.com/standards/large.file/x_open.20Mar96.html,
LH> _LARGEFILE64_SOURCE and the *64() functions/ *64 structs are part of
LH> a transitional ABI, and are only required if one mixes 32/64bit types
LH> in the same program.
Right, so in the end, the way you write the code determines which flags
you actually need. There are circumstances where it makes perfect sense
to use that transitional interface.
LH> I have a first cut at a patch for gnupg-1.0.3b that adds large file support
LH> at configure level. But there is still work to be done (or has it been
LH> done already?) in util/iobuf.c. I think that
LH> - the redefinition of fopen() and fstat() must go
LH> - u32 iobuf_get_filelength( IOBUF a ) must be rewritten to
LH> not explicitly return u32, but a different type that is 64 bit
LH> on 64 bit platforms
LH> - accordingly, the struct stat64 and
LH> "#if defined (HAVE_FOPEN64) && defined (HAVE_FSTAT64)" stuff in
LH> iobuf_get_filelength() must go.
LH> I could be totally off track here, of course ;-)
No, you are not. I've been playing around with it myself, only to find
out that I don't know enough about this. Now, after some reading I'll be
looking at it again (hopefully this week). The above remarks look good
LH> Will I post my patch here? I have no ftp site to put it on.
Hm, trouble is we want to have it in the distribution. If I understand
Werner correctly, only very small patches (like 3 lines or so) can be
accepted. For longer stuff, you need to sign some legal papers to
transfer the copyright to the FSF. I think, a good way to proceed might
be that you explain to me what you have done already (like the above
list), so that I can reprogram it and start from there.
LH> It compiles nicely on 32/64bit Solaris, but doesn't on IRIX/HP-UX/DU.
LH> I _think_ that I have problems compiling gpg on these platforms anyway ...
Right, if we have it compiling *and* working for Solaris, Werner
suggested we make a snapshot and have some HP-UX guys help us out. I
don't have access to any of the above systems so I can't try it.
PS. Lars, always interested in the same stuff as me, right?? :-)
Nils Ellmenreich - Fakultaet fuer Math./Informatik - Nils @
http://www.fmi.uni-passau.de/~nils - Univ. Passau - Uni-Passau.DE
More information about the Gnupg-devel