pkgsrc-Bugs archive

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

Re: pkg/50040: building pkgtools/pkgdepgraph fails on Solaris 11.2



The following reply was made to PR pkg/50040; it has been noted by GNATS.

From: David Holland <dholland-pbugs%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: pkg/50040: building pkgtools/pkgdepgraph fails on Solaris 11.2
Date: Fri, 10 Jul 2015 16:59:33 +0000

 On Fri, Jul 10, 2015 at 07:30:01AM +0000, J?rn Clausen wrote:
  >  >   .if ${OPSYS} == "SunOS" || ${OPSYS} == "AIX"
  >  >           # the pre-generated man-pages are 'mandoc';  these OS need 'man'
  >  >           nroff -man ${WRKSRC}/pkgdepgraph.1>  ${WRKSRC}/pkgdepgraph.0
  >  >   .endif
  >  >
  >  >   I suspect adding a matching USE_TOOLS+=nroff will make it work. Or
  >  >   dumping this. (Or making it match only solaris<=10, or something like
  >  >   that.)
  >  
  >  I removed the two occurrences of '${OPSYS} == "SunOS"' and the package 
  >  now builds for me. And "man pkgdepgraph" shows a readable man-page.
  >  
  >  >   It is bizarre that any roff shipped in the last 35+ years wouldn't
  >  >   understand -man, so I expect the pkgsrc environment is breaking it.
  >  
  >  Maybe, in a way...
  >  
  >  There is /usr/share/lib/tmac/an which seems to be found by Solaris' 
  >  "/usr/bin/nroff" (which is probably the native SysV thing), and there is 
  >  /usr/share/groff/1.19.2/tmac/an-old.tmac, which seems to be used by the 
  >  preinstalled groff.
  >  
  >  As I wrote earlier, the toolwrapper decides to use /usr/bin/gnroff as 
  >  nroff and so ends up using groff.
  >  
  >  OTOH, "/usr/bin/nroff -man files/pkgdepgraph.1" does not result in a 
  >  formatted man-page, just a block of aligned text.
 
 oh, that would be because it's an mdoc page. So I think I understand
 what the deal is/was:
    - the man page didn't work on solaris back in 2004
    - along with -r1.15 of the Makefile, we started shipping a
      preformatted copy of the man page to work around this;
    - but the intended logic in -r1.15 is inverted, presumably due to
      brainfart, so instead of regenerating the man page on platforms
      where that works, it does it on platforms where it doesn't work.
 
 So all of that logic should just be deleted and then there shouldn't
 be any further problem.
 
 However, I don't understand why -man doesn't work; the USE_TOOLS I
 thought was missing is actually there. I guess it's picking the
 preinstalled groff but the preinstalled groff just doesn't work? If
 there's /usr/share/groff/1.19.2/tmac/an-old.tmac but no
 /usr/share/groff/1.19.2/tmac/an.tmac, it would presumably explain the
 problem, especially if the preinstalled groff also rejects -man
 outside of pkgsrc.
 
 This is something that should probably be worked around in the
 platform tools logic; although perhaps if gnroff -mandoc works (which
 it might) it's not important enough to worry about.
 
  >  >   charming... can you check config.log?
  >  
  >  I'll open a separate PR...
 
 Thanks...
 
 -- 
 David A. Holland
 dholland%netbsd.org@localhost
 


Home | Main Index | Thread Index | Old Index