]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - Ada95/configure.in
ncurses 5.9 - patch 20120602
[ncurses.git] / Ada95 / configure.in
index abbd8189ef526f33cabb2af70aea4bc1b4070fcb..86e58845a5ea0ad6920281bc942458ad4b9db596 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
 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            *
 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
 dnl Author: Thomas E. Dickey
 dnl
-dnl $Id: configure.in,v 1.11 2010/02/27 23:02:46 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)
 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.11 $)
+AC_REVISION($Revision: 1.41 $)
 AC_INIT(gen/gen.c)
 AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
 
 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.
 CF_CFG_DEFAULTS
 
 ###    Checks for programs.
-AC_PROG_CC
+AC_PROG_CC(gnatgcc gcc cc)
 CF_GCC_VERSION
 
 AC_PROG_CPP
 CF_GCC_VERSION
 
 AC_PROG_CPP
@@ -69,34 +69,21 @@ AC_ARG_PROGRAM
 CF_PROG_AWK
 CF_PROG_EGREP
 AC_PROG_INSTALL
 CF_PROG_AWK
 CF_PROG_EGREP
 AC_PROG_INSTALL
-AC_PROG_LN_S
+CF_PROG_LN_S
 
 AC_SYS_LONG_FILE_NAMES
 
 # if we find pkg-config, check if we should install the ".pc" files.
 CF_PKG_CONFIG
 
 AC_SYS_LONG_FILE_NAMES
 
 # if we find pkg-config, check if we should install the ".pc" files.
 CF_PKG_CONFIG
+CF_WITH_PKG_CONFIG_LIBDIR
+CF_ENABLE_PC_FILES
 
 
-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)
+AC_MSG_CHECKING(if you want to build test-programs)
+AC_ARG_WITH(tests,
+       [  --without-tests         suppress build with test-programs],
+       [cf_with_tests=$withval],
+       [cf_with_tests=yes])
+AC_MSG_RESULT($cf_with_tests)
 
 AC_MSG_CHECKING(if we should assume mixed-case filenames)
 AC_ARG_ENABLE(mixed-case,
 
 AC_MSG_CHECKING(if we should assume mixed-case filenames)
 AC_ARG_ENABLE(mixed-case,
@@ -153,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=""
 ### 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)
 AC_MSG_CHECKING(for specified models)
 test -z "$cf_list_models" && cf_list_models=normal
 AC_MSG_RESULT($cf_list_models)
@@ -170,9 +166,7 @@ AC_SUBST(DFT_UPR_MODEL)dnl  the default model ("NORMAL")
 
 CF_NCURSES_ADDON
 
 
 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)
 
 LIB_SUFFIX=
 AC_SUBST(LIB_SUFFIX)
@@ -199,17 +193,32 @@ AC_MSG_RESULT($LD_MODEL)
 
 CF_SHARED_OPTS
 
 
 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_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,
        [  --enable-broken_linker  compile with broken-linker support code],
        [with_broken_linker=$enableval],
 ###   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,
        [  --enable-broken_linker  compile with broken-linker support code],
        [with_broken_linker=$enableval],
-       [with_broken_linker=${BROKEN_LINKER-no}])
+       [with_broken_linker=${BROKEN_LINKER:-no}])
 AC_MSG_RESULT($with_broken_linker)
 
 BROKEN_LINKER=0
 AC_MSG_RESULT($with_broken_linker)
 
 BROKEN_LINKER=0
@@ -317,6 +326,9 @@ if test "$with_pthread" = "yes" ; then
 fi
 AC_SUBST(PTHREAD)
 
 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
 # 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
@@ -325,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],
 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)
 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)
                LIB_SUFFIX="t${LIB_SUFFIX}"
        fi
        AC_DEFINE(USE_REENTRANT)
@@ -358,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
 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)
 
 ###    use option --enable-warnings to turn on all gcc warnings
 AC_MSG_CHECKING(if you want to see compiler warnings)
