X-Recipient: archive-cygwin@delorie.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:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type:content-transfer-encoding;
	 q=dns; s=default; b=FOVUMn3QQlpU/zPzSpffdnGYyQQ2YKe0MDq7U7/XDp1
	Pv42oeDnPLIH/pRbizOoXQ2ljKyRuUX8BzcNif/ZjAfgLzfpRSBvo1R+7oXLcth7
	1F3zKt4ePtTX9c3m+gLADZwSTUnG79/G8HyHn+2n+F3GwrY7UrIzfEOkVepIk+rw
	=
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:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type:content-transfer-encoding;
	 s=default; bh=9N67U3pIUNHY5kggNGMDzr8CbJ8=; b=ogQzGoDTy+ilggJP9
	ruW8Uh5Khscrxemh+eU1P1eEtbSO+DzaOVyQBG+KcM21fCOoZDgwHErcVAERhsFz
	mplzqZmYOJ30vczmD7gZXXiLocGG9ZLwx4FnW8gqJpQH2OcilKSNH4VUURSdOJyJ
	1Y8KDQb7w39iqwqckcpJTtyitY=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2
X-HELO: mail-ie0-f174.google.com
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;        d=1e100.net; s=20130820;        h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to         :subject:references:in-reply-to:content-type         :content-transfer-encoding;        bh=fYhCZjpCUOUGQUku9nvrw4r8DfwCkwjbmsdPW3fw3hQ=;        b=c7TJW+x8FVee4d5aXjKEyCTwBj3lQLbd+gOJK/itkxnBukTS+L82SA4WJlM3u52dYD         LekcpHtCrLGWKfHYgpE8ihZ9mCwDsD4boz6Je7Wt5FjbzrOyw71QXFcaH8hInqigll5j         ylHC3b+88fbJ/xr2JllPnaqnH3XGB1fLrCWOh+86eh3zpPOqscjHrkzxTfoT+hMmIKxX         f3hYHALYUTCN2QufWkt04BF0bT7cNwTdfE8RXTHJq0PwDtc3J3j/eVSFk+LCCIxg3/oc         0Cmhs1oDsaA1NapZFHZK8jgp+4sja/OuUg/dxsW5+ZTsd9Qnmt4U1xZEkecn0WiMGfVX         WLbA==
X-Gm-Message-State: ALoCoQkjEQmV7xXl5+PTXYbsUHKf4BjJGQbTuAmjnufZEI4oCsjy6C4u5wnA5qZjfyL1aHMypUam
X-Received: by 10.50.30.170 with SMTP id t10mr13086945igh.7.1397759570256;        Thu, 17 Apr 2014 11:32:50 -0700 (PDT)
Message-ID: <53501E4E.7080103@breisch.org>
Date: Thu, 17 Apr 2014 14:32:46 -0400
From: "Chris J. Breisch" <chris.ml@breisch.org>
User-Agent: Postbox 3.0.9 (Windows/20140128)
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: Cygwin needs a man-db port
References: <5241EF7D.9080309@xs4all.nl> <52433E7A.4070600@xs4all.nl> <524341E5.6080601@xs4all.nl> <5322EA04.3040008@xs4all.nl>
In-Reply-To: <5322EA04.3040008@xs4all.nl>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-IsSubscribed: yes

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

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 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.

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.

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.

What minimal testing I have done has been on both 32-bit and 64-bit 
Cygwin 1.7.29.

-- 
Chris J. Breisch

--
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

