libncurses: Import https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.5.tar.gz changes

Change-Id: I3433d30ca01359fd2e3623ede96b531f0b39cbfa
Signed-off-by: micky387 <mickaelsaibi@free.fr>
diff --git a/panel/Makefile b/panel/Makefile
deleted file mode 100644
index d423e08..0000000
--- a/panel/Makefile
+++ /dev/null
@@ -1,541 +0,0 @@
-# $Id: Makefile.in,v 1.69 2015/08/05 23:15:41 tom Exp $
-##############################################################################
-# Copyright (c) 1998-2014,2015 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"), #
-# to deal in the Software without restriction, including without limitation  #
-# the rights to use, copy, modify, merge, publish, distribute, distribute    #
-# with modifications, sublicense, and/or sell copies of the Software, and to #
-# permit persons to whom the Software is furnished to do so, subject to the  #
-# following conditions:                                                      #
-#                                                                            #
-# The above copyright notice and this permission notice shall be included in #
-# all copies or substantial portions of the Software.                        #
-#                                                                            #
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,   #
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL    #
-# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER      #
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING    #
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER        #
-# DEALINGS IN THE SOFTWARE.                                                  #
-#                                                                            #
-# Except as contained in this notice, the name(s) of the above copyright     #
-# holders shall not be used in advertising or otherwise to promote the sale, #
-# use or other dealings in this Software without prior written               #
-# authorization.                                                             #
-##############################################################################
-#
-# Author: Thomas E. Dickey 1996-on
-#
-# Makefile for panels source code.
-#
-# This makes the following:
-#	libraries (normal/debug/profile/shared)
-#
-# The variable 'srcdir' refers to the source-distribution, and can be set with
-# the configure script by "--srcdir=DIR".
-#
-# The rules are organized to produce the libraries for the configured models,
-
-# turn off _all_ suffix rules; we'll generate our own
-.SUFFIXES:
-
-SHELL		= /bin/sh
-
-THIS		= Makefile
-
-x		= 
-o		= .o
-
-MODEL		= normal
-DESTDIR		= 
-top_srcdir	= ..
-srcdir		= .
-prefix		= /system
-exec_prefix	= ${prefix}
-bindir		= ${exec_prefix}/bin
-libdir		= ${exec_prefix}/lib
-includedir	= ${prefix}/include
-datarootdir	= ${prefix}/share
-datadir		= ${datarootdir}
-includesubdir	= /ncurses
-
-INCLUDEDIR	= $(DESTDIR)$(includedir)$(includesubdir)
-
-PACKAGE		= ncurses
-
-LIBTOOL		= 
-LIBTOOL_OPTS	=  
-LIBTOOL_CLEAN	= 
-LIBTOOL_COMPILE	= 
-LIBTOOL_LINK	= ${CC}
-LIBTOOL_INSTALL	= 
-LIBTOOL_UNINSTALL = 
-LT_UNDEF	= 
-
-INSTALL		= /usr/bin/install -c
-INSTALL_LIB	= /usr/bin/install -c -m 644
-INSTALL_PROG	= ${INSTALL}
-INSTALL_DATA	= ${INSTALL} -m 644
-
-AR		= arm-linux-androideabi-ar
-ARFLAGS		= -curv
-AWK		= mawk
-LD		= arm-linux-androideabi-ld
-LN_S		= ln -s -f
-
-CTAGS		= 
-ETAGS		= 
-
-CC		= /home/shade/dev/cm/13/prebuilts/clang/linux-x86/host/3.6/bin/clang
-CPP		= /home/shade/dev/cm/13/prebuilts/clang/linux-x86/host/3.6/bin/clang -E
-CFLAGS		= -target arm-linux-androideabi -I/home/shade/dev/cm/13/bionic/libc/include -I/home/shade/dev/cm/13/bionic/libc/kernel/uapi -I/home/shade/dev/cm/13/bionic/libc/arch-arm/include -I/home/shade/dev/cm/13/bionic/libc/kernel/uapi/asm-arm --sysroot=/home/shade/dev/cm/13/prebuilts/ndk/current/platforms/android-21/arch-arm -L/home/shade/dev/cm/13/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x-google/armv7-a -I/home/shade/dev/cm/13/bionic/libm/include -I/home/shade/dev/cm/13/bionic/libm/include/arm -I/home/shade/dev/cm/13/external/libselinux/include -I/home/shade/dev/cm/13/system/core/include -I/home/shade/dev/cm/13/bionic/libc/dns/include -I.  --param max-inline-insns-single=1200
-
-CPPFLAGS	= -I${top_srcdir}/ncurses -DHAVE_CONFIG_H -I. -I../include   -D_XOPEN_SOURCE=500 -D_FILE_OFFSET_BITS=64  -DNDEBUG
-
-CCFLAGS		= $(CPPFLAGS) $(CFLAGS)
-
-CFLAGS_LIBTOOL	= $(CCFLAGS)
-CFLAGS_NORMAL	= $(CCFLAGS)
-CFLAGS_DEBUG	= $(CCFLAGS) -g -DTRACE
-CFLAGS_PROFILE	= $(CCFLAGS) -pg
-CFLAGS_SHARED	= $(CCFLAGS) -fPIC
-
-CFLAGS_DEFAULT	= $(CFLAGS_NORMAL)
-
-LINK		= $(LIBTOOL_LINK)
-LDFLAGS		= -L/home/shade/dev/cm/13/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x-google/armv7-a -L/home/shade/dev/cm/13/out/target/product/bacon/system/lib -lc -lselinux -lcutils  
-
-SHLIB_DIRS	= -L../lib
-SHLIB_LIST	= $(SHLIB_DIRS) -lncurses 
-
-RPATH_LIST	= ${libdir}
-RESULTING_SYMS	= 
-VERSIONED_SYMS	= 
-MK_SHARED_LIB	= ${CC} ${CFLAGS} -shared -Wl,-soname,`basename $@ .${REL_VERSION}`.${ABI_VERSION},-stats,-lc -o $@
-
-NCURSES_MAJOR	= 6
-NCURSES_MINOR	= 0
-REL_VERSION	= 6.0
-ABI_VERSION	= 6
-
-RANLIB		= arm-linux-androideabi-ranlib
-
-LIBRARIES	=  ../lib/libpanel.a ../lib/libpanel_g.a
-
-LINT		= lint
-LINT_OPTS	= 
-LINT_LIBS	= -lpanel -lncurses 
-
-AUTO_SRC	= \
-		../include/panel.h
-
-################################################################################
-all \
-libs \
-install ::	$(AUTO_SRC) $(LIBRARIES)
-
-sources:	$(AUTO_SRC)
-
-$(DESTDIR)$(bindir) \
-$(DESTDIR)$(libdir) :
-	mkdir -p $@
-
-# make a copy to simplify include-paths while still keeping panel's include
-# file in this directory.
-../include/panel.h : $(srcdir)/panel.h
-	-rm -f $@
-	cp $(srcdir)/panel.h $@
-
-HEADER_DEPS = \
-	$(srcdir)/panel.priv.h \
-	$(srcdir)/panel.h
-
-tags:
-	$(CTAGS) *.[ch]
-
-#TAGS:
-#	$(ETAGS) *.[ch]
-
-mostlyclean ::
-	-rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace
-
-clean :: mostlyclean
-	-rm -f $(AUTO_SRC)
-	-rm -rf .libs *.dSYM
-
-distclean :: clean
-	-rm -f Makefile
-
-realclean :: distclean
-
-###############################################################################
-# The remainder of this file is automatically generated during configuration
-###############################################################################
-
-# Generated by CF_LIB_RULES
-resulting.map: 
-	sed  -e "s/NCURSES\([WT]\+\)\?_/NCURSES\16_/g" -e "/deprecated in ABI6/d" <  >$@
-
-clean::
-	rm -f resulting.map
-
-# generated by mk-0th.awk
-#   libname:    panel
-#   subsets:    ticlib+termlib+ext_tinfo+base+ext_funcs
-
-.SUFFIXES: .c .cc .h .i .ii
-.c.i :
-	$(CPP) $(CPPFLAGS) $< >$@
-.cc.ii :
-	$(CPP) $(CPPFLAGS) $< >$@
-.h.i :
-	$(CPP) $(CPPFLAGS) $< >$@
-
-C_SRC = \
-	$(srcdir)/panel.c \
-	$(srcdir)/p_above.c \
-	$(srcdir)/p_below.c \
-	$(srcdir)/p_bottom.c \
-	$(srcdir)/p_delete.c \
-	$(srcdir)/p_hide.c \
-	$(srcdir)/p_hidden.c \
-	$(srcdir)/p_move.c \
-	$(srcdir)/p_new.c \
-	$(srcdir)/p_replace.c \
-	$(srcdir)/p_show.c \
-	$(srcdir)/p_top.c \
-	$(srcdir)/p_update.c \
-	$(srcdir)/p_user.c \
-	$(srcdir)/p_win.c
-
-# Producing llib-lpanel is time-consuming, so there's no direct-dependency for
-# it in the lintlib rule.  We'll only remove in the cleanest setup.
-
-PANEL_SRC = \
-	$(srcdir)/panel.c \
-	$(srcdir)/p_above.c \
-	$(srcdir)/p_below.c \
-	$(srcdir)/p_bottom.c \
-	$(srcdir)/p_delete.c \
-	$(srcdir)/p_hide.c \
-	$(srcdir)/p_hidden.c \
-	$(srcdir)/p_move.c \
-	$(srcdir)/p_new.c \
-	$(srcdir)/p_replace.c \
-	$(srcdir)/p_show.c \
-	$(srcdir)/p_top.c \
-	$(srcdir)/p_update.c \
-	$(srcdir)/p_user.c \
-	$(srcdir)/p_win.c
-
-clean ::
-	rm -f llib-lpanel.*
-
-realclean ::
-	rm -f llib-lpanel
-
-llib-lpanel : $(PANEL_SRC)
-	cproto -a -l -DNCURSES_ENABLE_STDBOOL_H=0 -DLINT $(CPPFLAGS) $(PANEL_SRC) >$@
-
-lintlib ::
-	sh $(srcdir)/../misc/makellib panel $(CPPFLAGS)
-
-lint ::
-	$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(PANEL_SRC) $(LINT_LIBS)
-
-# generated by mk-1st.awk (subset=ticlib+termlib+ext_tinfo+base+ext_funcs)
-#  name:          panel
-#  traces:        DEBUG
-#  MODEL:         NORMAL
-#  CXX_MODEL:     NORMAL
-#  model:         objects
-#  prefix:        lib
-#  suffix:        .a
-#  subset:        ticlib+termlib+ext_tinfo+base+ext_funcs
-#  driver:        no
-#  ShlibVer:      rel
-#  ShlibVerInfix: no
-#  SymLink:       ln -s -f
-#  TermlibRoot:   ncurses
-#  TermlibSuffix: .a
-#  ReLink:        no
-#  DoLinks:       yes
-#  rmSoLocs:      no
-#  ldconfig:      :
-#  overwrite:     no
-#  depend:        ../include/ncurses_cfg.h ./panel.priv.h
-#  host:          arm-unknown-linux-androideabi
-
-NORMAL_OBJS = \
-	../objects/panel$o \
-	../objects/p_above$o \
-	../objects/p_below$o \
-	../objects/p_bottom$o \
-	../objects/p_delete$o \
-	../objects/p_hide$o \
-	../objects/p_hidden$o \
-	../objects/p_move$o \
-	../objects/p_new$o \
-	../objects/p_replace$o \
-	../objects/p_show$o \
-	../objects/p_top$o \
-	../objects/p_update$o \
-	../objects/p_user$o \
-	../objects/p_win$o
-
-$(NORMAL_OBJS) : ../include/ncurses_cfg.h ./panel.priv.h
-
-../lib/libpanel.a : $(NORMAL_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-install \
-install.libs \
-install.panel :: $(DESTDIR)$(libdir) ../lib/libpanel.a
-	@echo installing ../lib/libpanel.a as $(DESTDIR)$(libdir)/libpanel.a
-	$(INSTALL_DATA) ../lib/libpanel.a $(DESTDIR)$(libdir)/libpanel.a
-	$(RANLIB) $(DESTDIR)$(libdir)/libpanel.a
-
-uninstall \
-uninstall.libs \
-uninstall.panel ::
-	@echo uninstalling $(DESTDIR)$(libdir)/libpanel.a
-	-@rm -f $(DESTDIR)$(libdir)/libpanel.a
-
-clean ::
-	-rm -f ../lib/libpanel.a
-
-mostlyclean::
-	-rm -f $(NORMAL_OBJS)
-
-# generated by mk-2nd.awk
-#   model:      objects
-#   MODEL:      NORMAL
-#   echo:       yes
-#   subset:     ticlib+termlib+ext_tinfo+base+ext_funcs
-#   crenames:   yes
-#   cxxrenames: 
-#   traces:     DEBUG
-#   srcdir:     .
-
-../objects/panel$o :	$(srcdir)/panel.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/panel.c -o ../objects/panel$o
-
-../objects/p_above$o :	$(srcdir)/p_above.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_above.c -o ../objects/p_above$o
-
-../objects/p_below$o :	$(srcdir)/p_below.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_below.c -o ../objects/p_below$o
-
-../objects/p_bottom$o :	$(srcdir)/p_bottom.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_bottom.c -o ../objects/p_bottom$o
-
-../objects/p_delete$o :	$(srcdir)/p_delete.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_delete.c -o ../objects/p_delete$o
-
-../objects/p_hide$o :	$(srcdir)/p_hide.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_hide.c -o ../objects/p_hide$o
-
-../objects/p_hidden$o :	$(srcdir)/p_hidden.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_hidden.c -o ../objects/p_hidden$o
-
-../objects/p_move$o :	$(srcdir)/p_move.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_move.c -o ../objects/p_move$o
-
-../objects/p_new$o :	$(srcdir)/p_new.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_new.c -o ../objects/p_new$o
-
-../objects/p_replace$o :	$(srcdir)/p_replace.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_replace.c -o ../objects/p_replace$o
-
-../objects/p_show$o :	$(srcdir)/p_show.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_show.c -o ../objects/p_show$o
-
-../objects/p_top$o :	$(srcdir)/p_top.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_top.c -o ../objects/p_top$o
-
-../objects/p_update$o :	$(srcdir)/p_update.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_update.c -o ../objects/p_update$o
-
-../objects/p_user$o :	$(srcdir)/p_user.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_user.c -o ../objects/p_user$o
-
-../objects/p_win$o :	$(srcdir)/p_win.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_NORMAL) -c ../panel/p_win.c -o ../objects/p_win$o
-
-
-# generated by mk-1st.awk (subset=ticlib+termlib+ext_tinfo+base+ext_funcs)
-#  name:          panel
-#  traces:        DEBUG
-#  MODEL:         DEBUG
-#  CXX_MODEL:     DEBUG
-#  model:         obj_g
-#  prefix:        lib
-#  suffix:        _g.a
-#  subset:        ticlib+termlib+ext_tinfo+base+ext_funcs
-#  driver:        no
-#  ShlibVer:      rel
-#  ShlibVerInfix: no
-#  SymLink:       ln -s -f
-#  TermlibRoot:   ncurses
-#  TermlibSuffix: .a
-#  ReLink:        no
-#  DoLinks:       yes
-#  rmSoLocs:      no
-#  ldconfig:      :
-#  overwrite:     no
-#  depend:        ../include/ncurses_cfg.h ./panel.priv.h
-#  host:          arm-unknown-linux-androideabi
-
-DEBUG_OBJS = \
-	../obj_g/panel$o \
-	../obj_g/p_above$o \
-	../obj_g/p_below$o \
-	../obj_g/p_bottom$o \
-	../obj_g/p_delete$o \
-	../obj_g/p_hide$o \
-	../obj_g/p_hidden$o \
-	../obj_g/p_move$o \
-	../obj_g/p_new$o \
-	../obj_g/p_replace$o \
-	../obj_g/p_show$o \
-	../obj_g/p_top$o \
-	../obj_g/p_update$o \
-	../obj_g/p_user$o \
-	../obj_g/p_win$o
-
-$(DEBUG_OBJS) : ../include/ncurses_cfg.h ./panel.priv.h
-
-../lib/libpanel_g.a : $(DEBUG_OBJS)
-	$(AR) $(ARFLAGS) $@ $?
-	$(RANLIB) $@
-
-install \
-install.libs \
-install.panel :: $(DESTDIR)$(libdir) ../lib/libpanel_g.a
-	@echo installing ../lib/libpanel_g.a as $(DESTDIR)$(libdir)/libpanel_g.a
-	$(INSTALL_DATA) ../lib/libpanel_g.a $(DESTDIR)$(libdir)/libpanel_g.a
-	$(RANLIB) $(DESTDIR)$(libdir)/libpanel_g.a
-
-uninstall \
-uninstall.libs \
-uninstall.panel ::
-	@echo uninstalling $(DESTDIR)$(libdir)/libpanel_g.a
-	-@rm -f $(DESTDIR)$(libdir)/libpanel_g.a
-
-clean ::
-	-rm -f ../lib/libpanel_g.a
-
-mostlyclean::
-	-rm -f $(DEBUG_OBJS)
-
-# generated by mk-2nd.awk
-#   model:      obj_g
-#   MODEL:      DEBUG
-#   echo:       yes
-#   subset:     ticlib+termlib+ext_tinfo+base+ext_funcs
-#   crenames:   yes
-#   cxxrenames: 
-#   traces:     DEBUG
-#   srcdir:     .
-
-../obj_g/panel$o :	$(srcdir)/panel.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/panel.c -o ../obj_g/panel$o
-
-../obj_g/p_above$o :	$(srcdir)/p_above.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_above.c -o ../obj_g/p_above$o
-
-../obj_g/p_below$o :	$(srcdir)/p_below.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_below.c -o ../obj_g/p_below$o
-
-../obj_g/p_bottom$o :	$(srcdir)/p_bottom.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_bottom.c -o ../obj_g/p_bottom$o
-
-../obj_g/p_delete$o :	$(srcdir)/p_delete.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_delete.c -o ../obj_g/p_delete$o
-
-../obj_g/p_hide$o :	$(srcdir)/p_hide.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_hide.c -o ../obj_g/p_hide$o
-
-../obj_g/p_hidden$o :	$(srcdir)/p_hidden.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_hidden.c -o ../obj_g/p_hidden$o
-
-../obj_g/p_move$o :	$(srcdir)/p_move.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_move.c -o ../obj_g/p_move$o
-
-../obj_g/p_new$o :	$(srcdir)/p_new.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_new.c -o ../obj_g/p_new$o
-
-../obj_g/p_replace$o :	$(srcdir)/p_replace.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_replace.c -o ../obj_g/p_replace$o
-
-../obj_g/p_show$o :	$(srcdir)/p_show.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_show.c -o ../obj_g/p_show$o
-
-../obj_g/p_top$o :	$(srcdir)/p_top.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_top.c -o ../obj_g/p_top$o
-
-../obj_g/p_update$o :	$(srcdir)/p_update.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_update.c -o ../obj_g/p_update$o
-
-../obj_g/p_user$o :	$(srcdir)/p_user.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_user.c -o ../obj_g/p_user$o
-
-../obj_g/p_win$o :	$(srcdir)/p_win.c \
-			$(HEADER_DEPS)
-	$(LIBTOOL_COMPILE) $(CC) $(CFLAGS_DEBUG) -c ../panel/p_win.c -o ../obj_g/p_win$o
-
-
-# generated by mk-hdr.awk
-#  subset:     ticlib+termlib+ext_tinfo+base+ext_funcs
-#  compat:     yes
-
-${INCLUDEDIR} :
-	mkdir -p $@
-
-install \
-install.libs \
-install.includes :: ${AUTO_SRC} ${INCLUDEDIR} \
-		$(srcdir)/panel.h
-	@ (cd ${INCLUDEDIR} && rm -f panel.h) ; ../headers.sh ${INSTALL_DATA} ${INCLUDEDIR} ${srcdir} $(srcdir)/panel.h
-
-uninstall \
-uninstall.libs \
-uninstall.includes ::
-	-@ (cd ${INCLUDEDIR} && rm -f panel.h)
-depend : ${AUTO_SRC}
-	makedepend -- ${CPPFLAGS} -- ${C_SRC}
-
-# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/panel/Makefile.in b/panel/Makefile.in
index 5ed4b02..380f80c 100644
--- a/panel/Makefile.in
+++ b/panel/Makefile.in
@@ -1,6 +1,7 @@
-# $Id: Makefile.in,v 1.69 2015/08/05 23:15:41 tom Exp $
+# $Id: Makefile.in,v 1.76 2021/07/03 15:45:33 tom Exp $
 ##############################################################################
