Commit graph

8 commits

Author SHA1 Message Date
roy
1537427543 Move the logic for testing if system curses supports the needed functions
from devel/ncurses to the mk infrastructure.

FAKE_NCURSES=yes
Provides the system curses as ncurses.h and libncurses.

USE_CURSES=wide
Links to system curses if they provide wide support, otherwise ncursesw.
wide-curses in the package options also triggers this.
2014-03-09 10:15:32 +00:00
obache
6cf132141b Use find-headers instead of find-files to detect builtin header files. 2013-11-23 09:10:14 +00:00
obache
9c745e8d0b tell location of builtin curses.h for Haiku. 2013-04-21 07:53:14 +00:00
jlam
496391a1f0 + Define BUILTIN_LIBNAME.* unconditionally so that their values can
always be used in other builtin.mk files.

+ In the USE_BUILTIN.* == "yes" case, set BUILDLINK_LIBNAME.* to the
  corresponding BUILTIN_LIBNAME.* value so that BUILDLINK_LIBNAME.*
  can always be used in other buildlink3.mk files.
2008-02-27 15:26:34 +00:00
jlam
70c7f36d99 Define BUILTIN_LIBNAME.* outside of the CHECK_BUILTIN.*-protected
section to be the name of the built-in library if USE_BUILTIN.* is
"yes".  These variables can be used in other builtin.mk files.
2008-02-27 06:14:23 +00:00
jlam
f686df4e6c + The termlib.buildlink3.mk file is meant to be included by packages
that need basic termlib functionality, i.e. tgetent(), tgoto(),
  tputs(), etc.  Together with the termlib.builtin.mk file, they will
  use either a built-in termcap library, a built-in X/Open "enhanced"
  curses library, or ncurses to provide these functions.

+ Add BUILDLINK_LIBNAME.* definitions to the various curses buildlink3.mk
  and builtin.mk files that give the "base" library name of the curses
  library, e.g. curses, ncurses, etc.  These are used by the termlib
  files to set BUILDLINK_LIBNAME.termlib.
2008-02-27 04:47:02 +00:00
jlam
8dbadc06ac Allow preferring a pkgsrc "curses" implementation for all packages
that include curses.buildlink3.mk.  Generally, the rule is not to set
CURSES_DEFAULT unless it's to set it to "ncurses" or "pdcurses".

# Example mk.conf settings and their results.

# Use the system curses.
PREFER_NATIVE=	yes		# default value
CURSES_DEFAULT=	curses		# default value

# Use system "ncurses" if it's available, otherwise use devel/ncurses
# from pkgsrc.
#
PREFER_NATIVE=	yes		# default value
CURSES_DEFAULT=	ncurses

# Use devel/ncurses from pkgsrc.
PREFER_PKGSRC=	yes

# Use devel/pdcurses from pkgsrc.
PREFER_PKGSRC=	yes
CURSES_DEFAULT=	pdcurses

# This causes a package build failure because there is no pkgsrc
# curses.
#
PREFER_PKGSRC=	yes
CURSES_DEFAULT=	curses
2008-02-27 02:26:07 +00:00
jlam
6c632be065 + Introduce a way for a user to set the default curses implementation
used by packages that need curses.  From curses.buildlink3.mk:

  CURSES_DEFAULT
	This value represents the type of curses we wish to use on the
	system.  Setting this to "curses" means that the system curses
	implementation is fine.

	Possible: curses, ncurses, pdcurses

+ Move all code to detect a built-in version of curses into a
  curses.builtin.mk file.

+ Add code to {n,pd}curses/buildlink3.mk so make the headers and
  libraries usable as <curses.h> and -lcurses if _PKG_USE_CURSES is
  defined.  _PKG_USE_CURSES is only defined by curses.buildlink3.mk.

+ Improve the detection of native ncurses in ncurses/builtin.mk and
  allow headers and libraries to be usable as <ncurses.h> and -lncurses.
2008-02-25 04:19:34 +00:00