From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailout-webserver.scc.kit.edu (mailout-webmail.scc.kit.edu [129.13.185.232]) by krisdoz.my.domain (8.14.5/8.14.5) with ESMTP id s7A2lACN002483 for ; Sat, 9 Aug 2014 22:47:11 -0400 (EDT) Received: from hekate.usta.de (asta-nat.asta.uni-karlsruhe.de [172.22.63.82]) by scc-mailout-02.scc.kit.edu with esmtp (Exim 4.72 #1) id 1XGJA6-0005Ok-Ba; Sun, 10 Aug 2014 04:47:10 +0200 Received: from donnerwolke.usta.de ([172.24.96.3]) by hekate.usta.de with esmtp (Exim 4.77) (envelope-from ) id 1XGJA6-0005rK-9K; Sun, 10 Aug 2014 04:47:10 +0200 Received: from iris.usta.de ([172.24.96.5] helo=usta.de) by donnerwolke.usta.de with esmtp (Exim 4.72) (envelope-from ) id 1XGJA5-0001zq-GY; Sun, 10 Aug 2014 04:47:09 +0200 Received: from schwarze by usta.de with local (Exim 4.77) (envelope-from ) id 1XGJ9K-0000Fc-Tz; Sun, 10 Aug 2014 04:46:22 +0200 Date: Sun, 10 Aug 2014 04:46:22 +0200 From: Ingo Schwarze To: Paul Onyschuk Cc: discuss@mdocml.bsd.lv Subject: Re: Portability of fts() functions Message-ID: <20140810024622.GD32716@iris.usta.de> References: <20140809123827.6df5072f894ac5795f4228d3@gmail.com> <20140809154928.GD30999@iris.usta.de> <20140809190923.aa172f22b838ade5621fe601@gmail.com> <20140809215919.GA32716@iris.usta.de> <20140810012653.1335f4c61425e53a657ac8dc@gmail.com> X-Mailinglist: mdocml-discuss Reply-To: discuss@mdocml.bsd.lv MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140810012653.1335f4c61425e53a657ac8dc@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Hi Paul, Paul Onyschuk wrote on Sun, Aug 10, 2014 at 01:26:53AM +0200: > On Sat, 9 Aug 2014 23:59:19 +0200 Ingo Schwarze wrote: >> Oh you mean if mandoc is compiled on a 32bit glibc platform with 32bit >> off_t but more than 2 billion files in one file system or files larger >> than 2 GB inside a manual tree, mandoc will compile all right, >> but i may crash at runtime due to the broken fts(3) implementation >> contained in glibc? Did i get that right? > I think you got it right. >> I'm not sure what i could do about that - both in the long term >> and as a quick fix for this release. What would you suggest? > There isn't much you to do about for time now I guess. Explanation in > readme and that "BUILD_TARGETS += db-build" won't compile on systems > without fts(3) would do. I've added a comment to the relevant place in the Makefile. >> Indeed, that sounds bad. >> >> I guess i won't change that for this release, though. I worry that >> if we are very unlucky, whatever guard i put in there might break >> on another system that was already tested and may not be tested >> again. >> >> For the next release, i have to keep this in mind. >> I might do some more cleanup related to configure, anyway. > What about something like that before 'set -e': > > echo "/* RUNNING ./CONFIGURE - SHOULD BE USED ONLY VIA MAKE, READ INSTALL */" > > Maybe that would be enough? Sounds reasonable for now and certainly not dangerous; done. Thanks, Ingo Index: Makefile =================================================================== RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/Makefile,v retrieving revision 1.434 diff -u -p -r1.434 Makefile --- Makefile 8 Aug 2014 23:47:21 -0000 1.434 +++ Makefile 10 Aug 2014 02:42:13 -0000 @@ -52,9 +52,10 @@ INSTALL_MAN = $(INSTALL_DATA) # --- user settings related to database support ------------------------ -# If you want to build without database support, for example to avoid -# the dependency on SQLite3, comment the following line. -# However, you won't get apropos(1) and makewhatis(8) in that case. +# Building apropos(1) and makewhatis(8) requires both SQLite3 and fts(3). +# To avoid those dependencies, comment the following line. +# Be careful: the fts(3) implementation in glibc is broken on 32bit +# machines, see: https://sourceware.org/bugzilla/show_bug.cgi?id=15838 # BUILD_TARGETS += db-build Index: configure =================================================================== RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/configure,v retrieving revision 1.7 diff -u -p -r1.7 configure --- configure 8 Aug 2014 23:47:21 -0000 1.7 +++ configure 10 Aug 2014 02:42:13 -0000 @@ -14,6 +14,8 @@ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +echo "/* RUNNING ./CONFIGURE - SHOULD BE USED ONLY VIA MAKE, READ INSTALL */" + set -e exec > config.h 2> config.log -- To unsubscribe send an email to discuss+unsubscribe@mdocml.bsd.lv