@@ -379,7 +380,7 @@ AC_ARG_ENABLE(warnings,
 AC_MSG_RESULT($with_warnings)
 
 if test "x$with_warnings" = "xyes"; then
 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
        CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
 fi
 CF_GCC_ATTRIBUTES
@@ -395,10 +396,9 @@ if test -n "$GCC"
 then
        if test "$with_assertions" = no
        then
 then
        if test "$with_assertions" = no
        then
-               AC_DEFINE(NDEBUG)
                CPPFLAGS="$CPPFLAGS -DNDEBUG"
        else
                CPPFLAGS="$CPPFLAGS -DNDEBUG"
        else
-               ADAFLAGS="$ADAFLAGS -gnata"
+               CF_ADD_ADAFLAGS(-gnata)
        fi
 fi
 
        fi
 fi
 
@@ -478,95 +478,41 @@ if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then
 fi
 
 CF_HELP_MESSAGE(Ada95 Binding Options:)
 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.
 dnl Check for availability of GNU Ada Translator (GNAT).
 dnl At the moment we support no other Ada95 compiler.
-cf_ada_make=gnatmake
-AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no)
-if test "$ac_cv_prog_gnat_exists" = no; then
-   cf_ada_make=
-else
-   CF_GNAT_VERSION
-   AC_CHECK_PROG(M4_exists, m4, yes, no)
-   if test "$ac_cv_prog_M4_exists" = no; then
-      cf_cv_prog_gnat_correct=no
-      echo Ada95 binding required program m4 not found. Ada95 binding disabled.
-   fi
-   if test "$cf_cv_prog_gnat_correct" = yes; then
-      AC_MSG_CHECKING(if GNAT works)
-      CF_GNAT_TRY_RUN([procedure conftest;],
-[with Text_IO;
-with GNAT.OS_Lib;
-procedure conftest is
-begin
-   Text_IO.Put ("Hello World");
-   Text_IO.New_Line;
-   GNAT.OS_Lib.OS_Exit (0);
-end conftest;],[cf_cv_prog_gnat_correct=yes],[cf_cv_prog_gnat_correct=no])
-      AC_MSG_RESULT($cf_cv_prog_gnat_correct)
-   fi
-fi
-if test        "$cf_cv_prog_gnat_correct" = yes; then
-   ADAFLAGS="-O3 -gnatpn $ADAFLAGS"
-
-   AC_MSG_CHECKING(if GNAT pragma Unreferenced works)
-   CF_GNAT_TRY_LINK([procedure conftest;],
-[with Text_IO;
-with GNAT.OS_Lib;
-procedure conftest is
-   test : Integer;
-   pragma Unreferenced (test);
-begin
-   test := 1;
-   Text_IO.Put ("Hello World");
-   Text_IO.New_Line;
-   GNAT.OS_Lib.OS_Exit (0);
-end conftest;],[cf_cv_pragma_unreferenced=yes],[cf_cv_pragma_unreferenced=no])
-   AC_MSG_RESULT($cf_cv_pragma_unreferenced)
-
-   # if the pragma is supported, use it (needed in the Trace code).
-   if test $cf_cv_pragma_unreferenced = yes ; then
-      PRAGMA_UNREF=TRUE
-   else
-      PRAGMA_UNREF=FALSE
-   fi
-
-   AC_ARG_WITH(ada-compiler,
-       [  --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)],
-       [cf_ada_compiler=$withval],
-       [cf_ada_compiler=gnatmake])
-
-   cf_ada_package=terminal_interface
-
-   AC_SUBST(cf_ada_make)
-   AC_SUBST(cf_ada_compiler)
-   AC_SUBST(cf_ada_package)
-   AC_SUBST(ADAFLAGS)
-   AC_SUBST(cf_compile_generics)
-   AC_SUBST(cf_generic_objects)
-   AC_SUBST(PRAGMA_UNREF)
-
-   CF_WITH_PATH(ada-include,
-       [  --with-ada-include=DIR  Ada includes are in DIR],
-       ADA_INCLUDE,
-       PREFIX/lib/ada/adainclude,
-       [$]prefix/lib/ada/adainclude)
-   AC_SUBST(ADA_INCLUDE)
-
-   CF_WITH_PATH(ada-objects,
-       [  --with-ada-objects=DIR  Ada objects are in DIR],
-       ADA_OBJECTS,
-       PREFIX/lib/ada/adalib,
-       [$]prefix/lib/ada/adalib)
-   AC_SUBST(ADA_OBJECTS)
+if test "$cf_with_ada" != "no" ; then
+       CF_PROG_GNAT
+       if test "$cf_cv_prog_gnat_correct" = yes; then
+               CF_FIXUP_ADAFLAGS
+
+               CF_GNAT_GENERICS
+               CF_GNAT_SIGINT
+               CF_GNAT_PRAGMA_UNREF
+               CF_GNAT_PROJECTS
+
+               CF_WITH_ADA_COMPILER
+
+               cf_ada_package=terminal_interface
+               AC_SUBST(cf_ada_package)
 
 
+               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
 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
 
 ### Construct the list of include-directories to be generated
 CF_INCLUDE_DIRS
@@ -624,22 +570,17 @@ AC_SUBST(cross_compiling)
 TEST_ARG2=
 AC_SUBST(TEST_ARG2)
 
 TEST_ARG2=
 AC_SUBST(TEST_ARG2)
 
+TEST_LIBS2=
+AC_SUBST(TEST_LIBS2)
+
 dnl for separate build, this is good enough for "sh $(top_srcdir)/misc/shlib"
 NCURSES_SHLIB2="sh -c"
 AC_SUBST(NCURSES_SHLIB2)
 
 dnl for separate build, this is good enough for "sh $(top_srcdir)/misc/shlib"
 NCURSES_SHLIB2="sh -c"
 AC_SUBST(NCURSES_SHLIB2)
 
-dnl ditto for "$(top_srcdir)/tar-copy.sh"
-for cf_path in . .. ../..
-do
-       if test -f $cf_path/tar-copy.sh
-       then
-               NCURSES_COPY2=`echo 'sh $(top_srcdir)/'$cf_path'/tar-copy.sh' | sed -e 's,/./,/,'`
-               break
-       fi
-done
-AC_SUBST(NCURSES_COPY2)
-
-ADA_SUBDIRS="include gen src samples"
+ADA_SUBDIRS="include gen src doc"
+if test "x$cf_with_tests" != "xno" ; then
+       ADA_SUBDIRS="$ADA_SUBDIRS samples"
+fi
 for cf_dir in $ADA_SUBDIRS
 do
        SUB_MAKEFILES="$SUB_MAKEFILES $cf_dir/Makefile"
 for cf_dir in $ADA_SUBDIRS
 do
        SUB_MAKEFILES="$SUB_MAKEFILES $cf_dir/Makefile"
@@ -652,21 +593,32 @@ AC_SUBST(NCURSES_TREE)
 EXTERNAL_TREE=
 AC_SUBST(EXTERNAL_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 \
 AC_OUTPUT( \
        $SUB_MAKEFILES \
-       Makefile,,[
+       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
+fi
+],[
 ### Special initialization commands, used to pass information from the
 ### configuration-run into config.status
 
 AWK="$AWK"
 DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
 DFT_LWR_MODEL="$DFT_LWR_MODEL"
 ### Special initialization commands, used to pass information from the
 ### configuration-run into config.status
 
 AWK="$AWK"
 DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
 DFT_LWR_MODEL="$DFT_LWR_MODEL"
-ECHO_LINK="$ECHO_LINK"
 LIB_NAME="$LIB_NAME"
 LIB_NAME="$LIB_NAME"
+LIB_PREFIX="$LIB_PREFIX"
 LIB_SUFFIX="$LIB_SUFFIX"
 LIB_SUFFIX="$LIB_SUFFIX"
+LN_S="$LN_S"
 NCURSES_MAJOR="$NCURSES_MAJOR"
 NCURSES_MINOR="$NCURSES_MINOR"
 NCURSES_PATCH="$NCURSES_PATCH"
 NCURSES_MAJOR="$NCURSES_MAJOR"
 NCURSES_MINOR="$NCURSES_MINOR"
 NCURSES_PATCH="$NCURSES_PATCH"
+USE_OLD_MAKERULES="$USE_OLD_MAKERULES"
 cf_cv_abi_version="$cf_cv_abi_version"
 cf_cv_rel_version="$cf_cv_rel_version"
 cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
 cf_cv_abi_version="$cf_cv_abi_version"
 cf_cv_rel_version="$cf_cv_rel_version"
 cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
@@ -678,4 +630,4 @@ host="$host"
 target="$target"
 
 ],cat)dnl
 target="$target"
 
 ],cat)dnl
-${MAKE-make} preinstall
+${MAKE:-make} preinstall