-# Copyright (c) 1998-2014,2015 Free Software Foundation, Inc.                #
+# Copyright 2020,2021 Thomas E. Dickey                                       #
+# Copyright 1998-2015,2018 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"), #
@@ -77,7 +78,7 @@
 
 INSTALL		= @INSTALL@
 INSTALL_LIB	= @INSTALL@ @INSTALL_LIB@
-INSTALL_PROG	= @INSTALL_PROGRAM@
+INSTALL_PROG	= @INSTALL_PROGRAM@ @INSTALL_OPT_S@
 INSTALL_DATA	= @INSTALL_DATA@
 
 AR		= @AR@
@@ -91,16 +92,18 @@
 
 CC		= @CC@
 CPP		= @CPP@
-CFLAGS		= @CFLAGS@
+CFLAGS		= @CFLAGS@ @EXTRA_CFLAGS@
 
-CPPFLAGS	= -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
+INCDIR		= $(top_srcdir)/include
+BASE_DIR 	= $(top_srcdir)/ncurses
+CPPFLAGS	= -I$(BASE_DIR) -DHAVE_CONFIG_H -DBUILDING_PANEL @CPPFLAGS@
 
 CCFLAGS		= $(CPPFLAGS) $(CFLAGS)
 
 CFLAGS_LIBTOOL	= $(CCFLAGS)
