From 5a859fcadc738b16132a4735f2a27a67473c3c9e Mon Sep 17 00:00:00 2001 From: Qing He Date: Thu, 30 Dec 2010 16:54:28 +0800 Subject: ncurses: upgrade to version 5.7 from 5.4 Largely based on the recipe from OpenEmbedded project ncurses: fix LIC_FILES_CHKSUM Signed-off-by: Qing He Signed-off-by: Saul Wold --- meta/recipes-core/ncurses/ncurses-5.7/config.cache | 4 + .../ncurses/ncurses-5.7/tic-hang.patch | 25 + .../ncurses/ncurses/makefile_tweak.patch | 89 - meta/recipes-core/ncurses/ncurses/visibility.patch | 4904 -------------------- meta/recipes-core/ncurses/ncurses_5.4.bb | 11 - meta/recipes-core/ncurses/ncurses_5.7.bb | 242 + 6 files changed, 271 insertions(+), 5004 deletions(-) create mode 100644 meta/recipes-core/ncurses/ncurses-5.7/config.cache create mode 100644 meta/recipes-core/ncurses/ncurses-5.7/tic-hang.patch delete mode 100644 meta/recipes-core/ncurses/ncurses/makefile_tweak.patch delete mode 100644 meta/recipes-core/ncurses/ncurses/visibility.patch delete mode 100644 meta/recipes-core/ncurses/ncurses_5.4.bb create mode 100644 meta/recipes-core/ncurses/ncurses_5.7.bb (limited to 'meta') diff --git a/meta/recipes-core/ncurses/ncurses-5.7/config.cache b/meta/recipes-core/ncurses/ncurses-5.7/config.cache new file mode 100644 index 0000000000..6a9217d5bb --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses-5.7/config.cache @@ -0,0 +1,4 @@ +#! /bin/sh + +cf_cv_func_nanosleep=yes +cf_cv_func_mkstemp=yes diff --git a/meta/recipes-core/ncurses/ncurses-5.7/tic-hang.patch b/meta/recipes-core/ncurses/ncurses-5.7/tic-hang.patch new file mode 100644 index 0000000000..1678b885c4 --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses-5.7/tic-hang.patch @@ -0,0 +1,25 @@ +'tic' of some linux distributions (e.g. fedora 11) hang in an infinite +loop when processing the original file. + +Index: ncurses-5.7/misc/terminfo.src +=================================================================== +--- ncurses-5.7.orig/misc/terminfo.src ++++ ncurses-5.7/misc/terminfo.src +@@ -3706,12 +3706,11 @@ konsole-xf3x|KDE console window with key + # The value for kbs reflects local customization rather than the settings used + # for XFree86 xterm. + konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm, +- kend=\EOF, khome=\EOH, use=konsole+pcfkeys, +- use=konsole-vt100, +-# Konsole does not implement shifted cursor-keys. +-konsole+pcfkeys|konsole subset of xterm+pcfkeys, +- kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2, +- use=xterm+pcf0, ++ kend=\EOF, kf1=\EOP, kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, ++ kf16=\EO2S, kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~, ++ kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~, ++ kf23=\E[23;2~, kf24=\E[24;2~, kf3=\EOR, kf4=\EOS, ++ khome=\EOH, use=konsole-vt100, + # KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but + # it is still useful for deriving the other entries. + konsole-vt100|KDE console window with vt100 (sic) keyboard, diff --git a/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch b/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch deleted file mode 100644 index 480855bcc6..0000000000 --- a/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch +++ /dev/null @@ -1,89 +0,0 @@ -Libtool 2.2.2 needs to be able to use top_builddir. Automake usually exports -this but ncurses doesn't use automake. - -RP 14/4/08 - -Index: ncurses-5.4/ncurses/Makefile.in -=================================================================== ---- ncurses-5.4.orig/ncurses/Makefile.in 2008-04-14 12:22:34.000000000 +0100 -+++ ncurses-5.4/ncurses/Makefile.in 2008-04-14 12:22:53.000000000 +0100 -@@ -57,6 +57,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - top_srcdir = @top_srcdir@ -+top_builddir = @top_srcdir@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -Index: ncurses-5.4/form/Makefile.in -=================================================================== ---- ncurses-5.4.orig/form/Makefile.in 2008-04-14 12:30:35.000000000 +0100 -+++ ncurses-5.4/form/Makefile.in 2008-04-14 12:30:59.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/menu/Makefile.in -=================================================================== ---- ncurses-5.4.orig/menu/Makefile.in 2008-04-14 12:29:00.000000000 +0100 -+++ ncurses-5.4/menu/Makefile.in 2008-04-14 12:29:13.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/panel/Makefile.in -=================================================================== ---- ncurses-5.4.orig/panel/Makefile.in 2008-04-14 12:27:40.000000000 +0100 -+++ ncurses-5.4/panel/Makefile.in 2008-04-14 12:27:59.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/progs/Makefile.in -=================================================================== ---- ncurses-5.4.orig/progs/Makefile.in 2008-04-14 12:24:37.000000000 +0100 -+++ ncurses-5.4/progs/Makefile.in 2008-04-14 12:25:06.000000000 +0100 -@@ -54,6 +54,7 @@ - MODEL = ../@DFT_OBJ_SUBDIR@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/tack/Makefile.in -=================================================================== ---- ncurses-5.4.orig/tack/Makefile.in 2008-04-14 12:26:05.000000000 +0100 -+++ ncurses-5.4/tack/Makefile.in 2008-04-14 12:26:26.000000000 +0100 -@@ -22,6 +22,7 @@ - MODEL = ../@DFT_OBJ_SUBDIR@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/test/Makefile.in -=================================================================== ---- ncurses-5.4.orig/test/Makefile.in 2008-04-14 12:32:37.000000000 +0100 -+++ ncurses-5.4/test/Makefile.in 2008-04-14 12:32:56.000000000 +0100 -@@ -43,6 +43,7 @@ - - MODEL = ../@DFT_OBJ_SUBDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - libdir = @libdir@ diff --git a/meta/recipes-core/ncurses/ncurses/visibility.patch b/meta/recipes-core/ncurses/ncurses/visibility.patch deleted file mode 100644 index 29cac5f1b8..0000000000 --- a/meta/recipes-core/ncurses/ncurses/visibility.patch +++ /dev/null @@ -1,4904 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- ncurses-5.4/ncurses/Makefile.in~visibility.patch -+++ ncurses-5.4/ncurses/Makefile.in -@@ -107,7 +107,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/panel/Makefile.in~visibility.patch -+++ ncurses-5.4/panel/Makefile.in -@@ -88,7 +88,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/menu/Makefile.in~visibility.patch -+++ ncurses-5.4/menu/Makefile.in -@@ -87,7 +87,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/c++/Makefile.in~visibility.patch -+++ ncurses-5.4/c++/Makefile.in -@@ -80,7 +80,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CXX_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/form/Makefile.in~visibility.patch -+++ ncurses-5.4/form/Makefile.in -@@ -88,7 +88,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/configure.in~visibility.patch -+++ ncurses-5.4/configure.in -@@ -34,17 +34,20 @@ - dnl See http://invisible-island.net/autoconf/ for additional information. - dnl - dnl --------------------------------------------------------------------------- --AC_PREREQ(2.13.20020210) -+AC_PREREQ(2.59) - AC_REVISION($Revision: 1.312 $) --AC_INIT(ncurses/base/lib_initscr.c) -+AC_INIT -+AC_CONFIG_SRCDIR([ncurses/base/lib_initscr.c]) - AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) - -+m4_include([m4/templates.m4]) -+ - CF_SUBST_NCURSES_VERSION - - CF_WITH_REL_VERSION(NCURSES) - CF_WITH_ABI_VERSION - --CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) -+CF_CHECK_CACHE([AC_CANONICAL_TARGET([])]) - AC_ARG_WITH(system-type, - [ --with-system-type=XXX test: override derived host system-type], - [AC_MSG_WARN(overriding system type to $withval) -@@ -100,7 +103,7 @@ - CF_GXX_VERSION - case $GXX_VERSION in - 1*|2.[[0-6]]*) -- GXX=""; CXX=""; ac_cv_prog_gxx=no -+ GXX=""; CXX=""; ac_cv_cxx_compiler_gnu=no - cf_cxx_library=no - AC_MSG_WARN(templates do not work) - ;; -@@ -176,7 +179,6 @@ - AC_SUBST(DESTDIR) - - ############################################################################### --CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-compiling:) - # If we're cross-compiling, allow the user to override the tools and their - # options. The configure script is oriented toward identifying the host - # compiler, etc., but we need a build compiler to generate parts of the source. -@@ -213,7 +215,6 @@ - AC_SUBST(BUILD_EXEEXT) - - ############################################################################### --CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:) - - ### Options to allow the user to specify the set of libraries which are used. - ### Use "--without-normal --with-shared" to allow the default model to be -@@ -343,11 +344,11 @@ - - AC_MSG_CHECKING(for default loader flags) - case $DFT_LWR_MODEL in --libtool) LD_MODEL='' ;; -+libtool) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; - normal) LD_MODEL='' ;; - debug) LD_MODEL=$CC_G_OPT ;; - profile) LD_MODEL='-pg';; --shared) LD_MODEL='' ;; -+shared) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; - esac - AC_SUBST(LD_MODEL)dnl the type of link (e.g., -g or -pg) - AC_MSG_RESULT($LD_MODEL) -@@ -363,14 +364,14 @@ - if test "$CC_SHARED_OPTS" = "unknown"; then - for model in $cf_list_models; do - if test "$model" = "shared"; then -- AC_ERROR(Shared libraries are not supported in this version) -+ AC_MSG_ERROR([Shared libraries are not supported in this version]) - fi - done - fi - --############################################################################### --CF_HELP_MESSAGE(Fine-Tuning Your Configuration:) -+AC_SUBST(LIBOPTS) - -+############################################################################### - ### use option --disable-overwrite to leave out the link to -lcurses - AC_MSG_CHECKING(if you wish to install ncurses overwriting curses) - AC_ARG_ENABLE(overwrite, -@@ -450,7 +451,7 @@ - AC_ARG_ENABLE(big-core, - [ --disable-big-core assume machine has little memory], - [with_big_core=$enableval], -- [AC_TRY_RUN([ -+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include - #include - int main() { -@@ -459,10 +460,7 @@ - if (s != 0) - s[0] = s[n-1] = 0; - exit(s == 0); --}], -- [with_big_core=yes], -- [with_big_core=no], -- [with_big_core=no])]) -+}]])],[with_big_core=yes],[with_big_core=no],[with_big_core=no])]) - AC_MSG_RESULT($with_big_core) - test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) - -@@ -477,7 +475,7 @@ - if test "$with_termcap" != "yes" ; then - if test "$use_database" = no ; then - if test -z "$with_fallback" ; then -- AC_ERROR(You have disabled the database w/o specifying fallbacks) -+ AC_MSG_ERROR([You have disabled the database w/o specifying fallbacks]) - fi - fi - AC_DEFINE(PURE_TERMINFO) -@@ -614,10 +612,10 @@ - test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) - - ############################################################################### -+ - CF_MAN_PAGES([ captoinfo clear infocmp infotocap tic toe tput ]) - - ############################################################################### --CF_HELP_MESSAGE(Extensions:) - - ### Note that some functions (such as const) are normally disabled anyway. - AC_MSG_CHECKING(if you want to build with function extensions) -@@ -683,7 +681,6 @@ - - ############################################################################### - # These options are relatively safe to experiment with. --CF_HELP_MESSAGE(Development Code:) - AC_MSG_CHECKING(if you want all development code) - AC_ARG_WITH(develop, - [ --with-develop enable all development options], -@@ -719,7 +716,6 @@ - - ############################################################################### - # These are just experimental, probably should not be in a package: --CF_HELP_MESSAGE(Experimental Code:) - - AC_MSG_CHECKING(if you do not want to assume colors are white-on-black) - AC_ARG_ENABLE(assumed-color, -@@ -828,7 +824,6 @@ - AC_SUBST(TERMINFO_CAPS) - - ############################################################################### --CF_HELP_MESSAGE(Testing/development Options:) - - ### use option --disable-echo to suppress full display compiling commands - AC_MSG_CHECKING(if you want to display full commands during build) -@@ -931,7 +926,7 @@ - AC_SUBST(MATH_LIB) - - ### Checks for header files. --AC_STDC_HEADERS -+AC_HEADER_STDC([]) - AC_HEADER_DIRENT - AC_HEADER_TIME - CF_REGEX -@@ -965,7 +960,7 @@ - CF_SYS_TIME_SELECT - - ### checks for compiler characteristics --AC_LANG_C -+AC_LANG([C]) - AC_C_CONST - AC_C_INLINE - test "$ac_cv_c_inline" != no && AC_DEFINE(CC_HAS_INLINE_FUNCS) -@@ -1040,7 +1035,7 @@ - - # Check for C++ compiler characteristics (and ensure that it's there!) - if test -n "$CXX" ; then -- AC_LANG_CPLUSPLUS -+ AC_LANG([C++]) - CF_STDCPP_LIBRARY - - case $GXX_VERSION in -@@ -1135,7 +1130,6 @@ - fi - AC_SUBST(USE_CXX_BOOL) - --CF_HELP_MESSAGE(Ada95 Binding Options:) - - dnl Check for availability of GNU Ada Translator (GNAT). - dnl At the moment we support no other Ada95 compiler. -@@ -1309,15 +1303,16 @@ - - ################################################################################ - test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" --AC_OUTPUT( \ -+AC_CONFIG_FILES([\ - include/MKterm.h.awk \ - include/curses.head:include/curses.h.in \ - include/termcap.h \ - include/unctrl.h \ - $SUB_MAKEFILES \ -- Makefile,[ -+ Makefile]) -+AC_CONFIG_COMMANDS([default],[ - CF_LIB_RULES --],[ -+],[[ - ### Special initialization commands, used to pass information from the - ### configuration-run into config.status - -@@ -1348,5 +1343,6 @@ - host="$host" - target="$target" - --],cat)dnl -+]]) -+AC_OUTPUT - ${MAKE-make} preinstall ---- ncurses-5.4/include/ncurses_dll.h~visibility.patch -+++ ncurses-5.4/include/ncurses_dll.h -@@ -7,8 +7,8 @@ - /* but this structure may be useful at some point for an MSVC build */ - /* so, for now unconditionally define the important flags */ - /* "the right way" for proper static and dll+auto-import behavior */ --#undef NCURSES_DLL --#define NCURSES_STATIC -+//#undef NCURSES_DLL -+//#define NCURSES_STATIC - - #if defined(__CYGWIN__) - # if defined(NCURSES_DLL) -@@ -32,12 +32,20 @@ - # endif - # define NCURSES_API __cdecl - # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API --# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type -+# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP - #endif - - /* Take care of non-cygwin platforms */ - #if !defined(NCURSES_IMPEXP) --# define NCURSES_IMPEXP /* nothing */ -+# if defined(GCC_HASCLASSVISIBILITY) -+# if defined(NCURSES_DLL) -+# define NCURSES_IMPEXP __attribute__ ((visibility("default"))) -+# else -+# define NCURSES_IMPEXP /* nothing */ -+# endif -+# else -+# define NCURSES_IMPEXP /* nothing */ -+# endif - #endif - #if !defined(NCURSES_API) - # define NCURSES_API /* nothing */ -@@ -46,7 +54,7 @@ - # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API - #endif - #if !defined(NCURSES_EXPORT_VAR) --# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type -+# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP - #endif - - #endif /* NCURSES_DLL_H_incl */ ---- ncurses-5.4/form/fty_alnum.c~visibility.patch -+++ ncurses-5.4/form/fty_alnum.c -@@ -132,6 +132,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALNUM = &typeALNUM; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALNUM) = &typeALNUM; - - /* fty_alnum.c ends here */ ---- ncurses-5.4/form/fty_alpha.c~visibility.patch -+++ ncurses-5.4/form/fty_alpha.c -@@ -133,6 +133,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALPHA = &typeALPHA; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALPHA) = &typeALPHA; - - /* fty_alpha.c ends here */ ---- ncurses-5.4/form/fld_newftyp.c~visibility.patch -+++ ncurses-5.4/form/fld_newftyp.c -@@ -48,7 +48,7 @@ - NULL /* enumerate previous function */ - }; - --NCURSES_EXPORT_VAR(const FIELDTYPE*) _nc_Default_FieldType = &default_fieldtype; -+const FIELDTYPE* NCURSES_EXPORT_VAR(_nc_Default_FieldType) = &default_fieldtype; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/form.h~visibility.patch -+++ ncurses-5.4/form/form.h -@@ -248,24 +248,24 @@ - /************************* - * standard field types * - *************************/ --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP; -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALPHA); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALNUM); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ENUM); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_INTEGER); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_NUMERIC); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_REGEXP); - - /************************************ - * built-in additional field types * - * They are not defined in SVr4 * - ************************************/ --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4; /* Internet IP Version 4 address */ -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_IPV4); /* Internet IP Version 4 address */ - - /*********************** - * Default objects * - ***********************/ --extern NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form; --extern NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field; -+extern FORM * NCURSES_EXPORT_VAR(_nc_Default_Form); -+extern FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field); - - - /*********************** ---- ncurses-5.4/form/fty_int.c~visibility.patch -+++ ncurses-5.4/form/fty_int.c -@@ -155,6 +155,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_INTEGER = &typeINTEGER; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_INTEGER) = &typeINTEGER; - - /* fty_int.c ends here */ ---- ncurses-5.4/form/fty_num.c~visibility.patch -+++ ncurses-5.4/form/fty_num.c -@@ -190,6 +190,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_NUMERIC = &typeNUMERIC; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_NUMERIC) = &typeNUMERIC; - - /* fty_num.c ends here */ ---- ncurses-5.4/form/fty_regex.c~visibility.patch -+++ ncurses-5.4/form/fty_regex.c -@@ -252,6 +252,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_REGEXP = &typeREGEXP; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_REGEXP) = &typeREGEXP; - - /* fty_regex.c ends here */ ---- ncurses-5.4/form/frm_def.c~visibility.patch -+++ ncurses-5.4/form/frm_def.c -@@ -60,7 +60,7 @@ - NULL /* fieldterm */ - }; - --NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form; -+FORM * NCURSES_EXPORT_VAR(_nc_Default_Form) = &default_form; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/fld_def.c~visibility.patch -+++ ncurses-5.4/form/fld_def.c -@@ -63,7 +63,7 @@ - (char *)0 /* usrptr */ - }; - --NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field; -+FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field) = &default_field; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/fty_enum.c~visibility.patch -+++ ncurses-5.4/form/fty_enum.c -@@ -290,6 +290,6 @@ - Previous_Enum - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ENUM = &typeENUM; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ENUM) = &typeENUM; - - /* fty_enum.c ends here */ ---- ncurses-5.4/form/fty_ipv4.c~visibility.patch -+++ ncurses-5.4/form/fty_ipv4.c -@@ -76,6 +76,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_IPV4 = &typeIPV4; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_IPV4) = &typeIPV4; - - /* fty_ipv4.c ends here */ ---- ncurses-5.4/form/form.priv.h~visibility.patch -+++ ncurses-5.4/form/form.priv.h -@@ -112,7 +112,7 @@ - #define C_BLANK ' ' - #define is_blank(c) ((c)==C_BLANK) - --extern NCURSES_EXPORT_VAR(const FIELDTYPE *) _nc_Default_FieldType; -+extern const FIELDTYPE * NCURSES_EXPORT_VAR(_nc_Default_FieldType); - - extern NCURSES_EXPORT(TypeArgument *) _nc_Make_Argument (const FIELDTYPE*,va_list*,int*); - extern NCURSES_EXPORT(TypeArgument *) _nc_Copy_Argument (const FIELDTYPE*,const TypeArgument*, int*); ---- ncurses-5.4/include/tic.h~visibility.patch -+++ ncurses-5.4/include/tic.h -@@ -117,7 +117,7 @@ - #define DEBUG(n, a) /*nothing*/ - #endif - --extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; -+extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); - extern NCURSES_EXPORT(void) _nc_tracef (char *, ...) GCC_PRINTFLIKE(1,2); - extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *); - extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *); -@@ -151,7 +151,7 @@ - char *tk_valstring; /* value of capability (if a string) */ - }; - --extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token; -+extern struct token NCURSES_EXPORT_VAR(_nc_curr_token); - - /* - * List of keynames with their corresponding code. -@@ -161,7 +161,7 @@ - int code; - }; - --extern NCURSES_EXPORT_VAR(const struct kn) _nc_key_names[]; -+extern const struct kn NCURSES_EXPORT_VAR(_nc_key_names[]); - - /* - * Offsets to string capabilities, with the corresponding functionkey -@@ -179,7 +179,7 @@ - - #else - --extern NCURSES_EXPORT_VAR(struct tinfo_fkeys) _nc_tinfo_fkeys[]; -+extern struct tinfo_fkeys NCURSES_EXPORT_VAR(_nc_tinfo_fkeys[]); - - #endif - -@@ -204,11 +204,11 @@ - const char *source; - }; - --extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_info_hash_table[]; --extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_cap_hash_table[]; -+extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_info_hash_table[]); -+extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_cap_hash_table[]); - --extern NCURSES_EXPORT_VAR(const struct alias) _nc_capalias_table[]; --extern NCURSES_EXPORT_VAR(const struct alias) _nc_infoalias_table[]; -+extern const struct alias NCURSES_EXPORT_VAR(_nc_capalias_table[]); -+extern const struct alias NCURSES_EXPORT_VAR(_nc_infoalias_table[]); - - extern NCURSES_EXPORT(const struct name_table_entry *) _nc_get_table (bool); - extern NCURSES_EXPORT(const struct name_table_entry * const *) _nc_get_hash_table (bool); -@@ -255,13 +255,13 @@ - extern NCURSES_EXPORT(void) _nc_panic_mode (char); - extern NCURSES_EXPORT(void) _nc_push_token (int); - extern NCURSES_EXPORT(void) _nc_reset_input (FILE *, char *); --extern NCURSES_EXPORT_VAR(int) _nc_curr_col; --extern NCURSES_EXPORT_VAR(int) _nc_curr_line; --extern NCURSES_EXPORT_VAR(int) _nc_syntax; --extern NCURSES_EXPORT_VAR(long) _nc_comment_end; --extern NCURSES_EXPORT_VAR(long) _nc_comment_start; --extern NCURSES_EXPORT_VAR(long) _nc_curr_file_pos; --extern NCURSES_EXPORT_VAR(long) _nc_start_line; -+extern int NCURSES_EXPORT_VAR(_nc_curr_col); -+extern int NCURSES_EXPORT_VAR(_nc_curr_line); -+extern int NCURSES_EXPORT_VAR(_nc_syntax); -+extern long NCURSES_EXPORT_VAR(_nc_comment_end); -+extern long NCURSES_EXPORT_VAR(_nc_comment_start); -+extern long NCURSES_EXPORT_VAR(_nc_curr_file_pos); -+extern long NCURSES_EXPORT_VAR(_nc_start_line); - #define SYN_TERMINFO 0 - #define SYN_TERMCAP 1 - -@@ -272,7 +272,7 @@ - extern NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; - extern NCURSES_EXPORT(void) _nc_err_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; - extern NCURSES_EXPORT(void) _nc_warning (const char *const,...) GCC_PRINTFLIKE(1,2); --extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings; -+extern bool NCURSES_EXPORT_VAR(_nc_suppress_warnings); - - /* comp_expand.c: expand string into readable form */ - extern NCURSES_EXPORT(char *) _nc_tic_expand (const char *, bool, int); -@@ -287,12 +287,12 @@ - /* lib_tparm.c */ - #define NUM_PARM 9 - --extern NCURSES_EXPORT_VAR(int) _nc_tparm_err; -+extern int NCURSES_EXPORT_VAR(_nc_tparm_err); - - extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount); - - /* lib_tputs.c */ --extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent; /* Add one for every null sent */ -+extern int NCURSES_EXPORT_VAR(_nc_nulls_sent); /* Add one for every null sent */ - - /* comp_main.c: compiler main */ - extern const char * _nc_progname; ---- ncurses-5.4/include/MKterm.h.awk.in~visibility.patch -+++ ncurses-5.4/include/MKterm.h.awk.in -@@ -228,9 +228,9 @@ - print " char * _termname; /* used for termname() */" - print "} TERMINAL;" - print "" -- print "extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term;" -+ print "extern TERMINAL * NCURSES_EXPORT_VAR(cur_term);" - print "" -- print "#if BROKEN_LINKER" -+ print "#if defined(BROKEN_LINKER)" - print "#define boolnames _nc_boolnames()" - print "#define boolcodes _nc_boolcodes()" - print "#define boolfnames _nc_boolfnames()" -@@ -253,15 +253,15 @@ - print "" - print "#else" - print "" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolfnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numfnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strfnames[];" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolfnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numfnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strfnames[]);" - print "" - print "#endif" - print "" -@@ -287,7 +287,7 @@ - print "#if !defined(__NCURSES_H)" - print "extern NCURSES_EXPORT(char *) tigetstr (NCURSES_CONST char *);" - print "extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, ...);" -- print "extern NCURSES_EXPORT_VAR(char) ttytype[];" -+ print "extern char NCURSES_EXPORT_VAR(ttytype[]);" - print "extern NCURSES_EXPORT(int) putp (const char *);" - print "extern NCURSES_EXPORT(int) tigetflag (NCURSES_CONST char *);" - print "extern NCURSES_EXPORT(int) tigetnum (NCURSES_CONST char *);" ---- ncurses-5.4/include/termcap.h.in~visibility.patch -+++ ncurses-5.4/include/termcap.h.in -@@ -54,10 +54,10 @@ - #undef NCURSES_OSPEED - #define NCURSES_OSPEED @NCURSES_OSPEED@ - --extern NCURSES_EXPORT_VAR(char) PC; --extern NCURSES_EXPORT_VAR(char *) UP; --extern NCURSES_EXPORT_VAR(char *) BC; --extern NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed; -+extern char NCURSES_EXPORT_VAR(PC); -+extern char * NCURSES_EXPORT_VAR(UP); -+extern char * NCURSES_EXPORT_VAR(BC); -+extern NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed); - - #if !defined(NCURSES_TERM_H_incl) - extern NCURSES_EXPORT(char *) tgetstr (NCURSES_CONST char *, char **); ---- ncurses-5.4/include/term_entry.h~visibility.patch -+++ ncurses-5.4/include/term_entry.h -@@ -90,8 +90,8 @@ - #define ExtNumname(tp,i,names) EXT_NAMES(tp, i, NUMCOUNT, (i - (tp->num_Numbers - tp->ext_Numbers)) + tp->ext_Booleans, names) - #define ExtStrname(tp,i,names) EXT_NAMES(tp, i, STRCOUNT, (i - (tp->num_Strings - tp->ext_Strings)) + (tp->ext_Numbers + tp->ext_Booleans), names) - --extern NCURSES_EXPORT_VAR(ENTRY *) _nc_head; --extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail; -+extern ENTRY * NCURSES_EXPORT_VAR(_nc_head); -+extern ENTRY * NCURSES_EXPORT_VAR(_nc_tail); - #define for_entry_list(qp) for (qp = _nc_head; qp; qp = qp->next) - - #define MAX_LINE 132 -@@ -135,8 +135,8 @@ - - /* parse_entry.c: entry-parsing code */ - #if NCURSES_XNAMES --extern NCURSES_EXPORT_VAR(bool) _nc_user_definable; --extern NCURSES_EXPORT_VAR(bool) _nc_disable_period; -+extern bool NCURSES_EXPORT_VAR(_nc_user_definable); -+extern bool NCURSES_EXPORT_VAR(_nc_disable_period); - #endif - extern NCURSES_EXPORT(int) _nc_parse_entry (ENTRY *, int, bool); - extern NCURSES_EXPORT(int) _nc_capcmp (const char *, const char *); ---- ncurses-5.4/include/curses.h.in~visibility.patch -+++ ncurses-5.4/include/curses.h.in -@@ -171,8 +171,8 @@ - #define WA_VERTICAL A_VERTICAL - - /* colors */ --extern NCURSES_EXPORT_VAR(int) COLORS; --extern NCURSES_EXPORT_VAR(int) COLOR_PAIRS; -+extern int NCURSES_EXPORT_VAR(COLORS); -+extern int NCURSES_EXPORT_VAR(COLOR_PAIRS); - - #define COLOR_BLACK 0 - #define COLOR_RED 1 -@@ -186,10 +186,10 @@ - /* line graphics */ - - #if @BROKEN_LINKER@ --extern NCURSES_EXPORT_VAR(chtype*) _nc_acs_map(void); -+extern chtype* NCURSES_EXPORT_VAR(_nc_acs_map)(void); - #define acs_map (_nc_acs_map()) - #else --extern NCURSES_EXPORT_VAR(chtype) acs_map[]; -+extern chtype NCURSES_EXPORT_VAR(acs_map[]); - #endif - - #define NCURSES_ACS(c) (acs_map[(unsigned char)c]) -@@ -369,20 +369,20 @@ - #endif - }; - --extern NCURSES_EXPORT_VAR(WINDOW *) stdscr; --extern NCURSES_EXPORT_VAR(WINDOW *) curscr; --extern NCURSES_EXPORT_VAR(WINDOW *) newscr; -+extern WINDOW * NCURSES_EXPORT_VAR(stdscr); -+extern WINDOW * NCURSES_EXPORT_VAR(curscr); -+extern WINDOW * NCURSES_EXPORT_VAR(newscr); - --extern NCURSES_EXPORT_VAR(int) LINES; --extern NCURSES_EXPORT_VAR(int) COLS; --extern NCURSES_EXPORT_VAR(int) TABSIZE; -+extern int NCURSES_EXPORT_VAR(LINES); -+extern int NCURSES_EXPORT_VAR(COLS); -+extern int NCURSES_EXPORT_VAR(TABSIZE); - - /* - * This global was an undocumented feature under AIX curses. - */ --extern NCURSES_EXPORT_VAR(int) ESCDELAY; /* ESC expire time in milliseconds */ -+extern int NCURSES_EXPORT_VAR(ESCDELAY); /* ESC expire time in milliseconds */ - --extern NCURSES_EXPORT_VAR(char) ttytype[]; /* needed for backward compatibility */ -+extern char NCURSES_EXPORT_VAR(ttytype[]); /* needed for backward compatibility */ - - /* - * These functions are extensions - not in XSI Curses. ---- ncurses-5.4/include/curses.tail~visibility.patch -+++ ncurses-5.4/include/curses.tail -@@ -110,7 +110,7 @@ - #define TRACE_MAXIMUM ((1 << TRACE_SHIFT) - 1) /* maximum trace level */ - - #if defined(TRACE) || defined(NCURSES_TEST) --extern NCURSES_EXPORT_VAR(int) _nc_optimize_enable; /* enable optimizations */ -+extern int NCURSES_EXPORT_VAR(_nc_optimize_enable); /* enable optimizations */ - #ifdef _XOPEN_SOURCE_EXTENDED - extern NCURSES_EXPORT(const char *) _nc_viswbuf(const wchar_t *); - #endif ---- ncurses-5.4/include/curses.wide~visibility.patch -+++ ncurses-5.4/include/curses.wide -@@ -3,7 +3,7 @@ - - /* $Id: curses.wide,v 1.28 2004/01/03 20:35:14 tom Exp $ */ - --extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs; -+extern cchar_t * NCURSES_EXPORT_VAR(_nc_wacs); - - #define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c]) - ---- ncurses-5.4/menu/menu.priv.h~visibility.patch -+++ ncurses-5.4/menu/menu.priv.h -@@ -49,8 +49,8 @@ - /* Backspace code */ - #define BS (8) - --extern NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item; --extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu; -+extern ITEM NCURSES_EXPORT_VAR(_nc_Default_Item); -+extern MENU NCURSES_EXPORT_VAR(_nc_Default_Menu); - - /* Normalize item to default if none was given */ - #define Normalize_Item( item ) ((item)=(item)?(item):&_nc_Default_Item) ---- ncurses-5.4/menu/m_global.c~visibility.patch -+++ ncurses-5.4/menu/m_global.c -@@ -41,7 +41,7 @@ - - static char mark[] = "-"; - --NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { -+MENU NCURSES_EXPORT_VAR(_nc_Default_Menu) = { - 16, /* Nr. of chars high */ - 1, /* Nr. of chars wide */ - 16, /* Nr. of items high */ -@@ -80,7 +80,7 @@ - 0 /* status */ - }; - --NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = { -+ITEM NCURSES_EXPORT_VAR(_nc_Default_Item) = { - { (char *)0, 0 }, /* name */ - { (char *)0, 0 }, /* description */ - (MENU *)0, /* Pointer to parent menu */ ---- ncurses-5.4/ncurses/tty/lib_mvcur.c~visibility.patch -+++ ncurses-5.4/ncurses/tty/lib_mvcur.c -@@ -937,7 +937,7 @@ - } - - #if defined(TRACE) || defined(NCURSES_TEST) --NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL; -+int NCURSES_EXPORT_VAR(_nc_optimize_enable) = OPTIMIZE_ALL; - #endif - - #if defined(MAIN) || defined(NCURSES_TEST) -@@ -950,7 +950,7 @@ - #include - #include - --NCURSES_EXPORT_VAR(const char *) _nc_progname = "mvcur"; -+const char * NCURSES_EXPORT_VAR(_nc_progname) = "mvcur"; - - static unsigned long xmits; - ---- ncurses-5.4/ncurses/tty/hardscroll.c~visibility.patch -+++ ncurses-5.4/ncurses/tty/hardscroll.c -@@ -151,8 +151,7 @@ - - # undef screen_lines - # define screen_lines MAXLINES --NCURSES_EXPORT_VAR(int) --oldnums[MAXLINES]; -+int NCURSES_EXPORT_VAR(oldnums[MAXLINES]); - # define OLDNUM(n) oldnums[n] - # define _tracef printf - # undef TR -@@ -163,8 +162,7 @@ - /* OLDNUM(n) indicates which line will be shifted to the position n. - if OLDNUM(n) == _NEWINDEX, then the line n in new, not shifted from - somewhere. */ --NCURSES_EXPORT_VAR(int *) --_nc_oldnums = 0; -+int * NCURSES_EXPORT_VAR(_nc_oldnums) = 0; - - # if USE_HASHMAP - static int oldnums_allocated = 0; ---- ncurses-5.4/ncurses/base/lib_getch.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_getch.c -@@ -44,8 +44,7 @@ - - #include - --NCURSES_EXPORT_VAR(int) --ESCDELAY = 1000; /* max interval betw. chars in funkeys, in millisecs */ -+int NCURSES_EXPORT_VAR(ESCDELAY) = 1000; /* max interval betw. chars in funkeys, in millisecs */ - - #ifdef NCURSES_WGETCH_EVENTS - #define TWAIT_MASK 7 ---- ncurses-5.4/ncurses/base/lib_slk.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_slk.c -@@ -47,8 +47,7 @@ - * We'd like to move these into the screen context structure, but cannot, - * because slk_init() is called before initscr()/newterm(). - */ --NCURSES_EXPORT_VAR(int) --_nc_slk_format = 0; /* one more than format specified in slk_init() */ -+int NCURSES_EXPORT_VAR(_nc_slk_format) = 0; /* one more than format specified in slk_init() */ - - /* - * Paint the info line for the PC style SLK emulation. ---- ncurses-5.4/ncurses/base/lib_color.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_color.c -@@ -48,8 +48,8 @@ - * historical reasons. So we assign them in start_color() and also in - * set_term()'s screen-switching logic. - */ --NCURSES_EXPORT_VAR(int) COLOR_PAIRS = 0; --NCURSES_EXPORT_VAR(int) COLORS = 0; -+int NCURSES_EXPORT_VAR(COLOR_PAIRS) = 0; -+int NCURSES_EXPORT_VAR(COLORS) = 0; - - #define DATA(r,g,b) {r,g,b, 0,0,0, 0} - ---- ncurses-5.4/ncurses/tinfo/lib_termcap.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_termcap.c -@@ -50,8 +50,8 @@ - #define L_BRACK '[' - #define SHIFT_OUT 017 /* ^N */ - --NCURSES_EXPORT_VAR(char *) UP = 0; --NCURSES_EXPORT_VAR(char *) BC = 0; -+char * NCURSES_EXPORT_VAR(UP) = 0; -+char * NCURSES_EXPORT_VAR(BC) = 0; - - static char *fix_me = 0; - ---- ncurses-5.4/ncurses/tinfo/lib_cur_term.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_cur_term.c -@@ -42,7 +42,7 @@ - - MODULE_ID("$Id: lib_cur_term.c,v 1.13 2003/12/27 18:21:30 tom Exp $") - --NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0; -+TERMINAL * NCURSES_EXPORT_VAR(cur_term) = 0; - - NCURSES_EXPORT(TERMINAL *) - set_curterm(TERMINAL * termp) ---- ncurses-5.4/ncurses/tinfo/lib_setup.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_setup.c -@@ -91,10 +91,10 @@ - # endif - #endif - --NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = ""; --NCURSES_EXPORT_VAR(int) LINES = 0; --NCURSES_EXPORT_VAR(int) COLS = 0; --NCURSES_EXPORT_VAR(int) TABSIZE = 0; -+char NCURSES_EXPORT_VAR(ttytype[NAMESIZE]) = ""; -+int NCURSES_EXPORT_VAR(LINES) = 0; -+int NCURSES_EXPORT_VAR(COLS) = 0; -+int NCURSES_EXPORT_VAR(TABSIZE) = 0; - - static int _use_env = TRUE; - ---- ncurses-5.4/ncurses/tinfo/MKnames.awk~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/MKnames.awk -@@ -10,7 +10,7 @@ - print "#include " > "namehdr" - print "#define DCL(it) static IT data##it[]" > "namehdr" - print "#else" > "namehdr" -- print "#define DCL(it) NCURSES_EXPORT_VAR(IT) it[]" > "namehdr" -+ print "#define DCL(it) IT NCURSES_EXPORT_VAR(it[])" > "namehdr" - print "#endif" > "namehdr" - print "" > "namehdr" - print "/*" > "boolnames" ---- ncurses-5.4/ncurses/tinfo/lib_tparm.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_tparm.c -@@ -115,7 +115,7 @@ - bool num_type; - } stack_frame; - --NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0; -+int NCURSES_EXPORT_VAR(_nc_tparm_err) = 0; - - static stack_frame stack[STACKSIZE]; - static int stack_ptr; ---- ncurses-5.4/ncurses/tinfo/lib_tputs.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_tputs.c -@@ -47,10 +47,10 @@ - - MODULE_ID("$Id: lib_tputs.c,v 1.62 2003/08/23 21:39:20 tom Exp $") - --NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */ --NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */ -+char NCURSES_EXPORT_VAR(PC) = 0; /* used by termcap library */ -+NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed) = 0; /* used by termcap library */ - --NCURSES_EXPORT_VAR(int) _nc_nulls_sent = 0; /* used by 'tack' program */ -+int NCURSES_EXPORT_VAR(_nc_nulls_sent) = 0; /* used by 'tack' program */ - - static int (*my_outch) (int c) = _nc_outch; - ---- ncurses-5.4/ncurses/tinfo/comp_error.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_error.c -@@ -42,9 +42,9 @@ - - MODULE_ID("$Id: comp_error.c,v 1.25 2002/09/07 20:05:07 tom Exp $") - --NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings = FALSE; --NCURSES_EXPORT_VAR(int) _nc_curr_line = 0; /* current line # in input */ --NCURSES_EXPORT_VAR(int) _nc_curr_col = 0; /* current column # in input */ -+bool NCURSES_EXPORT_VAR(_nc_suppress_warnings) = FALSE; -+int NCURSES_EXPORT_VAR(_nc_curr_line) = 0; /* current line # in input */ -+int NCURSES_EXPORT_VAR(_nc_curr_col) = 0; /* current column # in input */ - - static const char *sourcename; - static char *termtype; ---- ncurses-5.4/ncurses/tinfo/free_ttype.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/free_ttype.c -@@ -92,7 +92,7 @@ - } - - #if NCURSES_XNAMES --NCURSES_EXPORT_VAR(bool) _nc_user_definable = TRUE; -+bool NCURSES_EXPORT_VAR(_nc_user_definable) = TRUE; - - NCURSES_EXPORT(int) - use_extended_names(bool flag) ---- ncurses-5.4/ncurses/tinfo/comp_parse.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_parse.c -@@ -78,8 +78,8 @@ - * _nc_head _nc_tail - */ - --NCURSES_EXPORT_VAR(ENTRY *) _nc_head = 0; --NCURSES_EXPORT_VAR(ENTRY *) _nc_tail = 0; -+ENTRY * NCURSES_EXPORT_VAR(_nc_head) = 0; -+ENTRY * NCURSES_EXPORT_VAR(_nc_tail) = 0; - - static void - enqueue(ENTRY * ep) ---- ncurses-5.4/ncurses/tinfo/comp_scan.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_scan.c -@@ -60,19 +60,13 @@ - - #define iswhite(ch) (ch == ' ' || ch == '\t') - --NCURSES_EXPORT_VAR(int) --_nc_syntax = 0; /* termcap or terminfo? */ --NCURSES_EXPORT_VAR(long) --_nc_curr_file_pos = 0; /* file offset of current line */ --NCURSES_EXPORT_VAR(long) --_nc_comment_start = 0; /* start of comment range before name */ --NCURSES_EXPORT_VAR(long) --_nc_comment_end = 0; /* end of comment range before name */ --NCURSES_EXPORT_VAR(long) --_nc_start_line = 0; /* start line of current entry */ -+int NCURSES_EXPORT_VAR(_nc_syntax) = 0; /* termcap or terminfo? */ -+long NCURSES_EXPORT_VAR(_nc_curr_file_pos) = 0; /* file offset of current line */ -+long NCURSES_EXPORT_VAR(_nc_comment_start) = 0; /* start of comment range before name */ -+long NCURSES_EXPORT_VAR(_nc_comment_end) = 0; /* end of comment range before name */ -+long NCURSES_EXPORT_VAR(_nc_start_line) = 0; /* start line of current entry */ - --NCURSES_EXPORT_VAR(struct token) --_nc_curr_token = -+struct token NCURSES_EXPORT_VAR(_nc_curr_token) = - { - 0, 0, 0 - }; -@@ -90,8 +84,7 @@ - static char *pushname; - - #if NCURSES_EXT_FUNCS --NCURSES_EXPORT_VAR(bool) --_nc_disable_period = FALSE; /* used by tic -a option */ -+bool NCURSES_EXPORT_VAR(_nc_disable_period) = FALSE; /* used by tic -a option */ - #endif - - static bool end_of_stream(void); ---- ncurses-5.4/ncurses/tinfo/lib_acs.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_acs.c -@@ -37,8 +37,7 @@ - MODULE_ID("$Id: lib_acs.c,v 1.25 2002/12/28 16:26:46 tom Exp $") - - #if BROKEN_LINKER --NCURSES_EXPORT_VAR(chtype *) --_nc_acs_map(void) -+chtype * NCURSES_EXPORT_VAR(_nc_acs_map)(void) - { - static chtype *the_map = 0; - if (the_map == 0) -@@ -46,7 +45,7 @@ - return the_map; - } - #else --NCURSES_EXPORT_VAR(chtype) acs_map[ACS_LEN] = -+chtype NCURSES_EXPORT_VAR(acs_map[ACS_LEN]) = - { - 0 - }; ---- ncurses-5.4/ncurses/tinfo/lib_data.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_data.c -@@ -46,14 +46,11 @@ - * OS/2's native linker complains if we don't initialize public data when - * constructing a dll (reported by J.J.G.Ripoll). - */ --NCURSES_EXPORT_VAR(WINDOW *) --stdscr = 0; --NCURSES_EXPORT_VAR(WINDOW *) --curscr = 0; --NCURSES_EXPORT_VAR(WINDOW *) --newscr = 0; -+WINDOW * NCURSES_EXPORT_VAR(stdscr) = 0; -+WINDOW * NCURSES_EXPORT_VAR(curscr) = 0; -+WINDOW * NCURSES_EXPORT_VAR(newscr) = 0; - --NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain = 0; -+SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain) = 0; - - /* - * The variable 'SP' will be defined as a function on systems that cannot link -@@ -87,5 +84,5 @@ - } - - #else --NCURSES_EXPORT_VAR(SCREEN *) SP = NULL; /* Some linkers require initialized data... */ -+SCREEN * NCURSES_EXPORT_VAR(SP) = NULL; /* Some linkers require initialized data... */ - #endif ---- ncurses-5.4/ncurses/trace/lib_trace.c~visibility.patch -+++ ncurses-5.4/ncurses/trace/lib_trace.c -@@ -42,11 +42,11 @@ - - MODULE_ID("$Id: lib_trace.c,v 1.53 2003/11/23 00:39:30 tom Exp $") - --NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */ -+unsigned NCURSES_EXPORT_VAR(_nc_tracing) = 0; /* always define this */ - - #ifdef TRACE --NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace = ""; --NCURSES_EXPORT_VAR(long) _nc_outchars = 0; -+const char * NCURSES_EXPORT_VAR(_nc_tputs_trace) = ""; -+long NCURSES_EXPORT_VAR(_nc_outchars) = 0; - - static FILE *tracefp = 0; /* default to writing to stderr */ - ---- ncurses-5.4/ncurses/curses.priv.h~visibility.patch -+++ ncurses-5.4/ncurses/curses.priv.h -@@ -498,7 +498,7 @@ - #endif - }; - --extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain; -+extern SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain); - - #if NCURSES_NOMACROS - #include -@@ -752,9 +752,9 @@ - extern NCURSES_EXPORT(int) _nc_retrace_int (int); - extern NCURSES_EXPORT(unsigned) _nc_retrace_unsigned (unsigned); - extern NCURSES_EXPORT(void) _nc_fifo_dump (void); --extern NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace; --extern NCURSES_EXPORT_VAR(long) _nc_outchars; --extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; -+extern const char * NCURSES_EXPORT_VAR(_nc_tputs_trace); -+extern long NCURSES_EXPORT_VAR(_nc_outchars); -+extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); - - #if USE_WIDEC_SUPPORT - extern NCURSES_EXPORT(const char *) _nc_viswbuf2 (int, const wchar_t *); -@@ -1055,7 +1055,7 @@ - #endif - - /* scroll indices */ --extern NCURSES_EXPORT_VAR(int *) _nc_oldnums; -+extern int * NCURSES_EXPORT_VAR(_nc_oldnums); - - #define USE_SETBUF_0 0 - -@@ -1074,7 +1074,7 @@ - extern NCURSES_EXPORT(void) _nc_set_screen (SCREEN *); - #else - /* current screen is private data; avoid possible linking conflicts too */ --extern NCURSES_EXPORT_VAR(SCREEN *) SP; -+extern SCREEN * NCURSES_EXPORT_VAR(SP); - #define _nc_alloc_screen() ((SP = typeCalloc(SCREEN, 1)) != 0) - #define _nc_set_screen(sp) SP = sp - #endif -@@ -1087,7 +1087,7 @@ - #define screen_lines SP->_lines - #define screen_columns SP->_columns - --extern NCURSES_EXPORT_VAR(int) _nc_slk_format; /* != 0 if slk_init() called */ -+extern int NCURSES_EXPORT_VAR(_nc_slk_format); /* != 0 if slk_init() called */ - extern NCURSES_EXPORT(int) _nc_slk_initialize (WINDOW *, int); - - /* ---- /dev/null -+++ ncurses-5.4/m4/cf.m4 -@@ -0,0 +1,3703 @@ -+dnl*************************************************************************** -+dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * -+dnl * -+dnl Permission is hereby granted, free of charge, to any person obtaining a * -+dnl copy of this software and associated documentation files (the * -+dnl "Software"), to deal in the Software without restriction, including * -+dnl without limitation the rights to use, copy, modify, merge, publish, * -+dnl distribute, distribute with modifications, sublicense, and/or sell * -+dnl copies of the Software, and to permit persons to whom the Software is * -+dnl furnished to do so, subject to the following conditions: * -+dnl * -+dnl The above copyright notice and this permission notice shall be included * -+dnl in all copies or substantial portions of the Software. * -+dnl * -+dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+dnl * -+dnl Except as contained in this notice, the name(s) of the above copyright * -+dnl holders shall not be used in advertising or otherwise to promote the * -+dnl sale, use or other dealings in this Software without prior written * -+dnl authorization. * -+dnl*************************************************************************** -+dnl -+dnl Author: Thomas E. Dickey 1995-2003 -+dnl -+dnl $Id: aclocal.m4,v 1.333 2004/01/30 20:59:56 tom Exp $ -+dnl Macros used in NCURSES auto-configuration script. -+dnl -+dnl See http://invisible-island.net/autoconf/ for additional information. -+dnl -+dnl --------------------------------------------------------------------------- -+dnl --------------------------------------------------------------------------- -+dnl CF_ADA_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 -+dnl ------------------- -+dnl Construct the list of include-options for the C programs in the Ada95 -+dnl binding. -+AC_DEFUN([CF_ADA_INCLUDE_DIRS], -+[ -+ACPPFLAGS="-I. -I../../include $ACPPFLAGS" -+if test "$srcdir" != "."; then -+ ACPPFLAGS="-I\$(srcdir)/../../include $ACPPFLAGS" -+fi -+if test "$GCC" != yes; then -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+elif test "$includedir" != "/usr/include"; then -+ if test "$includedir" = '${prefix}/include' ; then -+ if test $prefix != /usr ; then -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+ fi -+ else -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+ fi -+fi -+AC_SUBST(ACPPFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ADD_CFLAGS version: 5 updated: 2002/12/01 00:12:15 -+dnl ------------- -+dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS -+dnl The second parameter if given makes this macro verbose. -+AC_DEFUN([CF_ADD_CFLAGS], -+[ -+cf_new_cflags= -+cf_new_cppflags= -+for cf_add_cflags in $1 -+do -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)]) -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)]) -+ CPPFLAGS="$cf_new_cppflags $CPPFLAGS" -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34 -+dnl ---------------- -+dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' -+dnl in the sharutils 4.2 distribution. -+AC_DEFUN([CF_ANSI_CC_CHECK], -+[ -+AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[ -+cf_cv_ansi_cc=no -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -+# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) -+for cf_arg in "-DCC_HAS_PROTOS" \ -+ "" \ -+ -qlanglvl=ansi \ -+ -std1 \ -+ -Ae \ -+ "-Aa -D_HPUX_SOURCE" \ -+ -Xc -+do -+ CF_ADD_CFLAGS($cf_arg) -+ AC_TRY_COMPILE( -+[ -+#ifndef CC_HAS_PROTOS -+#if !defined(__STDC__) || (__STDC__ != 1) -+choke me -+#endif -+#endif -+],[ -+ int test (int i, double x); -+ struct s1 {int (*f) (int a);}; -+ struct s2 {int (*f) (double a);};], -+ [cf_cv_ansi_cc="$cf_arg"; break]) -+done -+CFLAGS="$cf_save_CFLAGS" -+CPPFLAGS="$cf_save_CPPFLAGS" -+]) -+ -+if test "$cf_cv_ansi_cc" != "no"; then -+if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -+ CF_ADD_CFLAGS($cf_cv_ansi_cc) -+else -+ AC_DEFINE(CC_HAS_PROTOS) -+fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ANSI_CC_REQD version: 3 updated: 1997/09/06 13:40:44 -+dnl --------------- -+dnl For programs that must use an ANSI compiler, obtain compiler options that -+dnl will make it recognize prototypes. We'll do preprocessor checks in other -+dnl macros, since tools such as unproto can fake prototypes, but only part of -+dnl the preprocessor. -+AC_DEFUN([CF_ANSI_CC_REQD], -+[AC_REQUIRE([CF_ANSI_CC_CHECK]) -+if test "$cf_cv_ansi_cc" = "no"; then -+ AC_ERROR( -+[Your compiler does not appear to recognize prototypes. -+You have the following choices: -+ a. adjust your compiler options -+ b. get an up-to-date compiler -+ c. use a wrapper such as unproto]) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_BOOL_DECL version: 8 updated: 2004/01/30 15:51:18 -+dnl ------------ -+dnl Test if 'bool' is a builtin type in the configured C++ compiler. Some -+dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc -+dnl 2.6.3 does, in anticipation of the ANSI C++ standard. -+dnl -+dnl Treat the configuration-variable specially here, since we're directly -+dnl substituting its value (i.e., 1/0). -+dnl -+dnl $1 is the shell variable to store the result in, if not $cv_cv_builtin_bool -+AC_DEFUN([CF_BOOL_DECL], -+[ -+AC_MSG_CHECKING(if we should include stdbool.h) -+ -+AC_CACHE_VAL(cf_cv_header_stdbool_h,[ -+ AC_TRY_COMPILE([],[bool foo = false], -+ [cf_cv_header_stdbool_h=0], -+ [AC_TRY_COMPILE([ -+#ifndef __BEOS__ -+#include -+#endif -+],[bool foo = false], -+ [cf_cv_header_stdbool_h=1], -+ [cf_cv_header_stdbool_h=0])])]) -+ -+if test "$cf_cv_header_stdbool_h" = 1 -+then AC_MSG_RESULT(yes) -+else AC_MSG_RESULT(no) -+fi -+ -+AC_MSG_CHECKING([for builtin bool type]) -+ -+AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[ -+ AC_TRY_COMPILE([ -+#include -+#include -+],[bool x = false], -+ [ifelse($1,,cf_cv_builtin_bool,[$1])=1], -+ [ifelse($1,,cf_cv_builtin_bool,[$1])=0]) -+ ]) -+ -+if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1 -+then AC_MSG_RESULT(yes) -+else AC_MSG_RESULT(no) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_BOOL_SIZE version: 10 updated: 2002/02/23 20:38:31 -+dnl ------------ -+dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type). -+dnl Don't bother looking for bool.h, since it's been deprecated. -+dnl -+dnl If the current compiler is C rather than C++, we get the bool definition -+dnl from . -+AC_DEFUN([CF_BOOL_SIZE], -+[ -+AC_MSG_CHECKING([for size of bool]) -+AC_CACHE_VAL(cf_cv_type_of_bool,[ -+ rm -f cf_test.out -+ AC_TRY_RUN([ -+#include -+#include -+ -+#if defined(__cplusplus) -+ -+#ifdef HAVE_GXX_BUILTIN_H -+#include -+#elif HAVE_GPP_BUILTIN_H -+#include -+#elif HAVE_BUILTIN_H -+#include -+#endif -+ -+#else -+ -+#if $cf_cv_header_stdbool_h -+#include -+#endif -+ -+#endif -+ -+main() -+{ -+ FILE *fp = fopen("cf_test.out", "w"); -+ if (fp != 0) { -+ bool x = true; -+ if ((bool)(-x) >= 0) -+ fputs("unsigned ", fp); -+ if (sizeof(x) == sizeof(int)) fputs("int", fp); -+ else if (sizeof(x) == sizeof(char)) fputs("char", fp); -+ else if (sizeof(x) == sizeof(short))fputs("short",fp); -+ else if (sizeof(x) == sizeof(long)) fputs("long", fp); -+ fclose(fp); -+ } -+ exit(0); -+} -+ ], -+ [cf_cv_type_of_bool=`cat cf_test.out` -+ if test -z "$cf_cv_type_of_bool"; then -+ cf_cv_type_of_bool=unknown -+ fi], -+ [cf_cv_type_of_bool=unknown], -+ [cf_cv_type_of_bool=unknown]) -+ ]) -+ rm -f cf_test.out -+AC_MSG_RESULT($cf_cv_type_of_bool) -+if test "$cf_cv_type_of_bool" = unknown ; then -+ case .$NCURSES_BOOL in #(vi -+ .auto|.) NCURSES_BOOL=unsigned;; -+ esac -+ AC_MSG_WARN(Assuming $NCURSES_BOOL for type of bool) -+ cf_cv_type_of_bool=$NCURSES_BOOL -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CFG_DEFAULTS version: 6 updated: 2003/07/12 15:15:19 -+dnl --------------- -+dnl Determine the default configuration into which we'll install ncurses. This -+dnl can be overridden by the user's command-line options. There's two items to -+dnl look for: -+dnl 1. the prefix (e.g., /usr) -+dnl 2. the header files (e.g., /usr/include/ncurses) -+dnl We'll look for a previous installation of ncurses and use the same defaults. -+dnl -+dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and -+dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's -+dnl programs from a vendor's. -+AC_DEFUN([CF_CFG_DEFAULTS], -+[ -+AC_MSG_CHECKING(for prefix) -+if test "x$prefix" = "xNONE" ; then -+ case "$cf_cv_system_name" in -+ # non-vendor systems don't have a conflict -+ openbsd*|netbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ prefix=/usr -+ ;; -+ *) prefix=$ac_default_prefix -+ ;; -+ esac -+fi -+AC_MSG_RESULT($prefix) -+ -+if test "x$prefix" = "xNONE" ; then -+AC_MSG_CHECKING(for default include-directory) -+test -n "$verbose" && echo 1>&AC_FD_MSG -+for cf_symbol in \ -+ $includedir \ -+ $includedir/ncurses \ -+ $prefix/include \ -+ $prefix/include/ncurses \ -+ /usr/local/include \ -+ /usr/local/include/ncurses \ -+ /usr/include \ -+ /usr/include/ncurses -+do -+ cf_dir=`eval echo $cf_symbol` -+ if test -f $cf_dir/curses.h ; then -+ if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then -+ includedir="$cf_symbol" -+ test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG -+ break -+ fi -+ fi -+ test -n "$verbose" && echo " tested $cf_dir" 1>&AC_FD_MSG -+done -+AC_MSG_RESULT($includedir) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52 -+dnl ---------- -+dnl Check if the terminal-capability database functions are available. If not, -+dnl ncurses has a much-reduced version. -+AC_DEFUN([CF_CGETENT],[ -+AC_MSG_CHECKING(for terminal-capability database functions) -+AC_CACHE_VAL(cf_cv_cgetent,[ -+AC_TRY_LINK([ -+#include ],[ -+ char temp[128]; -+ char *buf = temp; -+ char *db_array = temp; -+ cgetent(&buf, /* int *, */ &db_array, "vt100"); -+ cgetcap(buf, "tc", '='); -+ cgetmatch(buf, "tc"); -+ ], -+ [cf_cv_cgetent=yes], -+ [cf_cv_cgetent=no]) -+]) -+AC_MSG_RESULT($cf_cv_cgetent) -+test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_CACHE version: 9 updated: 2004/01/30 15:59:13 -+dnl -------------- -+dnl Check if we're accidentally using a cache from a different machine. -+dnl Derive the system name, as a check for reusing the autoconf cache. -+dnl -+dnl If we've packaged config.guess and config.sub, run that (since it does a -+dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow -+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM -+dnl which is useful in cross-compiles. -+dnl -+dnl Note: we would use $ac_config_sub, but that is one of the places where -+dnl autoconf 2.5x broke compatibility with autoconf 2.13 -+AC_DEFUN([CF_CHECK_CACHE], -+[ -+if test -f $srcdir/config.guess ; then -+ ifelse([$1],,[AC_CANONICAL_HOST],[$1]) -+ system_name="$host_os" -+else -+ system_name="`(uname -s -r) 2>/dev/null`" -+ if test -z "$system_name" ; then -+ system_name="`(hostname) 2>/dev/null`" -+ fi -+fi -+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") -+AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) -+ -+test -z "$system_name" && system_name="$cf_cv_system_name" -+test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name) -+ -+if test ".$system_name" != ".$cf_cv_system_name" ; then -+ AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)) -+ AC_ERROR("Please remove config.cache and try again.") -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_ERRNO version: 9 updated: 2001/12/30 18:03:23 -+dnl -------------- -+dnl Check for data that is usually declared in or , e.g., -+dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it -+dnl ourselves. -+dnl -+dnl $1 = the name to check -+AC_DEFUN([CF_CHECK_ERRNO], -+[ -+AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[ -+ AC_TRY_COMPILE([ -+#ifdef HAVE_STDLIB_H -+#include -+#endif -+#include -+#include -+#include ], -+ [long x = (long) $1], -+ [cf_cv_dcl_$1=yes], -+ [cf_cv_dcl_$1=no]) -+]) -+ -+if test "$cf_cv_dcl_$1" = no ; then -+ CF_UPPER(cf_result,decl_$1) -+ AC_DEFINE_UNQUOTED($cf_result) -+fi -+ -+# It's possible (for near-UNIX clones) that the data doesn't exist -+CF_CHECK_EXTERN_DATA($1,int) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23 -+dnl -------------------- -+dnl Check for existence of external data in the current set of libraries. If -+dnl we can modify it, it's real enough. -+dnl $1 = the name to check -+dnl $2 = its type -+AC_DEFUN([CF_CHECK_EXTERN_DATA], -+[ -+AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[ -+ AC_TRY_LINK([ -+#undef $1 -+extern $2 $1; -+], -+ [$1 = 2], -+ [cf_cv_have_$1=yes], -+ [cf_cv_have_$1=no]) -+]) -+ -+if test "$cf_cv_have_$1" = yes ; then -+ CF_UPPER(cf_result,have_$1) -+ AC_DEFINE_UNQUOTED($cf_result) -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18 -+dnl ----------------- -+dnl Check if the C++ compiler accepts duplicate parameter initialization. This -+dnl is a late feature for the standard and is not in some recent compilers -+dnl (1999/9/11). -+AC_DEFUN([CF_CPP_PARAM_INIT], -+[ -+if test -n "$CXX"; then -+AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[ -+ AC_LANG_SAVE -+ AC_LANG_CPLUSPLUS -+ AC_TRY_RUN([ -+class TEST { -+private: -+ int value; -+public: -+ TEST(int x = 1); -+ ~TEST(); -+}; -+ -+TEST::TEST(int x = 1) // some compilers do not like second initializer -+{ -+ value = x; -+} -+void main() { } -+], -+ [cf_cv_cpp_param_init=yes], -+ [cf_cv_cpp_param_init=no], -+ [cf_cv_cpp_param_init=unknown]) -+ AC_LANG_RESTORE -+]) -+fi -+test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CPP_VSCAN_FUNC version: 5 updated: 2001/12/02 01:39:28 -+dnl ----------------- -+dnl Check if the g++ compiler supports vscan function (not a standard feature). -+AC_DEFUN([CF_CPP_VSCAN_FUNC], -+[ -+if test -n "$CXX"; then -+ -+AC_LANG_SAVE -+AC_LANG_CPLUSPLUS -+AC_CHECK_HEADERS(strstream.h) -+ -+AC_CACHE_CHECK(if $CXX supports vscan function,cf_cv_cpp_vscan_func,[ -+ for cf_vscan_func in strstream strstream_cast stdio -+ do -+ case $cf_vscan_func in #(vi -+ stdio) cf_vscan_defs=USE_STDIO_VSCAN ;; #(vi -+ strstream) cf_vscan_defs=USE_STRSTREAM_VSCAN ;; -+ strstream_cast) cf_vscan_defs=USE_STRSTREAM_VSCAN_CAST ;; -+ esac -+ AC_TRY_LINK([ -+#include -+#include -+#define $cf_vscan_defs 1 -+#if defined(USE_STDIO_VSCAN) -+#elif defined(HAVE_STRSTREAM_H) && defined(USE_STRSTREAM_VSCAN) -+#include -+#endif -+ -+int scanw(const char* fmt, ...) -+{ -+ int result = -1; -+ char buf[BUFSIZ]; -+ -+ va_list args; -+ va_start(args, fmt); -+#if defined(USE_STDIO_VSCAN) -+ if (::vsscanf(buf, fmt, args) != -1) -+ result = 0; -+#elif defined(USE_STRSTREAM_VSCAN) -+ strstreambuf ss(buf, sizeof(buf)); -+ if (ss.vscan(fmt, args) != -1) -+ result = 0; -+#elif defined(USE_STRSTREAM_VSCAN_CAST) -+ strstreambuf ss(buf, sizeof(buf)); -+ if (ss.vscan(fmt, (_IO_va_list)args) != -1) -+ result = 0; -+#else -+#error case $cf_vscan_func failed -+#endif -+ va_end(args); -+ return result; -+} -+],[int tmp, foo = scanw("%d", &tmp)], -+ [cf_cv_cpp_vscan_func=$cf_vscan_func; break], -+ [cf_cv_cpp_vscan_func=no]) -+ test "$cf_cv_cpp_vscan_func" != no && break -+ done -+]) -+ -+AC_LANG_RESTORE -+fi -+ -+case $cf_cv_cpp_vscan_func in #(vi -+stdio) #(vi -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STDIO_VSCAN) -+ ;; -+strstream) -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STRSTREAM_VSCAN) -+ ;; -+strstream_cast) -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STRSTREAM_VSCAN_CAST) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 -+dnl ---------- -+dnl "dirname" is not portable, so we fake it with a shell script. -+AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31 -+dnl --------------- -+AC_DEFUN([CF_DIRS_TO_MAKE], -+[ -+DIRS_TO_MAKE="lib" -+for cf_item in $cf_list_models -+do -+ CF_OBJ_SUBDIR($cf_item,cf_subdir) -+ for cf_item2 in $DIRS_TO_MAKE -+ do -+ test $cf_item2 = $cf_subdir && break -+ done -+ test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir" -+done -+for cf_dir in $DIRS_TO_MAKE -+do -+ test ! -d $cf_dir && mkdir $cf_dir -+done -+AC_SUBST(DIRS_TO_MAKE) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39 -+dnl -------- -+dnl Check if 'errno' is declared in -+AC_DEFUN([CF_ERRNO], -+[ -+CF_CHECK_ERRNO(errno) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43 -+dnl --------------- -+dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between -+dnl math.h and builtin.h, only for ncurses -+AC_DEFUN([CF_ETIP_DEFINES], -+[ -+AC_MSG_CHECKING(for special defines needed for etip.h) -+cf_save_CXXFLAGS="$CXXFLAGS" -+cf_result="none" -+for cf_math in "" MATH_H -+do -+for cf_excp in "" MATH_EXCEPTION -+do -+ CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include" -+ test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}" -+ test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}" -+AC_TRY_COMPILE([ -+#include -+],[],[ -+ test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math}) -+ test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp}) -+ cf_result="$cf_math $cf_excp" -+ break -+],[]) -+done -+done -+AC_MSG_RESULT($cf_result) -+CXXFLAGS="$cf_save_CXXFLAGS" -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_MEMMOVE version: 5 updated: 2000/08/12 23:18:52 -+dnl --------------- -+dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither -+dnl is found, add our own version of memmove to the list of objects. -+AC_DEFUN([CF_FUNC_MEMMOVE], -+[ -+AC_CHECK_FUNC(memmove,,[ -+AC_CHECK_FUNC(bcopy,[ -+ AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[ -+ AC_TRY_RUN([ -+int main() { -+ static char data[] = "abcdefghijklmnopqrstuwwxyz"; -+ char temp[40]; -+ bcopy(data, temp, sizeof(data)); -+ bcopy(temp+10, temp, 15); -+ bcopy(temp+5, temp+15, 10); -+ exit (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz")); -+} -+ ], -+ [cf_cv_good_bcopy=yes], -+ [cf_cv_good_bcopy=no], -+ [cf_cv_good_bcopy=unknown]) -+ ]) -+ ],[cf_cv_good_bcopy=no]) -+ if test "$cf_cv_good_bcopy" = yes ; then -+ AC_DEFINE(USE_OK_BCOPY) -+ else -+ AC_DEFINE(USE_MY_MEMMOVE) -+ fi -+])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_POLL version: 2 updated: 2000/02/06 01:38:04 -+dnl ------------ -+dnl See if the poll function really works. Some platforms have poll(), but -+dnl it does not work for terminals or files. -+AC_DEFUN([CF_FUNC_POLL],[ -+AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[ -+AC_TRY_RUN([ -+#include -+#ifdef HAVE_POLL_H -+#include -+#else -+#include -+#endif -+int main() { -+ struct pollfd myfds; -+ int ret; -+ -+ myfds.fd = 0; -+ myfds.events = POLLIN; -+ -+ ret = poll(&myfds, 1, 100); -+ exit(ret != 0); -+}], -+ [cf_cv_working_poll=yes], -+ [cf_cv_working_poll=no], -+ [cf_cv_working_poll=unknown])]) -+test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24 -+dnl --------------- -+dnl Some old/broken variations define tcgetattr() only as a macro in -+dnl termio(s).h -+AC_DEFUN([CF_FUNC_TERMIOS],[ -+AC_REQUIRE([CF_STRUCT_TERMIOS]) -+AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[ -+AC_TRY_LINK([ -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+#ifdef HAVE_TERMIOS_H -+#include -+#define TTY struct termios -+#else -+#ifdef HAVE_TERMIO_H -+#include -+#define TTY struct termio -+#endif -+#endif -+],[ -+TTY foo; -+tcgetattr(1, &foo);], -+[cf_cv_have_tcgetattr=yes], -+[cf_cv_have_tcgetattr=no])]) -+test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10 -+dnl --------------- -+dnl Check for vsscanf() function, which is in c9x but generally not in earlier -+dnl versions of C. It is in the GNU C library, and can often be simulated by -+dnl other functions. -+AC_DEFUN([CF_FUNC_VSSCANF], -+[ -+AC_CACHE_CHECK(for vsscanf function or workaround,cf_cv_func_vsscanf,[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ va_list ap; -+ vsscanf("from", "%d", ap)],[cf_cv_func_vsscanf=vsscanf],[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ FILE strbuf; -+ char *str = "from"; -+ -+ strbuf._flag = _IOREAD; -+ strbuf._ptr = strbuf._base = (unsigned char *) str; -+ strbuf._cnt = strlen(str); -+ strbuf._file = _NFILE; -+ return (vfscanf(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=vfscanf],[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ FILE strbuf; -+ char *str = "from"; -+ -+ strbuf._flag = _IOREAD; -+ strbuf._ptr = strbuf._base = (unsigned char *) str; -+ strbuf._cnt = strlen(str); -+ strbuf._file = _NFILE; -+ return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[ -+cf_cv_func_vsscanf=no])])])]) -+ -+case $cf_cv_func_vsscanf in #(vi -+vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi -+vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi -+_doscan) AC_DEFINE(HAVE__DOSCAN);; -+esac -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_ATTRIBUTES version: 9 updated: 2002/12/21 19:25:52 -+dnl ----------------- -+dnl Test for availability of useful gcc __attribute__ directives to quiet -+dnl compiler warnings. Though useful, not all are supported -- and contrary -+dnl to documentation, unrecognized directives cause older compilers to barf. -+AC_DEFUN([CF_GCC_ATTRIBUTES], -+[ -+if test "$GCC" = yes -+then -+cat > conftest.i < conftest.$ac_ext <&AC_FD_CC -+ case $cf_attribute in -+ scanf|printf) -+ cat >conftest.h <conftest.h <>confdefs.h -+ fi -+ done -+else -+ fgrep define conftest.i >>confdefs.h -+fi -+rm -rf conftest* -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_VERSION version: 3 updated: 2003/09/06 19:16:57 -+dnl -------------- -+dnl Find version of gcc -+AC_DEFUN([CF_GCC_VERSION],[ -+AC_REQUIRE([AC_PROG_CC]) -+GCC_VERSION=none -+if test "$GCC" = yes ; then -+ AC_MSG_CHECKING(version of $CC) -+ GCC_VERSION="`${CC} --version|sed -e '2,$d' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" -+ test -z "$GCC_VERSION" && GCC_VERSION=unknown -+ AC_MSG_RESULT($GCC_VERSION) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_WARNINGS version: 15 updated: 2003/07/05 18:42:30 -+dnl --------------- -+dnl Check if the compiler supports useful warning options. There's a few that -+dnl we don't use, simply because they're too noisy: -+dnl -+dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x) -+dnl -Wredundant-decls (system headers make this too noisy) -+dnl -Wtraditional (combines too many unrelated messages, only a few useful) -+dnl -Wwrite-strings (too noisy, but should review occasionally). This -+dnl is enabled for ncurses using "--enable-const". -+dnl -pedantic -+dnl -+AC_DEFUN([CF_GCC_WARNINGS], -+[ -+AC_REQUIRE([CF_GCC_VERSION]) -+if test "$GCC" = yes -+then -+ cat > conftest.$ac_ext <>conftest.ads <>conftest.adb <&AC_FD_CC 2>&1 ) ; then -+ if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then -+ifelse($3,, :,[ $3]) -+ifelse($4,,,[ else -+ $4]) -+ fi -+ifelse($4,,,[else -+ $4]) -+fi -+rm -f conftest* -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GNAT_VERSION version: 11 updated: 2003/09/06 19:42:09 -+dnl --------------- -+dnl Verify version of GNAT. -+AC_DEFUN([CF_GNAT_VERSION], -+[ -+AC_MSG_CHECKING(for gnat version) -+cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\ -+ sed -e '2,$d' -e 's/[[^0-9 \.]]//g' -e 's/^[[ ]]*//' -e 's/ .*//'` -+AC_MSG_RESULT($cf_gnat_version) -+ -+case $cf_gnat_version in -+ 3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) -+ cf_cv_prog_gnat_correct=yes -+ ;; -+ *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding. -+ cf_cv_prog_gnat_correct=no -+ ;; -+esac -+case $cf_gnat_version in -+ 3.[[1-9]]*|[[4-9]].*) -+ cf_compile_generics=generics -+ cf_generic_objects="\$(GENOBJS)" -+ ;; -+ *) cf_compile_generics= -+ cf_generic_objects= -+ ;; -+esac -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_GNU_SOURCE version: 3 updated: 2000/10/29 23:30:53 -+dnl ------------- -+dnl Check if we must define _GNU_SOURCE to get a reasonable value for -+dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect -+dnl (or misfeature) of glibc2, which breaks portability of many applications, -+dnl since it is interwoven with GNU extensions. -+dnl -+dnl Well, yes we could work around it... -+AC_DEFUN([CF_GNU_SOURCE], -+[ -+AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[ -+AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_gnu_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_gnu_source=no], -+ [cf_cv_gnu_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GPP_LIBRARY version: 8 updated: 2003/02/02 01:41:46 -+dnl -------------- -+dnl If we're trying to use g++, test if libg++ is installed (a rather common -+dnl problem :-). If we have the compiler but no library, we'll be able to -+dnl configure, but won't be able to build the c++ demo program. -+AC_DEFUN([CF_GPP_LIBRARY], -+[ -+cf_cxx_library=unknown -+case $cf_cv_system_name in #(vi -+os2*) #(vi -+ cf_gpp_libname=gpp -+ ;; -+*) -+ cf_gpp_libname=g++ -+ ;; -+esac -+if test "$GXX" = yes; then -+ AC_MSG_CHECKING([for lib$cf_gpp_libname]) -+ cf_save="$LIBS" -+ LIBS="$LIBS -l$cf_gpp_libname" -+ AC_TRY_LINK([ -+#include <$cf_gpp_libname/builtin.h> -+ ], -+ [two_arg_error_handler_t foo2 = lib_error_handler], -+ [cf_cxx_library=yes -+ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" -+ if test "$cf_gpp_libname" = cpp ; then -+ AC_DEFINE(HAVE_GPP_BUILTIN_H) -+ else -+ AC_DEFINE(HAVE_GXX_BUILTIN_H) -+ fi], -+ [AC_TRY_LINK([ -+#include -+ ], -+ [two_arg_error_handler_t foo2 = lib_error_handler], -+ [cf_cxx_library=yes -+ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" -+ AC_DEFINE(HAVE_BUILTIN_H)], -+ [cf_cxx_library=no])]) -+ LIBS="$cf_save" -+ AC_MSG_RESULT($cf_cxx_library) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GXX_VERSION version: 3 updated: 2003/09/06 19:16:21 -+dnl -------------- -+dnl Check for version of g++ -+AC_DEFUN([CF_GXX_VERSION],[ -+AC_REQUIRE([AC_PROG_CPP]) -+GXX_VERSION=none -+if test "$GXX" = yes; then -+ AC_MSG_CHECKING(version of g++) -+ GXX_VERSION="`${CXX-g++} --version|sed -e '2,$d'`" -+ AC_MSG_RESULT($GXX_VERSION) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 -+dnl --------------- -+dnl Construct the list of include-options according to whether we're building -+dnl in the source directory or using '--srcdir=DIR' option. If we're building -+dnl with gcc, don't append the includedir if it happens to be /usr/include, -+dnl since that usually breaks gcc's shadow-includes. -+AC_DEFUN([CF_INCLUDE_DIRS], -+[ -+CPPFLAGS="-I. -I../include $CPPFLAGS" -+if test "$srcdir" != "."; then -+ CPPFLAGS="-I\$(srcdir)/../include $CPPFLAGS" -+fi -+if test "$GCC" != yes; then -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+elif test "$includedir" != "/usr/include"; then -+ if test "$includedir" = '${prefix}/include' ; then -+ if test $prefix != /usr ; then -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+ fi -+ else -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+ fi -+fi -+AC_SUBST(CPPFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52 -+dnl ---------- -+dnl Check if we have either a function or macro for 'isascii()'. -+AC_DEFUN([CF_ISASCII], -+[ -+AC_MSG_CHECKING(for isascii) -+AC_CACHE_VAL(cf_cv_have_isascii,[ -+ AC_TRY_LINK([#include ],[int x = isascii(' ')], -+ [cf_cv_have_isascii=yes], -+ [cf_cv_have_isascii=no]) -+])dnl -+AC_MSG_RESULT($cf_cv_have_isascii) -+test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIBUTF8 version: 2 updated: 2002/01/19 22:51:32 -+dnl ---------- -+dnl Check for libutf8 -+AC_DEFUN([CF_LIBUTF8], -+[ -+AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[ -+ cf_save_LIBS="$LIBS" -+ LIBS="-lutf8 $LIBS" -+AC_TRY_LINK([ -+#include ],[putwc(0,0);], -+ [cf_cv_libutf8=yes], -+ [cf_cv_libutf8=no]) -+ LIBS="$cf_save_LIBS" -+]) -+ -+if test "$cf_cv_libutf8" = yes ; then -+ AC_DEFINE(HAVE_LIBUTF8_H) -+ LIBS="-lutf8 $LIBS" -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_PREFIX version: 7 updated: 2001/01/12 01:23:48 -+dnl ------------- -+dnl Compute the library-prefix for the given host system -+dnl $1 = variable to set -+AC_DEFUN([CF_LIB_PREFIX], -+[ -+ case $cf_cv_system_name in -+ OS/2*) LIB_PREFIX='' ;; -+ os2*) LIB_PREFIX='' ;; -+ *) LIB_PREFIX='lib' ;; -+ esac -+ifelse($1,,,[$1=$LIB_PREFIX]) -+ AC_SUBST(LIB_PREFIX) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_RULES version: 30 updated: 2004/01/10 15:50:50 -+dnl ------------ -+dnl Append definitions and rules for the given models to the subdirectory -+dnl Makefiles, and the recursion rule for the top-level Makefile. If the -+dnl subdirectory is a library-source directory, modify the LIBRARIES list in -+dnl the corresponding makefile to list the models that we'll generate. -+dnl -+dnl For shared libraries, make a list of symbolic links to construct when -+dnl generating each library. The convention used for Linux is the simplest -+dnl one: -+dnl lib.so -> -+dnl lib.so. -> -+dnl lib.so.. -+AC_DEFUN([CF_LIB_RULES], -+[ -+CF_LIB_PREFIX(cf_prefix) -+AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+for cf_dir in $SRC_SUBDIRS -+do -+ if test -f $srcdir/$cf_dir/modules; then -+ -+ IMPORT_LIB= -+ SHARED_LIB= -+ LIBS_TO_MAKE= -+ for cf_item in $CF_LIST_MODELS -+ do -+ CF_LIB_SUFFIX($cf_item,cf_suffix) -+ if test $cf_item = shared ; then -+ if test "$cf_cv_do_symlinks" = yes ; then -+ case "$cf_cv_shlib_version" in #(vi -+ rel) #(vi -+ case "$cf_cv_system_name" in #(vi -+ darwin*) cf_suffix='.$(REL_VERSION)'"$cf_suffix" ;; #(vi -+ *) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;; -+ esac -+ ;; -+ abi) -+ case "$cf_cv_system_name" in #(vi -+ darwin*) cf_suffix='.$(ABI_VERSION)'"$cf_suffix" ;; #(vi -+ *) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;; -+ esac -+ ;; -+ esac -+ fi -+ # cygwin needs import library, and has unique naming convention -+ # use autodetected ${cf_prefix} for import lib and static lib, but -+ # use 'cyg' prefix for shared lib. -+ if test $cf_cv_shlib_version = cygdll ; then -+ SHARED_LIB="../lib/cyg${cf_dir}\$(ABI_VERSION).dll" -+ IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a" -+ LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)" -+ continue -+ fi -+ fi -+ LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}" -+ done -+ -+ if test $cf_dir = ncurses ; then -+ cf_subsets="$LIB_SUBSETS" -+ cf_termlib=`echo "$cf_subsets" |sed -e 's/ .*$//'` -+ if test "$cf_termlib" != "$cf_subsets" ; then -+ cf_item=`echo $LIBS_TO_MAKE |sed -e s%$LIB_NAME%$TINFO_NAME%g` -+ LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE" -+ fi -+ else -+ cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'` -+ fi -+ -+ sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \ -+ -e "s%@IMPORT_LIB@%$IMPORT_LIB%" \ -+ -e "s%@SHARED_LIB@%$SHARED_LIB%" \ -+ $cf_dir/Makefile >$cf_dir/Makefile.out -+ mv $cf_dir/Makefile.out $cf_dir/Makefile -+ -+ $AWK -f $srcdir/mk-0th.awk \ -+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ -+ for cf_subset in $cf_subsets -+ do -+ cf_subdirs= -+ for cf_item in $CF_LIST_MODELS -+ do -+ echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})" -+ CF_UPPER(CF_ITEM,$cf_item) -+ CF_LIB_SUFFIX($cf_item,cf_suffix) -+ CF_OBJ_SUBDIR($cf_item,cf_subdir) -+ -+ # These dependencies really are for development, not -+ # builds, but they are useful in porting, too. -+ cf_depend="../include/ncurses_cfg.h" -+ if test "$srcdir" = "."; then -+ cf_reldir="." -+ else -+ cf_reldir="\$(srcdir)" -+ fi -+ -+ if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then -+ cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h" -+ elif test -f $srcdir/$cf_dir/curses.priv.h; then -+ cf_depend="$cf_depend $cf_reldir/curses.priv.h" -+ fi -+ -+ $AWK -f $srcdir/mk-1st.awk \ -+ name=$cf_dir \ -+ traces=$LIB_TRACING \ -+ MODEL=$CF_ITEM \ -+ model=$cf_subdir \ -+ prefix=$cf_prefix \ -+ suffix=$cf_suffix \ -+ subset=$cf_subset \ -+ ShlibVer=$cf_cv_shlib_version \ -+ ShlibVerInfix=$cf_cv_shlib_version_infix \ -+ DoLinks=$cf_cv_do_symlinks \ -+ rmSoLocs=$cf_cv_rm_so_locs \ -+ ldconfig="$LDCONFIG" \ -+ overwrite=$WITH_OVERWRITE \ -+ depend="$cf_depend" \ -+ host="$host" \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ for cf_subdir2 in $cf_subdirs lib -+ do -+ test $cf_subdir = $cf_subdir2 && break -+ done -+ test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \ -+ $AWK -f $srcdir/mk-2nd.awk \ -+ name=$cf_dir \ -+ traces=$LIB_TRACING \ -+ MODEL=$CF_ITEM \ -+ model=$cf_subdir \ -+ subset=$cf_subset \ -+ srcdir=$srcdir \ -+ echo=$WITH_ECHO \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ cf_subdirs="$cf_subdirs $cf_subdir" -+ done -+ done -+ fi -+ -+ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >>Makefile -+done -+ -+for cf_dir in $SRC_SUBDIRS -+do -+ if test -f $cf_dir/Makefile ; then -+ case "$cf_dir" in -+ Ada95) #(vi -+ echo 'libs \' >> Makefile -+ echo 'install.libs \' >> Makefile -+ echo 'uninstall.libs ::' >> Makefile -+ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >> Makefile -+ ;; -+ esac -+ fi -+ -+ if test -f $srcdir/$cf_dir/modules; then -+ echo >> Makefile -+ if test -f $srcdir/$cf_dir/headers; then -+cat >> Makefile <> Makefile -+fi -+cat >> Makefile <> Makefile <> Makefile <> Makefile <headers.sh <>headers.sh </<\$END\/\$NAME>/" >> \$TMPSED -+ done -+ ;; -+*) -+ echo "" >> \$TMPSED -+ ;; -+esac -+CF_EOF -+else -+ cat >>headers.sh <//" >> \$TMPSED -+ NAME=ncurses.h -+ fi -+ echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED -+ done -+ ;; -+*) -+ echo "s///" >> \$TMPSED -+ ;; -+esac -+CF_EOF -+fi -+cat >>headers.sh < \$TMPSRC -+NAME=\`basename \$SRC\` -+CF_EOF -+if test $WITH_CURSES_H != yes; then -+ cat >>headers.sh <>headers.sh <>$cf_dir/Makefile <>$cf_dir/Makefile -+ j=$i -+ done -+ echo " $j" >>$cf_dir/Makefile -+ for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"` -+ do -+ echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(DESTDIR)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile -+ test $i = curses.h && test $WITH_CURSES_H = yes && echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile -+ done -+ -+ cat >>$cf_dir/Makefile <>$cf_dir/Makefile -+ test $i = curses.h && echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile -+ done -+ fi -+ -+ if test -f $srcdir/$cf_dir/modules; then -+ if test "$cf_dir" != "c++" ; then -+ cat >>$cf_dir/Makefile <<"CF_EOF" -+depend : $(AUTO_SRC) -+ makedepend -- $(CPPFLAGS) -- $(C_SRC) -+ -+# DO NOT DELETE THIS LINE -- make depend depends on it. -+CF_EOF -+ fi -+ fi -+done -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_SUFFIX version: 13 updated: 2003/11/01 16:09:07 -+dnl ------------- -+dnl Compute the library file-suffix from the given model name -+dnl $1 = model name -+dnl $2 = variable to set -+dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. -+AC_DEFUN([CF_LIB_SUFFIX], -+[ -+ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+ case $1 in -+ libtool) $2='.la' ;; -+ normal) $2='.a' ;; -+ debug) $2='_g.a' ;; -+ profile) $2='_p.a' ;; -+ shared) -+ case $cf_cv_system_name in -+ cygwin*) $2='.dll' ;; -+ darwin*) $2='.dylib' ;; -+ hpux*) -+ case $target in -+ ia64*) $2='.so' ;; -+ *) $2='.sl' ;; -+ esac -+ ;; -+ *) $2='.so' ;; -+ esac -+ esac -+ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_TYPE version: 4 updated: 2000/10/20 22:57:49 -+dnl ----------- -+dnl Compute the string to append to -library from the given model name -+dnl $1 = model name -+dnl $2 = variable to set -+dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. -+AC_DEFUN([CF_LIB_TYPE], -+[ -+ case $1 in -+ libtool) $2='' ;; -+ normal) $2='' ;; -+ debug) $2='_g' ;; -+ profile) $2='_p' ;; -+ shared) $2='' ;; -+ esac -+ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LINK_DATAONLY version: 6 updated: 2003/02/02 01:41:46 -+dnl ---------------- -+dnl Some systems have a non-ANSI linker that doesn't pull in modules that have -+dnl only data (i.e., no functions), for example NeXT. On those systems we'll -+dnl have to provide wrappers for global tables to ensure they're linked -+dnl properly. -+AC_DEFUN([CF_LINK_DATAONLY], -+[ -+AC_MSG_CHECKING([if data-only library module links]) -+AC_CACHE_VAL(cf_cv_link_dataonly,[ -+ rm -f conftest.a -+ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null -+ fi -+ rm -f conftest.$ac_ext data.o -+ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null -+ fi -+ rm -f conftest.$ac_ext func.o -+ ( eval $RANLIB conftest.a ) 2>&AC_FD_CC >/dev/null -+ cf_saveLIBS="$LIBS" -+ LIBS="conftest.a $LIBS" -+ AC_TRY_RUN([ -+ int main() -+ { -+ extern int testfunc(); -+ exit (!testfunc()); -+ } -+ ], -+ [cf_cv_link_dataonly=yes], -+ [cf_cv_link_dataonly=no], -+ [cf_cv_link_dataonly=unknown]) -+ LIBS="$cf_saveLIBS" -+ ]) -+AC_MSG_RESULT($cf_cv_link_dataonly) -+ -+if test "$cf_cv_link_dataonly" = no ; then -+ AC_DEFINE(BROKEN_LINKER) -+ BROKEN_LINKER=1 -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LINK_FUNCS version: 5 updated: 2003/02/02 01:41:46 -+dnl ------------- -+dnl Most Unix systems have both link and symlink, a few don't have symlink. -+dnl A few non-Unix systems implement symlink, but not link. -+dnl A few non-systems implement neither (or have nonfunctional versions). -+AC_DEFUN([CF_LINK_FUNCS], -+[ -+AC_CHECK_FUNCS( \ -+ remove \ -+ unlink ) -+ -+if test "$cross_compiling" = yes ; then -+ AC_CHECK_FUNCS( \ -+ link \ -+ symlink ) -+else -+ AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[ -+ cf_cv_link_funcs= -+ for cf_func in link symlink ; do -+ AC_TRY_RUN([ -+#include -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+int main() -+{ -+ int fail = 0; -+ char *src = "config.log"; -+ char *dst = "conftest.chk"; -+ struct stat src_sb; -+ struct stat dst_sb; -+ -+ stat(src, &src_sb); -+ fail = ($cf_func("config.log", "conftest.chk") < 0) -+ || (stat(dst, &dst_sb) < 0) -+ || (dst_sb.st_mtime != src_sb.st_mtime); -+#ifdef HAVE_UNLINK -+ unlink(dst); -+#else -+ remove(dst); -+#endif -+ exit (fail); -+} -+ ],[ -+ cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" -+ eval 'ac_cv_func_'$cf_func'=yes'],[ -+ eval 'ac_cv_func_'$cf_func'=no'],[ -+ eval 'ac_cv_func_'$cf_func'=error']) -+ done -+ test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no -+ ]) -+ test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK) -+ test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAKEFLAGS version: 9 updated: 2001/12/30 18:17:27 -+dnl ------------ -+dnl Some 'make' programs support $(MAKEFLAGS), some $(MFLAGS), to pass 'make' -+dnl options to lower-levels. It's very useful for "make -n" -- if we have it. -+dnl (GNU 'make' does both, something POSIX 'make', which happens to make the -+dnl $(MAKEFLAGS) variable incompatible because it adds the assignments :-) -+AC_DEFUN([CF_MAKEFLAGS], -+[ -+AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[ -+ cf_cv_makeflags='' -+ for cf_option in '-$(MAKEFLAGS)' '$(MFLAGS)' -+ do -+ cat >cf_makeflags.tmp </dev/null` -+ case "$cf_result" in -+ .*k) -+ cf_result=`${MAKE-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null` -+ case "$cf_result" in -+ .*CC=*) cf_cv_makeflags= -+ ;; -+ *) cf_cv_makeflags=$cf_option -+ ;; -+ esac -+ break -+ ;; -+ *) echo no match "$cf_result" -+ ;; -+ esac -+ done -+ rm -f cf_makeflags.tmp -+]) -+ -+AC_SUBST(cf_cv_makeflags) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAKE_TAGS version: 2 updated: 2000/10/04 09:18:40 -+dnl ------------ -+dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have -+dnl a monocase filesystem. -+AC_DEFUN([CF_MAKE_TAGS],[ -+AC_REQUIRE([CF_MIXEDCASE_FILENAMES]) -+AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no) -+ -+if test "$cf_cv_mixedcase" = yes ; then -+ AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no) -+else -+ MAKE_UPPER_TAGS=no -+fi -+ -+if test "$MAKE_UPPER_TAGS" = yes ; then -+ MAKE_UPPER_TAGS= -+else -+ MAKE_UPPER_TAGS="#" -+fi -+AC_SUBST(MAKE_UPPER_TAGS) -+ -+if test "$MAKE_LOWER_TAGS" = yes ; then -+ MAKE_LOWER_TAGS= -+else -+ MAKE_LOWER_TAGS="#" -+fi -+AC_SUBST(MAKE_LOWER_TAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_FORMAT version: 7 updated: 2003/12/20 19:30:34 -+dnl ----------------- -+dnl Option to allow user to override automatic configuration of manpage format. -+dnl There are several special cases: -+dnl -+dnl gzip - man checks for, can display gzip'd files -+dnl compress - man checks for, can display compressed files -+dnl BSDI - files in the cat-directories are suffixed ".0" -+dnl formatted - installer should format (put files in cat-directory) -+dnl catonly - installer should only format, e.g., for a turnkey system. -+dnl -+dnl There are other configurations which this macro does not test, e.g., HPUX's -+dnl compressed manpages (but uncompressed manpages are fine, and HPUX's naming -+dnl convention would not match our use). -+AC_DEFUN([CF_MANPAGE_FORMAT], -+[ -+AC_REQUIRE([CF_PATHSEP]) -+AC_MSG_CHECKING(format of man-pages) -+ -+AC_ARG_WITH(manpage-format, -+ [ --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and -+ optionally formatted/catonly, e.g., gzip,formatted], -+ [MANPAGE_FORMAT=$withval], -+ [MANPAGE_FORMAT=unknown]) -+ -+test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown -+MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'` -+ -+cf_unknown= -+ -+case $MANPAGE_FORMAT in -+unknown) -+ if test -z "$MANPATH" ; then -+ MANPATH="/usr/man:/usr/share/man" -+ fi -+ -+ # look for the 'date' man-page (it's most likely to be installed!) -+ MANPAGE_FORMAT= -+ cf_preform=no -+ cf_catonly=yes -+ cf_example=date -+ -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}" -+ for cf_dir in $MANPATH; do -+ test -z "$cf_dir" && cf_dir=/usr/man -+ for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example -+ do -+ cf_test=`echo $cf_name | sed -e 's/*//'` -+ if test "x$cf_test" = "x$cf_name" ; then -+ -+ case "$cf_name" in -+ *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";; -+ *.Z) MANPAGE_FORMAT="$MANPAGE_FORMAT compress";; -+ *.0) MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";; -+ *) MANPAGE_FORMAT="$MANPAGE_FORMAT normal";; -+ esac -+ -+ case "$cf_name" in -+ $cf_dir/man*) -+ cf_catonly=no -+ ;; -+ $cf_dir/cat*) -+ cf_preform=yes -+ ;; -+ esac -+ break -+ fi -+ -+ # if we found a match in either man* or cat*, stop looking -+ if test -n "$MANPAGE_FORMAT" ; then -+ cf_found=no -+ test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted" -+ test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly" -+ case "$cf_name" in -+ $cf_dir/cat*) -+ cf_found=yes -+ ;; -+ esac -+ test $cf_found=yes && break -+ fi -+ done -+ # only check the first directory in $MANPATH where we find manpages -+ if test -n "$MANPAGE_FORMAT" ; then -+ break -+ fi -+ done -+ # if we did not find the example, just assume it is normal -+ test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal -+ IFS="$ac_save_ifs" -+ ;; -+*) -+ for cf_option in $MANPAGE_FORMAT; do -+ case $cf_option in #(vi -+ gzip|compress|BSDI|normal|formatted|catonly) -+ ;; -+ *) -+ cf_unknown="$cf_unknown $cf_option" -+ ;; -+ esac -+ done -+ ;; -+esac -+ -+AC_MSG_RESULT($MANPAGE_FORMAT) -+if test -n "$cf_unknown" ; then -+ AC_MSG_WARN(Unexpected manpage-format $cf_unknown) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_RENAMES version: 6 updated: 2002/01/19 22:51:32 -+dnl ------------------ -+dnl The Debian people have their own naming convention for manpages. This -+dnl option lets us override the name of the file containing renaming, or -+dnl disable it altogether. -+AC_DEFUN([CF_MANPAGE_RENAMES], -+[ -+AC_MSG_CHECKING(for manpage renaming) -+ -+AC_ARG_WITH(manpage-renames, -+ [ --with-manpage-renames specify manpage-renaming], -+ [MANPAGE_RENAMES=$withval], -+ [MANPAGE_RENAMES=yes]) -+ -+case ".$MANPAGE_RENAMES" in #(vi -+.no) #(vi -+ ;; -+.|.yes) -+ # Debian 'man' program? -+ if test -f /etc/debian_version ; then -+ MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames -+ else -+ MANPAGE_RENAMES=no -+ fi -+ ;; -+esac -+ -+if test "$MANPAGE_RENAMES" != no ; then -+ if test -f $srcdir/man/$MANPAGE_RENAMES ; then -+ MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES -+ elif test ! -f $MANPAGE_RENAMES ; then -+ AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES) -+ fi -+ -+ test ! -d man && mkdir man -+ -+ # Construct a sed-script to perform renaming within man-pages -+ if test -n "$MANPAGE_RENAMES" ; then -+ test ! -d man && mkdir man -+ sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >man/edit_man.sed -+ fi -+fi -+ -+AC_MSG_RESULT($MANPAGE_RENAMES) -+AC_SUBST(MANPAGE_RENAMES) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_SYMLINKS version: 4 updated: 2003/12/13 18:01:58 -+dnl ------------------- -+dnl Some people expect each tool to make all aliases for manpages in the -+dnl man-directory. This accommodates the older, less-capable implementations -+dnl of 'man', and is optional. -+AC_DEFUN([CF_MANPAGE_SYMLINKS], -+[ -+AC_MSG_CHECKING(if manpage aliases will be installed) -+ -+AC_ARG_WITH(manpage-aliases, -+ [ --with-manpage-aliases specify manpage-aliases using .so], -+ [MANPAGE_ALIASES=$withval], -+ [MANPAGE_ALIASES=yes]) -+ -+AC_MSG_RESULT($MANPAGE_ALIASES) -+ -+if test "$LN_S" = "ln -s"; then -+ cf_use_symlinks=yes -+else -+ cf_use_symlinks=no -+fi -+ -+MANPAGE_SYMLINKS=no -+if test "$MANPAGE_ALIASES" = yes ; then -+AC_MSG_CHECKING(if manpage symlinks should be used) -+ -+AC_ARG_WITH(manpage-symlinks, -+ [ --with-manpage-symlinks specify manpage-aliases using symlinks], -+ [MANPAGE_SYMLINKS=$withval], -+ [MANPAGE_SYMLINKS=$cf_use_symlinks]) -+ -+if test "$$cf_use_symlinks" = no; then -+if test "$MANPAGE_SYMLINKS" = yes ; then -+ AC_MSG_WARN(cannot make symlinks, will use .so files) -+ MANPAGE_SYMLINKS=no -+fi -+fi -+ -+AC_MSG_RESULT($MANPAGE_SYMLINKS) -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_TBL version: 3 updated: 2002/01/19 22:51:32 -+dnl -------------- -+dnl This option causes manpages to be run through tbl(1) to generate tables -+dnl correctly. -+AC_DEFUN([CF_MANPAGE_TBL], -+[ -+AC_MSG_CHECKING(for manpage tbl) -+ -+AC_ARG_WITH(manpage-tbl, -+ [ --with-manpage-tbl specify manpage processing with tbl], -+ [MANPAGE_TBL=$withval], -+ [MANPAGE_TBL=no]) -+ -+AC_MSG_RESULT($MANPAGE_TBL) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAN_PAGES version: 27 updated: 2003/12/20 20:39:45 -+dnl ------------ -+dnl Try to determine if the man-pages on the system are compressed, and if -+dnl so, what format is used. Use this information to construct a script that -+dnl will install man-pages. -+AC_DEFUN([CF_MAN_PAGES], -+[ -+CF_MANPAGE_FORMAT -+CF_MANPAGE_RENAMES -+CF_MANPAGE_SYMLINKS -+CF_MANPAGE_TBL -+ -+ if test "$prefix" = "NONE" ; then -+ cf_prefix="$ac_default_prefix" -+ else -+ cf_prefix="$prefix" -+ fi -+ -+ case "$MANPAGE_FORMAT" in # (vi -+ *catonly*) # (vi -+ cf_format=yes -+ cf_inboth=no -+ ;; -+ *formatted*) # (vi -+ cf_format=yes -+ cf_inboth=yes -+ ;; -+ *) -+ cf_format=no -+ cf_inboth=no -+ ;; -+ esac -+ -+test ! -d man && mkdir man -+ -+cf_so_strip= -+cf_compress= -+case "$MANPAGE_FORMAT" in #(vi -+*compress*) #(vi -+ cf_so_strip="Z" -+ cf_compress=compress -+ ;; -+*gzip*) #(vi -+ cf_so_strip="gz" -+ cf_compress=gzip -+ ;; -+esac -+ -+cf_edit_man=man/edit_man.sh -+ -+cat >$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP -+CF_EOF -+else -+cat >>$cf_edit_man <\$TMP -+CF_EOF -+fi -+ -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+fi -+CF_EOF -+ -+if test $with_curses_h != yes ; then -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+CF_EOF -+fi -+ -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+ fi -+CF_EOF -+ -+if test -n "$cf_compress" ; then -+cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP -+CF_EOF -+if test -n "$cf_compress" ; then -+cat >>$cf_edit_man <>$cf_edit_man < -+ #include -+ ], -+ [double x = rand(); printf("result = %g\n", ]ifelse($2,,sin(x),$2)[)], -+ [cf_cv_need_libm=no], -+ [cf_cv_need_libm=yes])]) -+if test "$cf_cv_need_libm" = yes -+then -+ifelse($1,,[ -+ LIBS="$LIBS -lm" -+],[$1=-lm]) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 -+dnl ---------------------- -+dnl Check if the file-system supports mixed-case filenames. If we're able to -+dnl create a lowercase name and see it as uppercase, it doesn't support that. -+AC_DEFUN([CF_MIXEDCASE_FILENAMES], -+[ -+AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ -+if test "$cross_compiling" = yes ; then -+ case $target_alias in #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ cf_cv_mixedcase=no -+ ;; -+ *) -+ cf_cv_mixedcase=yes -+ ;; -+ esac -+else -+ rm -f conftest CONFTEST -+ echo test >conftest -+ if test -f CONFTEST ; then -+ cf_cv_mixedcase=no -+ else -+ cf_cv_mixedcase=yes -+ fi -+ rm -f conftest CONFTEST -+fi -+]) -+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MKSTEMP version: 3 updated: 2001/11/08 20:59:59 -+dnl ---------- -+dnl Check for a working mkstemp. This creates two files, checks that they are -+dnl successfully created and distinct (AmigaOS apparently fails on the last). -+AC_DEFUN([CF_MKSTEMP],[ -+AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[ -+rm -f conftest* -+AC_TRY_RUN([ -+#include -+#include -+#include -+#include -+#include -+int main() -+{ -+ char *tmpl = "conftestXXXXXX"; -+ char name[2][80]; -+ int n; -+ int result = 0; -+ int fd; -+ struct stat sb; -+ -+ umask(077); -+ for (n = 0; n < 2; ++n) { -+ strcpy(name[n], tmpl); -+ if ((fd = mkstemp(name[n])) >= 0) { -+ if (!strcmp(name[n], tmpl) -+ || stat(name[n], &sb) != 0 -+ || (sb.st_mode & S_IFMT) != S_IFREG -+ || (sb.st_mode & 077) != 0) { -+ result = 1; -+ } -+ close(fd); -+ } -+ } -+ if (result == 0 -+ && !strcmp(name[0], name[1])) -+ result = 1; -+ exit(result); -+} -+],[cf_cv_func_mkstemp=yes -+],[cf_cv_func_mkstemp=no -+],[AC_CHECK_FUNC(mkstemp) -+]) -+]) -+if test "$cf_cv_func_mkstemp" = yes ; then -+ AC_DEFINE(HAVE_MKSTEMP) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49 -+dnl ---------------- -+dnl Check if the given variable is a number. If not, report an error. -+dnl $1 is the variable -+dnl $2 is the message -+AC_DEFUN([CF_NUMBER_SYNTAX],[ -+if test -n "$1" ; then -+ case $1 in #(vi -+ [[0-9]]*) #(vi -+ ;; -+ *) -+ AC_MSG_ERROR($2 is not a number: $1) -+ ;; -+ esac -+else -+ AC_MSG_ERROR($2 value is empty) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31 -+dnl ------------- -+dnl Compute the object-directory name from the given model name -+AC_DEFUN([CF_OBJ_SUBDIR], -+[ -+ case $1 in -+ libtool) $2='obj_lo' ;; -+ normal) $2='objects' ;; -+ debug) $2='obj_g' ;; -+ profile) $2='obj_p' ;; -+ shared) -+ case $cf_cv_system_name in #(vi -+ cygwin) #(vi -+ $2='objects' ;; -+ *) -+ $2='obj_s' ;; -+ esac -+ esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PATHSEP version: 3 updated: 2001/01/12 01:23:53 -+dnl ---------- -+dnl Provide a value for the $PATH and similar separator -+AC_DEFUN([CF_PATHSEP], -+[ -+ case $cf_cv_system_name in -+ os2*) PATHSEP=';' ;; -+ *) PATHSEP=':' ;; -+ esac -+ifelse($1,,,[$1=$PATHSEP]) -+ AC_SUBST(PATHSEP) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PATH_SYNTAX version: 9 updated: 2002/09/17 23:03:38 -+dnl -------------- -+dnl Check the argument to see that it looks like a pathname. Rewrite it if it -+dnl begins with one of the prefix/exec_prefix variables, and then again if the -+dnl result begins with 'NONE'. This is necessary to work around autoconf's -+dnl delayed evaluation of those symbols. -+AC_DEFUN([CF_PATH_SYNTAX],[ -+case ".[$]$1" in #(vi -+.\[$]\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX -+ ;; -+.\[$]{*prefix}*) #(vi -+ eval $1="[$]$1" -+ case ".[$]$1" in #(vi -+ .NONE/*) -+ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` -+ ;; -+ esac -+ ;; #(vi -+.NONE/*) -+ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` -+ ;; -+*) -+ ifelse($2,,[AC_ERROR([expected a pathname, not \"[$]$1\"])],$2) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PREDEFINE version: 1 updated: 2003/07/26 17:53:56 -+dnl ------------ -+dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles. -+dnl -+dnl $1 = symbol to test -+dnl $2 = value (if any) to use for a predefinition -+AC_DEFUN([CF_PREDEFINE], -+[ -+AC_MSG_CHECKING(if we must define $1) -+AC_TRY_COMPILE([#include -+],[ -+#ifndef $1 -+make an error -+#endif],[cf_result=no],[cf_result=yes]) -+AC_MSG_RESULT($cf_result) -+ -+if test "$cf_result" = yes ; then -+ CPPFLAGS="$CPPFLAGS ifelse($2,,-D$1,[-D$1=$2])" -+elif test "x$2" != "x" ; then -+ AC_MSG_CHECKING(checking for compatible value versus $2) -+ AC_TRY_COMPILE([#include -+],[ -+#if $1-$2 < 0 -+make an error -+#endif],[cf_result=yes],[cf_result=no]) -+ AC_MSG_RESULT($cf_result) -+ if test "$cf_result" = no ; then -+ # perhaps we can override it - try... -+ CPPFLAGS="$CPPFLAGS -D$1=$2" -+ fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 -+dnl ----------- -+dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. -+AC_DEFUN([CF_PROG_EXT], -+[ -+AC_REQUIRE([CF_CHECK_CACHE]) -+case $cf_cv_system_name in -+os2*) -+ CFLAGS="$CFLAGS -Zmt" -+ CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" -+ CXXFLAGS="$CXXFLAGS -Zmt" -+ # autoconf's macro sets -Zexe and suffix both, which conflict:w -+ LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" -+ ac_cv_exeext=.exe -+ ;; -+esac -+ -+AC_EXEEXT -+AC_OBJEXT -+ -+PROG_EXT="$EXEEXT" -+AC_SUBST(PROG_EXT) -+test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07 -+dnl --------------- -+dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the -+dnl misc/tabset install won't work properly. Usually this happens only when -+dnl using the fallback mkinstalldirs script -+AC_DEFUN([CF_PROG_INSTALL], -+[AC_PROG_INSTALL -+case $INSTALL in -+/*) -+ ;; -+*) -+ CF_DIRNAME(cf_dir,$INSTALL) -+ test -z "$cf_dir" && cf_dir=. -+ INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'` -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_LDCONFIG version: 1 updated: 2003/09/20 17:07:55 -+dnl ---------------- -+dnl Check for ldconfig, needed to fixup shared libraries that would be built -+dnl and then used in the install. -+AC_DEFUN([CF_PROG_LDCONFIG],[ -+if test "$cross_compiling" = yes ; then -+ LDCONFIG=: -+else -+case "$cf_cv_system_name" in #(vi -+freebsd*) #(vi -+ test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R" -+ ;; -+*) LDPATH=$PATH:/sbin:/usr/sbin -+ AC_PATH_PROG(LDCONFIG,ldconfig,,$LDPATH) -+ ;; -+esac -+fi -+AC_SUBST(LDCONFIG) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_REGEX version: 3 updated: 1997/11/01 14:26:01 -+dnl -------- -+dnl Attempt to determine if we've got one of the flavors of regular-expression -+dnl code that we can support. -+AC_DEFUN([CF_REGEX], -+[ -+AC_MSG_CHECKING([for regular-expression headers]) -+AC_CACHE_VAL(cf_cv_regex,[ -+AC_TRY_LINK([#include -+#include ],[ -+ regex_t *p; -+ int x = regcomp(p, "", 0); -+ int y = regexec(p, "", 0, 0, 0); -+ regfree(p); -+ ],[cf_cv_regex="regex.h"],[ -+ AC_TRY_LINK([#include ],[ -+ char *p = compile("", "", "", 0); -+ int x = step("", ""); -+ ],[cf_cv_regex="regexp.h"],[ -+ cf_save_LIBS="$LIBS" -+ LIBS="-lgen $LIBS" -+ AC_TRY_LINK([#include ],[ -+ char *p = compile("", "", ""); -+ int x = step("", ""); -+ ],[cf_cv_regex="regexpr.h"],[LIBS="$cf_save_LIBS"])])]) -+]) -+AC_MSG_RESULT($cf_cv_regex) -+case $cf_cv_regex in -+ regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;; -+ regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;; -+ regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SHARED_OPTS version: 30 updated: 2003/12/27 20:48:07 -+dnl -------------- -+dnl Attempt to determine the appropriate CC/LD options for creating a shared -+dnl library. -+dnl -+dnl Note: $(LOCAL_LDFLAGS) is used to link executables that will run within the -+dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib -+dnl We avoid compiling-in a ../lib path for the shared library since that can -+dnl lead to unexpected results at runtime. -+dnl $(LOCAL_LDFLAGS2) has the same intention but assumes that the shared libraries -+dnl are compiled in ../../lib -+dnl -+dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure -+dnl to install symbolic links to the rel/abi versions of shared libraries. -+dnl -+dnl The variable 'cf_cv_shlib_version' controls whether we use the rel or abi -+dnl version when making symbolic links. -+dnl -+dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library -+dnl version numbers are infix (ex: libncurses..dylib) or postfix -+dnl (ex: libncurses.so.). -+dnl -+dnl Some loaders leave 'so_locations' lying around. It's nice to clean up. -+AC_DEFUN([CF_SHARED_OPTS], -+[ -+ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+ LOCAL_LDFLAGS= -+ LOCAL_LDFLAGS2= -+ LD_SHARED_OPTS= -+ INSTALL_LIB="-m 644" -+ -+ cf_cv_do_symlinks=no -+ -+ AC_MSG_CHECKING(if release/abi version should be used for shared libs) -+ AC_ARG_WITH(shlib-version, -+ [ --with-shlib-version=X Specify rel or abi version for shared libs], -+ [test -z "$withval" && withval=auto -+ case $withval in #(vi -+ yes) #(vi -+ cf_cv_shlib_version=auto -+ ;; -+ rel|abi|auto|no) #(vi -+ cf_cv_shlib_version=$withval -+ ;; -+ *) -+ AC_ERROR([option value must be one of: rel, abi, auto or no]) -+ ;; -+ esac -+ ],[cf_cv_shlib_version=auto]) -+ AC_MSG_RESULT($cf_cv_shlib_version) -+ -+ cf_cv_rm_so_locs=no -+ -+ # Some less-capable ports of gcc support only -fpic -+ CC_SHARED_OPTS= -+ if test "$GCC" = yes -+ then -+ AC_MSG_CHECKING(which $CC option to use) -+ cf_save_CFLAGS="$CFLAGS" -+ for CC_SHARED_OPTS in -fPIC -fpic '' -+ do -+ CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS" -+ AC_TRY_COMPILE([#include ],[int x = 1],[break],[]) -+ done -+ AC_MSG_RESULT($CC_SHARED_OPTS) -+ CFLAGS="$cf_save_CFLAGS" -+ fi -+ -+ cf_cv_shlib_version_infix=no -+ -+ case $cf_cv_system_name in -+ beos*) -+ MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0' -+ ;; -+ cygwin*) -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='$(CC) -shared -Wl,--out-implib=$(IMPORT_LIB) -Wl,--export-all-symbols -o $(SHARED_LIB)' -+ cf_cv_shlib_version=cygdll -+ cf_cv_shlib_version_infix=cygdll -+ ;; -+ darwin*) -+ EXTRA_CFLAGS="-no-cpp-precomp" -+ CC_SHARED_OPTS="-dynamic" -+ MK_SHARED_LIB='$(CC) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $[@]` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -+ cf_cv_shlib_version_infix=yes -+ ;; -+ hpux*) -+ # (tested with gcc 2.7.2 -- I don't have c89) -+ if test "$GCC" = yes; then -+ LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)' -+ else -+ CC_SHARED_OPTS='+Z' -+ LD_SHARED_OPTS='-Wl,+b,$(libdir)' -+ fi -+ MK_SHARED_LIB='$(LD) +b $(libdir) -b -o $[@]' -+ # HP-UX shared libraries must be executable, and should be -+ # readonly to exploit a quirk in the memory manager. -+ INSTALL_LIB="-m 555" -+ ;; -+ irix*) -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-Wl,-rpath," -+ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" -+ fi -+ # tested with IRIX 5.2 and 'cc'. -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]' -+ cf_cv_rm_so_locs=yes -+ ;; -+ linux*|gnu*|k*bsd*-gnu) -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-Wl,-rpath," -+ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $[@]' -+ ;; -+ openbsd2*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -soname,`basename $[@].$(ABI_VERSION)` -o $[@]' -+ ;; -+ freebsd[[45]]*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -soname=`basename $[@]` -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ -+# This doesn't work - I keep getting spurious references to needing -+# libncurses.so.5.3 when ldd says it's resolved. LOCAL_LDFLAGS2 seems to be -+# no longer used anyway. And the rpath logic isn't relative - so I have to -+# add the local and install lib-directories: -+# -+# if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then -+# LOCAL_LDFLAGS="-rpath `pwd`/lib" -+# LOCAL_LDFLAGS2="-rpath \$(libdir) $LOCAL_LDFLAGS" -+# cf_ld_rpath_opt="-rpath " -+# EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+# fi -+ ;; -+ openbsd*|freebsd*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ netbsd*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath," -+ if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" -+ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' -+ if test "$cf_cv_shlib_version" = auto; then -+ if test ! -f /usr/libexec/ld.elf_so; then -+ cf_cv_shlib_version=rel -+ fi -+ fi -+ else -+ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' -+ fi -+ ;; -+ osf*|mls+*) -+ # tested with OSF/1 V3.2 and 'cc' -+ # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't -+ # link with shared libs). -+ MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`' -+ case $host_os in -+ osf4*) -+ MK_SHARED_LIB="${MK_SHARED_LIB} -msym" -+ ;; -+ esac -+ MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]' -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-rpath" -+ # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ cf_cv_rm_so_locs=yes -+ ;; -+ sco3.2v5*) # (also uw2* and UW7) hops 13-Apr-98 -+ # tested with osr5.0.5 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-belf -KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@' -+ if test "$cf_cv_ld_rpath" = yes ; then -+ # only way is to set LD_RUN_PATH but no switch for it -+ RUN_PATH=$libdir -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ LINK_PROGS='LD_RUN_PATH=$(libdir)' -+ LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib' -+ ;; -+ sunos4*) -+ # tested with SunOS 4.1.1 and gcc 2.7.0 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ solaris2*) -+ # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-R" -+ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ sysv5uw7*|unix_sv*) -+ # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc) -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -d y -G -o [$]@' -+ ;; -+ *) -+ CC_SHARED_OPTS='unknown' -+ MK_SHARED_LIB='echo unknown' -+ ;; -+ esac -+ -+ # This works if the last tokens in $MK_SHARED_LIB are the -o target. -+ case "$cf_cv_shlib_version" in #(vi -+ rel|abi) -+ case "$MK_SHARED_LIB" in #(vi -+ *'-o $[@]') -+ test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes -+ ;; -+ *) -+ AC_MSG_WARN(ignored --with-shlib-version) -+ ;; -+ esac -+ ;; -+ esac -+ -+ if test -n "$cf_ld_rpath_opt" ; then -+ AC_MSG_CHECKING(if we need a space after rpath option) -+ cf_save_LIBS="$LIBS" -+ LIBS="$LIBS ${cf_ld_rpath_opt}$libdir" -+ AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) -+ LIBS="$cf_save_LIBS" -+ AC_MSG_RESULT($cf_rpath_space) -+ test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt " -+ MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)" -+ fi -+ -+ AC_SUBST(CC_SHARED_OPTS) -+ AC_SUBST(LD_SHARED_OPTS) -+ AC_SUBST(MK_SHARED_LIB) -+ AC_SUBST(LINK_PROGS) -+ AC_SUBST(LINK_TESTS) -+ AC_SUBST(EXTRA_LDFLAGS) -+ AC_SUBST(LOCAL_LDFLAGS) -+ AC_SUBST(LOCAL_LDFLAGS2) -+ AC_SUBST(INSTALL_LIB) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16 -+dnl ------------- -+dnl Check for definitions & structures needed for window size-changing -+dnl FIXME: check that this works with "snake" (HP-UX 10.x) -+AC_DEFUN([CF_SIZECHANGE], -+[ -+AC_REQUIRE([CF_STRUCT_TERMIOS]) -+AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[ -+ cf_cv_sizechange=unknown -+ cf_save_CPPFLAGS="$CPPFLAGS" -+ -+for cf_opts in "" "NEED_PTEM_H" -+do -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts" -+ AC_TRY_COMPILE([#include -+#ifdef HAVE_TERMIOS_H -+#include -+#else -+#ifdef HAVE_TERMIO_H -+#include -+#endif -+#endif -+#ifdef NEED_PTEM_H -+/* This is a workaround for SCO: they neglected to define struct winsize in -+ * termios.h -- it's only in termio.h and ptem.h -+ */ -+#include -+#include -+#endif -+#if !defined(sun) || !defined(HAVE_TERMIOS_H) -+#include -+#endif -+],[ -+#ifdef TIOCGSIZE -+ struct ttysize win; /* FIXME: what system is this? */ -+ int y = win.ts_lines; -+ int x = win.ts_cols; -+#else -+#ifdef TIOCGWINSZ -+ struct winsize win; -+ int y = win.ws_row; -+ int x = win.ws_col; -+#else -+ no TIOCGSIZE or TIOCGWINSZ -+#endif /* TIOCGWINSZ */ -+#endif /* TIOCGSIZE */ -+ ], -+ [cf_cv_sizechange=yes], -+ [cf_cv_sizechange=no]) -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ if test "$cf_cv_sizechange" = yes ; then -+ echo "size-change succeeded ($cf_opts)" >&AC_FD_CC -+ test -n "$cf_opts" && cf_cv_sizechange="$cf_opts" -+ break -+ fi -+done -+]) -+if test "$cf_cv_sizechange" != no ; then -+ AC_DEFINE(HAVE_SIZECHANGE) -+ case $cf_cv_sizechange in #(vi -+ NEED*) -+ AC_DEFINE_UNQUOTED($cf_cv_sizechange ) -+ ;; -+ esac -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SRC_MODULES version: 15 updated: 2004/01/10 16:05:16 -+dnl -------------- -+dnl For each parameter, test if the source-directory exists, and if it contains -+dnl a 'modules' file. If so, add to the list $cf_cv_src_modules which we'll -+dnl use in CF_LIB_RULES. -+dnl -+dnl This uses the configured value to make the lists SRC_SUBDIRS and -+dnl SUB_MAKEFILES which are used in the makefile-generation scheme. -+AC_DEFUN([CF_SRC_MODULES], -+[ -+AC_MSG_CHECKING(for src modules) -+ -+# dependencies and linker-arguments for test-programs -+TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${LIB_NAME}${DFT_DEP_SUFFIX} $TEST_DEPS" -+if test "$DFT_LWR_MODEL" = "libtool"; then -+ TEST_ARGS="${TEST_DEPS}" -+else -+ TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" -+fi -+ -+# dependencies and linker-arguments for utility-programs -+test "$with_termlib" != yes && PROG_ARGS="$TEST_ARGS" -+ -+cf_cv_src_modules= -+for cf_dir in $1 -+do -+ if test -f $srcdir/$cf_dir/modules; then -+ -+ # We may/may not have tack in the distribution, though the -+ # makefile is. -+ if test $cf_dir = tack ; then -+ if test ! -f $srcdir/${cf_dir}/${cf_dir}.h; then -+ continue -+ fi -+ fi -+ -+ if test -z "$cf_cv_src_modules"; then -+ cf_cv_src_modules=$cf_dir -+ else -+ cf_cv_src_modules="$cf_cv_src_modules $cf_dir" -+ fi -+ -+ # Make the ncurses_cfg.h file record the library interface files as -+ # well. These are header files that are the same name as their -+ # directory. Ncurses is the only library that does not follow -+ # that pattern. -+ if test $cf_dir = tack ; then -+ continue -+ elif test -f $srcdir/${cf_dir}/${cf_dir}.h; then -+ CF_UPPER(cf_have_include,$cf_dir) -+ AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H) -+ AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include}) -+ TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS" -+ if test "$DFT_LWR_MODEL" = "libtool"; then -+ TEST_ARGS="${TEST_DEPS}" -+ else -+ TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" -+ fi -+ fi -+ fi -+done -+AC_MSG_RESULT($cf_cv_src_modules) -+TEST_ARGS="-L${LIB_DIR} $TEST_ARGS" -+AC_SUBST(TEST_DEPS) -+AC_SUBST(TEST_ARGS) -+ -+PROG_ARGS="-L${LIB_DIR} $PROG_ARGS" -+AC_SUBST(PROG_ARGS) -+ -+SRC_SUBDIRS="man include" -+for cf_dir in $cf_cv_src_modules -+do -+ SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir" -+done -+SRC_SUBDIRS="$SRC_SUBDIRS test" -+test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" -+test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" -+ -+ADA_SUBDIRS= -+if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then -+ SRC_SUBDIRS="$SRC_SUBDIRS Ada95" -+ ADA_SUBDIRS="gen src samples" -+fi -+ -+SUB_MAKEFILES= -+for cf_dir in $SRC_SUBDIRS -+do -+ SUB_MAKEFILES="$SUB_MAKEFILES $cf_dir/Makefile" -+done -+ -+if test -n "$ADA_SUBDIRS"; then -+ for cf_dir in $ADA_SUBDIRS -+ do -+ SUB_MAKEFILES="$SUB_MAKEFILES Ada95/$cf_dir/Makefile" -+ done -+ AC_SUBST(ADA_SUBDIRS) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STDCPP_LIBRARY version: 5 updated: 2000/08/12 23:18:52 -+dnl ----------------- -+dnl Check for -lstdc++, which is GNU's standard C++ library. -+AC_DEFUN([CF_STDCPP_LIBRARY], -+[ -+if test -n "$GXX" ; then -+case $cf_cv_system_name in #(vi -+os2*) #(vi -+ cf_stdcpp_libname=stdcpp -+ ;; -+*) -+ cf_stdcpp_libname=stdc++ -+ ;; -+esac -+AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[ -+ cf_save="$LIBS" -+ LIBS="$LIBS -l$cf_stdcpp_libname" -+AC_TRY_LINK([ -+#include ],[ -+char buf[80]; -+strstreambuf foo(buf, sizeof(buf)) -+], -+ [cf_cv_libstdcpp=yes], -+ [cf_cv_libstdcpp=no]) -+ LIBS="$cf_save" -+]) -+test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname" -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52 -+dnl -------------- -+dnl Remove "-g" option from the compiler options -+AC_DEFUN([CF_STRIP_G_OPT], -+[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl ------------------- -+dnl Check if we need _POSIX_SOURCE defined to use struct sigaction. We'll only -+dnl do this if we've found the sigaction function. -+dnl -+dnl If needed, define SVR4_ACTION. -+AC_DEFUN([CF_STRUCT_SIGACTION],[ -+if test "$ac_cv_func_sigaction" = yes; then -+AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE) -+AC_TRY_COMPILE([ -+#include -+#include ], -+ [struct sigaction act], -+ [sigact_bad=no], -+ [ -+AC_TRY_COMPILE([ -+#define _POSIX_SOURCE -+#include -+#include ], -+ [struct sigaction act], -+ [sigact_bad=yes -+ AC_DEFINE(SVR4_ACTION)], -+ [sigact_bad=unknown])]) -+AC_MSG_RESULT($sigact_bad) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46 -+dnl ----------------- -+dnl Some machines require _POSIX_SOURCE to completely define struct termios. -+dnl If so, define SVR4_TERMIO -+AC_DEFUN([CF_STRUCT_TERMIOS],[ -+AC_CHECK_HEADERS( \ -+termio.h \ -+termios.h \ -+unistd.h \ -+) -+if test "$ISC" = yes ; then -+ AC_CHECK_HEADERS( sys/termio.h ) -+fi -+if test "$ac_cv_header_termios_h" = yes ; then -+ case "$CFLAGS $CPPFLAGS" in -+ *-D_POSIX_SOURCE*) -+ termios_bad=dunno ;; -+ *) termios_bad=maybe ;; -+ esac -+ if test "$termios_bad" = maybe ; then -+ AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE) -+ AC_TRY_COMPILE([#include ], -+ [struct termios foo; int x = foo.c_iflag], -+ termios_bad=no, [ -+ AC_TRY_COMPILE([ -+#define _POSIX_SOURCE -+#include ], -+ [struct termios foo; int x = foo.c_iflag], -+ termios_bad=unknown, -+ termios_bad=yes AC_DEFINE(SVR4_TERMIO)) -+ ]) -+ AC_MSG_RESULT($termios_bad) -+ fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SUBST version: 2 updated: 1997/09/06 23:41:28 -+dnl -------- -+dnl Shorthand macro for substituting things that the user may override -+dnl with an environment variable. -+dnl -+dnl $1 = long/descriptive name -+dnl $2 = environment variable -+dnl $3 = default value -+AC_DEFUN([CF_SUBST], -+[AC_CACHE_VAL(cf_cv_subst_$2,[ -+AC_MSG_CHECKING(for $1 (symbol $2)) -+test -z "[$]$2" && $2=$3 -+AC_MSG_RESULT([$]$2) -+AC_SUBST($2) -+cf_cv_subst_$2=[$]$2]) -+$2=${cf_cv_subst_$2} -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SUBST_NCURSES_VERSION version: 7 updated: 2003/06/07 16:22:51 -+dnl ------------------------ -+dnl Get the version-number for use in shared-library naming, etc. -+AC_DEFUN([CF_SUBST_NCURSES_VERSION], -+[ -+NCURSES_MAJOR="`egrep '^NCURSES_MAJOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+NCURSES_MINOR="`egrep '^NCURSES_MINOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+NCURSES_PATCH="`egrep '^NCURSES_PATCH[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+cf_cv_abi_version=${NCURSES_MAJOR} -+cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR} -+dnl Show the computed version, for logging -+cf_cv_timestamp=`date` -+AC_MSG_RESULT(Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)) -+dnl We need these values in the generated headers -+AC_SUBST(NCURSES_MAJOR) -+AC_SUBST(NCURSES_MINOR) -+AC_SUBST(NCURSES_PATCH) -+dnl We need these values in the generated makefiles -+AC_SUBST(cf_cv_rel_version) -+AC_SUBST(cf_cv_abi_version) -+AC_SUBST(cf_cv_builtin_bool) -+AC_SUBST(cf_cv_header_stdbool_h) -+AC_SUBST(cf_cv_type_of_bool)dnl -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40 -+dnl ------------------ -+dnl Check if we can include with ; this breaks on -+dnl older SCO configurations. -+AC_DEFUN([CF_SYS_TIME_SELECT], -+[ -+AC_MSG_CHECKING(if sys/time.h works with sys/select.h) -+AC_CACHE_VAL(cf_cv_sys_time_select,[ -+AC_TRY_COMPILE([ -+#include -+#ifdef HAVE_SYS_TIME_H -+#include -+#endif -+#ifdef HAVE_SYS_SELECT_H -+#include -+#endif -+],[],[cf_cv_sys_time_select=yes], -+ [cf_cv_sys_time_select=no]) -+ ]) -+AC_MSG_RESULT($cf_cv_sys_time_select) -+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TYPEOF_CHTYPE version: 4 updated: 2000/10/04 09:18:40 -+dnl ---------------- -+dnl Determine the type we should use for chtype (and attr_t, which is treated -+dnl as the same thing). We want around 32 bits, so on most machines want a -+dnl long, but on newer 64-bit machines, probably want an int. If we're using -+dnl wide characters, we have to have a type compatible with that, as well. -+AC_DEFUN([CF_TYPEOF_CHTYPE], -+[ -+AC_REQUIRE([CF_UNSIGNED_LITERALS]) -+AC_MSG_CHECKING([for type of chtype]) -+AC_CACHE_VAL(cf_cv_typeof_chtype,[ -+ AC_TRY_RUN([ -+#ifdef USE_WIDEC_SUPPORT -+#include /* we want wchar_t */ -+#define WANT_BITS 39 -+#else -+#define WANT_BITS 31 -+#endif -+#include -+int main() -+{ -+ FILE *fp = fopen("cf_test.out", "w"); -+ if (fp != 0) { -+ char *result = "long"; -+#ifdef USE_WIDEC_SUPPORT -+ /* -+ * If wchar_t is smaller than a long, it must be an int or a -+ * short. We prefer not to use a short anyway. -+ */ -+ if (sizeof(unsigned long) > sizeof(wchar_t)) -+ result = "int"; -+#endif -+ if (sizeof(unsigned long) > sizeof(unsigned int)) { -+ int n; -+ unsigned int x; -+ for (n = 0; n < WANT_BITS; n++) { -+ unsigned int y = (x >> n); -+ if (y != 1 || x == 0) { -+ x = 0; -+ break; -+ } -+ } -+ /* -+ * If x is nonzero, an int is big enough for the bits -+ * that we want. -+ */ -+ result = (x != 0) ? "int" : "long"; -+ } -+ fputs(result, fp); -+ fclose(fp); -+ } -+ exit(0); -+} -+ ], -+ [cf_cv_typeof_chtype=`cat cf_test.out`], -+ [cf_cv_typeof_chtype=long], -+ [cf_cv_typeof_chtype=long]) -+ rm -f cf_test.out -+ ]) -+AC_MSG_RESULT($cf_cv_typeof_chtype) -+ -+AC_SUBST(cf_cv_typeof_chtype) -+AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype) -+ -+cf_cv_1UL="1" -+test "$cf_cv_unsigned_literals" = yes && cf_cv_1UL="${cf_cv_1UL}U" -+test "$cf_cv_typeof_chtype" = long && cf_cv_1UL="${cf_cv_1UL}L" -+AC_SUBST(cf_cv_1UL) -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl ----------------- -+dnl -+AC_DEFUN([CF_TYPE_SIGACTION], -+[ -+AC_MSG_CHECKING([for type sigaction_t]) -+AC_CACHE_VAL(cf_cv_type_sigaction,[ -+ AC_TRY_COMPILE([ -+#include ], -+ [sigaction_t x], -+ [cf_cv_type_sigaction=yes], -+ [cf_cv_type_sigaction=no])]) -+AC_MSG_RESULT($cf_cv_type_sigaction) -+test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16 -+dnl -------------------- -+dnl Test if the compiler supports 'U' and 'L' suffixes. Only old compilers -+dnl won't, but they're still there. -+AC_DEFUN([CF_UNSIGNED_LITERALS], -+[ -+AC_MSG_CHECKING([if unsigned literals are legal]) -+AC_CACHE_VAL(cf_cv_unsigned_literals,[ -+ AC_TRY_COMPILE([],[long x = 1L + 1UL + 1U + 1], -+ [cf_cv_unsigned_literals=yes], -+ [cf_cv_unsigned_literals=no]) -+ ]) -+AC_MSG_RESULT($cf_cv_unsigned_literals) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 -+dnl -------- -+dnl Make an uppercase version of a variable -+dnl $1=uppercase($2) -+AC_DEFUN([CF_UPPER], -+[ -+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_VERBOSE version: 2 updated: 1997/09/05 10:45:14 -+dnl ---------- -+dnl Use AC_VERBOSE w/o the warnings -+AC_DEFUN([CF_VERBOSE], -+[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WCHAR_TYPE version: 2 updated: 2004/01/17 19:18:20 -+dnl ------------- -+dnl Check if type wide-character type $1 is declared, and if so, which header -+dnl file is needed. The second parameter is used to set a shell variable when -+dnl the type is not found. The first parameter sets a shell variable for the -+dnl opposite sense. -+AC_DEFUN([CF_WCHAR_TYPE], -+[ -+# This is needed on Tru64 5.0 to declare $1 -+AC_CACHE_CHECK(if we must include wchar.h to declare $1,cf_cv_$1,[ -+AC_TRY_COMPILE([ -+#include -+#include -+#include -+#ifdef HAVE_LIBUTF8_H -+#include -+#endif], -+ [$1 state], -+ [cf_cv_$1=no], -+ [AC_TRY_COMPILE([ -+#include -+#include -+#include -+#include -+#ifdef HAVE_LIBUTF8_H -+#include -+#endif], -+ [$1 value], -+ [cf_cv_$1=yes], -+ [cf_cv_$1=unknown])])]) -+ -+if test "$cf_cv_$1" = yes ; then -+ AC_DEFINE(NEED_WCHAR_H) -+ NEED_WCHAR_H=1 -+fi -+ -+ifelse($2,,,[ -+# if we do not find $1 in either place, use substitution to provide a fallback. -+if test "$cf_cv_$1" = unknown ; then -+ $2=1 -+fi -+]) -+ifelse($3,,,[ -+# if we find $1 in either place, use substitution to provide a fallback. -+if test "$cf_cv_$1" != unknown ; then -+ $3=1 -+fi -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49 -+dnl ------------------- -+dnl Allow library's ABI to be overridden. Generally this happens when a -+dnl packager has incremented the ABI past that used in the original package, -+dnl and wishes to keep doing this. -+dnl -+dnl $1 is the package name, if any, to derive a corresponding {package}_ABI -+dnl symbol. -+AC_DEFUN([CF_WITH_ABI_VERSION],[ -+test -z "$cf_cv_abi_version" && cf_cv_abi_version=0 -+AC_ARG_WITH(abi-version, -+[ --with-abi-version=XXX override derived ABI version], -+[AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval) -+ cf_cv_abi_version=$withval]) -+ CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version) -+ifelse($1,,,[ -+$1_ABI=$cf_cv_abi_version -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_DBMALLOC version: 2 updated: 2002/12/29 21:11:45 -+dnl ---------------- -+dnl Configure-option for dbmalloc -+AC_DEFUN([CF_WITH_DBMALLOC],[ -+AC_MSG_CHECKING(if you want to link with dbmalloc for testing) -+AC_ARG_WITH(dbmalloc, -+ [ --with-dbmalloc test: use Conor Cahill's dbmalloc library], -+ [with_dbmalloc=$withval], -+ [with_dbmalloc=no]) -+AC_MSG_RESULT($with_dbmalloc) -+if test $with_dbmalloc = yes ; then -+ AC_CHECK_LIB(dbmalloc,debug_malloc) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_DMALLOC version: 2 updated: 2002/12/29 21:11:45 -+dnl --------------- -+dnl Configure-option for dmalloc -+AC_DEFUN([CF_WITH_DMALLOC],[ -+AC_MSG_CHECKING(if you want to link with dmalloc for testing) -+AC_ARG_WITH(dmalloc, -+ [ --with-dmalloc test: use Gray Watson's dmalloc library], -+ [with_dmalloc=$withval], -+ [with_dmalloc=no]) -+AC_MSG_RESULT($with_dmalloc) -+if test $with_dmalloc = yes ; then -+ AC_CHECK_LIB(dmalloc,dmalloc_debug) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_LIBTOOL version: 9 updated: 2004/01/16 14:55:37 -+dnl --------------- -+dnl Provide a configure option to incorporate libtool. Define several useful -+dnl symbols for the makefile rules. -+dnl -+dnl The reference to AC_PROG_LIBTOOL does not normally work, since it uses -+dnl macros from libtool.m4 which is in the aclocal directory of automake. -+dnl Following is a simple script which turns on the AC_PROG_LIBTOOL macro. -+dnl But that still does not work properly since the macro is expanded outside -+dnl the CF_WITH_LIBTOOL macro: -+dnl -+dnl #!/bin/sh -+dnl ACLOCAL=`aclocal --print-ac-dir` -+dnl if test -z "$ACLOCAL" ; then -+dnl echo cannot find aclocal directory -+dnl exit 1 -+dnl elif test ! -f $ACLOCAL/libtool.m4 ; then -+dnl echo cannot find libtool.m4 file -+dnl exit 1 -+dnl fi -+dnl -+dnl LOCAL=aclocal.m4 -+dnl ORIG=aclocal.m4.orig -+dnl -+dnl trap "mv $ORIG $LOCAL" 0 1 2 5 15 -+dnl rm -f $ORIG -+dnl mv $LOCAL $ORIG -+dnl -+dnl # sed the LIBTOOL= assignment to omit the current directory? -+dnl sed -e 's/^LIBTOOL=.*/LIBTOOL=${LIBTOOL-libtool}/' $ACLOCAL/libtool.m4 >>$LOCAL -+dnl cat $ORIG >>$LOCAL -+dnl -+dnl autoconf-257 $* -+dnl -+AC_DEFUN([CF_WITH_LIBTOOL], -+[ -+ifdef([AC_PROG_LIBTOOL],,[ -+LIBTOOL= -+]) -+# common library maintenance symbols that are convenient for libtool scripts: -+LIB_CREATE='$(AR) -cr' -+LIB_OBJECT='$(OBJECTS)' -+LIB_SUFFIX=.a -+LIB_PREP="$RANLIB" -+ -+# symbols used to prop libtool up to enable it to determine what it should be -+# doing: -+LIB_CLEAN= -+LIB_COMPILE= -+LIB_LINK= -+LIB_INSTALL= -+LIB_UNINSTALL= -+ -+AC_MSG_CHECKING(if you want to build libraries with libtool) -+AC_ARG_WITH(libtool, -+ [ --with-libtool generate libraries with libtool], -+ [with_libtool=$withval], -+ [with_libtool=no]) -+AC_MSG_RESULT($with_libtool) -+if test "$with_libtool" != "no"; then -+ifdef([AC_PROG_LIBTOOL],[ -+ # missing_content_AC_PROG_LIBTOOL{{ -+ AC_PROG_LIBTOOL -+ # missing_content_AC_PROG_LIBTOOL}} -+],[ -+ if test "$with_libtool" != "yes" ; then -+ CF_PATH_SYNTAX(with_libtool) -+ LIBTOOL=$with_libtool -+ else -+ AC_PATH_PROG(LIBTOOL,libtool) -+ fi -+ if test -z "$LIBTOOL" ; then -+ AC_MSG_ERROR(Cannot find libtool) -+ fi -+])dnl -+ LIB_CREATE='$(LIBTOOL) --mode=link $(CC) -rpath $(DESTDIR)$(libdir) -version-info `cut -f1 $(srcdir)/VERSION` -o' -+ LIB_OBJECT='$(OBJECTS:.o=.lo)' -+ LIB_SUFFIX=.la -+ LIB_CLEAN='$(LIBTOOL) --mode=clean' -+ LIB_COMPILE='$(LIBTOOL) --mode=compile' -+ LIB_LINK='$(LIBTOOL) --mode=link' -+ LIB_INSTALL='$(LIBTOOL) --mode=install' -+ LIB_UNINSTALL='$(LIBTOOL) --mode=uninstall' -+ LIB_PREP=: -+ -+ # Show the version of libtool -+ AC_MSG_CHECKING(version of libtool) -+ -+ # Save the version in a cache variable - this is not entirely a good -+ # thing, but the version string from libtool is very ugly, and for -+ # bug reports it might be useful to have the original string. -+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` -+ AC_MSG_RESULT($cf_cv_libtool_version) -+ if test -z "$cf_cv_libtool_version" ; then -+ AC_MSG_ERROR(This is not libtool) -+ fi -+ -+ # special hack to add --tag option for C++ compiler -+ case $cf_cv_libtool_version in -+ 1.[[5-9]]*|[[2-9]]*) -+ LIBTOOL_CXX="$LIBTOOL --tag=CXX" -+ ;; -+ *) -+ LIBTOOL_CXX="$LIBTOOL" -+ ;; -+ esac -+else -+ LIBTOOL="" -+ LIBTOOL_CXX="" -+fi -+ -+test -z "$LIBTOOL" && ECHO_LT= -+ -+AC_SUBST(LIBTOOL) -+AC_SUBST(LIBTOOL_CXX) -+ -+AC_SUBST(LIB_CREATE) -+AC_SUBST(LIB_OBJECT) -+AC_SUBST(LIB_SUFFIX) -+AC_SUBST(LIB_PREP) -+ -+AC_SUBST(LIB_CLEAN) -+AC_SUBST(LIB_COMPILE) -+AC_SUBST(LIB_LINK) -+AC_SUBST(LIB_INSTALL) -+AC_SUBST(LIB_UNINSTALL) -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATH version: 6 updated: 1998/10/11 00:40:17 -+dnl ------------ -+dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just -+dnl defaulting to yes/no. -+dnl -+dnl $1 = option name -+dnl $2 = help-text -+dnl $3 = environment variable to set -+dnl $4 = default value, shown in the help-message, must be a constant -+dnl $5 = default value, if it's an expression & cannot be in the help-message -+dnl -+AC_DEFUN([CF_WITH_PATH], -+[AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, -+ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))dnl -+CF_PATH_SYNTAX(withval) -+eval $3="$withval" -+AC_SUBST($3)dnl -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATHLIST version: 5 updated: 2001/12/10 01:28:30 -+dnl ---------------- -+dnl Process an option specifying a list of colon-separated paths. -+dnl -+dnl $1 = option name -+dnl $2 = help-text -+dnl $3 = environment variable to set -+dnl $4 = default value, shown in the help-message, must be a constant -+dnl $5 = default value, if it's an expression & cannot be in the help-message -+dnl $6 = flag to tell if we want to define or substitute -+dnl -+AC_DEFUN([CF_WITH_PATHLIST],[ -+AC_REQUIRE([CF_PATHSEP]) -+AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, -+ifelse($4,,[withval=${$3}],[withval=${$3-ifelse($5,,$4,$5)}]))dnl -+ -+IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${PATHSEP}" -+cf_dst_path= -+for cf_src_path in $withval -+do -+ CF_PATH_SYNTAX(cf_src_path) -+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" -+ cf_dst_path="${cf_dst_path}${cf_src_path}" -+done -+IFS="$ac_save_ifs" -+ -+ifelse($6,define,[ -+# Strip single quotes from the value, e.g., when it was supplied as a literal -+# for $4 or $5. -+case $cf_dst_path in #(vi -+\'*) -+ cf_dst_path=`echo $cf_dst_path |sed -e s/\'// -e s/\'\$//` -+ ;; -+esac -+cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'` -+]) -+ -+eval '$3="$cf_dst_path"' -+AC_SUBST($3)dnl -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_REL_VERSION version: 1 updated: 2003/09/20 18:12:49 -+dnl ------------------- -+dnl Allow library's release-version to be overridden. Generally this happens when a -+dnl packager has incremented the release-version past that used in the original package, -+dnl and wishes to keep doing this. -+dnl -+dnl $1 is the package name, if any, to derive corresponding {package}_MAJOR -+dnl and {package}_MINOR symbols -+dnl symbol. -+AC_DEFUN([CF_WITH_REL_VERSION],[ -+test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0 -+AC_ARG_WITH(rel-version, -+[ --with-rel-version=XXX override derived release version], -+[AC_MSG_WARN(overriding release version $cf_cv_rel_version to $withval) -+ cf_cv_rel_version=$withval]) -+ifelse($1,,[ -+ CF_NUMBER_SYNTAX($cf_cv_rel_version,Release version) -+],[ -+ $1_MAJOR=`echo "$cf_cv_rel_version" | sed -e 's/\..*//'` -+ $1_MINOR=`echo "$cf_cv_rel_version" | sed -e 's/^[[^.]]*//' -e 's/^\.//' -e 's/\..*//'` -+ CF_NUMBER_SYNTAX([$]$1_MAJOR,Release major-version) -+ CF_NUMBER_SYNTAX([$]$1_MINOR,Release minor-version) -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43 -+dnl ---------------- -+dnl If we can compile with sysmouse, make it available unless it is not wanted. -+AC_DEFUN([CF_WITH_SYSMOUSE],[ -+# not everyone has "test -c" -+if test -c /dev/sysmouse 2>/dev/null ; then -+AC_MSG_CHECKING(if you want to use sysmouse) -+AC_ARG_WITH(sysmouse, -+ [ --with-sysmouse use sysmouse (FreeBSD console)], -+ [cf_with_sysmouse=$withval], -+ [cf_with_sysmouse=maybe]) -+ if test "$cf_with_sysmouse" != no ; then -+ AC_TRY_COMPILE([ -+#include -+#if (__FreeBSD_version >= 400017) -+#include -+#include -+#else -+#include -+#endif -+],[ -+ struct mouse_info the_mouse; -+ ioctl(0, CONS_MOUSECTL, &the_mouse); -+],[cf_with_sysmouse=yes],[cf_with_sysmouse=no]) -+ fi -+AC_MSG_RESULT($cf_with_sysmouse) -+test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_XOPEN_SOURCE version: 11 updated: 2004/01/26 20:58:41 -+dnl --------------- -+dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, -+dnl or adapt to the vendor's definitions to get equivalent functionality. -+AC_DEFUN([CF_XOPEN_SOURCE],[ -+case $host_os in #(vi -+freebsd*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600" -+ ;; -+hpux*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE" -+ ;; -+irix6.*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE" -+ ;; -+linux*) #(vi -+ CF_GNU_SOURCE -+ ;; -+mirbsd*) #(vi -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -+ ;; -+netbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -+ ;; -+osf[[45]]*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE" -+ ;; -+sco*) #(vi -+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -+ ;; -+solaris*) #(vi -+ CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__" -+ ;; -+*) -+ AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" -+ -+ # FreeBSD 5.x headers demand this... -+ AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _POSIX_C_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _POSIX_C_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" -+ ;; -+esac -+]) ---- /dev/null -+++ ncurses-5.4/m4/templates.m4 -@@ -0,0 +1,78 @@ -+AH_TEMPLATE([BROKEN_LINKER], [too lazy to enter descriptions]) -+AH_TEMPLATE([BSD_TPUTS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CC_HAS_INLINE_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CC_HAS_PROTOS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CPP_HAS_PARAM_INIT], [too lazy to enter descriptions]) -+AH_TEMPLATE([CPP_HAS_VSCAN_FUNC], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BIG_CORE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BSD_CGETENT], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_CURSES_VERSION], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GETTIMEOFDAY], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GPP_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GXX_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_HAS_KEY], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_ISASCII], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_LIBGPM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_LIBUTF8_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_MKSTEMP], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_NC_ALLOC_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEXPR_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEXP_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEX_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_RESIZETERM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_RESIZE_TERM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SIZECHANGE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SLK_COLOR], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SYS_TIME_SELECT], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_TCGETATTR], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_TYPE_SIGACTION], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_USE_DEFAULT_COLORS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_VFSCANF], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_VSSCANF], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_WORKING_POLL], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_WRESIZE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE__DOSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([MIXEDCASE_FILENAMES], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_EXPANDED], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_EXT_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_NOMACROS], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_NO_PADDING], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_PATHSEP], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_VERSION_STRING], [too lazy to enter descriptions]) -+AH_TEMPLATE([NDEBUG], [too lazy to enter descriptions]) -+AH_TEMPLATE([NEED_WCHAR_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([NO_LEAKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([PROG_EXT], [too lazy to enter descriptions]) -+AH_TEMPLATE([PURE_TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([SVR4_ACTION], [too lazy to enter descriptions]) -+AH_TEMPLATE([SVR4_TERMIO], [too lazy to enter descriptions]) -+AH_TEMPLATE([SYSTEM_NAME], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMINFO_DIRS], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMPATH], [too lazy to enter descriptions]) -+AH_TEMPLATE([TYPEOF_CHTYPE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_ASSUMED_COLOR], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_COLORFGBG], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_DATABASE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_GETCAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_GETCAP_CACHE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HARD_TABS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HASHMAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HOME_TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_LINKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_MY_MEMMOVE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_OK_BCOPY], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_RCS_IDS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_ROOT_ENVIRON], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SAFE_SPRINTF], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SCROLL_HINTS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SIGWINCH], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STDIO_VSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STRSTREAM_VSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STRSTREAM_VSCAN_CAST], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SYMLINKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SYSMOUSE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_TERMCAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_WIDEC_SUPPORT], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_XMC_SUPPORT], [too lazy to enter descriptions]) diff --git a/meta/recipes-core/ncurses/ncurses_5.4.bb b/meta/recipes-core/ncurses/ncurses_5.4.bb deleted file mode 100644 index 60e07fd859..0000000000 --- a/meta/recipes-core/ncurses/ncurses_5.4.bb +++ /dev/null @@ -1,11 +0,0 @@ -PR = "r14" - -SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz \ - file://makefile_tweak.patch;patch=1 \ - file://visibility.patch;patch=1" - -SRC_URI[md5sum] = "069c8880072060373290a4fefff43520" -SRC_URI[sha256sum] = "5abce063cf431790f4e6a801a96c7eea0b33a41ecd0970f6312f52575c083b36" -S = "${WORKDIR}/ncurses-${PV}" - -require ncurses.inc diff --git a/meta/recipes-core/ncurses/ncurses_5.7.bb b/meta/recipes-core/ncurses/ncurses_5.7.bb new file mode 100644 index 0000000000..33cc16105b --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses_5.7.bb @@ -0,0 +1,242 @@ +DESCRIPTION = "Ncurses library" +HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://ncurses/base/version.c;beginline=1;endline=27;md5=cbc180a8c44ca642e97c35452fab5f66" +SECTION = "libs" +PATCHDATE = "20100501" +PKGV = "${PV}+${PATCHDATE}" +PR = "r0" + +DEPENDS = "ncurses-native unifdef-native" +DEPENDS_virtclass-native = "unifdef-native" + +inherit autotools binconfig + +SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz;name=tarball \ + ftp://invisible-island.net/ncurses/5.7/ncurses-5.7-20100424-patch.sh.bz2;apply=yes;name=p20100424sh \ +\ + ftp://invisible-island.net/ncurses/5.7/ncurses-5.7-${PATCHDATE}.patch.gz;name=p20100501 \ + file://tic-hang.patch \ + file://config.cache \ +" + +SRC_URI[tarball.md5sum] = "cce05daf61a64501ef6cd8da1f727ec6" +SRC_URI[tarball.sha256sum] = "0a9bdea5c7de8ded5c9327ed642915f2cc380753f12d4ad120ef7da3ea3498f4" +SRC_URI[p20100424sh.md5sum] = "3a5f76613f0f7ec3e0e73b835bc24864" +SRC_URI[p20100424sh.sha256sum] = "1e9d70d2d1fe1fea471868832c52f1b9cc6065132102e49e2a3755f2f4f5be53" +SRC_URI[p20100501.md5sum] = "6518cfa5d45e9069a1e042468161448b" +SRC_URI[p20100501.sha256sum] = "a97ccc30e4bd6fbb89564f3058db0fe84bd35cfefee831556c500793b477abde" + +PARALLEL_MAKE = "" +EXTRA_AUTORECONF = "-I m4" +CONFIG_SITE =+ "${WORKDIR}/config.cache" + +# Whether to enable separate widec libraries; must be 'true' or 'false' +# +# TODO: remove this variable when widec is supported in every setup? +ENABLE_WIDEC = "true" + +# _GNU_SOURCE is required for widec stuff and is detected automatically +# for target objects. But it must be set manually for native and sdk +# builds. +BUILD_CPPFLAGS += "-D_GNU_SOURCE" + +# Override the function from the autotools class; ncurses requires a +# patched autoconf213 to generate the configure script. This autoconf +# is not available so that the shipped script will be used. +do_configure() { + # check does not work with cross-compiling and is generally + # broken because it requires stdin to be pollable (which is + # not the case for /dev/null redirections) + export cf_cv_working_poll=yes + + for i in \ + 'narrowc' \ + 'widec --enable-widec --without-progs'; do + set -- $i + mkdir -p $1 + cd $1 + shift + + oe_runconf \ + --disable-static \ + --without-debug \ + --without-ada \ + --without-gpm \ + --enable-hard-tabs \ + --enable-xmc-glitch \ + --enable-colorfgbg \ + --with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \ + --with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \ + --with-shared \ + --disable-big-core \ + --program-prefix= \ + --with-ticlib \ + --with-termlib=tinfo \ + --enable-sigwinch \ + --enable-pc-files \ + --disable-rpath-hack \ + "$@" + cd .. + done +} + +do_compile() { + oe_runmake -C narrowc libs + oe_runmake -C narrowc/progs + + ! ${ENABLE_WIDEC} || \ + oe_runmake -C widec libs +} + +# set of expected differences between narrowc and widec header +# +# TODO: the NCURSES_CH_T difference can cause real problems :( +_unifdef_cleanup = " \ + -e '\!/\* \$Id: curses.wide,v!,\!/\* \$Id: curses.tail,v!d' \ + -e '/^#define NCURSES_CH_T /d' \ + -e '/^#include /d' \ + -e '\!^/\* .* \*/!d' \ +" + +do_test[dirs] = "${S}" +do_test() { + ${ENABLE_WIDEC} || return 0 + + # make sure that the narrow and widec header are compatible + # and differ only in minor details. + unifdef -k narrowc/include/curses.h | \ + sed ${_unifdef_cleanup} > curses-narrowc.h + unifdef -k widec/include/curses.h | \ + sed ${_unifdef_cleanup} > curses-widec.h + + diff curses-narrowc.h curses-widec.h +} + +_install_opts = "\ + DESTDIR='${D}' \ + PKG_CONFIG_LIBDIR='${libdir}/pkgconfig' \ + install.libs install.includes install.man \ +" + +do_install() { + # Order of installation is important; widec installs a 'curses.h' + # header with more definitions and must be installed last hence. + # Compatibility of these headers will be checked in 'do_test()'. + oe_runmake -C narrowc ${_install_opts} \ + install.data install.progs + + ! ${ENABLE_WIDEC} || \ + oe_runmake -C widec ${_install_opts} + + + cd narrowc + + # include some basic terminfo files + # stolen ;) from gentoo and modified a bit + for x in ansi console dumb linux rxvt screen sun vt{52,100,102,200,220} xterm-color xterm-xfree86 + do + local termfile="$(find "${D}${datadir}/terminfo/" -name "${x}" 2>/dev/null)" + local basedir="$(basename $(dirname "${termfile}"))" + + if [ -n "${termfile}" ] + then + install -d ${D}${sysconfdir}/terminfo/${basedir} + mv ${termfile} ${D}${sysconfdir}/terminfo/${basedir}/ + ln -s /etc/terminfo/${basedir}/${x} \ + ${D}${datadir}/terminfo/${basedir}/${x} + fi + done + # i think we can use xterm-color as default xterm + if [ -e ${D}${sysconfdir}/terminfo/x/xterm-color ] + then + ln -sf xterm-color ${D}${sysconfdir}/terminfo/x/xterm + fi + + if [ "${PN}" = "ncurses" ]; then + mv ${D}${bindir}/clear ${D}${bindir}/clear.${PN} + mv ${D}${bindir}/reset ${D}${bindir}/reset.${PN} + fi + + + # create linker scripts for libcurses.so and libncurses to + # link against -ltinfo when needed. Some builds might break + # else when '-Wl,--no-copy-dt-needed-entries' has been set in + # linker flags. + for i in libncurses libncursesw; do + f=${D}${libdir}/$i.so + test -h $f || continue + rm -f $f + echo '/* GNU ld script */' >$f + echo "INPUT($i.so.5 AS_NEEDED(-ltinfo))" >>$f + done + + # create libtermcap.so linker script for backward compatibility + f=${D}${libdir}/libtermcap.so + echo '/* GNU ld script */' >$f + echo 'INPUT(AS_NEEDED(-ltinfo))' >>$f +} + +python populate_packages_prepend () { + libdir = bb.data.expand("${libdir}", d) + pnbase = bb.data.expand("${PN}-lib%s", d) + do_split_packages(d, libdir, '^lib(.*)\.so\..*', pnbase, 'ncurses %s library', prepend=True, extra_depends = '', allow_links=True) +} + + +pkg_postinst_ncurses-tools () { + if [ "${PN}" = "ncurses" ]; then + update-alternatives --install ${bindir}/clear clear clear.${PN} 100 + update-alternatives --install ${bindir}/reset reset reset.${PN} 100 + fi +} + +pkg_prerm_ncurses-tools () { + if [ "${PN}" = "ncurses" ]; then + update-alternatives --remove clear clear.${PN} + update-alternatives --remove reset reset.${PN} + fi +} + +BBCLASSEXTEND = "native nativesdk" + +PACKAGES += " \ + ${PN}-tools \ + ${PN}-terminfo \ + ${PN}-terminfo-base \ +" + +FILES_${PN} = "\ + ${bindir}/tput \ + ${bindir}/tset \ + ${bindir}/ncurses5-config \ + ${bindir}/ncursesw5-config \ + ${datadir}/tabset \ +" + +# This keeps only tput/tset in ncurses +# clear/reset are in already busybox +FILES_${PN}-tools = "\ + ${bindir}/tic \ + ${bindir}/toe \ + ${bindir}/infotocap \ + ${bindir}/captoinfo \ + ${bindir}/infocmp \ + ${bindir}/clear.${PN} \ + ${bindir}/reset.${PN} \ + ${bindir}/tack \ + ${bindir}/tabs \ +" +# 'reset' is a symlink to 'tset' which is in the 'ncurses' package +RDEPENDS_${PN}-tools = "${PN}" + +FILES_${PN}-terminfo = "\ + ${datadir}/terminfo \ +" + +FILES_${PN}-terminfo-base = "\ + ${sysconfdir}/terminfo \ +" + +RSUGGESTS_${PN}-libtinfo = "${PN}-terminfo" +RRECOMMENDS_${PN}-libtinfo = "${PN}-terminfo-base" -- cgit v1.2.3-54-g00ecf