snapshot of project "ncurses", label v6_2_20200808

This commit is contained in:
Thomas E. Dickey 2020-08-09 01:06:50 +00:00
parent 718511cef0
commit f4688358ea
17 changed files with 2176 additions and 1971 deletions

View File

@ -28,8 +28,9 @@
##############################################################################
#
# Author: Juergen Pfeifer, 1996
# and: Thomas E. Dickey, 1997
#
# $Id: Makefile.in,v 1.90 2020/02/02 23:34:34 tom Exp $
# $Id: Makefile.in,v 1.94 2020/08/09 01:06:50 tom Exp $
#
.SUFFIXES:
@ -65,9 +66,9 @@ HOST_CPPFLAGS = @ACPPFLAGS@ @BUILD_CPPFLAGS@ \
-DHAVE_CONFIG_H -I$(srcdir)
CCFLAGS = $(HOST_CPPFLAGS) $(HOST_CFLAGS)
CFLAGS_NORMAL = $(CCFLAGS)
CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -pg
CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
@ -167,7 +168,7 @@ gen.o: $(srcdir)/gen.c
$(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
$(ADA_SRCDIR)/$(ABASE)_constants.ads: $(PROG_GENERATE)
$(WRAPPER) "$(GENERATE)" >$@
$(WRAPPER) "$(GENERATE) $@"
################################################################################
$(ADA_SRCDIR)/$(ABASE).ads: $(srcdir)/$(ABASE).ads.m4 \
$(srcdir)/normal.m4

View File

@ -29,11 +29,13 @@
/****************************************************************************
* Author: Juergen Pfeifer, 1996 *
* and: Thomas E. Dickey, 1998 *
* and: Nicolas Boulenguez, 2011 *
****************************************************************************/
/*
Version Control
$Id: gen.c,v 1.72 2020/02/22 21:01:00 tom Exp $
$Id: gen.c,v 1.76 2020/08/09 00:57:30 tom Exp $
--------------------------------------------------------------------------*/
/*
This program prints on its standard output the source for the
@ -55,9 +57,11 @@
#undef UCHAR
#undef UINT
#undef ULONG
typedef unsigned char UCHAR;
typedef unsigned int UINT;
typedef unsigned long ULONG;
/* These global variables will be set by main () */
static int little_endian;
@ -71,19 +75,36 @@ my_error(const char *message)
}
static void
print_constant(const char *name,
print_constant(FILE * fp,
const char *name,
UINT value)
{
fprintf(fp, " %-28s : constant := %u;\n", name, value);
}
static void
print_long_val(FILE * fp,
const char *name,
long value)
{
printf(" %-28s : constant := %ld;\n", name, value);
fprintf(fp, " %-28s : constant := %ld;\n", name, value);
}
static void
print_size_of(FILE * fp,
const char *name,
size_t value)
{
fprintf(fp, " %-28s : constant := %lu;\n", name, value);
}
#define PRINT_NAMED_CONSTANT(name) \
print_constant (#name, name)
print_long_val (fp, #name, name)
static void
print_comment(const char *message)
print_comment(FILE * fp, const char *message)
{
printf("\n -- %s\n\n", message);
fprintf(fp, "\n -- %s\n\n", message);
}
/*
@ -142,8 +163,8 @@ find_pos(const UCHAR * const data,
c_type mask = (mask_macro); \
if (!find_pos ((UCHAR *)&mask, sizeof (mask), &first, &last)) \
my_error ("failed to locate " ada_name); \
print_constant (ada_name "_First", first); \
print_constant (ada_name "_Last", last); \
print_constant (fp, ada_name "_First", first); \
print_constant (fp, ada_name "_Last", last); \
}
#define PRINT_NAMED_BITMASK(c_type, mask_macro) \
@ -157,8 +178,8 @@ find_pos(const UCHAR * const data,
memset (&mask.field, 0xff, sizeof(mask.field)); \
if (!find_pos ((UCHAR *)&mask, sizeof (mask), &first, &last)) \
my_error ("failed to locate" #record "_" #field); \
print_constant (#record "_" #field "_First", first); \
print_constant (#record "_" #field "_Last", last); \
print_constant (fp, #record "_" #field "_First", first); \
print_constant (fp, #record "_" #field "_Last", last); \
}
/*--------------------*/
@ -168,6 +189,7 @@ find_pos(const UCHAR * const data,
int
main(int argc, const char *argv[])
{
FILE *fp = 0;
const int x = 0x12345678;
little_endian = (*((const char *)&x) == 0x78);
@ -177,49 +199,61 @@ main(int argc, const char *argv[])
if (KEY_MIN == 256)
my_error("unexpected value for KEY_MIN: 256");
if (argc != 2)
my_error("Only one argument expected (DFT_ARG_SUFFIX)");
if ((strlen(argv[0]) + strlen(__FILE__)) > 25)
if (argc == 3)
{
printf("-- Generated by the C program %.40s.\n",
my_program_invocation_name);
fp = fopen(argv[2], "wb");
}
else if (argc == 2)
{
fp = stdout;
}
else
{
printf("-- Generated by the C program %s (source %s).\n",
my_program_invocation_name,
__FILE__);
my_error("Only one or two arguments expected (DFT_ARG_SUFFIX)");
}
printf("-- Do not edit this file directly.\n");
printf("-- The values provided here may vary on your system.\n");
printf("\n");
printf("with System;\n");
printf("package Terminal_Interface.Curses_Constants is\n");
printf(" pragma Pure;\n");
printf("\n");
printf(" DFT_ARG_SUFFIX : constant String := \"%s\";\n", argv[1]);
printf(" Bit_Order : constant System.Bit_Order := System.%s_Order_First;\n",
little_endian ? "Low" : "High");
print_constant("Sizeof_Bool", 8 * sizeof(bool));
if ((strlen(argv[0]) + strlen(__FILE__)) > 25)
{
fprintf(fp, "-- Generated by the C program %.40s.\n",
my_program_invocation_name);
}
else
{
fprintf(fp, "-- Generated by the C program %s (source %s).\n",
my_program_invocation_name,
__FILE__);
}
fprintf(fp, "-- Do not edit this file directly.\n");
fprintf(fp, "-- The values provided here may vary on your system.\n");
fprintf(fp, "\n");
fprintf(fp, "with System;\n");
fprintf(fp, "package Terminal_Interface.Curses_Constants is\n");
fprintf(fp, " pragma Pure;\n");
fprintf(fp, "\n");
fprintf(fp, " DFT_ARG_SUFFIX : constant String := \"%s\";\n", argv[1]);
fprintf(fp,
" Bit_Order : constant System.Bit_Order := System.%s_Order_First;\n",
little_endian ? "Low" : "High");
print_size_of(fp, "Sizeof_Bool", 8 * sizeof(bool));
PRINT_NAMED_CONSTANT(OK);
PRINT_NAMED_CONSTANT(ERR);
printf(" pragma Warnings (Off); -- redefinition of Standard.True and False\n");
fprintf(fp,
" pragma Warnings (Off); -- redefinition of Standard.True and False\n");
PRINT_NAMED_CONSTANT(TRUE);
PRINT_NAMED_CONSTANT(FALSE);
printf(" pragma Warnings (On);\n");
fprintf(fp, " pragma Warnings (On);\n");
print_comment("Version of the ncurses library from extensions(3NCURSES)");
print_comment(fp, "Version of the ncurses library from extensions(3NCURSES)");
PRINT_NAMED_CONSTANT(NCURSES_VERSION_MAJOR);
PRINT_NAMED_CONSTANT(NCURSES_VERSION_MINOR);
printf(" Version : constant String := \"%d.%d\";\n",
NCURSES_VERSION_MAJOR, NCURSES_VERSION_MINOR);
fprintf(fp, " Version : constant String := \"%d.%d\";\n",
NCURSES_VERSION_MAJOR, NCURSES_VERSION_MINOR);
print_comment("Character non-color attributes from attr(3NCURSES)");
printf(" -- attr_t and chtype may be signed in C.\n");
printf(" type attr_t is mod 2 ** %lu;\n", (long unsigned)(8 * sizeof(attr_t)));
print_comment(fp, "Character non-color attributes from attr(3NCURSES)");
fprintf(fp, " -- attr_t and chtype may be signed in C.\n");
fprintf(fp, " type attr_t is mod 2 ** %lu;\n", (long unsigned)(8 * sizeof(attr_t)));
PRINT_NAMED_BITMASK(attr_t, A_CHARTEXT);
PRINT_NAMED_BITMASK(attr_t, A_COLOR);
PRINT_BITMASK(attr_t, "Attr", A_ATTRIBUTES & ~A_COLOR);
@ -238,9 +272,9 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(attr_t, A_RIGHT);
PRINT_NAMED_BITMASK(attr_t, A_TOP);
PRINT_NAMED_BITMASK(attr_t, A_VERTICAL);
print_constant("chtype_Size", 8 * sizeof(chtype));
print_size_of(fp, "chtype_Size", 8 * sizeof(chtype));
print_comment("predefined color numbers from color(3NCURSES)");
print_comment(fp, "predefined color numbers from color(3NCURSES)");
PRINT_NAMED_CONSTANT(COLOR_BLACK);
PRINT_NAMED_CONSTANT(COLOR_RED);
PRINT_NAMED_CONSTANT(COLOR_GREEN);
@ -250,7 +284,7 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(COLOR_CYAN);
PRINT_NAMED_CONSTANT(COLOR_WHITE);
print_comment("ETI return codes from ncurses.h");
print_comment(fp, "ETI return codes from ncurses.h");
PRINT_NAMED_CONSTANT(E_OK);
PRINT_NAMED_CONSTANT(E_SYSTEM_ERROR);
PRINT_NAMED_CONSTANT(E_BAD_ARGUMENT);
@ -267,14 +301,14 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(E_INVALID_FIELD);
PRINT_NAMED_CONSTANT(E_CURRENT);
print_comment("Input key codes not defined in any ncurses manpage");
print_comment(fp, "Input key codes not defined in any ncurses manpage");
PRINT_NAMED_CONSTANT(KEY_MIN);
PRINT_NAMED_CONSTANT(KEY_MAX);
#ifdef KEY_CODE_YES
PRINT_NAMED_CONSTANT(KEY_CODE_YES);
#endif
print_comment("Input key codes from getch(3NCURSES)");
print_comment(fp, "Input key codes from getch(3NCURSES)");
PRINT_NAMED_CONSTANT(KEY_BREAK);
PRINT_NAMED_CONSTANT(KEY_DOWN);
PRINT_NAMED_CONSTANT(KEY_UP);
@ -283,30 +317,31 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(KEY_HOME);
PRINT_NAMED_CONSTANT(KEY_BACKSPACE);
PRINT_NAMED_CONSTANT(KEY_F0);
print_constant("KEY_F1", KEY_F(1));
print_constant("KEY_F2", KEY_F(2));
print_constant("KEY_F3", KEY_F(3));
print_constant("KEY_F4", KEY_F(4));
print_constant("KEY_F5", KEY_F(5));
print_constant("KEY_F6", KEY_F(6));
print_constant("KEY_F7", KEY_F(7));
print_constant("KEY_F8", KEY_F(8));
print_constant("KEY_F9", KEY_F(9));
print_constant("KEY_F10", KEY_F(10));
print_constant("KEY_F11", KEY_F(11));
print_constant("KEY_F12", KEY_F(12));
print_constant("KEY_F13", KEY_F(13));
print_constant("KEY_F14", KEY_F(14));
print_constant("KEY_F15", KEY_F(15));
print_constant("KEY_F16", KEY_F(16));
print_constant("KEY_F17", KEY_F(17));
print_constant("KEY_F18", KEY_F(18));
print_constant("KEY_F19", KEY_F(19));
print_constant("KEY_F20", KEY_F(20));
print_constant("KEY_F21", KEY_F(21));
print_constant("KEY_F22", KEY_F(22));
print_constant("KEY_F23", KEY_F(23));
print_constant("KEY_F24", KEY_F(24));
#define PRINT_NAMED_FUNC_KEY(name) print_constant(fp, "KEY_F"#name, KEY_F(name))
PRINT_NAMED_FUNC_KEY(1);
PRINT_NAMED_FUNC_KEY(2);
PRINT_NAMED_FUNC_KEY(3);
PRINT_NAMED_FUNC_KEY(4);
PRINT_NAMED_FUNC_KEY(5);
PRINT_NAMED_FUNC_KEY(6);
PRINT_NAMED_FUNC_KEY(7);
PRINT_NAMED_FUNC_KEY(8);
PRINT_NAMED_FUNC_KEY(9);
PRINT_NAMED_FUNC_KEY(10);
PRINT_NAMED_FUNC_KEY(11);
PRINT_NAMED_FUNC_KEY(12);
PRINT_NAMED_FUNC_KEY(13);
PRINT_NAMED_FUNC_KEY(14);
PRINT_NAMED_FUNC_KEY(15);
PRINT_NAMED_FUNC_KEY(16);
PRINT_NAMED_FUNC_KEY(17);
PRINT_NAMED_FUNC_KEY(18);
PRINT_NAMED_FUNC_KEY(19);
PRINT_NAMED_FUNC_KEY(20);
PRINT_NAMED_FUNC_KEY(21);
PRINT_NAMED_FUNC_KEY(22);
PRINT_NAMED_FUNC_KEY(23);
PRINT_NAMED_FUNC_KEY(24);
PRINT_NAMED_CONSTANT(KEY_DL);
PRINT_NAMED_CONSTANT(KEY_IL);
PRINT_NAMED_CONSTANT(KEY_DC);
@ -391,8 +426,8 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(KEY_MOUSE);
PRINT_NAMED_CONSTANT(KEY_RESIZE);
print_comment("alternate character codes (ACS) from addch(3NCURSES)");
#define PRINT_ACS(name) print_constant (#name, &name - &acs_map[0])
print_comment(fp, "alternate character codes (ACS) from addch(3NCURSES)");
#define PRINT_ACS(name) print_size_of (fp, #name, (size_t)(&name - &acs_map[0]))
PRINT_ACS(ACS_ULCORNER);
PRINT_ACS(ACS_LLCORNER);
PRINT_ACS(ACS_URCORNER);
@ -426,20 +461,20 @@ main(int argc, const char *argv[])
PRINT_ACS(ACS_NEQUAL);
PRINT_ACS(ACS_STERLING);
print_comment("Menu_Options from opts(3MENU)");
print_comment(fp, "Menu_Options from opts(3MENU)");
PRINT_NAMED_BITMASK(Menu_Options, O_ONEVALUE);
PRINT_NAMED_BITMASK(Menu_Options, O_SHOWDESC);
PRINT_NAMED_BITMASK(Menu_Options, O_ROWMAJOR);
PRINT_NAMED_BITMASK(Menu_Options, O_IGNORECASE);
PRINT_NAMED_BITMASK(Menu_Options, O_SHOWMATCH);
PRINT_NAMED_BITMASK(Menu_Options, O_NONCYCLIC);
print_constant("Menu_Options_Size", 8 * sizeof(Menu_Options));
print_size_of(fp, "Menu_Options_Size", 8 * sizeof(Menu_Options));
print_comment("Item_Options from menu_opts(3MENU)");
print_comment(fp, "Item_Options from menu_opts(3MENU)");
PRINT_NAMED_BITMASK(Item_Options, O_SELECTABLE);
print_constant("Item_Options_Size", 8 * sizeof(Item_Options));
print_size_of(fp, "Item_Options_Size", 8 * sizeof(Item_Options));
print_comment("Field_Options from field_opts(3FORM)");
print_comment(fp, "Field_Options from field_opts(3FORM)");
PRINT_NAMED_BITMASK(Field_Options, O_VISIBLE);
PRINT_NAMED_BITMASK(Field_Options, O_ACTIVE);
PRINT_NAMED_BITMASK(Field_Options, O_PUBLIC);
@ -450,27 +485,27 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(Field_Options, O_NULLOK);
PRINT_NAMED_BITMASK(Field_Options, O_PASSOK);
PRINT_NAMED_BITMASK(Field_Options, O_STATIC);
print_constant("Field_Options_Size", 8 * sizeof(Field_Options));
print_size_of(fp, "Field_Options_Size", 8 * sizeof(Field_Options));
print_comment("Field_Options from opts(3FORM)");
print_comment(fp, "Field_Options from opts(3FORM)");
PRINT_NAMED_BITMASK(Field_Options, O_NL_OVERLOAD);
PRINT_NAMED_BITMASK(Field_Options, O_BS_OVERLOAD);
/* Field_Options_Size is defined below */
print_comment("MEVENT structure from mouse(3NCURSES)");
print_comment(fp, "MEVENT structure from mouse(3NCURSES)");
STRUCT_OFFSET(MEVENT, id);
STRUCT_OFFSET(MEVENT, x);
STRUCT_OFFSET(MEVENT, y);
STRUCT_OFFSET(MEVENT, z);
STRUCT_OFFSET(MEVENT, bstate);
print_constant("MEVENT_Size", 8 * sizeof(MEVENT));
print_size_of(fp, "MEVENT_Size", 8 * sizeof(MEVENT));
print_comment("mouse events from mouse(3NCURSES)");
print_comment(fp, "mouse events from mouse(3NCURSES)");
{
mmask_t all_events;
#define PRINT_MOUSE_EVENT(event) \
print_constant (#event, event); \
print_constant (fp, #event, event); \
all_events |= event
all_events = 0;
@ -482,7 +517,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON1_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON1_RESERVED_EVENT);
#endif
print_constant("all_events_button_1", (long)all_events);
print_constant(fp, "all_events_button_1", all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON2_RELEASED);
@ -493,7 +528,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON2_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON2_RESERVED_EVENT);
#endif
print_constant("all_events_button_2", (long)all_events);
print_constant(fp, "all_events_button_2", all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON3_RELEASED);
@ -504,7 +539,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON3_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON3_RESERVED_EVENT);
#endif
print_constant("all_events_button_3", (long)all_events);
print_constant(fp, "all_events_button_3", all_events);
all_events = 0;
PRINT_MOUSE_EVENT(BUTTON4_RELEASED);
@ -515,7 +550,7 @@ main(int argc, const char *argv[])
#ifdef BUTTON4_RESERVED_EVENT
PRINT_MOUSE_EVENT(BUTTON4_RESERVED_EVENT);
#endif
print_constant("all_events_button_4", (long)all_events);
print_constant(fp, "all_events_button_4", all_events);
}
PRINT_NAMED_CONSTANT(BUTTON_CTRL);
PRINT_NAMED_CONSTANT(BUTTON_SHIFT);
@ -523,7 +558,7 @@ main(int argc, const char *argv[])
PRINT_NAMED_CONSTANT(REPORT_MOUSE_POSITION);
PRINT_NAMED_CONSTANT(ALL_MOUSE_EVENTS);
print_comment("trace selection from trace(3NCURSES)");
print_comment(fp, "trace selection from trace(3NCURSES)");
PRINT_NAMED_BITMASK(UINT, TRACE_TIMES);
PRINT_NAMED_BITMASK(UINT, TRACE_TPUTS);
PRINT_NAMED_BITMASK(UINT, TRACE_UPDATE);
@ -537,8 +572,8 @@ main(int argc, const char *argv[])
PRINT_NAMED_BITMASK(UINT, TRACE_CCALLS);
PRINT_NAMED_BITMASK(UINT, TRACE_DATABASE);
PRINT_NAMED_BITMASK(UINT, TRACE_ATTRS);
print_constant("Trace_Size", 8 * sizeof(UINT));
print_size_of(fp, "Trace_Size", 8 * sizeof(UINT));
printf("end Terminal_Interface.Curses_Constants;\n");
fprintf(fp, "end Terminal_Interface.Curses_Constants;\n");
exit(EXIT_SUCCESS);
}

View File

@ -29,7 +29,7 @@
#
# Author: Juergen Pfeifer, 1996
#
# $Id: Makefile.in,v 1.59 2020/02/02 23:34:34 tom Exp $
# $Id: Makefile.in,v 1.60 2020/08/08 19:52:58 tom Exp $
#
.SUFFIXES:
@ -62,9 +62,9 @@ CPPFLAGS = @ACPPFLAGS@ \
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_NORMAL = $(CCFLAGS)
CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -pg
CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)

View File

@ -29,7 +29,7 @@
#
# Author: Juergen Pfeifer, 1996
#
# $Id: Makefile.in,v 1.91 2020/06/27 21:17:54 tom Exp $
# $Id: Makefile.in,v 1.92 2020/08/08 20:30:13 tom Exp $
#
.SUFFIXES:
@ -71,9 +71,9 @@ CPPFLAGS = @ACPPFLAGS@ @CPPFLAGS@ \
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
CFLAGS_NORMAL = $(CCFLAGS)
CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -pg
CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC
CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -DNCURSES_STATIC -pg
CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)

68
INSTALL
View File

@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: INSTALL,v 1.223 2020/05/23 18:30:33 tom Exp $
-- $Id: INSTALL,v 1.225 2020/08/08 23:38:33 tom Exp $
---------------------------------------------------------------------
How to install Ncurses/Terminfo on your system
---------------------------------------------------------------------
@ -41,7 +41,7 @@ including `c++', `form', `man', `menu', 'misc', `ncurses', `panel', `progs',
and `test'. See the README file for a roadmap to the package.
If you are a distribution integrator or packager, please read and act on the
section titled IF YOU ARE A SYSTEM INTEGRATOR below.
section titled FOR SYSTEM INTEGRATORS below.
If you are converting from BSD curses and do not have root access, be sure
to read the BSD CONVERSION NOTES section below.
@ -49,11 +49,7 @@ to read the BSD CONVERSION NOTES section below.
If you are trying to build applications using gpm with ncurses,
read the USING NCURSES WITH GPM section below.
If you are running over the Andrew File System see the note below on
USING NCURSES WITH AFS.
If you are cross-compiling, see the note below on BUILDING NCURSES WITH A
CROSS-COMPILER.
If you are cross-compiling, see the note below on BUILDING WITH A CROSS-COMPILER.
If you want to build the Ada95 binding, go to the Ada95 directory and
follow the instructions there. The Ada95 binding is not covered below.
@ -270,8 +266,8 @@ INSTALLATION PROCEDURE:
YOU MAY NOT BE ABLE TO COMPILE (OR RUN) NCURSES APPLICATIONS WITH C++.
SUMMARY OF CONFIGURE OPTIONS:
----------------------------
CONFIGURE OPTIONS:
-----------------
The configure script provides a short list of its options when you type
@ -1371,8 +1367,8 @@ SUMMARY OF CONFIGURE OPTIONS:
X11R5 and X11R6 xterm.
COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
--------------------------------------------
COMPATIBILITY WITH OLDER RELEASES:
---------------------------------
Because ncurses implements X/Open Curses, its interface is fairly stable.
That does not mean the interface does not change. Changes are made to the
@ -2096,8 +2092,8 @@ COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:
incorrect color scheme.
IF YOU ARE A SYSTEM INTEGRATOR:
------------------------------
FOR SYSTEM INTEGRATORS:
----------------------
Configuration and Installation:
@ -2173,7 +2169,7 @@ IF YOU ARE A SYSTEM INTEGRATOR:
that will make users' lives easier rather than harder.
RECENT XTERM VERSIONS:
MODERN XTERM VERSIONS:
---------------------
The terminfo database file included with this distribution assumes you
@ -2189,9 +2185,13 @@ CONFIGURING FALLBACK ENTRIES:
In order to support operation of ncurses programs before the terminfo
tree is accessible (that is, in single-user mode or at OS installation
time) the ncurses library can be compiled to include an array of
pre-fetched fallback entries. This must be done on a machine which
has ncurses' infocmp and terminfo database installed (as well as
ncurses' tic and infocmp programs).
pre-fetched fallback entries.
NOTE: This must be done on a machine which has ncurses' infocmp and
terminfo database installed (as well as ncurses' tic and infocmp
programs). That is because the fallback sources are generated and
compiled into the library before the build-tree's copy of infocmp is
available.
These entries are checked by setupterm() only when the conventional
fetches from the terminfo tree and the termcap fallback (if configured)
@ -2310,12 +2310,8 @@ terminfo directory directly.
------------------------------- CUT HERE --------------------------------
USING NCURSES WITH AFS:
AFS treats each directory as a separate logical filesystem, you
can't hard-link across them. The --enable-symlinks option copes
with this by making tic use symbolic links.
USING NCURSES WITH GPM:
USING GPM:
---------
Ncurses 4.1 and up can be configured to use GPM (General Purpose Mouse)
which is used with Linux console. Be aware that GPM is commonly
installed as a shared library which contains a wrapper for the curses
@ -2334,7 +2330,9 @@ USING NCURSES WITH GPM:
https://invisible-island.net/ncurses/ncurses.faq.html#using_gpm_lib
BUILDING NCURSES WITH A CROSS-COMPILER
BUILDING WITH A CROSS-COMPILER:
------------------------------
Ncurses can be built with a cross-compiler. Some parts must be built
with the host's compiler since they are used for building programs
(e.g., ncurses/make_hash and ncurses/make_keys) that generate tables
@ -2359,14 +2357,26 @@ BUILDING NCURSES WITH A CROSS-COMPILER
When ncurses has been successfully cross-compiled, you may want to use
"make install" (with a suitable target directory) to construct an
install tree. Note that in this case (as with the --with-fallbacks
option), ncurses uses the development platform's tic to do the
"make install.data" portion.
option), ncurses uses the development platform's tic to do the "make
install.data" portion.
The system's tic program is used to install the terminal database,
even for cross-compiles. For best results, the tic program should
be from the most current version of ncurses.
even for cross-compiles. For best results, the tic program should be
from the most current version of ncurses.
BUGS:
NOTE: the system's tic program may use a different terminfo database
format than the target system. For instance, as described in term(5),
the conventional terminfo layout uses a directory hierarchy with one
letter names, while some platforms use two-letter names to work with
case-insensitive filesystems. The configure script searches for a tic
program using the AC_CHECK_TOOL macro, which will prefer programs
using the canonical host prefix in their name. You can use this fact
to provide a cross-compiler support utility tic, otherwise you can
override the configure script's choice using --with-tic-path
BUG REPORTS:
-----------
Send any feedback to the ncurses mailing list at
bug-ncurses@gnu.org. To subscribe send mail to
bug-ncurses-request@gnu.org with body that reads:

