]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - aclocal.m4
ncurses 5.9 - patch 20141115
[ncurses.git] / aclocal.m4
index 46062b4e03458da693538e5ddfcb9d1e858549b2..74d3791a57b306b54676011857b4dd0c0d66ea8a 100644 (file)
@@ -28,7 +28,7 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1995-on
 dnl
-dnl $Id: aclocal.m4,v 1.706 2014/08/02 22:38:39 tom Exp $
+dnl $Id: aclocal.m4,v 1.718 2014/11/16 00:08:34 tom Exp $
 dnl Macros used in NCURSES auto-configuration script.
 dnl
 dnl These macros are maintained separately from NCURSES.  The copyright on
@@ -1276,7 +1276,7 @@ if test "$with_no_leaks" = yes ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_DISABLE_LIBTOOL_VERSION version: 1 updated: 2010/05/15 15:45:59
+dnl CF_DISABLE_LIBTOOL_VERSION version: 2 updated: 2014/11/15 19:05:29
 dnl --------------------------
 dnl Check if we should use the libtool 1.5 feature "-version-number" instead of
 dnl the older "-version-info" feature.  The newer feature allows us to use
@@ -1295,8 +1295,25 @@ if test "$cf_libtool_version" = yes ; then
        LIBTOOL_VERSION="-version-number"
 else
        LIBTOOL_VERSION="-version-info"
+       case "x$VERSION" in #(vi
+       x) #(vi
+               AC_MSG_WARN(VERSION was not set)
+               ;;
+       x*.*.*)
+               ABI_VERSION="$VERSION"
+               CF_VERBOSE(ABI_VERSION: $ABI_VERSION)
+               ;;
+       x*:*:*)
+               ABI_VERSION=`echo "$VERSION" | sed -e 's/:/./g'`
+               CF_VERBOSE(ABI_VERSION: $ABI_VERSION)
+               ;;
+       *)
+               AC_MSG_WARN(unexpected VERSION value: $VERSION)
+               ;;
+       esac
 fi
 
