ncurses 5.9 - patch 20120602
[ncurses.git] / Ada95 / configure.in
index 2692547c38afea8a2e44ba087637ba50dd5b3548..86e58845a5ea0ad6920281bc942458ad4b9db596 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 2010 Free Software Foundation, Inc.                        *
+dnl Copyright (c) 2010-2011,2012 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            *
@@ -28,14 +28,14 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey
 dnl
-dnl $Id: configure.in,v 1.20 2010/10/23 20:24:58 tom Exp $
+dnl $Id: configure.in,v 1.41 2012/05/05 20:54:52 tom Exp $
 dnl Process this file with autoconf to produce a configure script.
 dnl
 dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.13.20020210)
-AC_REVISION($Revision: 1.20 $)
+AC_REVISION($Revision: 1.41 $)
 AC_INIT(gen/gen.c)
 AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
 
@@ -54,7 +54,7 @@ cf_user_CFLAGS="$CFLAGS"
 CF_CFG_DEFAULTS
 
 ###    Checks for programs.
-AC_PROG_CC
+AC_PROG_CC(gnatgcc gcc cc)
 CF_GCC_VERSION
 
 AC_PROG_CPP
@@ -75,28 +75,8 @@ AC_SYS_LONG_FILE_NAMES
 
 # if we find pkg-config, check if we should install the ".pc" files.
 CF_PKG_CONFIG
-
-if test "$PKG_CONFIG" != no ; then
-       AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
-
-       # Leave this as something that can be overridden in the environment.
-       if test -z "$PKG_CONFIG_LIBDIR" ; then
-               PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig
-       fi
-       PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
-       if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
-               AC_ARG_ENABLE(pc-files,
-                       [  --enable-pc-files       generate and install .pc files for pkg-config],
-                       [enable_pc_files=$enableval],
-                       [enable_pc_files=no])
-               AC_MSG_RESULT($enable_pc_files)
-       else
-               AC_MSG_RESULT(no)
-               AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR)
-               enable_pc_files=no
-       fi
-fi
-AC_SUBST(PKG_CONFIG_LIBDIR)
+CF_WITH_PKG_CONFIG_LIBDIR
+CF_ENABLE_PC_FILES
 
 AC_MSG_CHECKING(if you want to build test-programs)
 AC_ARG_WITH(tests,
@@ -160,6 +140,15 @@ CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:)
 ### Use "--without-normal --with-shared" to allow the default model to be
 ### shared, for example.
 cf_list_models=""
+
+AC_MSG_CHECKING(if you want to build shared C-objects)
+AC_ARG_WITH(shared,
+       [  --with-shared           generate shared C-objects (needed for --with-ada-sharedlib)],
+       [with_shared=$withval],
+       [with_shared=no])
+AC_MSG_RESULT($with_shared)
+test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
+
 AC_MSG_CHECKING(for specified models)
 test -z "$cf_list_models" && cf_list_models=normal
 AC_MSG_RESULT($cf_list_models)
@@ -177,9 +166,7 @@ AC_SUBST(DFT_UPR_MODEL)dnl  the default model ("NORMAL")
 
 CF_NCURSES_ADDON
 
-CF_LIB_PREFIX(cf_prefix)
-LIB_PREFIX=$cf_prefix
-AC_SUBST(LIB_PREFIX)
+CF_WITH_LIB_PREFIX(cf_prefix)
 
 LIB_SUFFIX=
 AC_SUBST(LIB_SUFFIX)
@@ -206,11 +193,26 @@ AC_MSG_RESULT($LD_MODEL)
 
 CF_SHARED_OPTS
 
+# The test/sample programs in the original tree link using rpath option.
+# Make it optional for packagers.
+if test -n "$LOCAL_LDFLAGS"
+then
+       AC_MSG_CHECKING(if you want to link sample programs with rpath option)
+       AC_ARG_ENABLE(rpath-link,
+               [  --enable-rpath-link     link sample programs with rpath option],
+               [with_rpath_link=$enableval],
+               [with_rpath_link=yes])
+       AC_MSG_RESULT($with_rpath_link)
+       if test "$with_rpath_link" = no
+       then
+               LOCAL_LDFLAGS=
+               LOCAL_LDFLAGS2=
+       fi
+fi
+
 ###############################################################################
 CF_HELP_MESSAGE(Fine-Tuning Your Configuration:)
 
-CF_PATHSEP
-
 ###   use option --enable-broken-linker to force on use of broken-linker support
 AC_MSG_CHECKING(if you want broken-linker support code)
 AC_ARG_ENABLE(broken_linker,
@@ -324,6 +326,9 @@ if test "$with_pthread" = "yes" ; then
 fi
 AC_SUBST(PTHREAD)
 
+# OpenSUSE is installing ncurses6, using reentrant option.
+AC_CHECK_FUNC(_nc_TABSIZE,[assume_reentrant=yes], [assume_reentrant=no])
+
 # Reentrant code has to be opaque; there's little advantage to making ncurses
 # opaque outside of that, so there is no --enable-opaque option.  We can use
 # this option without --with-pthreads, but this will be always set for
@@ -332,13 +337,13 @@ AC_MSG_CHECKING(if you want experimental reentrant code)
 AC_ARG_ENABLE(reentrant,
        [  --enable-reentrant      compile with experimental reentrant code],
        [with_reentrant=$enableval],
-       [with_reentrant=no])
+       [with_reentrant=$assume_reentrant])
 AC_MSG_RESULT($with_reentrant)
 if test "$with_reentrant" = yes ; then
        cf_cv_enable_reentrant=1
        if test $cf_cv_weak_symbols = yes ; then
                CF_REMOVE_LIB(LIBS,$LIBS,pthread)
