summaryrefslogtreecommitdiff
path: root/devel/ncurses/patches/patch-aa
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2000-01-15 18:39:28 +0000
committerjlam <jlam@pkgsrc.org>2000-01-15 18:39:28 +0000
commitc5d40ff7ecb7e80efb9e81623cf30048c1add72f (patch)
tree41600964362e85be56e2ca29968fbcfac13b7ebb /devel/ncurses/patches/patch-aa
parent47b4471c9138f5f962c29555f412955e14df5532 (diff)
downloadpkgsrc-c5d40ff7ecb7e80efb9e81623cf30048c1add72f.tar.gz
Update ncurses to 5.0. From the release notes:
We decided to release ncurses as a new whole number release (5.0) because it incorporates several interface changes, including some that would invalidate existing shared libraries. These are the highlights from the change-log since ncurses 4.2 release. Interface changes: * The principal source of changes to the interface comes from the release of X/Open Curses in 1997. Earlier versions of ncurses (4.0 and before) were based on a draft version of the specification. The release version adds parameters to some functions to support the evolving internationalization of curses. These summarize the impact: + modified several prototypes to correspond with 1997 version of X/Open Curses (affects ABI since developers have used attr_get). + corrected prototypes for slk_* functions, using chtype rather than attr_t. + the slk_attr_{set,off,on} functions need an additional void* parameter according to XSI. + correct macros for wattr_set, wattr_get, separate wattrset macro from these to preserve behavior that allows attributes to be combined with color pair numbers. + reviewed/updated curses.h, term.h against X/Open Curses Issue 4 Version 2. This includes making some parameters NCURSES_CONST rather than const, e.g., in termcap.h. + reviewed/corrected macros in curses.h as per XSI document. + add set_a_attributes and set_pglen_inch to terminfo structure, as per XSI and Solaris 2.5. * The newest version of the X/Open Curses is implemented on Solaris and other vendor's systems. It adds new features to the terminfo descriptions: + implement tparm %l format. + implement tparm printf-style width and precision for %s, %d, %x, %o as per XSI. * We made additional changes to reduce impact by future interface changes: + rename key_names[] array to _nc_key_names since it is not part of the curses interface. + move macro winch to a function, to hide details of struct ldat * modify configure script to embed ABI in shared libraries for HP-UX 10.x (detailed request by Tim Mooney). * modify configuration of shared libraries on Digital Unix so that versioning is embedded in the library, rather than implied by links (patch by Tim Mooney). New features: * enable sigwinch handler by default. * turn on hashmap scrolling code by default * improved support for termcap applications + modify tput to accept termcap names as an alternative to terminfo names. + provide support for termcap PC variable by copying it from terminfo data and using it as the padding character in tputs. + provide support for termcap ospeed variable by copying it from the internal cur_term member, and using ospeed as the baudrate reference for the delay_output and tputs functions. + change name-comparisons in lib_termcap to compare no more than 2 characters. + add configure option --enable-tcap-names, which essentially allows users to define new capabilities as in termcap. * add mouse support to ncurses menus. * add mouse and dll support for OS/2 EMX * modify terminfo parsing to accept octal and hexadecimal constants * add configure option --enable-no-padding, to allow environment variable $NCURSES_NO_PADDING to eliminate non-mandatory padding, thereby making terminal emulators (e.g., for vt100) a little more efficient. * modify lib_color.c to eliminate dependency on orig_colors and orig_pair, since SVr4 curses does not require these either, but uses them when they are available. * add -f option to infocmp and tic, which formats the terminfo if/then/else/endif so that they are readable (with newlines and tabs). * modify tic to compile into %'char' form in preference to %{number}, since that is a little more efficient. Major bug fixes: * modify lib_tstp.c to block SIGTTOU when handling SIGTSTP, fixes a problem where ncurses applications which were run via a shell script would hang when given a ^Z. Also, check if the terminal's process group is consistent, i.e., a shell has not taken ownership of it, before deciding to save the current terminal settings in the SIGTSTP handler. * suppress sc/rc capabilities from terminal description if they appear in smcup/rmcup. This affects only scrolling optimization, to fix a problem reported by several people with xterm's alternate screen, though the problem is more general. * modify relative_move and tputs to avoid an interaction with the BSD-style padding. The relative_move function could produce a string to replace on the screen which began with a numeric character, which was then interpreted by tputs as padding. * modify setupterm so that cancelled strings are treated the same as absent strings, cancelled and absent booleans false (does not affect tic, infocmp). * modify lib_vidattr.c to allow for terminal types (e.g., xterm-color) which may reset all attributes in the 'op' capability, so that colors are set before turning on bold and other attributes, but still after turning attributes off. * use 'access()' to check if ncurses library should be permitted to open or modify files with fopen/open/link/unlink/remove calls, in case the calling application is running in setuid mode. * correction to doupdate, for case where terminal does not support insert/delete character. The logic did not check that there was a difference in alignment of changes to old/new screens before repainting the whole non-blank portion of the line. Modified to fall through into logic that reduces by the portion which does not differ.
Diffstat (limited to 'devel/ncurses/patches/patch-aa')
-rw-r--r--devel/ncurses/patches/patch-aa120
1 files changed, 74 insertions, 46 deletions
diff --git a/devel/ncurses/patches/patch-aa b/devel/ncurses/patches/patch-aa
index df661cd2ba5..12fc6df9e1b 100644
--- a/devel/ncurses/patches/patch-aa
+++ b/devel/ncurses/patches/patch-aa
@@ -1,47 +1,75 @@
-$NetBSD: patch-aa,v 1.7 1999/07/06 07:51:04 jlam Exp $
+$NetBSD: patch-aa,v 1.8 2000/01/15 18:39:29 jlam Exp $
---- progs/Makefile.in.orig Wed Feb 11 07:14:03 1998
-+++ progs/Makefile.in Tue Jun 29 08:59:34 1999
-@@ -84,7 +84,7 @@
- CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
-
- LD = @LD@
--LINK = $(CC)
-+LINK = $(LIBTOOL) --mode=link $(CC)
- LDFLAGS = @EXTRA_LDFLAGS@ \
- @PROG_ARGS@ @LDFLAGS@ @LD_MODEL@ @LIBS@ @EXTRA_LIBS@
-
-@@ -102,7 +102,7 @@
- AUTO_SRC = \
- termsort.c
-
--PROGS = tic$x toe$x infocmp$x clear$x tput$x tset$x
-+PROGS = tic$x toe$x infocmp$x
-
- TESTPROGS = mvcur$x tctest$x hardscroll$x hashmap$x
-
-@@ -122,21 +122,15 @@
- uninstall.libs:
-
- install.progs: $(PROGS) $(INSTALL_PREFIX)$(bindir)
-- $(INSTALL_PROGRAM) tic$x $(INSTALL_PREFIX)$(bindir)/tic$x
-- $(INSTALL_PROGRAM) toe$x $(INSTALL_PREFIX)$(bindir)/toe$x
-- $(INSTALL_PROGRAM) infocmp$x $(INSTALL_PREFIX)$(bindir)/infocmp$x
-- $(INSTALL_PROGRAM) clear$x $(INSTALL_PREFIX)$(bindir)/clear$x
-- $(INSTALL_PROGRAM) tput$x $(INSTALL_PREFIX)$(bindir)/tput$x
-- $(INSTALL_PROGRAM) tset$x $(INSTALL_PREFIX)$(bindir)/tset$x
-+ $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) tic$x $(INSTALL_PREFIX)$(bindir)/tic$x
-+ $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) toe$x $(INSTALL_PREFIX)$(bindir)/toe$x
-+ $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) infocmp$x $(INSTALL_PREFIX)$(bindir)/infocmp$x
- @echo "linking captoinfo to tic"
- -@rm -f $(INSTALL_PREFIX)$(bindir)/captoinfo$x
- (cd $(INSTALL_PREFIX)$(bindir) && $(LN_S) tic$x captoinfo$x)
- @echo "linking infotocap to tic"
- -@rm -f $(INSTALL_PREFIX)$(bindir)/infotocap$x
- (cd $(INSTALL_PREFIX)$(bindir) && $(LN_S) tic$x infotocap$x)
-- @echo "linking reset to tset"
-- -@rm -f $(INSTALL_PREFIX)$(bindir)/reset$x
-- (cd $(INSTALL_PREFIX)$(bindir) && $(LN_S) tset$x reset$x)
-
- uninstall.progs:
- -@rm -f $(INSTALL_PREFIX)$(bindir)/tic$x
+--- c++/Makefile.in.orig Sat Oct 23 16:13:02 1999
++++ c++/Makefile.in Sat Jan 15 11:24:46 2000
+@@ -74,13 +74,13 @@
+ REL_VERSION = @cf_cv_rel_version@
+ ABI_VERSION = @cf_cv_abi_version@
+
+-LINK = @LINK_PROGS@ $(CXX) @CXXLDFLAGS@
++LINK = @LINK_PROGS@ --cplusplus $(CXX) @CXXLDFLAGS@
+
+ LIBROOT = ncurses++
+-LIBNAME = @LIB_PREFIX@$(LIBROOT).a
++LIBNAME = @LIB_PREFIX@$(LIBROOT).la
+
+-LDFLAGS = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) \
+- -l$(LIBROOT) \
++LDFLAGS = @EXTRA_LDFLAGS@ -L$(libdir) \
++ $(LIBNAME) \
+ @TEST_ARGS@ @LDFLAGS@ \
+ @LD_MODEL@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
+
+@@ -94,7 +94,7 @@
+ AUTO_SRC = \
+ etip.h
+
+-all: $(AUTO_SRC) ../lib/$(LIBNAME) demo$x
++all: $(AUTO_SRC) $(LIBNAME) demo$x
+
+ sources : $(AUTO_SRC)
+
+@@ -111,9 +111,8 @@
+ $(MODEL)/cursesapp.o \
+ $(MODEL)/cursesmain.o
+
+-../lib/$(LIBNAME) : $(LIB_OBJS)
+- $(AR) $(AR_OPTS) $@ $?
+- $(RANLIB) $@
++$(LIBNAME) : $(LIB_OBJS)
++ cd ../lib && $(LINK) -o lib$(LIBROOT).la $(LIB_OBJS:.o=.lo) -rpath $(INSTALL_PREFIX)$(libdir) -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)
+
+ OBJS_DEMO = $(MODEL)/demo.o
+
+@@ -121,7 +120,7 @@
+ $(cursesf_h) $(cursesm_h) $(cursesapp_h)
+
+ demo$x: $(OBJS_DEMO) \
+- ../lib/$(LIBNAME) \
++ $(LIBNAME) \
+ @TEST_DEPS@
+ @ECHO_LINK@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT)
+
+@@ -133,18 +132,18 @@
+ $(srcdir)/../mkinstalldirs $@
+
+ install \
+-install.libs:: ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)
+- $(INSTALL) ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
++install.libs:: $(LIBNAME) $(INSTALL_PREFIX)$(libdir)
++ $(LIBTOOL) $(INSTALL_DATA) $(LIBNAME) $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+
+ uninstall \
+ uninstall.libs::
+- -rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
++ -$(LIBTOOL) rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+
+ mostlyclean ::
+ -rm -f core tags TAGS *~ *.ln *.atac trace
+
+ clean :: mostlyclean
+- -rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(OBJS_DEMO)
++ -rm -f demo$x $(AUTO_SRC) $(LIBNAME) $(LIB_OBJS) $(OBJS_DEMO)
+
+ distclean :: clean
+ -rm -f Makefile