-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@)
@@ -133,6 +136,19 @@
 		../include/panel.h
 
 ################################################################################
+
+@MAKE_PHONY@.PHONY :	all
+@MAKE_PHONY@.PHONY :	clean
+@MAKE_PHONY@.PHONY :	distclean
+@MAKE_PHONY@.PHONY :	install
+@MAKE_PHONY@.PHONY :	install.libs
+@MAKE_PHONY@.PHONY :	libs
+@MAKE_PHONY@.PHONY :	mostlyclean
+@MAKE_PHONY@.PHONY :	realclean
+@MAKE_PHONY@.PHONY :	sources
+@MAKE_PHONY@.PHONY :	uninstall
+@MAKE_PHONY@.PHONY :	uninstall.libs
+
 all \
 libs \
 install ::	$(AUTO_SRC) $(LIBRARIES)
@@ -150,6 +166,20 @@
 	cp $(srcdir)/panel.h $@
 
 HEADER_DEPS = \
+	../include/curses.h \
+	../include/ncurses_cfg.h \
+	../include/ncurses_def.h \
+	../include/ncurses_dll.h \
+	../include/term.h \
+	../include/unctrl.h \
+	$(BASE_DIR)/curses.priv.h \
+	$(BASE_DIR)/new_pair.h \
+	$(INCDIR)/nc_alloc.h \
+	$(INCDIR)/nc_panel.h \
+	$(INCDIR)/nc_string.h \
+	$(INCDIR)/nc_termios.h \
+	$(INCDIR)/nc_tparm.h \
+	$(INCDIR)/term_entry.h \
 	$(srcdir)/panel.priv.h \
 	$(srcdir)/panel.h
 
