From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2230 invoked from network); 4 May 1999 19:22:07 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 4 May 1999 19:22:07 -0000 Received: (qmail 11884 invoked by alias); 4 May 1999 19:21:56 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 6216 Received: (qmail 11877 invoked from network); 4 May 1999 19:21:56 -0000 Date: Tue, 4 May 1999 15:04:12 -0400 From: Chet Ramey To: schaefer@brasslantern.com Subject: Re: ZSH 2GB File Limit (Solaris 2.6) Cc: zsh-workers@sunsite.auc.dk Reply-To: chet@po.CWRU.Edu In-Reply-To: Message from schaefer@brasslantern.com of Tue, 4 May 1999 11:00:25 -0700 (id <990504110026.ZM28651@candle.brasslantern.com>) Message-ID: <990504190412.AA12429.SM@nike.ins.cwru.edu> Read-Receipt-To: chet@po.CWRU.Edu Content-Type: text/plain; charset=us-ascii > On May 4, 10:34am, Peter Stephenson wrote: > } Subject: Re: ZSH 2GB File Limit (Solaris 2.6) > } > } That's this code from bash's configure. What do we do, just copy it and > } change BASH to ZSH? > > Unless I'm missing something (which is entirely possible), this configure > stuff doesn't do anything but define BASH_LARGE_FILE_SUPPORT. There must > be some actual C code somewhere in the bash source that tests for that > constant and does *something*. That something is far more interesting > than the configure part. I got into this discussion late, but that's not what the code in bash's aclocal.m4 does. It's designed to work with the Solaris large file stuff, and very little, if anything, else. It uses getconf to test for, in turn, LFS_CFLAGS LFS64_CFLAGS LFS_LDFLAGS LFS64_LDFLAGS LFS_LIBS LFS64_LIBS sets ac_getconfs to any values returned, and sets ac_test_CPPFLAGS ac_test_LDFLAGS ac_test_LIBS to the values appropriate for those variables as returned by getconf. If any of those variables has a value, the CPPFLAGS, LDFLAGS, and LIBS variables get seeded from them. The bash configure calls BASH_LARGE_FILE_SUPPORT before any other autoconf tests that can set these values, right after AC_PROG_CC. On Solaris 2.6, CPPFLAGS gets set to CPPFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE This stuff gets used only if the user didn't pass values for the variables in configure's environment. The cpp defines and libraries (if any) make solaris use the 64-bit versions of certain file-handling system calls. Run `man interface64' on a Solaris 2.6 machine for more info. Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ( ``Discere est Dolere'' -- chet) Chet Ramey, Case Western Reserve University Internet: chet@po.CWRU.Edu