]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - INSTALL
ncurses 5.9 - patch 20110521
[ncurses.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 4da14d491435052da4db9d7cf9502e45c1d62f78..d4d1e881449eab711faa2a632493f52155723856 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
 -------------------------------------------------------------------------------
--- Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.               --
+-- Copyright (c) 1998-2010,2011 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             --
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: INSTALL,v 1.144 2010/05/15 22:21:58 tom Exp $
+-- $Id: INSTALL,v 1.156 2011/05/07 19:39:37 tom Exp $
 ---------------------------------------------------------------------
              How to install Ncurses/Terminfo on your system
 ---------------------------------------------------------------------
@@ -395,6 +395,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        application.  These are (for example $TERMINFO) those that allow the
        search path for the terminfo or termcap entry to be customized.
 
+    --disable-rpath-hack
+       Normally the configure script helps link libraries found in unusual
+       places by adding an rpath option to the link command.  If you are
+       building packages, this feature may be redundant.  Use this option
+       to suppress the feature.
+
     --disable-scroll-hints
        Compile without scroll-hints code.  This option is ignored when
        hashmap scrolling is configured, which is the default.
@@ -427,7 +433,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        changes several data references to functions to work around this
        problem.
 
-       NOTE:  With ncurses 5.1, this may not be necessary, since we are
+       NOTE: With ncurses 5.1, this may not be necessary, since we are
        told that some linkers interpret uninitialized global data as a
        different type of reference which behaves as described above.  We have
        explicitly initialized all of the global data to work around the
@@ -456,7 +462,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        warning.  There will still be warnings due to subtle inconsistencies
        in the interface, but at a lower level.
 
-       NOTE:  configuring ncurses with this option may detract from the
+       NOTE: configuring ncurses with this option may detract from the
        portability of your applications by encouraging you to use const in
        places where the XSI curses interface would not allow them.  Similar
        issues arise when porting to SVr4 curses, which uses const in even
@@ -477,7 +483,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        encoded.  This applies only to the wide-character (--enable-widec)
        configuration.
 
-       NOTE:  using this option will make libraries which are not binary-
+       NOTE: using this option will make libraries which are not binary-
        compatible with libncursesw 5.4.  None of the interfaces change, but
        applications which have an array of cchar_t's must be recompiled.
 
@@ -486,7 +492,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        That allows one to use ncurses with a wheel mouse with xterm or
        similar X terminal emulators.
 
-       NOTE:  using this option will make libraries which are not binary-
+       NOTE: using this option will make libraries which are not binary-
        compatible with libncursesw 5.4.  None of the interfaces change, but
        applications which have mouse mask mmask_t's must be recompiled.
 
@@ -506,7 +512,7 @@ SUMMARY OF CONFIGURE OPTIONS:
     --enable-getcap-cache
        Cache translated termcaps under the directory $HOME/.terminfo
 
-       NOTE:  this sounds good - it makes ncurses run faster the second time.
+       NOTE: this sounds good - it makes ncurses run faster the second time.
        But look where the data comes from - an /etc/termcap containing lots of
        entries that are not up to date.  If you configure with this option and
        forget to install the terminfo database before running an ncurses
@@ -519,6 +525,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        may not be accurate, or that your stty settings have disabled the use
        of tabs.
 
+    --enable-interop
+       Compile-in experimental interop bindings.  These provide generic types
+       for the form-library.
+
     --enable-mixed-case
        Controls whether the filesystem on which the terminfo database resides
        supports mixed-case filenames (normal for UNIX, but not on other
@@ -580,6 +590,11 @@ SUMMARY OF CONFIGURE OPTIONS:
        is not strictly compatible.  This option allows one to implement this
        alteration without patching the source code.
 
+    --enable-sp-funcs
+       Compile-in support for extended functions which accept a SCREEN pointer,
+       reducing the need for juggling the global SP value with set_term() and
+       delscreen().
+
     --enable-symlinks
        If your system supports symbolic links, make tic use symbolic links
        rather than hard links to save diskspace when writing aliases in the
@@ -591,6 +606,11 @@ SUMMARY OF CONFIGURE OPTIONS:
        capabilities as user-defined strings.  This option is the default,
        unless you have disabled the extended functions.
 
+    --enable-term-driver
+       Enable experimental terminal-driver.  This is currently used for the
+       MinGW port, by providing a way to substitute the low-level terminfo
+       library with different terminal drivers.
+
     --enable-termcap
        Compile in support for reading terminal descriptions from termcap if no
        match is found in the terminfo database.  See also the --enable-getcap
@@ -645,12 +665,23 @@ SUMMARY OF CONFIGURE OPTIONS:
     --with-ada-objects=DIR
        Tell where to install the Ada objects (default:  PREFIX/lib/ada/adalib)
 
+    --with-ada-sharedlib
+       Build a shared library for Ada95 binding, if the compiler permits.
+
+       NOTE: You must also set the --with-shared option on some platforms
+       for a successful build.  You need not use this option when you set
+       --with-shared, unless you want to use the Ada shared library.
+
     --with-bool=TYPE
        If --without-cxx is specified, override the type used for the "bool"
        declared in curses.h (normally the type is automatically chosen to
        correspond with that in <stdbool.h>, or defaults to platform-specific
        sizes).
 
+    --with-build-cpp=XXX
+       This option is provided by the same macro used for $BUILD_CC, etc.,
+       but is not directly used by ncurses.
+
     --with-build-cc=XXX
        If cross-compiling, specify a host C compiler, which is needed to
        compile a few utilities which generate source modules for ncurses.
@@ -706,7 +737,8 @@ SUMMARY OF CONFIGURE OPTIONS:
        --enable-widec is not given) a character.  Prior to ncurses 5.5, this
        was always unsigned long, but with ncurses 5.5, it may be unsigned.
        Use this option if you need to preserve compatibility with 64-bit
-       executables.
+       executables, e.g., by setting "--with-chtype=long" (the configure
+       script supplies "unsigned").
 
     --with-database=XXX
        Specify the terminfo source file to install.  Usually you will wish
@@ -789,7 +821,7 @@ SUMMARY OF CONFIGURE OPTIONS:
                make install DESTDIR=XXX
        since the makefiles pass that variable to subordinate makes.
 
-       NOTE:  a few systems build shared libraries with fixed pathnames; this
+       NOTE: a few systems build shared libraries with fixed pathnames; this
        option probably will not work for those configurations.
 
      --with-libtool[=XXX]
@@ -895,7 +927,7 @@ SUMMARY OF CONFIGURE OPTIONS:
        which you are building, typically using a ".so" suffix, along with
        symbolic links that refer to the release version.
 
-       NOTE:  Unless you override the configure script by setting the $CFLAGS
+       NOTE: Unless you override the configure script by setting the $CFLAGS
        environment variable, these will not be built with the -g debugging
        option.
 
@@ -909,6 +941,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        $LD_LIBRARY_PATH to point to the build tree, e.g.,
                ./misc/shlib make install
 
+       NOTE: If you use the --with-ada-sharedlib option, you should also
+       set this option, to ensure that C-language modules needed for the
+       Ada binding use appropriate compiler options.
+
     --with-shlib-version=XXX
        Specify whether to use the release or ABI version for shared libraries.
        This is normally chosen automatically based on the type of system
@@ -1016,6 +1052,10 @@ SUMMARY OF CONFIGURE OPTIONS:
        programs (e.g., tic).  The test applications will still be built if you
        type "make", though not if you simply do "make install".
 
+    --without-tests
+       Tell the configure script to suppress the build of ncurses' test
+       programs.
+
     --without-xterm-new
        Tell the configure script to use "xterm-old" for the entry used in
        the terminfo database.  This will work with variations such as
@@ -1037,6 +1077,60 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
     you may encounter when building a system with different versions of
     ncurses:
 
+    5.8 (Feb 26, 2011)
+       Interface changes:
+
+       + add an alternate library configuration, i.e., "terminal driver" to
+         support port to Windows, built with MinGW.  There are two drivers
+         (terminfo and Windows console).  The terminfo driver works on other
+         platforms.
+
+       + add a new set of functions which accept a SCREEN* parameter, in
+         contrast with the original set which use the global value "sp".
+         By default, these names end with "_sp", and are otherwise
+         functionally identical with the originals.
+
+         In addition to the "_sp" functions, there are a few new functions
+         associated with this feature:  ceiling_panel, ground_panel,
+         new_prescr.
+
+         If the library is not built with the sp-funcs extension, there
+         are no related interface changes.
+
+       + add tiparm function based on review of X/Open Curses Issue 7.
+
+       + change internal _nc_has_mouse function to public has_mouse function
+
+       Added extensions:
+
+       + add a few more functions to support the NCURSES_OPAQUE feature:
+         get_escdelay, is_pad, is_subwin
+
+       Added internal functions (other than "_sp" variants):
+               _nc_curscr_of
+               _nc_format_slks
+               _nc_get_alias_table
+               _nc_get_hash_info
+               _nc_insert_wch
+               _nc_newscr_of
+               _nc_outc_wrapper
+               _nc_retrace_char
+               _nc_retrace_int_attr_t
+               _nc_retrace_mmask_t
+               _nc_setup_tinfo
+               _nc_stdscr_of
+               _nc_tinfo_cmdch
+
+       Removed internal functions:
+               _nc_makenew (some configurations replace by _nc_makenew_sp)
+
+       Modified internal functions:
+               _nc_UpdateAttrs
+               _nc_get_hash_table
+               _nc_has_mouse
+               _nc_insert_ch
+               _nc_wgetch
+
     5.7 (November 2, 2008)
        Interface changes:
 
@@ -1632,20 +1726,37 @@ CONFIGURING FALLBACK ENTRIES:
        By default, there are no entries on the fallback list.  After you have
        built the ncurses suite for the first time, you can change the list
        (the process needs infocmp(1)).  To do so, use the script
-       ncurses/tinfo/MKfallback.sh.  A configure script option
+       ncurses/tinfo/MKfallback.sh.  The configure script option
        --with-fallbacks does this (it accepts a comma-separated list of the
        names you wish, and does not require a rebuild).
 
        If you wanted (say) to have linux, vt100, and xterm fallbacks, you
-       would use the commands
+       might use the commands
 
                cd ncurses;
-               tinfo/MKfallback.sh linux vt100 xterm >fallback.c
+               tinfo/MKfallback.sh \
+                       $TERMINFO \
+                       ../misc/terminfo.src \
+                       `which tic` \
+                       linux vt100 xterm >fallback.c
+
+       The first three parameters of the script are normally supplied by
+       the configured makefiles via the "--with-fallbacks" option.  They
+       are
+
+               1) the location of the terminfo database
+               2) the source for the terminfo entries
+               3) the location of the tic program, used to create a terminfo
+                  database.
 
        Then just rebuild and reinstall the library as you would normally.
        You can restore the default empty fallback list with
 
-               tinfo/MKfallback.sh >fallback.c
+               tinfo/MKfallback.sh \
+                       $TERMINFO \
+                       ../misc/terminfo.src \
+                       `which tic` \
+                       >fallback.c
 
        The overhead for an empty fallback list is one trivial stub function.
        Any non-empty fallback list is const-ed and therefore lives in sharable