diff --git a/panel/headers b/panel/headers
index 8719ea1..b598d13 100644
--- a/panel/headers
+++ b/panel/headers
@@ -1,5 +1,6 @@
 ##############################################################################
-# Copyright (c) 1998,2006 Free Software Foundation, Inc.                     #
+# Copyright 2020 Thomas E. Dickey                                            #
+# Copyright 1998,2006 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"), #
diff --git a/panel/llib-lpanel b/panel/llib-lpanel
index 02e1054..afdea20 100644
--- a/panel/llib-lpanel
+++ b/panel/llib-lpanel
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2010,2015 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 1998-2010,2015 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            *
@@ -42,19 +43,20 @@
 
 #undef _nc_my_visbuf
 const char *_nc_my_visbuf(
-		const void *ptr)
+		const void *ptr,
+		int	n)
 		{ return(*(const char **)0); }
 
 #undef _nc_dPanel
 void	_nc_dPanel(
-		const char *text, 
+		const char *text,
 		const PANEL *pan)
 		{ /* void */ }
 
 #undef _nc_dStack
 void	_nc_dStack(
-		const char *fmt, 
-		int	num, 
+		const char *fmt,
+		int	num,
 		const PANEL *pan)
 		{ /* void */ }
 
@@ -70,8 +72,8 @@
 
 #undef _nc_Touchline
 void	_nc_Touchline(
-		const PANEL *pan, 
-		int	start, 
+		const PANEL *pan,
+		int	start,
 		int	count)
 		{ /* void */ }
 
@@ -131,8 +133,8 @@
 
 #undef move_panel
 int	move_panel(
-		PANEL	*pan, 
-		int	starty, 
+		PANEL	*pan,
+		int	starty,
 		int	startx)
 		{ return(*(int *)0); }
 
@@ -147,7 +149,7 @@
 
 #undef replace_panel
 int	replace_panel(
-		PANEL	*pan, 
+		PANEL	*pan,
 		WINDOW	*win)
 		{ return(*(int *)0); }
 
@@ -180,7 +182,7 @@
 
 #undef set_panel_userptr
 int	set_panel_userptr(
-		PANEL	*pan, 
+		PANEL	*pan,
 		const void *uptr)
 		{ return(*(int *)0); }
 
diff --git a/panel/llib-lpanelt b/panel/llib-lpanelt
index efa4175..0b99683 100644
--- a/panel/llib-lpanelt
+++ b/panel/llib-lpanelt
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 2010-2010,2015 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 2010,2015 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            *
@@ -42,19 +43,20 @@
 
 #undef _nc_my_visbuf
 const char *_nc_my_visbuf(
-		const void *ptr)
+		const void *ptr,
+		int	n)
 		{ return(*(const char **)0); }
 
 #undef _nc_dPanel
 void	_nc_dPanel(
-		const char *text, 
+		const char *text,
 		const PANEL *pan)
 		{ /* void */ }
 
 #undef _nc_dStack
 void	_nc_dStack(
-		const char *fmt, 
-		int	num, 
+		const char *fmt,
+		int	num,
 		const PANEL *pan)
 		{ /* void */ }
 
@@ -70,8 +72,8 @@
 
 #undef _nc_Touchline
 void	_nc_Touchline(
-		const PANEL *pan, 
-		int	start, 
+		const PANEL *pan,
+		int	start,
 		int	count)
 		{ /* void */ }
 
@@ -131,8 +133,8 @@
 
 #undef move_panel
 int	move_panel(
-		PANEL	*pan, 
-		int	starty, 
+		PANEL	*pan,
+		int	starty,
 		int	startx)
 		{ return(*(int *)0); }
 
@@ -147,7 +149,7 @@
 
 #undef replace_panel
 int	replace_panel(
-		PANEL	*pan, 
+		PANEL	*pan,
 		WINDOW	*win)
 		{ return(*(int *)0); }
 
@@ -180,7 +182,7 @@
 
 #undef set_panel_userptr
 int	set_panel_userptr(
-		PANEL	*pan, 
+		PANEL	*pan,
 		const void *uptr)
 		{ return(*(int *)0); }
 
diff --git a/panel/llib-lpaneltw b/panel/llib-lpaneltw
index efa4175..0b99683 100644
--- a/panel/llib-lpaneltw
+++ b/panel/llib-lpaneltw
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 2010-2010,2015 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 2010,2015 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            *
@@ -42,19 +43,20 @@
 
 #undef _nc_my_visbuf
 const char *_nc_my_visbuf(
-		const void *ptr)
+		const void *ptr,
+		int	n)
 		{ return(*(const char **)0); }
 
 #undef _nc_dPanel
 void	_nc_dPanel(
-		const char *text, 
+		const char *text,
 		const PANEL *pan)
 		{ /* void */ }
 
 #undef _nc_dStack
 void	_nc_dStack(
-		const char *fmt, 
-		int	num, 
+		const char *fmt,
+		int	num,
 		const PANEL *pan)
 		{ /* void */ }
 
