tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: pkgsrc/devel/avltree



On Fri, Feb 17, 2012 at 6:03 AM, Hans Rosenfeld
<rosenfeld%grumpf.hope-2000.org@localhost> wrote:
> On Thu, Feb 16, 2012 at 09:17:13PM +0100, Joerg Sonnenberger wrote:
>> On Thu, Feb 16, 2012 at 08:13:06PM +0100, Hans Rosenfeld wrote:
>> > On Thu, Feb 16, 2012 at 07:26:18PM +0100, Joerg Sonnenberger wrote:
>> > > On Thu, Feb 16, 2012 at 06:10:43PM +0000, Hans Rosenfeld wrote:
>> > > > Module Name:    pkgsrc
>> > > > Committed By:   hans
>> > > > Date:           Thu Feb 16 18:10:43 UTC 2012
>> > > >
>> > > > Modified Files:
>> > > >         pkgsrc/devel/avltree: Makefile
>> > > >
>> > > > Log Message:
>> > > > Uses nroff and USE_BSD_MAKEFILE.
>> > >
>> > > I have a strong dislike for adding nroff dependencies. IMO we should
>> > > default to not installing cat pages on all platforms.
>> >
>> > Seems reasonable. Does that mean that every package installing cat pages
>> > needs to be touched? The building of cat pages could probably be stopped
>> > with a dummy nroff.
>>
>> There are three parts:
>>
>> (1) Stop with the nroff dependency in things using bootstrap-mk-files
>> (2) Remove catinstall from MANINSTALL. This is similar to the current
>> issue on NetBSD.
>
> Setting MANINSTALL?=maninstall in mk/defaults/mk.conf and MKCATPAGES=no
> in pkgtools/bootstrap-mk-files/files/bsd.own.mk seems to work for the
> few packages that I checked.
>
> Also, shouldn't we add nroff to USE_TOOLS automatically when
> MANINSTALL=catinstall and MKCATPAGES=yes?
>
>> It shouldn't be too hard to port NetBSD's man subsystem to pkgsrc for
>> people wanting sane tools e.g. on Solaris :)
>
> You mean this mdocml thing?
> http://www.headcrashers.org/pkgsrc/reports/current/OpenIndiana/oi151a/i386/20120208.1045/mdocml-1.12.0nb1/build.log
>
> Solaris nroff isn't able to render mandoc manpages, so I found the
> catpages pre-rendered with GNU nroff quite useful. Except for the fact
> that most of them were installed with the wrong suffix, so that man
> didn't find them.

My Solaris solutions include manually doing something like this:

cd /usr/pkg/man/cat1
for name in `ls *.0`; do name2=`basename $name .0`.1; cp $name $name2; done

which of course only handles the catpages, but then I also change the
definition of man to:

man() {
        case "$1" in
          [0-9] | [0-9][a-zA-Z])
                TROFF=/usr/pkg/bin/groff TCAT=/bin/cat \
                  /bin/man -T/usr/pkg/share/groff/1.20.1/tmac/mandoc.tmac \
                  -a -s "$@"
                ;;
          *)
                TROFF=/usr/pkg/bin/groff TCAT=/bin/cat \
                  /bin/man -T/usr/pkg/share/groff/1.20.1/tmac/mandoc.tmac \
                  -a "$@"
                ;;
        esac
}

and of course add /usr/pkg/man to the MANPATH.  This seems to mostly
work (there seem to be a very few exceptions.)

I'd be very happy to have a better solution, but it can't break all
the native man pages, and I really don't want two different 'man'
commands for pkgsrc vs. native man pages.

 - Tim


Home | Main Index | Thread Index | Old Index