-       else
+       elif test "$assume_reentrant" = no ; then
                LIB_SUFFIX="t${LIB_SUFFIX}"
        fi
        AC_DEFINE(USE_REENTRANT)
@@ -365,18 +370,7 @@ AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX")
 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)
-AC_ARG_ENABLE(echo,
-       [  --enable-echo           build: display "compiling" commands (default)],
-       [with_echo=$enableval],
-       [with_echo=yes])
-if test "$with_echo" = yes; then
-       ECHO_LINK=
-else
-       ECHO_LINK='@ echo linking $@ ... ;'
-fi
-AC_MSG_RESULT($with_echo)
-AC_SUBST(ECHO_LINK)
+CF_DISABLE_ECHO
 
 ###    use option --enable-warnings to turn on all gcc warnings
 AC_MSG_CHECKING(if you want to see compiler warnings)
@@ -386,7 +380,7 @@ AC_ARG_ENABLE(warnings,
 AC_MSG_RESULT($with_warnings)
 
 if test "x$with_warnings" = "xyes"; then
-       ADAFLAGS="$ADAFLAGS -gnatg"
+       CF_ADD_ADAFLAGS(-gnatg)
        CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
 fi
 CF_GCC_ATTRIBUTES
@@ -402,10 +396,9 @@ if test -n "$GCC"
 then
        if test "$with_assertions" = no
        then
-               AC_DEFINE(NDEBUG)
                CPPFLAGS="$CPPFLAGS -DNDEBUG"
        else
-               ADAFLAGS="$ADAFLAGS -gnata"
+               CF_ADD_ADAFLAGS(-gnata)
        fi
 fi
 
@@ -485,15 +478,18 @@ if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then
 fi
 
 CF_HELP_MESSAGE(Ada95 Binding Options:)
-
+cf_with_ada=yes
 dnl Check for availability of GNU Ada Translator (GNAT).
 dnl At the moment we support no other Ada95 compiler.
 if test "$cf_with_ada" != "no" ; then
        CF_PROG_GNAT
        if test "$cf_cv_prog_gnat_correct" = yes; then
-               CF_ADD_ADAFLAGS(-O3 -gnatpn)
+               CF_FIXUP_ADAFLAGS
 
+               CF_GNAT_GENERICS
+               CF_GNAT_SIGINT
                CF_GNAT_PRAGMA_UNREF
+               CF_GNAT_PROJECTS
 
                CF_WITH_ADA_COMPILER
 
@@ -503,14 +499,20 @@ if test "$cf_with_ada" != "no" ; then
                CF_WITH_ADA_INCLUDE
                CF_WITH_ADA_OBJECTS
                CF_WITH_ADA_SHAREDLIB
+       else
+               AC_MSG_ERROR(No usable Ada compiler found)
        fi
+else
+       AC_MSG_ERROR(The Ada compiler is needed for this package)
 fi
 
 ################################################################################
 
 # not needed
-TINFO_ARGS2=
-AC_SUBST(TINFO_ARGS2)
+TINFO_LDFLAGS2=
+AC_SUBST(TINFO_LDFLAGS2)
+TINFO_LIBS=
+AC_SUBST(TINFO_LIBS)
 
 ### Construct the list of include-directories to be generated
 CF_INCLUDE_DIRS
@@ -575,7 +577,7 @@ dnl for separate build, this is good enough for "sh $(top_srcdir)/misc/shlib"
 NCURSES_SHLIB2="sh -c"
 AC_SUBST(NCURSES_SHLIB2)
 
-ADA_SUBDIRS="gen src"
+ADA_SUBDIRS="include gen src doc"
 if test "x$cf_with_tests" != "xno" ; then
        ADA_SUBDIRS="$ADA_SUBDIRS samples"
 fi
@@ -591,8 +593,13 @@ AC_SUBST(NCURSES_TREE)
 EXTERNAL_TREE=
 AC_SUBST(EXTERNAL_TREE)
 
+# match layout used by make-tar.sh
+ADAHTML_DIR=../doc/ada
+AC_SUBST(ADAHTML_DIR)
+
 AC_OUTPUT( \
        $SUB_MAKEFILES \
+       doc/adacurses${DFT_ARG_SUFFIX}-config.1:doc/MKada_config.in \
        Makefile,[
 if test -z "$USE_OLD_MAKERULES" ; then
        $AWK -f $srcdir/mk-1st.awk <$srcdir/src/modules >>src/Makefile
@@ -604,8 +611,8 @@ fi
 AWK="$AWK"
 DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
 DFT_LWR_MODEL="$DFT_LWR_MODEL"
-ECHO_LINK="$ECHO_LINK"
 LIB_NAME="$LIB_NAME"
+LIB_PREFIX="$LIB_PREFIX"
 LIB_SUFFIX="$LIB_SUFFIX"
 LN_S="$LN_S"
 NCURSES_MAJOR="$NCURSES_MAJOR"