@@ -70,8 +72,8 @@
 
 #undef _nc_Touchline
 void	_nc_Touchline(
-		const PANEL *pan, 
-		int	start, 
+		const PANEL *pan,
+		int	start,
 		int	count)
 		{ /* void */ }
 
@@ -131,8 +133,8 @@
 
 #undef move_panel
 int	move_panel(
-		PANEL	*pan, 
-		int	starty, 
+		PANEL	*pan,
+		int	starty,
 		int	startx)
 		{ return(*(int *)0); }
 
@@ -147,7 +149,7 @@
 
 #undef replace_panel
 int	replace_panel(
-		PANEL	*pan, 
+		PANEL	*pan,
 		WINDOW	*win)
 		{ return(*(int *)0); }
 
@@ -180,7 +182,7 @@
 
 #undef set_panel_userptr
 int	set_panel_userptr(
-		PANEL	*pan, 
+		PANEL	*pan,
 		const void *uptr)
 		{ return(*(int *)0); }
 
diff --git a/panel/llib-lpanelw b/panel/llib-lpanelw
index 4d6688e..7ed8b3c 100644
--- a/panel/llib-lpanelw
+++ b/panel/llib-lpanelw
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 2002-2010,2015 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 2002-2010,2015 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            *
@@ -42,19 +43,20 @@
 
 #undef _nc_my_visbuf
 const char *_nc_my_visbuf(
-		const void *ptr)
+		const void *ptr,
+		int	n)
 		{ return(*(const char **)0); }
 
 #undef _nc_dPanel
 void	_nc_dPanel(
-		const char *text, 
+		const char *text,
 		const PANEL *pan)
 		{ /* void */ }
 
 #undef _nc_dStack
 void	_nc_dStack(
-		const char *fmt, 
-		int	num, 
+		const char *fmt,
+		int	num,
 		const PANEL *pan)
 		{ /* void */ }
 
@@ -70,8 +72,8 @@
 
 #undef _nc_Touchline
 void	_nc_Touchline(
-		const PANEL *pan, 
-		int	start, 
+		const PANEL *pan,
+		int	start,
 		int	count)
 		{ /* void */ }
 
@@ -131,8 +133,8 @@
 
 #undef move_panel
 int	move_panel(
-		PANEL	*pan, 
-		int	starty, 
+		PANEL	*pan,
+		int	starty,
 		int	startx)
 		{ return(*(int *)0); }
 
@@ -147,7 +149,7 @@
 
 #undef replace_panel
 int	replace_panel(
-		PANEL	*pan, 
+		PANEL	*pan,
 		WINDOW	*win)
 		{ return(*(int *)0); }
 
@@ -180,7 +182,7 @@
 
 #undef set_panel_userptr
 int	set_panel_userptr(
-		PANEL	*pan, 
+		PANEL	*pan,
 		const void *uptr)
 		{ return(*(int *)0); }
 
diff --git a/panel/modules b/panel/modules
index cd3f545..4b0c9d8 100644
--- a/panel/modules
+++ b/panel/modules
@@ -1,6 +1,7 @@
-# $Id: modules,v 1.10 2010/01/23 16:31:16 tom Exp $
+# $Id: modules,v 1.11 2020/02/02 23:34:34 tom Exp $
 ##############################################################################
-# Copyright (c) 1998-2006,2010 Free Software Foundation, Inc.                #
+# Copyright 2020 Thomas E. Dickey                                            #
+# Copyright 1998-2006,2010 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"), #
diff --git a/panel/p_above.c b/panel/p_above.c
index 76209fe..2a6fde5 100644
--- a/panel/p_above.c
+++ b/panel/p_above.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2010,2012 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            *
@@ -36,10 +37,10 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_above.c,v 1.9 2012/03/10 23:43:41 tom Exp $")
+MODULE_ID("$Id: p_above.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
 #if NCURSES_SP_FUNCS
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 ground_panel(SCREEN * sp)
 {
   T((T_CALLED("ground_panel(%p)"), (void *)sp));
@@ -62,7 +63,7 @@
 }
 #endif
 
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 panel_above(const PANEL * pan)
 {
   PANEL *result;
diff --git a/panel/p_below.c b/panel/p_below.c
index 913efa9..100393d 100644
--- a/panel/p_below.c
+++ b/panel/p_below.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2010,2012 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            *
@@ -36,10 +37,10 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_below.c,v 1.9 2012/03/10 23:43:41 tom Exp $")
+MODULE_ID("$Id: p_below.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
 #if NCURSES_SP_FUNCS
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 ceiling_panel(SCREEN * sp)
 {
   T((T_CALLED("ceiling_panel(%p)"), (void *)sp));
@@ -60,7 +61,7 @@
 }
 #endif
 
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 panel_below(const PANEL * pan)
 {
   PANEL *result;
diff --git a/panel/p_bottom.c b/panel/p_bottom.c
index db81441..3ca9c77 100644
--- a/panel/p_bottom.c
+++ b/panel/p_bottom.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 1998-2008,2010 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            *
@@ -33,13 +34,13 @@
  ****************************************************************************/
 
 /* p_bottom.c
- * Place a panel on bottom of the stack; may already be in the stack 
+ * Place a panel on bottom of the stack; may already be in the stack
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_bottom.c,v 1.13 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_bottom.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 bottom_panel(PANEL * pan)
 {
   int err = OK;
@@ -51,7 +52,7 @@
       if (!Is_Bottom(pan))
 	{
 
-	  dBug(("--> bottom_panel %s", USER_PTR(pan->user)));
+	  dBug(("--> bottom_panel %s", USER_PTR(pan->user, 1)));
 
 	  HIDE_PANEL(pan, err, OK);
 	  assert(_nc_bottom_panel == _nc_stdscr_pseudo_panel);
diff --git a/panel/p_delete.c b/panel/p_delete.c
index 39b0553..da3dcdf 100644
--- a/panel/p_delete.c
+++ b/panel/p_delete.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2010 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            *
@@ -37,22 +38,21 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_delete.c,v 1.10 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_delete.c,v 1.17 2020/12/26 18:25:34 tom Exp $")
 
-NCURSES_EXPORT(int)
-del_panel(PANEL * pan)
+PANEL_EXPORT(int)
+del_panel(PANEL *pan)
 {
   int err = OK;
 
   T((T_CALLED("del_panel(%p)"), (void *)pan));
   if (pan)
     {
-      dBug(("--> del_panel %s", USER_PTR(pan->user)));
-      {
-	GetHook(pan);
-	HIDE_PANEL(pan, err, OK);
-	free((void *)pan);
-      }
+      GetHook(pan);
+      HIDE_PANEL(pan, err, OK);
+      dBug(("...discard ptr=%s", USER_PTR(pan->user, 1)));
+      dBug(("...deleted pan=%p", (void *)pan));
+      free((void *)pan);
     }
   else
     err = ERR;
diff --git a/panel/p_hidden.c b/panel/p_hidden.c
index 01b69b9..43057fa 100644
--- a/panel/p_hidden.c
+++ b/panel/p_hidden.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2010 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            *
@@ -37,9 +38,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_hidden.c,v 1.9 2010/01/23 21:22:15 tom Exp $")
+MODULE_ID("$Id: p_hidden.c,v 1.11 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 panel_hidden(const PANEL * pan)
 {
   int rc = ERR;
diff --git a/panel/p_hide.c b/panel/p_hide.c
index 7b780d4..6a372ac 100644
--- a/panel/p_hide.c
+++ b/panel/p_hide.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2010 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            *
@@ -36,9 +37,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_hide.c,v 1.11 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_hide.c,v 1.14 2020/09/26 18:02:35 tom Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 hide_panel(register PANEL * pan)
 {
   int err = ERR;
@@ -49,7 +50,7 @@
     {
       GetHook(pan);
 
-      dBug(("--> hide_panel %s", USER_PTR(pan->user)));
+      dBug(("--> hide_panel %s", USER_PTR(pan->user, 1)));
       dStack("<u%d>", 1, pan);
 
       HIDE_PANEL(pan, err, ERR);
diff --git a/panel/p_move.c b/panel/p_move.c
index adae645..7ff6fa7 100644
--- a/panel/p_move.c
+++ b/panel/p_move.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2008,2010 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            *
@@ -37,9 +38,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_move.c,v 1.11 2010/01/23 21:22:15 tom Exp $")
+MODULE_ID("$Id: p_move.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 move_panel(PANEL * pan, int starty, int startx)
 {
   int rc = ERR;
diff --git a/panel/p_new.c b/panel/p_new.c
index 235336c..cf11640 100644
--- a/panel/p_new.c
+++ b/panel/p_new.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 1998-2009,2010 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            *
@@ -34,15 +35,33 @@
  ****************************************************************************/
 
 /* p_new.c
- * Creation of a new panel 
+ * Creation of a new panel
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_new.c,v 1.16 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_new.c,v 1.24 2021/10/23 15:12:06 tom Exp $")
 
 #ifdef TRACE
 static char *stdscr_id;
 static char *new_id;
+
+static PANEL *
+AllocPanel(const char *name)
+{
+  PANEL *result = typeMalloc(PANEL, 1);
+
+  _tracef("create :%s %p", name, (void *)result);
+  return result;
+}
+#define InitUser(name) \
+	if (!name ## _id) \
+	    name ## _id = strdup(#name); \
+	pan->user = name ## _id; \
+	_tracef("create :user_ptr %p", pan->user)
+#else
+#define AllocPanel(name) typeMalloc(PANEL, 1)
+#define InitUser(name) \
+	  pan->user = (void *)0
 #endif
 
 /*+-------------------------------------------------------------------------
@@ -59,39 +78,33 @@
   struct panelhook *ph = _nc_panelhook();
 #endif
 
-  if (_nc_stdscr_pseudo_panel == (PANEL *) 0)
+  if (_nc_stdscr_pseudo_panel == (PANEL *)0)
     {
 
       assert(SP_PARM && SP_PARM->_stdscr && !_nc_bottom_panel && !_nc_top_panel);
 #if NO_LEAKS
       ph->destroy = del_panel;
 #endif
-      _nc_stdscr_pseudo_panel = typeMalloc(PANEL, 1);
+      _nc_stdscr_pseudo_panel = AllocPanel("root_panel");
       if (_nc_stdscr_pseudo_panel != 0)
 	{
 	  PANEL *pan = _nc_stdscr_pseudo_panel;
 	  WINDOW *win = SP_PARM->_stdscr;
 
 	  pan->win = win;
-	  pan->below = (PANEL *) 0;
-	  pan->above = (PANEL *) 0;
-#ifdef TRACE
-	  if (!stdscr_id)
-	    stdscr_id = strdup("stdscr");
-	  pan->user = stdscr_id;
-#else
-	  pan->user = (void *)0;
-#endif
+	  pan->below = (PANEL *)0;
+	  pan->above = (PANEL *)0;
+	  InitUser(stdscr);
 	  _nc_bottom_panel = _nc_top_panel = pan;
 	}
     }
   return _nc_stdscr_pseudo_panel;
 }
 
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 new_panel(WINDOW *win)
 {
-  PANEL *pan = (PANEL *) 0;
+  PANEL *pan = (PANEL *)0;
 
   GetWindowHook(win);
 
@@ -104,18 +117,12 @@
     (void)root_panel(NCURSES_SP_ARG);
   assert(_nc_stdscr_pseudo_panel);
 
-  if (!(win->_flags & _ISPAD) && (pan = typeMalloc(PANEL, 1)))
+  if ((pan = AllocPanel("new_panel")) != NULL)
     {
       pan->win = win;
-      pan->above = (PANEL *) 0;
-      pan->below = (PANEL *) 0;
-#ifdef TRACE
-      if (!new_id)
-	new_id = strdup("new");
-      pan->user = new_id;
-#else
-      pan->user = (char *)0;
-#endif
+      pan->above = (PANEL *)0;
+      pan->below = (PANEL *)0;
+      InitUser(new);
       (void)show_panel(pan);
     }
   returnPanel(pan);
diff --git a/panel/p_replace.c b/panel/p_replace.c
index d3733ed..a2d56ae 100644
--- a/panel/p_replace.c
+++ b/panel/p_replace.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2010 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            *
@@ -36,9 +37,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_replace.c,v 1.11 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_replace.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 replace_panel(PANEL * pan, WINDOW *win)
 {
   int rc = ERR;
diff --git a/panel/p_show.c b/panel/p_show.c
index d5b09bd..3503bec 100644
--- a/panel/p_show.c
+++ b/panel/p_show.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 1998-2009,2010 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            *
@@ -32,13 +33,13 @@
  ****************************************************************************/
 
 /* p_show.c
- * Place a panel on top of the stack; may already be in the stack 
+ * Place a panel on top of the stack; may already be in the stack
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_show.c,v 1.13 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_show.c,v 1.17 2021/06/17 21:20:30 tom Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 show_panel(PANEL * pan)
 {
   int err = ERR;
@@ -52,7 +53,7 @@
       if (Is_Top(pan))
 	returnCode(OK);
 
-      dBug(("--> show_panel %s", USER_PTR(pan->user)));
+      dBug(("--> show_panel %s", USER_PTR(pan->user, 1)));
 
       HIDE_PANEL(pan, err, OK);
 
diff --git a/panel/p_top.c b/panel/p_top.c
index fdcdee9..17abd76 100644
--- a/panel/p_top.c
+++ b/panel/p_top.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2005,2010 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            *
@@ -36,9 +37,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_top.c,v 1.6 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_top.c,v 1.8 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 top_panel(PANEL * pan)
 {
   T((T_CALLED("top_panel(%p)"), (void *)pan));
diff --git a/panel/p_update.c b/panel/p_update.c
index a2f4506..4021296 100644
--- a/panel/p_update.c
+++ b/panel/p_update.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2010 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            *
@@ -37,9 +38,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_update.c,v 1.11 2010/01/23 21:22:16 tom Exp $")
+MODULE_ID("$Id: p_update.c,v 1.13 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 NCURSES_SP_NAME(update_panels) (NCURSES_SP_DCL0)
 {
   PANEL *pan;
@@ -70,7 +71,7 @@
 }
 
 #if NCURSES_SP_FUNCS
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 update_panels(void)
 {
   NCURSES_SP_NAME(update_panels) (CURRENT_SCREEN);
diff --git a/panel/p_user.c b/panel/p_user.c
index deb5bdf..8d65097 100644
--- a/panel/p_user.c
+++ b/panel/p_user.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 1998-2005,2010 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            *
@@ -32,13 +33,13 @@
  ****************************************************************************/
 
 /* p_user.c
- * Set/Get panels user pointer 
+ * Set/Get panels user pointer
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_user.c,v 1.8 2010/01/23 23:18:35 tom Exp $")
+MODULE_ID("$Id: p_user.c,v 1.11 2021/06/17 21:20:30 tom Exp $")
 
-NCURSES_EXPORT(int)
+PANEL_EXPORT(int)
 set_panel_userptr(PANEL * pan, NCURSES_CONST void *uptr)
 {
   T((T_CALLED("set_panel_userptr(%p,%p)"), (void *)pan, (NCURSES_CONST void *)uptr));
@@ -48,7 +49,7 @@
   returnCode(OK);
 }
 
-NCURSES_EXPORT(NCURSES_CONST void *)
+PANEL_EXPORT(NCURSES_CONST void *)
 panel_userptr(const PANEL * pan)
 {
   T((T_CALLED("panel_userptr(%p)"), (const void *)pan));
diff --git a/panel/p_win.c b/panel/p_win.c
index 6643d5c..d188988 100644
--- a/panel/p_win.c
+++ b/panel/p_win.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2005,2010 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            *
@@ -36,9 +37,9 @@
  */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: p_win.c,v 1.6 2010/01/23 21:22:15 tom Exp $")
+MODULE_ID("$Id: p_win.c,v 1.8 2020/05/24 01:40:20 anonymous.maarten Exp $")
 
-NCURSES_EXPORT(WINDOW *)
+PANEL_EXPORT(WINDOW *)
 panel_window(const PANEL * pan)
 {
   T((T_CALLED("panel_window(%p)"), (const void *)pan));
diff --git a/panel/panel.c b/panel/panel.c
index 97bebca..1b2d6e8 100644
--- a/panel/panel.c
+++ b/panel/panel.c
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2010,2012 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            *
@@ -36,13 +37,13 @@
 /* panel.c -- implementation of panels library, some core routines */
 #include "panel.priv.h"
 
-MODULE_ID("$Id: panel.c,v 1.26 2012/02/23 10:02:15 tom Exp $")
+MODULE_ID("$Id: panel.c,v 1.30 2020/09/26 18:05:17 tom Exp $")
 
 /*+-------------------------------------------------------------------------
 	_nc_retrace_panel (pan)
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(PANEL *)
+PANEL_EXPORT(PANEL *)
 _nc_retrace_panel(PANEL * pan)
 {
   T((T_RETURN("%p"), (void *)pan));
@@ -55,16 +56,16 @@
 --------------------------------------------------------------------------*/
 #ifdef TRACE
 #ifndef TRACE_TXT
-NCURSES_EXPORT(const char *)
-_nc_my_visbuf(const void *ptr)
+PANEL_EXPORT(const char *)
+_nc_my_visbuf(const void *ptr, int n)
 {
   char temp[32];
 
   if (ptr != 0)
-    _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "ptr:%p", ptr);
+    _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%p", ptr);
   else
     _nc_STRCPY(temp, "<null>", sizeof(temp));
-  return _nc_visbuf(temp);
+  return _nc_visbuf2(n, temp);
 }
 #endif
 #endif
@@ -73,13 +74,13 @@
 	dPanel(text,pan)
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 _nc_dPanel(const char *text, const PANEL * pan)
 {
   _tracef("%s id=%s b=%s a=%s y=%d x=%d",
-	  text, USER_PTR(pan->user),
-	  (pan->below) ? USER_PTR(pan->below->user) : "--",
-	  (pan->above) ? USER_PTR(pan->above->user) : "--",
+	  text, USER_PTR(pan->user, 1),
+	  (pan->below) ? USER_PTR(pan->below->user, 2) : "--",
+	  (pan->above) ? USER_PTR(pan->above->user, 3) : "--",
 	  PSTARTY(pan), PSTARTX(pan));
 }
 #endif
@@ -88,7 +89,7 @@
 	dStack(fmt,num,pan)
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 _nc_dStack(const char *fmt, int num, const PANEL * pan)
 {
   char s80[80];
@@ -97,10 +98,10 @@
 
   _nc_SPRINTF(s80, _nc_SLIMIT(sizeof(s80)) fmt, num, pan);
   _tracef("%s b=%s t=%s", s80,
-	  (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user) : "--",
-	  (_nc_top_panel) ? USER_PTR(_nc_top_panel->user) : "--");
+	  (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user, 1) : "--",
+	  (_nc_top_panel) ? USER_PTR(_nc_top_panel->user, 2) : "--");
   if (pan)
-    _tracef("pan id=%s", USER_PTR(pan->user));
+    _tracef("pan id=%s", USER_PTR(pan->user, 1));
   pan = _nc_bottom_panel;
   while (pan)
     {
@@ -114,7 +115,7 @@
 	Wnoutrefresh(pan) - debugging hook for wnoutrefresh
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 _nc_Wnoutrefresh(const PANEL * pan)
 {
   dPanel("wnoutrefresh", pan);
@@ -126,7 +127,7 @@
 	Touchpan(pan)
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 _nc_Touchpan(const PANEL * pan)
 {
   dPanel("Touchpan", pan);
@@ -138,7 +139,7 @@
 	Touchline(pan,start,count)
 --------------------------------------------------------------------------*/
 #ifdef TRACE
-NCURSES_EXPORT(void)
+PANEL_EXPORT(void)
 _nc_Touchline(const PANEL * pan, int start, int count)
 {
   char s80[80];
diff --git a/panel/panel.h b/panel/panel.h
index 6ed2061..62acc8f 100644
--- a/panel/panel.h
+++ b/panel/panel.h
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2009,2017 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            *
@@ -32,7 +33,7 @@
  *     and: Juergen Pfeifer                         1996-1999,2008          *
  ****************************************************************************/
 
-/* $Id: panel.h,v 1.11 2009/04/11 19:50:40 tom Exp $ */
+/* $Id: panel.h,v 1.14 2020/07/04 20:38:43 tom Exp $ */
 
 /* panel.h -- interface file for panels library */
 
@@ -42,38 +43,52 @@
 #include <curses.h>
 
 typedef struct panel
+#if !NCURSES_OPAQUE_PANEL
 {
   WINDOW *win;
   struct panel *below;
   struct panel *above;
   NCURSES_CONST void *user;
-} PANEL;
+}
+#endif /* !NCURSES_OPAQUE_PANEL */
+PANEL;
 
 #if	defined(__cplusplus)
 extern "C" {
 #endif
 
-extern NCURSES_EXPORT(WINDOW*) panel_window (const PANEL *);
-extern NCURSES_EXPORT(void)    update_panels (void);
-extern NCURSES_EXPORT(int)     hide_panel (PANEL *);
-extern NCURSES_EXPORT(int)     show_panel (PANEL *);
-extern NCURSES_EXPORT(int)     del_panel (PANEL *);
-extern NCURSES_EXPORT(int)     top_panel (PANEL *);
-extern NCURSES_EXPORT(int)     bottom_panel (PANEL *);
-extern NCURSES_EXPORT(PANEL*)  new_panel (WINDOW *);
-extern NCURSES_EXPORT(PANEL*)  panel_above (const PANEL *);
-extern NCURSES_EXPORT(PANEL*)  panel_below (const PANEL *);
-extern NCURSES_EXPORT(int)     set_panel_userptr (PANEL *, NCURSES_CONST void *);
-extern NCURSES_EXPORT(NCURSES_CONST void*) panel_userptr (const PANEL *);
-extern NCURSES_EXPORT(int)     move_panel (PANEL *, int, int);
-extern NCURSES_EXPORT(int)     replace_panel (PANEL *,WINDOW *);
-extern NCURSES_EXPORT(int)     panel_hidden (const PANEL *);
+#if defined(BUILDING_PANEL)
+# define PANEL_IMPEXP NCURSES_EXPORT_GENERAL_EXPORT
+#else
+# define PANEL_IMPEXP NCURSES_EXPORT_GENERAL_IMPORT
+#endif
+
+#define PANEL_WRAPPED_VAR(type,name) extern PANEL_IMPEXP type NCURSES_PUBLIC_VAR(name)(void)
+
+#define PANEL_EXPORT(type) PANEL_IMPEXP type NCURSES_API
+#define PANEL_EXPORT_VAR(type) PANEL_IMPEXP type
+
+extern PANEL_EXPORT(WINDOW*) panel_window (const PANEL *);
+extern PANEL_EXPORT(void)    update_panels (void);
+extern PANEL_EXPORT(int)     hide_panel (PANEL *);
+extern PANEL_EXPORT(int)     show_panel (PANEL *);
+extern PANEL_EXPORT(int)     del_panel (PANEL *);
+extern PANEL_EXPORT(int)     top_panel (PANEL *);
+extern PANEL_EXPORT(int)     bottom_panel (PANEL *);
+extern PANEL_EXPORT(PANEL*)  new_panel (WINDOW *);
+extern PANEL_EXPORT(PANEL*)  panel_above (const PANEL *);
+extern PANEL_EXPORT(PANEL*)  panel_below (const PANEL *);
+extern PANEL_EXPORT(int)     set_panel_userptr (PANEL *, NCURSES_CONST void *);
+extern PANEL_EXPORT(NCURSES_CONST void*) panel_userptr (const PANEL *);
+extern PANEL_EXPORT(int)     move_panel (PANEL *, int, int);
+extern PANEL_EXPORT(int)     replace_panel (PANEL *,WINDOW *);
+extern PANEL_EXPORT(int)     panel_hidden (const PANEL *);
 
 #if NCURSES_SP_FUNCS
-extern NCURSES_EXPORT(PANEL *) ground_panel(SCREEN *);
-extern NCURSES_EXPORT(PANEL *) ceiling_panel(SCREEN *);
+extern PANEL_EXPORT(PANEL *) ground_panel(SCREEN *);
+extern PANEL_EXPORT(PANEL *) ceiling_panel(SCREEN *);
 
-extern NCURSES_EXPORT(void)    NCURSES_SP_NAME(update_panels) (SCREEN*);
+extern PANEL_EXPORT(void)    NCURSES_SP_NAME(update_panels) (SCREEN*);
 #endif
 
 #if	defined(__cplusplus)
diff --git a/panel/panel.priv.h b/panel/panel.priv.h
index 1156c72..029a4f3 100644
--- a/panel/panel.priv.h
+++ b/panel/panel.priv.h
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc.              *
+ * Copyright 2020 Thomas E. Dickey                                          *
+ * Copyright 1998-2014,2017 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            *
@@ -26,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 
-/* $Id: panel.priv.h,v 1.26 2014/11/01 14:48:03 tom Exp $ */
+/* $Id: panel.priv.h,v 1.30 2020/09/26 18:05:32 tom Exp $ */
 
 #ifndef NCURSES_PANEL_PRIV_H
 #define NCURSES_PANEL_PRIV_H 1
@@ -43,32 +44,27 @@
 struct screen;              /* forward declaration */
 
 #include "curses.priv.h"    /* includes nc_panel.h */
+
+#define NCURSES_OPAQUE_PANEL 0
+
 #include "panel.h"
 
-
-#if USE_RCS_IDS
-#  define MODULE_ID(id) static const char Ident[] = id;
-#else
-#  define MODULE_ID(id) /*nothing*/
-#endif
-
-
 #ifdef TRACE
-   extern NCURSES_EXPORT(const char *) _nc_my_visbuf (const void *);
+   extern PANEL_EXPORT(const char *) _nc_my_visbuf (const void *, int);
 #  ifdef TRACE_TXT
-#    define USER_PTR(ptr) _nc_visbuf((const char *)ptr)
+#    define USER_PTR(ptr,n) _nc_visbuf2(n, (const char *)ptr)
 #  else
-#    define USER_PTR(ptr) _nc_my_visbuf((const char *)ptr)
+#    define USER_PTR(ptr,n) _nc_my_visbuf((const char *)ptr, n)
 #  endif
 
 #  define returnPanel(code)	TRACE_RETURN1(code,panel)
 
-   extern NCURSES_EXPORT(PANEL *) _nc_retrace_panel (PANEL *);
-   extern NCURSES_EXPORT(void) _nc_dPanel (const char*, const PANEL*);
-   extern NCURSES_EXPORT(void) _nc_dStack (const char*, int, const PANEL*);
-   extern NCURSES_EXPORT(void) _nc_Wnoutrefresh (const PANEL*);
-   extern NCURSES_EXPORT(void) _nc_Touchpan (const PANEL*);
-   extern NCURSES_EXPORT(void) _nc_Touchline (const PANEL*, int, int);
+   extern PANEL_EXPORT(PANEL *) _nc_retrace_panel (PANEL *);
+   extern PANEL_EXPORT(void) _nc_dPanel (const char*, const PANEL*);
+   extern PANEL_EXPORT(void) _nc_dStack (const char*, int, const PANEL*);
+   extern PANEL_EXPORT(void) _nc_Wnoutrefresh (const PANEL*);
+   extern PANEL_EXPORT(void) _nc_Touchpan (const PANEL*);
+   extern PANEL_EXPORT(void) _nc_Touchline (const PANEL*, int, int);
 
 #  define dBug(x) _tracef x
 #  define dPanel(text,pan) _nc_dPanel(text,pan)
@@ -209,7 +205,7 @@
 
 #if NCURSES_SP_FUNCS
 /* These may become later renamed and part of panel.h and the public API */
-extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_update_panels)(SCREEN*);
+extern PANEL_EXPORT(void) NCURSES_SP_NAME(_nc_update_panels)(SCREEN*);
 #endif
 /* *INDENT-ON* */