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 s79M08Rl006715 for ; Sat, 9 Aug 2014 18:00:08 -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 1XGEgI-0007TE-3h; Sun, 10 Aug 2014 00:00:06 +0200 Received: from donnerwolke.usta.de ([172.24.96.3]) by hekate.usta.de with esmtp (Exim 4.77) (envelope-from ) id 1XGEgI-0000H0-3A; Sun, 10 Aug 2014 00:00:06 +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 1XGEgI-0008UT-1m; Sun, 10 Aug 2014 00:00:06 +0200 Received: from schwarze by usta.de with local (Exim 4.77) (envelope-from ) id 1XGEfX-0003Yp-F0; Sat, 09 Aug 2014 23:59:19 +0200 Date: Sat, 9 Aug 2014 23:59:19 +0200 From: Ingo Schwarze To: Paul Onyschuk Cc: discuss@mdocml.bsd.lv Subject: Re: Portability of fts() functions Message-ID: <20140809215919.GA32716@iris.usta.de> References: <20140809123827.6df5072f894ac5795f4228d3@gmail.com> <20140809154928.GD30999@iris.usta.de> <20140809190923.aa172f22b838ade5621fe601@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: <20140809190923.aa172f22b838ade5621fe601@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Hi Paul, Paul Onyschuk wrote on Sat, Aug 09, 2014 at 07:09:23PM +0200: > Ingo Schwarze wrote: >> I guess what is needed is a compat_fts.h/compat_fts.c just like >> for ohash(3). I fear that won't be something that can be done >> in a hurry, though. >> >> So it looks like for the 1.13.1 release, it's probably to late >> to fix the fts(3) issue, and systems not having it will have the >> choice of either running 1.13.1 with "BUILD_TARGETS += db-build" >> disabled (that is, without apropos/makewhatis) >> or stay with 1.12.4 until 1.13.2 comes out. >> >> Do you think that would be tolerable? > For systems missing fts(3) I would say yes. I would worry more about > glibc scenario, especially if mdocml is packaged e.g. clean build on > x86_64 system used by packager, where it could break otherwise, wasting > someone's time. 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'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? > Using occasion: > > In file included from mansearch_const.c:20:0: > manpath.h:36:1: error: unknown type name '__END_DECLS' > > mansearch_const.c is not including config.h before manpath.h, patch: > > XXX > --- mansearch_const.c.orig > +++ mansearch_const.c > @@ -14,6 +14,10 @@ > * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF > * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. > */ > +#ifdef HAVE_CONFIG_H > +#include "config.h" > +#endif > + > #include > #include > > XXX Yes, Thomas Klausner reported that one, too, and i fixed it with exactly that patch in rc3. > I think configure script should be guarded against standalone > execution. Right now you can do "./configure && make" expecting usual > behavior (if you forget about looking at INSTALL). Since in this case > ${CC} won't be defined, script will try running commands starting with > "-Wno-unused -Werror". All tests will fail, enabling all compat > functions. 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. > I also have additional question. Are there any plans for providing > man(1) command also? This would make mdocml a possible, standalone > replacement for groff and man-db combination (typical in Linux > distributions). I will address that separately. Yours, Ingo -- To unsubscribe send an email to discuss+unsubscribe@mdocml.bsd.lv