On Thu, Nov 22, 2018 at 07:38:13AM -0800, John Nemeth wrote:
> } I think there are enough ways to specify it doesn't matter which curses
> } library is used. having ncurses/buildink3.mk possibly mean netbsd curses
> } is confusing. can we revert that and change any package that doesn't
> } care about curses library?
>
> This type of stanza is in a number of buildlink3.mk files
> (i.e. look at databases/openldap-client/buildlink3.mk). It is
> completely normal for buildlink3.mk to make the decision whether
> to use the builtin version of something or to use the pkgsrc version.
openldap-client's bl3.mk is not doing that. grep shows that only four
package bl3 files assign USE_BUILTIN.* and... ncurses is not among
them. I think you (both of you) mean builtin.mk.
But regardless, though making choices in builtin.mk is normal, it's
not desirable when it creates spurious complexity.
There's already some logic in the ncurses builtin.mk that allows
packages to specify what (n)curses features are really required. This
really belongs in mk/curses.bl3.mk: it's about choosing which curses
library to use, not about versions of ncurses. It should be moved
there and renamed.
All the explicit uses of ncurses bl3 that actually admit other curses
implementations should be fixed accordingly.
(at least assuming someone wants to make changes; otherwise, it's not
really that badly broken...)