+AC_SUBST(ABI_VERSION)
 AC_SUBST(LIBTOOL_VERSION)
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -2836,25 +2853,12 @@ AC_DEFUN([CF_HELP_MESSAGE],
 [AC_DIVERT_HELP([$1])dnl
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_INCLUDE_DIRS version: 9 updated: 2014/07/26 18:54:28
+dnl CF_INCLUDE_DIRS version: 10 updated: 2014/09/19 20:58:42
 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.
+dnl in the source directory or using '--srcdir=DIR' option.
 AC_DEFUN([CF_INCLUDE_DIRS],
 [
-if test "$GCC" != yes; then
-       CPPFLAGS="-I\${includedir} $CPPFLAGS"
-elif test "$includedir" != "/usr/include"; then
-       if test "$includedir" = '${prefix}/include' ; then
-               if test x$prefix != x/usr ; then
-                       CPPFLAGS="-I\${includedir} $CPPFLAGS"
-               fi
-       else
-               CPPFLAGS="-I\${includedir} $CPPFLAGS"
-       fi
-fi
 if test "$srcdir" != "."; then
        CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS"
 fi
@@ -3172,7 +3176,7 @@ ifelse($1,,,[$1=$LIB_PREFIX])
        AC_SUBST(LIB_PREFIX)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 74 updated: 2013/09/07 13:54:05
+dnl CF_LIB_RULES version: 75 updated: 2014/09/20 20:16:32
 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
@@ -3556,6 +3560,12 @@ install.libs uninstall.libs \\
 install.data uninstall.data ::
 $MAKE_TERMINFO cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
 CF_EOF
+else
+cat >> Makefile <<CF_EOF
+
+install.libs uninstall.libs ::
+       cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
+CF_EOF
 fi
 
 if test "x$cf_with_manpages" = xyes; then
@@ -6017,7 +6027,7 @@ if test "$cf_cv_sizechange" != no ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_SRC_MODULES version: 27 updated: 2013/08/03 18:18:08
+dnl CF_SRC_MODULES version: 28 updated: 2014/09/20 20:16:32
 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
@@ -6106,9 +6116,8 @@ done
 if test "x$cf_with_tests" != "xno" ; then
        SRC_SUBDIRS="$SRC_SUBDIRS test"
 fi
-if test "x$cf_with_db_install" = xyes; then
-       test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc"
-fi
+# always make this, to install the ncurses-config script
+SRC_SUBDIRS="$SRC_SUBDIRS misc"
 if test "$cf_with_cxx_binding" != no; then
        PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ncurses++${DFT_ARG_SUFFIX}"
        SRC_SUBDIRS="$SRC_SUBDIRS c++"
@@ -6533,6 +6542,94 @@ AC_DEFUN([CF_VERBOSE],
 CF_MSG_LOG([$1])
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_VERSION_INFO version: 6 updated: 2013/06/16 10:25:53
+dnl ---------------
+dnl Define several useful symbols derived from the VERSION file.  A separate
+dnl file is preferred to embedding the version numbers in various scripts.
+dnl (automake is a textbook-example of why the latter is a bad idea, but there
+dnl are others).
+dnl
+dnl The file contents are:
+dnl    libtool-version release-version patch-version
+dnl or
+dnl    release-version
+dnl where
+dnl    libtool-version (see ?) consists of 3 integers separated by '.'
+dnl    release-version consists of a major version and minor version
+dnl            separated by '.', optionally followed by a patch-version
+dnl            separated by '-'.  The minor version need not be an
+dnl            integer (but it is preferred).
+dnl    patch-version is an integer in the form yyyymmdd, so ifdef's and
+dnl            scripts can easily compare versions.
+dnl
+dnl If libtool is used, the first form is required, since CF_WITH_LIBTOOL
+dnl simply extracts the first field using 'cut -f1'.
+dnl
+dnl Optional parameters:
+dnl $1 = internal name for package
+dnl $2 = external name for package
+AC_DEFUN([CF_VERSION_INFO],
+[
+if test -f $srcdir/VERSION ; then
+       AC_MSG_CHECKING(for package version)
+
+       # if there are not enough fields, cut returns the last one...
+       cf_field1=`sed -e '2,$d' $srcdir/VERSION|cut -f1`
+       cf_field2=`sed -e '2,$d' $srcdir/VERSION|cut -f2`
+       cf_field3=`sed -e '2,$d' $srcdir/VERSION|cut -f3`
+
+       # this is how CF_BUNDLED_INTL uses $VERSION:
+       VERSION="$cf_field1"
+
+       VERSION_MAJOR=`echo "$cf_field2" | sed -e 's/\..*//'`
+       test -z "$VERSION_MAJOR" && AC_MSG_ERROR(missing major-version)
+
+       VERSION_MINOR=`echo "$cf_field2" | sed -e 's/^[[^.]]*\.//' -e 's/-.*//'`
+       test -z "$VERSION_MINOR" && AC_MSG_ERROR(missing minor-version)
+
+       AC_MSG_RESULT(${VERSION_MAJOR}.${VERSION_MINOR})
+
+       AC_MSG_CHECKING(for package patch date)
+       VERSION_PATCH=`echo "$cf_field3" | sed -e 's/^[[^-]]*-//'`
+       case .$VERSION_PATCH in
+       .)
+               AC_MSG_ERROR(missing patch-date $VERSION_PATCH)
+               ;;
+       .[[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]])
+               ;;
+       *)
+               AC_MSG_ERROR(illegal patch-date $VERSION_PATCH)
+               ;;
+       esac
+       AC_MSG_RESULT($VERSION_PATCH)
+else
+       AC_MSG_ERROR(did not find $srcdir/VERSION)
+fi
+
+# show the actual data that we have for versions:
+CF_VERBOSE(ABI VERSION $VERSION)
+CF_VERBOSE(VERSION_MAJOR $VERSION_MAJOR)
+CF_VERBOSE(VERSION_MINOR $VERSION_MINOR)
+CF_VERBOSE(VERSION_PATCH $VERSION_PATCH)
+
+AC_SUBST(VERSION)
+AC_SUBST(VERSION_MAJOR)
+AC_SUBST(VERSION_MINOR)
+AC_SUBST(VERSION_PATCH)
+
+dnl if a package name is given, define its corresponding version info.  We
+dnl need the package name to ensure that the defined symbols are unique.
+ifelse($1,,,[
+       cf_PACKAGE=$1
+       PACKAGE=ifelse($2,,$1,$2)
+       AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",[Define to the package-name])
+       AC_SUBST(PACKAGE)
+       CF_UPPER(cf_PACKAGE,$cf_PACKAGE)
+       AC_DEFINE_UNQUOTED(${cf_PACKAGE}_VERSION,"${VERSION_MAJOR}.${VERSION_MINOR}")
+       AC_DEFINE_UNQUOTED(${cf_PACKAGE}_PATCHDATE,${VERSION_PATCH})
+])
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_WCHAR_TYPE version: 4 updated: 2012/10/06 16:39:58
 dnl -------------
 dnl Check if type wide-character type $1 is declared, and if so, which header
@@ -6728,6 +6825,32 @@ if test "$with_dmalloc" = yes ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_WITH_EXPORT_SYMS version: 2 updated: 2014/11/15 19:05:29
+dnl -------------------
+dnl Use this with libtool to specify the list of symbols that may be exported.
+dnl The input file contains one symbol per line; comments work with "#".
+dnl
+dnl $1 = basename of the ".sym" file (default $PACKAGE)
+AC_DEFUN([CF_WITH_EXPORT_SYMS],
+[
+AC_MSG_CHECKING(if exported-symbols file should be used)
+AC_ARG_WITH(export-syms,
+       [  --with-export-syms=XXX  limit exported symbols using libtool],
+       [with_export_syms=$withval],
+       [with_export_syms=no])
+if test "x$with_export_syms" = xyes
+then
+       with_export_syms='${top_srcdir}/package/ifelse($1,,${PACKAGE},[$1]).sym'
+       AC_SUBST(PACKAGE)
+fi
+AC_MSG_RESULT($with_export_syms)
+if test "x$with_export_syms" != xno
+then
+       EXPORT_SYMS="$EXPORT_SYMS -export-symbols $with_export_syms"
+       AC_SUBST(EXPORT_SYMS)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_WITH_GPM version: 8 updated: 2012/10/06 17:56:13
 dnl -----------
 dnl
@@ -6761,7 +6884,7 @@ if test "$with_gpm" != no ; then
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIBTOOL version: 30 updated: 2013/09/07 13:54:05
+dnl CF_WITH_LIBTOOL version: 31 updated: 2014/11/15 19:05:29
 dnl ---------------
 dnl Provide a configure option to incorporate libtool.  Define several useful
 dnl symbols for the makefile rules.
@@ -6844,7 +6967,7 @@ ifdef([AC_PROG_LIBTOOL],[
                AC_MSG_ERROR(Cannot find libtool)
        fi
 ])dnl
-       LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
+       LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${top_srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
        LIB_OBJECT='${OBJECTS:.o=.lo}'
        LIB_SUFFIX=.la
        LIB_CLEAN='${LIBTOOL} --mode=clean'
@@ -6897,6 +7020,32 @@ AC_SUBST(LIB_LINK)
 AC_SUBST(LIB_INSTALL)
 AC_SUBST(LIB_UNINSTALL)
 
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_WITH_LIBTOOL_OPTS version: 3 updated: 2014/11/02 16:11:49
+dnl --------------------
+dnl Allow user to pass additional libtool options into the library creation
+dnl and link steps.  The main use for this is to do something like
+dnl    ./configure --with-libtool-opts=-static
+dnl to get the same behavior as automake-flavored
+dnl    ./configure --enable-static
+AC_DEFUN([CF_WITH_LIBTOOL_OPTS],[
+AC_MSG_CHECKING(for additional libtool options)
+AC_ARG_WITH(libtool-opts,
+       [  --with-libtool-opts=XXX specify additional libtool options],
+       [with_libtool_opts=$withval],
+       [with_libtool_opts=no])
+AC_MSG_RESULT($with_libtool_opts)
+
+case .$with_libtool_opts in
+.yes|.no|.)
+       ;;
+*)
+       LIBTOOL_OPTS="$LIBTOOL_OPTS $with_libtool_opts"
+       ;;
+esac
+
+AC_SUBST(LIBTOOL_OPTS)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10
@@ -7166,7 +7315,49 @@ CF_NO_LEAKS_OPTION(valgrind,
        [USE_VALGRIND])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 47 updated: 2014/07/23 17:11:49
+dnl CF_WITH_VERSIONED_SYMS version: 2 updated: 2014/11/15 19:05:29
+dnl ----------------------
+dnl Use this when building shared library with ELF, to markup symbols with the
+dnl version identifier from the given input file.  Generally that identifier is
+dnl the same as the SONAME at which the symbol was first introduced.
+dnl
+dnl $1 = basename of the ".sym" file (default $PACKAGE)
+AC_DEFUN([CF_WITH_VERSIONED_SYMS],
+[
+AC_MSG_CHECKING(if versioned-symbols file should be used)
+AC_ARG_WITH(versioned-syms,
+       [  --with-versioned-syms=X markup versioned symbols using ld],
+       [with_versioned_syms=$withval],
+       [with_versioned_syms=no])
+if test "x$with_versioned_syms" = xyes
+then
+       with_versioned_syms='${top_srcdir}/package/ifelse($1,,${PACKAGE},[$1]).map'
+       AC_SUBST(PACKAGE)
+fi
+AC_MSG_RESULT($with_versioned_syms)
+
+if test "x$with_versioned_syms" != xno
+then
+       AC_SUBST(VERSIONED_SYMS)
+       case "x$MK_SHARED_LIB" in
+       *-Wl,*) #(vi
+               VERSIONED_SYMS="-Wl,--version-script,$with_versioned_syms"
+               MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-Wl,%\\[$]{VERSIONED_SYMS} -Wl,%"`
+               CF_VERBOSE(MK_SHARED_LIB:  $MK_SHARED_LIB)
+               ;;
+       *-dy*) #(vi
+               VERSIONED_SYMS="-Wl,-M,$with_versioned_syms"
+               MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-dy%\\[$]{VERSIONED_SYMS} -dy%"`
+               CF_VERBOSE(MK_SHARED_LIB:  $MK_SHARED_LIB)
+               ;;
+       *)
+               AC_MSG_WARN(this system does not support versioned-symbols)
+               ;;
+       esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_XOPEN_SOURCE version: 48 updated: 2014/09/01 12:29:14
 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,
@@ -7249,6 +7440,10 @@ solaris2.*) #(vi
        cf_xopen_source="-D__EXTENSIONS__"
        cf_cv_xopen_source=broken
        ;;
+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
+       cf_XOPEN_SOURCE=
+       cf_POSIX_C_SOURCE=
+       ;;
 *)
        CF_TRY_XOPEN_SOURCE
        CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)