pkgsrc/devel/ncurses/patches/patch-ae
jlam c5d40ff7ec 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.
2000-01-15 18:39:28 +00:00

64 lines
2.6 KiB
Text

$NetBSD: patch-ae,v 1.2 2000/01/15 18:39:30 jlam Exp $
--- mk-1st.awk.orig Sat May 9 17:54:02 1998
+++ mk-1st.awk Sat Jan 15 11:24:46 2000
@@ -208,10 +208,16 @@
}
else
{
+ if ( $2 == "c++" ) {
+ cplusplus="--cplusplus"
+ compile="CXX"
+ } else {
+ cplusplus=""
+ compile="CC"
+ }
end_name = lib_name;
printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
- printf "\t$(AR) $(AR_OPTS) $@ $?\n"
- printf "\t$(RANLIB) $@\n"
+ printf "\tcd ../lib && $(LIBTOOL) %s $(%s) -o %s $(%s_OBJS:.o=.lo) -rpath $(INSTALL_PREFIX)$(libdir) -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)\n", cplusplus, compile, lib_name, OBJS
if ( target == "vxworks" )
{
printf "\t$(LD) $(LD_OPTS) $? -o $(@:.a=.o)\n"
@@ -220,15 +226,8 @@
print "install \\"
print "install.libs \\"
printf "install.%s :: $(INSTALL_PREFIX)$(libdir) ../lib/%s\n", name, lib_name
- printf "\t@echo installing ../lib/%s as $(INSTALL_PREFIX)$(libdir)/%s \n", lib_name, lib_name
- printf "\t$(INSTALL_DATA) ../lib/%s $(INSTALL_PREFIX)$(libdir)/%s \n", lib_name, lib_name
- if ( overwrite == "yes" && lib_name == "libncurses.a" )
- {
- printf "\t@echo linking libcurses.a to libncurses.a \n"
- printf "\t-@rm -f $(INSTALL_PREFIX)$(libdir)/libcurses.a \n"
- printf "\t(cd $(INSTALL_PREFIX)$(libdir) && $(LN_S) libncurses.a libcurses.a)\n"
- }
- printf "\t$(RANLIB) $(INSTALL_PREFIX)$(libdir)/%s\n", lib_name
+ printf "\t@echo installing ../lib/%s in $(INSTALL_PREFIX)$(libdir)\n", lib_name
+ printf "\tcd ../lib && $(LIBTOOL) %s $(INSTALL_DATA) %s $(INSTALL_PREFIX)$(libdir)\n", cplusplus, lib_name
if ( target == "vxworks" )
{
printf "\t@echo installing ../lib/lib%s.o as $(INSTALL_PREFIX)$(libdir)/lib%s.o\n", name, name
@@ -239,12 +238,7 @@
print "uninstall.libs \\"
printf "uninstall.%s ::\n", name
printf "\t@echo uninstalling $(INSTALL_PREFIX)$(libdir)/%s \n", lib_name
- printf "\t-@rm -f $(INSTALL_PREFIX)$(libdir)/%s\n", lib_name
- if ( overwrite == "yes" && lib_name == "libncurses.a" )
- {
- printf "\t@echo linking libcurses.a to libncurses.a \n"
- printf "\t-@rm -f $(INSTALL_PREFIX)$(libdir)/libcurses.a \n"
- }
+ printf "\t-@$(LIBTOOL) rm -f $(INSTALL_PREFIX)$(libdir)/%s\n", lib_name
if ( target == "vxworks" )
{
printf "\t@echo uninstalling $(INSTALL_PREFIX)$(libdir)/lib%s.o\n", name
@@ -253,7 +247,7 @@
}
print ""
print "clean ::"
- printf "\t-rm -f ../lib/%s\n", lib_name
+ printf "\t-cd ../lib && $(LIBTOOL) rm -f %s\n", lib_name
print ""
print "mostlyclean::"
printf "\t-rm -f $(%s_OBJS)\n", OBJS