15
NEWS
View File

@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.3530 2020/08/01 21:09:01 tom Exp $
-- $Id: NEWS,v 1.3532 2020/08/08 23:43:32 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -46,6 +46,19 @@ 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.
20200808
+ improve discussion of the system's tic utility when used as part
of cross-compiling (discussion with Keith Marshall).
+ modify configuration checks for build-time tic/infocmp to use
AC_CHECK_TOOL. That can still be overridden by --with-tic-path and
--with-infocmp-path when fallbacks are used, but even if not using
fallbacks, the improved check may help with cross-compiling
(discussion with Keith Marshall).
+ other build-fixes for Ada95 with MinGW.
+ modify Ada95 source-generation utility to write to a file given as
parameter rather than to the standard output, allowing builds with
MinGW.
20200801
+ remove remaining parts of checks for ISC Unix (cf: 20121006).
+ add user32.lib to LDFLAGS for Visual Studio C++ configuration

View File

@ -1 +1 @@
5:0:10 6.2 20200801
5:0:10 6.2 20200808

3791
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: configure.in,v 1.713 2020/08/01 21:07:44 tom Exp $
dnl $Id: configure.in,v 1.715 2020/08/08 22:14:09 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
@ -38,7 +38,7 @@ dnl https://invisible-island.net/autoconf/my-autoconf.html
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20200111)
AC_REVISION($Revision: 1.713 $)
AC_REVISION($Revision: 1.715 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@ -664,13 +664,12 @@ AC_SUBST(USE_FALLBACKS)
# library. If your toolchain is old, it may not handle current terminal
# databases. Use configure-options to point to the tools which will be used,
# rather than the first ones found on the $PATH.
AC_CHECK_TOOL(TIC, tic)
AC_CHECK_TOOL(INFOCMP, infocmp)
if test -n "$FALLBACK_LIST"
then
CF_WITH_PATH_PROG(TIC, tic, [for fallbacks], $PATH:/usr/local/ncurses/bin)
CF_WITH_PATH_PROG(INFOCMP, infocmp, [for fallbacks], $PATH:/usr/local/ncurses/bin)
else
: ${TIC:=tic}
: ${INFOCMP:=infocmp}
fi
AC_SUBST(TIC)
AC_SUBST(INFOCMP)

View File

@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1363 2020/08/01 12:50:57 tom Exp $
# $Id: dist.mk,v 1.1364 2020/08/08 11:03:32 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@ -38,7 +38,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 2
NCURSES_PATCH = 20200801
NCURSES_PATCH = 20200808
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200801) unstable; urgency=low
ncurses6 (6.2+20200808) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Aug 2020 08:50:57 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Aug 2020 07:03:32 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200801) unstable; urgency=low
ncurses6 (6.2+20200808) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Aug 2020 08:50:57 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Aug 2020 07:03:32 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.2+20200801) unstable; urgency=low
ncurses6 (6.2+20200808) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Aug 2020 08:50:57 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Aug 2020 07:03:32 -0400
ncurses6 (5.9-20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.407 2020/08/01 12:50:57 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.408 2020/08/08 11:03:32 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@ -10,7 +10,7 @@
!define VERSION_MAJOR "6"
!define VERSION_MINOR "2"
!define VERSION_YYYY "2020"
!define VERSION_MMDD "0801"
!define VERSION_MMDD "0808"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"

View File

@ -3,7 +3,7 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.2
Release: 20200801
Release: 20200808
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
Release: 20200801
Release: 20200808
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
Release: 20200801
Release: 20200808
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz