ncurses 6.2 - patch 20200627
authorThomas E. Dickey <dickey@invisible-island.net>
Sun, 28 Jun 2020 01:38:12 +0000 (01:38 +0000)
committerThomas E. Dickey <dickey@invisible-island.net>
Sun, 28 Jun 2020 01:38:12 +0000 (01:38 +0000)
+ build-fixes for gnat 10.1.1, whose gnatmake drops integration with
  gprbuild.
+ correct buffer-length in test/color_name.h

14 files changed:
Ada95/src/Makefile.in
Ada95/src/library.gpr.in
Ada95/src/terminal_interface-curses-mouse.adb
NEWS
VERSION
dist.mk
package/debian-mingw/changelog
package/debian-mingw64/changelog
package/debian/changelog
package/mingw-ncurses.nsi
package/mingw-ncurses.spec
package/ncurses.spec
package/ncursest.spec
test/color_name.h

index e0751da90113a1221bc9e4430f75f04dde230266..db7100de5b5c1bad22227b9efc9ceba6114f06e4 100644 (file)
@@ -29,7 +29,7 @@
 #
 #  Author:  Juergen Pfeifer, 1996
 #
-#  $Id: Makefile.in,v 1.90 2020/03/28 18:05:56 Adam.Van.Ymeren Exp $
+#  $Id: Makefile.in,v 1.91 2020/06/27 21:17:54 tom Exp $
 #
 .SUFFIXES:
 
@@ -195,6 +195,7 @@ install.libs :: \
                $(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
        @echo made $(STATIC_LIBNAME)
 
+#OLD:BEGIN
 install \
 install.libs :: \
                $(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
@@ -206,6 +207,7 @@ install.libs :: \
 uninstall \
 uninstall.libs ::
        @rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
+#OLD:END
 
 mostlyclean ::
        rm -f *.o *.ali b_t*.* *.s $(PROGS) a.out core b_*_test.c *.xr[bs] *.a
@@ -276,20 +278,66 @@ STATIC_DIRS = \
 @USE_GNAT_PROJECTS@    $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
 @USE_GNAT_PROJECTS@    @echo "Using GNAT Project:"
 @USE_GNAT_PROJECTS@    @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
-@USE_GNAT_PROJECTS@    $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
-@USE_GNAT_PROJECTS@    $(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
-@USE_GNAT_PROJECTS@    -rm -f $(GNAT_PROJECT)
 @USE_GNAT_PROJECTS@
+@USE_GNAT_PROJECTS@    gprbuild -p $(ADAMAKEFLAGS) -XLIB_KIND=static
+@USE_GNAT_PROJECTS@
+@USE_GNAT_PROJECTS@    -rm -f $(GNAT_PROJECT)
+
+#OLD:BEGIN
 @USE_GNAT_LIBRARIES@install \
 @USE_GNAT_LIBRARIES@install.libs :: \
 @USE_GNAT_LIBRARIES@           $(ADA_OBJECTS)
 @USE_GNAT_LIBRARIES@   $(INSTALL_LIB) \
 @USE_GNAT_LIBRARIES@           $(BUILD_DIR)/static-ali/*.ali \
 @USE_GNAT_LIBRARIES@           $(ADA_OBJECTS)
-
+#OLD:END
+# While gprinstall is the "recommended" tool, it is rather brittle, with
+# hardcoded assumptions about the use of the install-name which prevent using
+# that tool to make the directory layout of older versions of the AdaCurses
+# package.
+#
+# In principle, one might just do
+#      --install-name=""
+# and in dry-run mode, gprinstall pretends to handle it properly (trimming the
+# empty directory level), but without the dry-run option, it fails (tested
+# with gnat 10.1.1).
+#NEW:BEGIN
+#@USE_GNAT_LIBRARIES@install \
+#@USE_GNAT_LIBRARIES@install.libs ::
+#@USE_GNAT_LIBRARIES@  @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+#@USE_GNAT_LIBRARIES@  -rm -f $(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@  $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@  @echo "Using GNAT Project:"
+#@USE_GNAT_LIBRARIES@  @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@  gprinstall -m -v -f -p \
+#@USE_GNAT_LIBRARIES@          --prefix="$(DESTDIR)$(prefix)" \
+#@USE_GNAT_LIBRARIES@          $(ADAMAKEFLAGS) -XLIB_KIND=static \
+#@USE_GNAT_LIBRARIES@          --lib-subdir="$(DESTDIR)$(prefix)"/lib \
+#@USE_GNAT_LIBRARIES@          --ali-subdir="$(DESTDIR)$(prefix)"/lib/ada/adalib \
+#@USE_GNAT_LIBRARIES@          --sources-subdir="$(DESTDIR)$(prefix)"/share/ada/adainclude
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@  -rm -f $(GNAT_PROJECT)
+#NEW:END
+
+#OLD:BEGIN
 uninstall \
 uninstall.libs ::
        @rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
+#OLD:END
+#NEW:BEGIN
+#@USE_GNAT_LIBRARIES@uninstall \
+#@USE_GNAT_LIBRARIES@uninstall.libs ::
+#@USE_GNAT_LIBRARIES@  @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+#@USE_GNAT_LIBRARIES@  -rm -f $(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@  $(SHELL) $(srcdir)/library-cfg.sh static library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+#@USE_GNAT_LIBRARIES@  @echo "Using GNAT Project:"
+#@USE_GNAT_LIBRARIES@  @-$(SHELL) -c "diff -c library.gpr $(GNAT_PROJECT); exit 0"
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@  gprinstall -v -f --prefix="$(DESTDIR)$(prefix)" --uninstall $(ADAMAKEFLAGS) -XLIB_KIND=static
+#@USE_GNAT_LIBRARIES@
+#@USE_GNAT_LIBRARIES@  -rm -f $(GNAT_PROJECT)
+#NEW:END
 
 @USE_GNAT_LIBRARIES@uninstall \
 @USE_GNAT_LIBRARIES@uninstall.libs ::
@@ -352,8 +400,13 @@ uninstall.libs ::
 @MAKE_ADA_SHAREDLIB@   rm -f $(LIBDIR)/$(SHARED_SYMLINK)
 @MAKE_ADA_SHAREDLIB@   rm -f $(LIBDIR)/$(SHARED_LIBNAME)
 
+#rm-docs :
+#      gnatdoc --enable-build $(ADAMAKEFLAGS) -XLIB_KIND=static
+
 clean ::
        -rm -f default.cgpr
        -rm -rf $(BUILD_DIR)/*-ali
        -rm -rf $(BUILD_DIR)/*-obj
        -rm -rf $(BUILD_DIR_LIB)
+#@USE_GNAT_PROJECTS@   gprclean $(ADAMAKEFLAGS) -XLIB_KIND=static
+#@MAKE_ADA_SHAREDLIB@  gprclean $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
index b0f0646d106506b94ed2400d2edfcdb7cfc31e4f..37cbb9d93d9be0894dc602913114250447bbdd05 100644 (file)
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written       --
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
--- $Id: library.gpr.in,v 1.2 2020/02/02 23:34:34 tom Exp $
+-- $Id: library.gpr.in,v 1.3 2020/06/27 20:47:40 tom Exp $
 -- http://gcc.gnu.org/onlinedocs/gnat_ugn_unw/Library-Projects.html
 -- http://www.adaworld.com/debian/debian-ada-policy.html
 project AdaCurses is
@@ -48,10 +48,24 @@ project AdaCurses is
      for Default_Switches ("Ada") use
        ("-g",
         "-O2",
+        "-Wall",
         "-gnatafno",
         "-gnatVa",   -- All validity checks
         "-gnatwa");  -- Activate all optional errors
      -- for Default_Switches ("C") use (CFLAGS)
   end Compiler;
   for Languages use ("C", "Ada");
+  package Install is
+     for Install_Name use "adacurses";
+     -- for Artifacts ("share/doc/adacurses") use ("../doc/Ada95.html", "../doc/ada");
+     -- for Artifacts ("share/doc/adacurses/adacurses_rm") use ("../" & Kind & "-obj" & "/gnatdoc/*");
+     for Artifacts ("lib/ada/adalib") use
+        ("../src/*.ali");
+     for Artifacts ("share/ada/adainclude") use
+        ("../src/*.ad?");
+     -- for Artifacts ("share/examples/adacurses") use
+     --    ("../samples/*.ad?", "../samples/explain.txt", "../samples/Makefile", "../samples/README");
+     -- for Artifacts ("share/man/man1") use ("../doc/adacurses-config.1");
+     for Artifacts ("bin") use ("../gen/adacurses-config");
+  end Install;
 end AdaCurses;
index ed66249c06f9f16644b1ff988e3ee1795bc0ce40..a8efd345f33bb5643fe4e4c447a9b4c668bab236 100644 (file)
@@ -36,8 +36,8 @@
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
 --  Version Control:
---  $Revision: 1.27 $
---  $Date: 2020/02/02 23:34:34 $
+--  $Revision: 1.28 $
+--  $Date: 2020/06/27 18:50:44 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
@@ -147,6 +147,7 @@ package body Terminal_Interface.Curses.Mouse is
          Button := Button4;
       end if;
       if Button in Real_Buttons then
+         State := Released;  --  preset to non real button;
          L := 2 ** (6 * Mouse_Button'Pos (Button));
          for I in Button_State'Range loop
             if (Mask and L) /= 0 then
diff --git a/NEWS b/NEWS
index 7e79fc57d6bbd0ac272e2c2ad2b7520e92fbb197..c2ad772f1382a393fb0ff3af6901151959504bcc 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3507 2020/06/13 23:29:57 tom Exp $
+-- $Id: NEWS,v 1.3511 2020/06/27 21:48:14 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,11 @@ 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.
 
+20200627
+       + build-fixes for gnat 10.1.1, whose gnatmake drops integration with
+         gprbuild.
+       + correct buffer-length in test/color_name.h
+
 20200613
        + update list of functions in ncurses.3x
        + move dlclose() call from lib_mouse.c to delscreen() to avoid a case
diff --git a/VERSION b/VERSION
index a090fb896644b4b33804b09f04de8a20c08e87c4..17e8fdcffa77ea15c1e2f410188bbd9f32d9b98e 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-5:0:10 6.2     20200613
+5:0:10 6.2     20200627
diff --git a/dist.mk b/dist.mk
index dd0b5a8b0ec1c37f23e19320d78951a04b788879..5b40be7c0e616c9867d36ef5c8acdf3c40dace8e 100644 (file)
--- a/dist.mk
+++ b/dist.mk
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1356 2020/06/13 09:46:27 tom Exp $
+# $Id: dist.mk,v 1.1358 2020/06/27 11:12:35 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 = 20200613
+NCURSES_PATCH = 20200627
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
index f7868f7ad40cc9793dcb120cb423fa0302f24f33..e123a54d8535c4bc789572ee427f9d849cdc9893 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200613) unstable; urgency=low
+ncurses6 (6.2+20200627) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 13 Jun 2020 05:46:27 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 27 Jun 2020 07:12:35 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index f7868f7ad40cc9793dcb120cb423fa0302f24f33..e123a54d8535c4bc789572ee427f9d849cdc9893 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200613) unstable; urgency=low
+ncurses6 (6.2+20200627) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 13 Jun 2020 05:46:27 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 27 Jun 2020 07:12:35 -0400
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
index 18b5b43d311c5335a8f09862f7325f1d37cd6af1..17af906ea3a66da5e41998360b71614d9d1e0306 100644 (file)
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20200613) unstable; urgency=low
+ncurses6 (6.2+20200627) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 13 Jun 2020 05:46:27 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sat, 27 Jun 2020 07:12:35 -0400
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
index 91fe04361f86077e838d06fa6d4780be744a09af..e792caf6b77904a4b8aa260b79ca78fcfc7ced71 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.400 2020/06/13 09:46:27 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.402 2020/06/27 11:12:35 tom Exp $\r
 \r
 ; TODO add examples\r
 ; TODO bump ABI to 6\r
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"\r
 !define VERSION_MINOR "2"\r
 !define VERSION_YYYY  "2020"\r
-!define VERSION_MMDD  "0613"\r
+!define VERSION_MMDD  "0627"\r
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
 \r
 !define MY_ABI   "5"\r
index e201b8df76bb06bf754471965aabf22279006bc2..0888c4e10a5f71003ade35bd34929ba2eed78b56 100644 (file)
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.2
-Release: 20200613
+Release: 20200627
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 094993a263c6f1c2dc0359541a0b37c14a9f4640..aef78fc64413e6b9ca9eaadeabc9128efae4e712 100644 (file)
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.2
-Release: 20200613
+Release: 20200627
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 799e37adaf6d76af7ade179e7e8516f489291d1d..03deff3829f054aed1606d3f1c8a6f0b2a4d413a 100644 (file)
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.2
-Release: 20200613
+Release: 20200627
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
index 0dadd2a16c1c15cff41e45c970798fd2ebb84a09..d27804e87266dac9b5bafbe7f39c12a2bef076c0 100644 (file)
@@ -27,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: color_name.h,v 1.7 2020/02/02 23:34:34 tom Exp $
+ * $Id: color_name.h,v 1.8 2020/06/20 18:58:20 tom Exp $
  */
 
 #ifndef __COLORNAME_H
@@ -90,7 +90,7 @@ color_name(int color)
     const char *result = 0;
 
     if (color >= (int) SIZEOF(the_color_names)) {
-       _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(result)) "%d", color);
+       _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%d", color);
        result = temp;
     } else if (color < 0) {
        result = "default";