public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: waterlan <waterlan@xs4all.nl>
To: cygwin@cygwin.com
Subject: Re: Cygwin needs a man-db port
Date: Thu, 24 Apr 2014 22:10:00 -0000	[thread overview]
Message-ID: <7ec3dc7966486c2d7f85513f2f122cb4@xs4all.nl> (raw)
In-Reply-To: <ba295ed82bef8a77deee8f3b9345b963@xs4all.nl>

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.

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

  reply	other threads:[~2014-04-24 22:10 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-24 20:29 How does Cygwin handle non-Latin1 man pages? (move to UTF-8?) Erwin Waterlander
2013-09-25 19:59 ` Erwin Waterlander
2013-09-25 20:10   ` Erwin Waterlander
2014-03-14 12:58     ` Cygwin needs a man-db port (was: How does Cygwin handle non-Latin1 man pages? (move to UTF-8?)) Erwin Waterlander
2014-03-14 13:52       ` Cygwin needs a man-db port Chris J. Breisch
2014-03-14 14:38         ` Erwin Waterlander
2014-03-14 15:52           ` Chris J. Breisch
2014-03-14 16:29             ` Erwin Waterlander
2014-03-14 17:05             ` Corinna Vinschen
2014-03-14 19:22               ` Chris J. Breisch
2014-03-16 11:43               ` Chris J. Breisch
2014-04-17 18:32       ` Chris J. Breisch
2014-04-20  6:41         ` Erwin Waterlander
2014-04-21 20:41         ` waterlan
2014-04-22  3:04           ` KIMURA Masaru
2014-04-23 15:18         ` Chris J. Breisch
2014-04-24 18:30           ` waterlan
2014-04-25  0:47             ` Chris J. Breisch
2014-04-24 19:43         ` waterlan
2014-04-24 22:10           ` waterlan [this message]
2014-04-30 16:49             ` waterlan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7ec3dc7966486c2d7f85513f2f122cb4@xs4all.nl \
    --to=waterlan@xs4all.nl \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).