X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:content-type :content-transfer-encoding:date:from:to:subject:in-reply-to :references:message-id; q=dns; s=default; b=x6j+L3ZoU9UBZZPwIGMK t4p/IaBLzdR5hHZGT0DTaSp3Lzyo21ei+GNPq8EV90pRF4WseVtom5kew9/h/nrr ONlTXxkuNbpY6U+Je99jMNQAmGuY7OBv954W5c2YTMXJrA+bZGnZT+He9UkL0eoI kp/Sn+oOKkCGlIJl0/31rD0= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:content-type :content-transfer-encoding:date:from:to:subject:in-reply-to :references:message-id; s=default; bh=veM09wd5ZErpPzfGaaiL74/uBy 8=; b=P0Pdd6B89xRKdz/1BgaHKneOh1IV3kT6yh6RgfwlZzFCHrQzSTpTYiTSsm GBPfgStL9g7Tye1sRcstD1MoXZr84uNYhtSz9xAmYe/R+DpT/QcR06M9pQzFsiVY E7UfrcmPccbnixI2c7BGkrB3R3m9Mgta8sHCgWyD1zSgiKy/I= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: smtp-vbr13.xs4all.nl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Date: Wed, 30 Apr 2014 18:48:58 +0200 From: waterlan To: cygwin AT cygwin DOT com Subject: Re: Cygwin needs a man-db port In-Reply-To: <7ec3dc7966486c2d7f85513f2f122cb4@xs4all.nl> References: <5241EF7D DOT 9080309 AT xs4all DOT nl> <52433E7A DOT 4070600 AT xs4all DOT nl> <524341E5 DOT 6080601 AT xs4all DOT nl> <5322EA04 DOT 3040008 AT xs4all DOT nl> <53501E4E DOT 7080103 AT breisch DOT org> <7ec3dc7966486c2d7f85513f2f122cb4 AT xs4all DOT nl> Message-ID: <7569b66c6578d5b16712ac6f24976567@xs4all.nl> X-Sender: waterlan AT xs4all DOT nl (RLs2bzf96cNGnRVhto+uLzz4PKT4uqe2) User-Agent: XS4ALL Webmail X-IsSubscribed: yes waterlan schreef op 2014-04-25 00:10: > waterlan schreef op 2014-04-24 21:43: >> Chris J. Breisch schreef op 2014-04-17 20:32: >>> Erwin Waterlander wrote: >>>> Hi, >>>> >>>> The major linux distributions have switched for their man system to >>>> 'man-db' (http://man-db.nongnu.org/) in favour of the classic man. >>>> >>>> I think that Cygwin should also switch to man-db. man-db is much >>>> better >>>> in handling man pages in different encoding. >>>> >>>> Before man-db, libpipeline (http://libpipeline.nongnu.org/) needs to >>>> be >>>> ported, because man-db uses it. >>>> >>>> I have tried to port man-db to Cygwin, but I did not succeed. I got >>>> stuck in libpipeline. Did anyone else succeed? >>>> >>> >>> Yes. And I agree this is a good idea. >>> >>> Dependencies: gdbm, libpipeline >>> >>> Build dependencies: pkgconfig, check, and the typical build stuff >>> (make, gcc, etc.) >>> >>> As I indicated earlier, I believe the current version of check is not >>> working properly. >>> >>> Check-0.9.12 seems to work out-of-the-box. Configure with >>> --prefix=/usr. >>> >>> "make check" on check reports all tests passed, despite what appear >>> to >>> be some failures. The CHANGELOG says that this version should pass >>> all >>> tests on Cygwin. I've just subscribed to the mailing list and will >>> check on whether these failures can be ignored or not. Still, it >>> definitely appears to work better than the version we have now, which >>> only passes 1 test in the test suite. >>> >>> Libpipeline-1.3.0 seems to work out-of-the-box. Configure with >>> --prefix=/usr. >>> >>> Oddly a "make check" for libpipeline-1.3.0 doesn't appear to actually >>> do anything. This was not the case for earlier versions of >>> libpipeline. Well, that's one way of getting rid of the test >>> failures, >>> I guess. >>> >>> Man-db-2.6.7 appears to work out-of-the-box. >>> >>> Configuring man-db is a little harder than the other two. >>> >>> ../man-db-2.6.7/configure --prefix=/usr --disable-setuid >>> --docdir=/usr/share/doc/man-db >> >> When I run that I get this error: >> >> checking for db1/db.h... no >> checking ndbm.h usability... no >> checking ndbm.h presence... no >> checking for ndbm.h... no >> configure: error: Fatal: no supported database library/header found >> > > I needed to install gdbm-devel and then I could install man-db. > >> >> >>> If you don't add the --disable-setuid, you'll need to add a "man" >>> user >>> to your system. If you're not using Corinna's snapshots, you'll need >>> to add the user to /etc/passwd as well. >>> >>> I'm not sure about the --docdir switch. That seemed to be consistent >>> with Cygwin, but an actual package maintainer would be a better >>> source >>> of info on this. >>> >>> A couple of warnings are generated: >>> >>> *** Warning: This system can not link to static lib archive >>> /usr/lib/libpipeline.la. >>> *** I have the capability to make that library automatically link in >>> when >>> *** you link to this library. But I can only do this if you have a >>> *** shared version of the library, which you do not appear to have. >>> >>> and a similar one for libman.la. > > I had the same warnings. > >>> I do have shared versions of these libraries, so I'm not sure why the >>> warnings appear. I seem to recall a thread about something similar >>> recently in the Cygwin mailing lists. I may go back and check. >>> >>> Once installed, you'll want to do a 'mandb -c' to create the >>> database. >>> It will report numerous warnings which can generally be ignored. See >>> the manpage on mandb. This takes a while. > > I got a couple of warnings. Not very much. > >>> When new packages are added or updated on your system, you should run >>> 'mandb -c' again. This seems like something that should be part of >>> postinstall. Hi, A 'mandb -c' takes quite a long time. That can be pretty annoying during an install. Perhaps it is not needed. If you don't do it the cache will fill as you use man-db (I guess). You don't need all man pages in a cache. > > I did not do that. > > As far as I could see man-db worked very well. It displayed UTF-8, > Latin-1, and KOI8-R encoded man pages correctly. > > I only tried 32 bit. I used > check 0.9.12 > libpipeline 1.3.0 > man-db 2.6.7.1 > > best regards, > > >>> My 32-bit Cygwin install has a lot of gzipped files and the >>> uncompressed versions under /usr/share/man. mandb didn't like that at >>> all. That is probably something I did and not a Cygwin problem. >>> >>> Note that I've done only the most minimal of testing. make check >>> passes for man-db and I've opened a few man pages. They seem to work. >>> >>> Obviously, someone with decision making power should decide if this >>> is >>> something we want to add to Cygwin. My vote is yes, but that's just >>> one vote. Or maybe even zero. I'm not sure I get a vote. :) >>> >>> Also obviously, if the decision is to go forward, these three items >>> need to be packaged up appropriately and a package maintainer >>> assigned. Check is already a Cygwin package, but needs updating. >>> >>> Somehow I have a feeling about who will be nominated for this task. We can share the burden. I'm willing to package libpipeline. This package can be installed without harming anything. I will propose it in the cygwin-apps list. I think the latest libpipeline version is already good enough, even when some tests are failing, because we have seen man-db working with it. In the cygwin-apps list it should also be discussed how to further integrate man-db. regards, Erwin >>> What minimal testing I have done has been on both 32-bit and 64-bit >>> Cygwin 1.7.29. -- Erwin Waterlander http://waterlan.home.xs4all.nl/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple