ncurses 5.6 - patch 20070217

+ fixes for $(TICS_LIST) in ncurses/Makefile (report by Miroslav
  Lichvar).
+ modify relinking of shared libraries to apply only when rpath is
  enabled, and add --disable-relink option which can be used to
  disable the feature altogether (reports by Michail Vidiassov,
  Adam J Richter).
+ fix --with-termlib option for wide-character configuration, stripping
  the "w" suffix in one place (report by Miroslav Lichvar).
+ remove "-ldl" from some library lists to reduce dependencies in
  programs (report by Miroslav Lichvar).
+ correct description of --enable-signed-char in configure --help
  (report by Michail Vidiassov).
+ add pattern for GNU/kFreeBSD configuration to CF_XOPEN_SOURCE,
  which matches an earlier change to CF_SHARED_OPTS, from xterm #224
  fixes.
+ remove "${DESTDIR}" from -install_name option used for linking
  shared libraries on Darwin (report by Michail Vidiassov).
This commit is contained in:
Thomas E. Dickey 2007-02-18 01:51:57 +00:00
parent 614ef82f41
commit 0c9774ef66
8 changed files with 1589 additions and 1456 deletions

12
INSTALL
View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: INSTALL,v 1.115 2007/01/13 17:16:34 tom Exp $
-- $Id: INSTALL,v 1.116 2007/02/17 21:53:16 tom Exp $
---------------------------------------------------------------------
How to install Ncurses/Terminfo on your system
---------------------------------------------------------------------
@ -358,6 +358,13 @@ SUMMARY OF CONFIGURE OPTIONS:
rather than the include directory. This makes it simpler to avoid
compile-time conflicts with other versions of curses.h
--disable-relink
If --enable-rpath is given, the generated makefiles normally will
rebuild the libraries during install. Use this option to simply
copy whatever the linked produced.
This option is ignored if --enable-rpath is not given.
--disable-root-environ
Compile with environment restriction, so certain environment variables
are not available when running as root, or via a setuid/setgid
@ -495,6 +502,9 @@ SUMMARY OF CONFIGURE OPTIONS:
environment variable, they do not work with setuid applications since
the LD_LIBRARY_PATH variable would be unset in that situation.
This option does not apply to --with-libtool, since libtool makes
extra assumptions about rpath.
--enable-safe-sprintf
Compile with experimental safe-sprintf code. You may consider using
this if you are building ncurses for a system that has neither

27
NEWS
View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.1084 2007/02/11 01:17:49 tom Exp $
-- $Id: NEWS,v 1.1087 2007/02/17 22:19:25 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -45,6 +45,25 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
20070217
+ fixes for $(TICS_LIST) in ncurses/Makefile (report by Miroslav
Lichvar).
+ modify relinking of shared libraries to apply only when rpath is
enabled, and add --disable-relink option which can be used to
disable the feature altogether (reports by Michail Vidiassov,
Adam J Richter).
+ fix --with-termlib option for wide-character configuration, stripping
the "w" suffix in one place (report by Miroslav Lichvar).
+ remove "-ldl" from some library lists to reduce dependencies in
programs (report by Miroslav Lichvar).
+ correct description of --enable-signed-char in configure --help
(report by Michail Vidiassov).
+ add pattern for GNU/kFreeBSD configuration to CF_XOPEN_SOURCE,
which matches an earlier change to CF_SHARED_OPTS, from xterm #224
fixes.
+ remove "${DESTDIR}" from -install_name option used for linking
shared libraries on Darwin (report by Michail Vidiassov).
20070210
+ add test/inchs.c, test_inch_wide.c, to test win_wchnstr().
+ remove libdl from library list for termlib (report by Miroslav
@ -146,7 +165,7 @@ it is not possible to add this information.
+ modify configure --with-gpm option to allow it to accept a parameter,
i.e., the name of the dynamic GPM library to load via dlopen()
(requested by Bryan Henderson).
+ add configure option --with-valgrind (from vile).
+ add configure option --with-valgrind, changes from vile.
+ modify configure script AC_TRY_RUN and AC_TRY_LINK checks to use
'return' in preference to 'exit()'.
@ -4350,7 +4369,7 @@ it is not possible to add this information.
<bledp@voila.fr>)).
+ change renaming of dft_fgbg.3x to use_default_colors.3ncurses in
man_db.renames, since Debian is not concerned with 14-character
filename limitation (from Debian bug report by Josip Rodin
filename limitation (Debian bug report by Josip Rodin
<joy@cibalia.gkvk.hr>).
+ corrected scoansi terminfo entry by testing with scoterm and console.
+ revert change from 990614 to terminal_interface-curses-forms.ads.m4,
@ -5393,7 +5412,7 @@ it is not possible to add this information.
980321
+ revise configure macro CF_SPEED_TYPE so that termcap.h has speed_t
declared (from Adam J. Richter <adam@yggdrasil.com>)
declared (from Adam J Richter <adam@yggdrasil.com>)
+ remove spurious curs_set() call from leaveok() (J T Conklin).
+ corrected handling leaveok() in doupdate() (patch by Alexander V.
Lukyanov).

27
aclocal.m4 vendored
View File

@ -28,7 +28,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: aclocal.m4,v 1.416 2007/02/03 16:35:13 tom Exp $
dnl $Id: aclocal.m4,v 1.420 2007/02/17 21:50:10 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@ -1774,7 +1774,7 @@ ifelse($1,,,[$1=$LIB_PREFIX])
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_LIB_RULES version: 44 updated: 2007/01/28 11:40:44
dnl CF_LIB_RULES version: 46 updated: 2007/02/17 16:49:32
dnl ------------
dnl Append definitions and rules for the given models to the subdirectory
dnl Makefiles, and the recursion rule for the top-level Makefile. If the
@ -1962,8 +1962,10 @@ do
prefix=$cf_prefix \
suffix=$cf_suffix \
subset=$cf_subset \
TermlibRoot=$TINFO_NAME \
ShlibVer=$cf_cv_shlib_version \
ShlibVerInfix=$cf_cv_shlib_version_infix \
ReLink=${cf_cv_do_relink-no} \
DoLinks=$cf_cv_do_symlinks \
rmSoLocs=$cf_cv_rm_so_locs \
ldconfig="$LDCONFIG" \
@ -3600,7 +3602,20 @@ $1=`echo "$2" | \
-e 's/-[[UD]]$3\(=[[^ ]]*\)\?[$]//g'`
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_SHARED_OPTS version: 42 updated: 2006/12/23 18:04:51
dnl CF_REMOVE_LIB version: 1 updated: 2007/02/17 14:11:52
dnl -------------
dnl Remove the given library from the symbol
dnl
dnl $1 = target (which could be the same as the source variable)
dnl $2 = source (including '$')
dnl $3 = library to remove
define([CF_REMOVE_LIB],
[
# remove $3 library from $2
$1=`echo "$2" | sed -e 's/-l$3[[ ]]//g' -e 's/-l$3[$]//'`
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_SHARED_OPTS version: 43 updated: 2007/02/17 13:35:29
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
@ -3684,7 +3699,7 @@ AC_DEFUN([CF_SHARED_OPTS],
darwin*)
EXTRA_CFLAGS="-no-cpp-precomp"
CC_SHARED_OPTS="-dynamic"
MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${DESTDIR}${libdir}/`basename $[@]` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $[@]'
MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $[@]` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $[@]'
test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi
cf_cv_shlib_version_infix=yes
AC_CACHE_CHECK([if ld -search_paths_first works], cf_cv_ldflags_search_paths_first, [
@ -4816,7 +4831,7 @@ CF_NO_LEAKS_OPTION(valgrind,
[USE_VALGRIND])
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_XOPEN_SOURCE version: 24 updated: 2006/04/02 16:41:09
dnl CF_XOPEN_SOURCE version: 25 updated: 2007/01/29 18:36:38
dnl ---------------
dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
dnl or adapt to the vendor's definitions to get equivalent functionality,
@ -4850,7 +4865,7 @@ hpux*) #(vi
irix[[56]].*) #(vi
CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE"
;;
linux*|gnu*) #(vi
linux*|gnu*|k*bsd*-gnu) #(vi
CF_GNU_SOURCE
;;
mirbsd*) #(vi

2889
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -28,14 +28,14 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: configure.in,v 1.395 2007/02/10 22:47:04 tom Exp $
dnl $Id: configure.in,v 1.402 2007/02/17 22:52:40 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl See http://invisible-island.net/autoconf/ for additional information.
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.13.20020210)
AC_REVISION($Revision: 1.395 $)
AC_REVISION($Revision: 1.402 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@ -354,6 +354,12 @@ AC_ARG_ENABLE(rpath,
[cf_cv_ld_rpath=$enableval],
[cf_cv_ld_rpath=no])
AC_MSG_RESULT($cf_cv_ld_rpath)
AC_MSG_CHECKING(if shared libraries should be relinked during install)
AC_ARG_ENABLE(rpath,
[ --disable-relink relink shared libraries during install],
[cf_cv_do_relink=$enableval],
[cf_cv_do_relink=yes])
AC_MSG_RESULT($cf_cv_do_relink)
;;
esac
@ -820,7 +826,7 @@ else
fi
AC_MSG_CHECKING(if you want to use signed Boolean array in term.h)
AC_ARG_ENABLE(signed-char,
[ --enable-signed-char compile with SIGWINCH handler],
[ --enable-signed-char compile using signed Boolean's in term.h],
[with_signed_char=$enableval],
[with_signed_char=no])
AC_MSG_RESULT($with_signed_char)
@ -1463,11 +1469,14 @@ AC_MSG_RESULT($CXX_LIB_SUFFIX)
AC_SUBST(CXX_LIB_SUFFIX)
fi
# do not want -ldl in build except as needed for -lncurses dependency
CF_REMOVE_LIB(LIBS,$LIBS,dl)
### Set up low-level terminfo dependencies for makefiles.
# TICS_LIST and TINFO_LIST are needed to build the libtic.so and libterm.so
TICS_LIST="$SHLIB_LIST"
TINFO_LIST=`echo "$SHLIB_LIST" | sed -e 's/-ldl//'`
# TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but
# do not need libdl
TICS_LIST=
CF_REMOVE_LIB(TINFO_LIST,$SHLIB_LIST,dl)
if test "$with_ticlib" != no ; then
@ -1512,10 +1521,15 @@ if test "$with_termlib" != no ; then
else
TEST_ARGS="-l${TINFO_ARG_SUFFIX}"
TEST_ARG2="-l${TINFO_ARG_SUFFIX}"
TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
fi
else
# the next lines are needed for linking libtic over libncurses
TINFO_NAME=${LIB_NAME}${DFT_ARG_SUFFIX}
TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
fi
AC_SUBST(TINFO_ARG_SUFFIX)
@ -1523,6 +1537,8 @@ AC_SUBST(TINFO_DEP_SUFFIX)
AC_SUBST(TINFO_LIB_SUFFIX)
AC_SUBST(TINFO_ARGS)
CF_REMOVE_LIB(TICS_LIST,$TICS_LIST,dl)
# needed for Ada95
TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'`
AC_SUBST(TINFO_ARGS2)
@ -1543,6 +1559,7 @@ fi
fi
AC_SUBST(WITH_OVERWRITE)
AC_SUBST(TICS_LIST)
AC_SUBST(TINFO_LIST)
AC_SUBST(SHLIB_LIST)
@ -1614,6 +1631,7 @@ WITH_ECHO="$with_echo"
WITH_OVERWRITE="$with_overwrite"
cf_LIST_MODELS="$cf_list_models"
cf_cv_abi_version="$cf_cv_abi_version"
cf_cv_do_relink="$cf_cv_do_relink"
cf_cv_do_symlinks="$cf_cv_do_symlinks"
cf_cv_enable_lp64="$cf_cv_enable_lp64"
cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.577 2007/02/10 16:33:08 tom Exp $
# $Id: dist.mk,v 1.578 2007/02/17 17:24:53 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@ -37,7 +37,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 5
NCURSES_MINOR = 6
NCURSES_PATCH = 20070210
NCURSES_PATCH = 20070217
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -1,4 +1,4 @@
# $Id: mk-1st.awk,v 1.71 2007/01/13 21:33:25 tom Exp $
# $Id: mk-1st.awk,v 1.73 2007/02/17 21:31:09 tom Exp $
##############################################################################
# Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. #
# #
@ -40,6 +40,8 @@
# subset ("none", "base", "base+ext_funcs" or "termlib", etc.)
# ShlibVer ("rel", "abi" or "auto", to augment DoLinks variable)
# ShlibVerInfix ("yes" or "no", determines location of version #)
# TermlibRoot ("tinfo" or other root for libterm.so)
# ReLink ("yes", or "no", flag to rebuild shared libs on install)
# DoLinks ("yes", "reverse" or "no", flag to add symbolic links)
# rmSoLocs ("yes" or "no", flag to add extra clean target)
# ldconfig (path for this tool, if used)
@ -161,7 +163,7 @@ function sharedlinks(directory) {
printf ")\n"
}
}
function shlib_rule(directory) {
function shlib_build(directory) {
if ( ShlibVer == "cygdll" ) {
dst_libs = sprintf("%s/$(SHARED_LIB) %s/$(IMPORT_LIB)", directory, directory);
} else {
@ -169,11 +171,14 @@ function shlib_rule(directory) {
}
printf "%s : \\\n", dst_libs
printf "\t\t%s \\\n", directory
if (subset ~ /^base/ ) {
if (subset ~ /^base/ || subset == "ticlib" ) {
save_suffix = suffix
sub(/^[^.]\./,".",suffix)
if (directory != "../lib") {
printf "\t\t%s/%s \\\n", "../lib", end_name_of("tinfo");
printf "\t\t%s/%s \\\n", "../lib", end_name_of(TermlibRoot);
}
printf "\t\t%s/%s \\\n", directory, end_name_of("tinfo");
printf "\t\t%s/%s \\\n", directory, end_name_of(TermlibRoot);
suffix = save_suffix
}
printf "\t\t$(%s_OBJS)\n", OBJS
printf "\t@echo linking $@\n"
@ -187,6 +192,32 @@ function shlib_rule(directory) {
}
sharedlinks(directory)
}
function shlib_install(directory) {
if ( ShlibVer == "cygdll" ) {
src_lib1 = sprintf("%s/$(SHARED_LIB)", "../lib");
src_lib2 = sprintf("%s/$(IMPORT_LIB)", "../lib");
src_libs = sprintf("%s %s", src_lib1, src_lib2);
dst_lib1 = sprintf("%s/$(SHARED_LIB)", directory);
dst_lib2 = sprintf("%s/$(IMPORT_LIB)", directory);
dst_libs = sprintf("%s %s", dst_lib1, dst_lib2);
} else {
src_lib1 = sprintf("../lib/%s", end_name);
src_lib2 = ""
src_libs = src_lib1
dst_lib1 = sprintf("%s/%s", directory, end_name);
dst_libs = dst_lib1;
}
printf "%s : \\\n", dst_libs
printf "\t\t%s \\\n", directory
printf "\t\t%s\n", src_libs
printf "\t@echo installing $@\n"
print "\t-@rm -f %s", dst_libs;
printf "\t$(INSTALL_LIB) %s %s\n", src_lib1, dst_lib1;
if ( src_lib2 != "" ) {
printf "\t$(INSTALL_LIB) %s %s\n", src_lib2, dst_lib2;
}
sharedlinks(directory)
}
function install_dll(directory,filename) {
src_name = sprintf("../lib/%s", filename);
dst_name = sprintf("$(DESTDIR)%s/%s", directory, filename);
@ -221,6 +252,8 @@ BEGIN {
printf "# subset: %s\n", subset
printf "# ShlibVer: %s\n", ShlibVer
printf "# ShlibVerInfix: %s\n", ShlibVerInfix
printf "# TermlibRoot: %s\n", TermlibRoot
printf "# ReLink: %s\n", ReLink
printf "# DoLinks: %s\n", DoLinks
printf "# rmSoLocs: %s\n", rmSoLocs
printf "# ldconfig: %s\n", ldconfig
@ -283,7 +316,7 @@ END {
imp_name = imp_name_of(name);
end_name = end_name_of(name);
shlib_rule("../lib")
shlib_build("../lib")
print ""
print "install \\"
@ -301,7 +334,11 @@ END {
lib_dir = "$(DESTDIR)$(libdir)";
printf "install.%s :: %s/%s\n", name, lib_dir, end_name
print ""
shlib_rule(lib_dir)
if ( ReLink == "yes" ) {
shlib_build(lib_dir)
} else {
shlib_install(lib_dir)
}
}
if ( overwrite == "yes" && name == "ncurses" )

View File

@ -1,6 +1,6 @@
# $Id: Makefile.in,v 1.101 2006/10/14 19:08:11 tom Exp $
# $Id: Makefile.in,v 1.102 2007/02/17 23:13:24 tom Exp $
##############################################################################
# Copyright (c) 1998-2005,2006 Free Software Foundation, Inc. #
# Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. #
# #
# Permission is hereby granted, free of charge, to any person obtaining a #
# copy of this software and associated documentation files (the "Software"), #
@ -118,6 +118,7 @@ LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@
SHLIB_DIRS = -L../lib
SHLIB_LIST = $(SHLIB_DIRS) @SHLIB_LIST@
TINFO_LIST = $(SHLIB_DIRS) @TINFO_LIST@
TICS_LIST = $(SHLIB_DIRS) @TICS_LIST@
MK_SHARED_LIB = @MK_SHARED_LIB@