X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fconfigure;h=c248dca5fac51fb5ca317b501603b8d48c86b757;hb=df9ebc472a162306dee8ba6e02b99963c2babb7c;hp=a5d6e747e783cae5e5895b9478727f1ea29efc22;hpb=ae292b3afc0fce65c12014d2cc4621d7a0e661fd;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/configure b/gdb/configure index a5d6e747e7..c248dca5fa 100755 --- a/gdb/configure +++ b/gdb/configure @@ -626,7 +626,13 @@ LIBOBJS GCORE_TRANSFORM_NAME GDB_TRANSFORM_NAME XSLTPROC +NM_H GDB_NM_FILE +LTLIBXXHASH +LIBXXHASH +HAVE_LIBXXHASH +CTF_DEPS +LIBCTF LTLIBBABELTRACE LIBBABELTRACE HAVE_LIBBABELTRACE @@ -684,23 +690,31 @@ TCL_BIN_DIR TCL_PATCH_LEVEL TCL_VERSION WIN32LDAPP +WIN32LIBS GUI_CFLAGS_X LIBGUI LTLIBLZMA LIBLZMA HAVE_LIBLZMA -WIN32LIBS SER_HARDWIRE WERROR_CFLAGS WARN_CFLAGS +SYSTEM_GDBINIT_DIR SYSTEM_GDBINIT TARGET_SYSTEM_ROOT CONFIG_LDFLAGS RDYNAMIC -ALLOCA LTLIBIPT LIBIPT HAVE_LIBIPT +PTHREAD_CFLAGS +PTHREAD_LIBS +PTHREAD_CC +ax_pthread_config +SED +ALLOCA +SRCHIGH_CFLAGS +SRCHIGH_LIBS HAVE_GUILE_FALSE HAVE_GUILE_TRUE GUILE_LIBS @@ -717,6 +731,9 @@ python_prog_path LTLIBMPFR LIBMPFR HAVE_LIBMPFR +LTLIBGMP +LIBGMP +HAVE_LIBGMP LTLIBEXPAT LIBEXPAT HAVE_LIBEXPAT @@ -746,6 +763,11 @@ REPORT_BUGS_TEXI REPORT_BUGS_TO PKGVERSION CODESIGN_CERT +DEBUGINFOD_LIBS +DEBUGINFOD_CFLAGS +PKG_CONFIG_LIBDIR +PKG_CONFIG_PATH +PKG_CONFIG HAVE_NATIVE_GCORE_TARGET TARGET_OBS subdirs @@ -755,7 +777,6 @@ MAKEINFO_EXTRA_FLAGS MAKEINFOFLAGS MAKEINFO PACKAGE -GNULIB_STDINT_H CATOBJEXT GENCAT INSTOBJEXT @@ -773,9 +794,11 @@ DEPDIR am__leading_dot CXX_DIALECT HAVE_CXX11 +target_noncanonical INSTALL_STRIP_PROGRAM STRIP install_sh +LARGEFILE_CPPFLAGS target_os target_vendor target_cpu @@ -858,6 +881,7 @@ enable_64_bit_bfd enable_gdbmi enable_tui enable_gdbtk +with_debuginfod with_libunwind_ia64 with_curses enable_profiling @@ -868,33 +892,47 @@ with_system_zlib with_gnu_ld enable_rpath with_libiconv_prefix +with_libiconv_type with_iconv_bin with_system_readline with_jit_reader_dir with_expat with_libexpat_prefix +with_libexpat_type +with_libgmp_prefix +with_libgmp_type with_mpfr with_libmpfr_prefix +with_libmpfr_type with_python +with_python_libdir with_guile -enable_libmcheck +enable_source_highlight with_intel_pt with_libipt_prefix -with_included_regex +with_libipt_type with_sysroot with_system_gdbinit +with_system_gdbinit_dir enable_werror enable_build_warnings enable_gdb_build_warnings +enable_ubsan with_lzma with_liblzma_prefix +with_liblzma_type with_tcl with_tk with_x enable_sim -enable_gdbserver with_babeltrace with_libbabeltrace_prefix +with_libbabeltrace_type +with_xxhash +enable_libctf +with_libxxhash_prefix +with_libxxhash_type +enable_unit_tests ' ac_precious_vars='build_alias host_alias @@ -910,12 +948,16 @@ CCC CPP MAKEINFO MAKEINFOFLAGS +PKG_CONFIG +PKG_CONFIG_PATH +PKG_CONFIG_LIBDIR +DEBUGINFOD_CFLAGS +DEBUGINFOD_LIBS YACC YFLAGS XMKMF' ac_subdirs_all='testsuite -gdbtk -gdbserver' +gdbtk' # Initialize some variables set by options. ac_init_help= @@ -1550,15 +1592,18 @@ Optional Features: --enable-profiling enable profiling of GDB --enable-codesign=CERT sign gdb with 'codesign -s CERT' --disable-rpath do not hardcode runtime library paths - --enable-libmcheck Try linking with -lmcheck if available + --enable-source-highlight + enable source-highlight for source listings --enable-werror treat compile warnings as errors --enable-build-warnings enable build-time compiler warnings if gcc is used --enable-gdb-build-warnings enable GDB specific build-time compiler warnings if gcc is used + --enable-ubsan enable undefined behavior sanitizer (auto/yes/no) --enable-sim link gdb with simulator - --enable-gdbserver automatically build gdbserver (yes/no/auto, default - is auto) + --enable-libctf Handle .ctf type-info sections [default=yes] + --enable-unit-tests Enable the inclusion of unit tests when compiling + GDB Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -1578,6 +1623,8 @@ Optional Packages: [--with-auto-load-dir] --without-auto-load-safe-path do not restrict auto-loaded files locations + --with-debuginfod Enable debuginfo lookups with debuginfod + (auto/yes/no) --with-libunwind-ia64 use libunwind frame unwinding for ia64 targets --with-curses use the curses library instead of the termcap library @@ -1587,6 +1634,7 @@ Optional Packages: --with-gnu-ld assume the C compiler uses GNU ld default=no --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir + --with-libiconv-type=TYPE type of library to search for (auto/static/shared) --with-iconv-bin=PATH specify where to find the iconv program --with-system-readline use installed readline library --with-jit-reader-dir=PATH @@ -1594,32 +1642,45 @@ Optional Packages: --with-expat include expat support (auto/yes/no) --with-libexpat-prefix[=DIR] search for libexpat in DIR/include and DIR/lib --without-libexpat-prefix don't search for libexpat in includedir and libdir + --with-libexpat-type=TYPE type of library to search for (auto/static/shared) + --with-libgmp-prefix[=DIR] search for libgmp in DIR/include and DIR/lib + --without-libgmp-prefix don't search for libgmp in includedir and libdir + --with-libgmp-type=TYPE type of library to search for (auto/static/shared) --with-mpfr include MPFR support (auto/yes/no) --with-libmpfr-prefix[=DIR] search for libmpfr in DIR/include and DIR/lib --without-libmpfr-prefix don't search for libmpfr in includedir and libdir + --with-libmpfr-type=TYPE type of library to search for (auto/static/shared) --with-python[=PYTHON] include python support (auto/yes/no/) + --with-python-libdir[=DIR] + search for python's libraries in DIR --with-guile[=GUILE] include guile support (auto/yes/no//) --with-intel-pt include Intel Processor Trace support (auto/yes/no) --with-libipt-prefix[=DIR] search for libipt in DIR/include and DIR/lib --without-libipt-prefix don't search for libipt in includedir and libdir - --without-included-regex - don't use included regex; this is the default on - systems with version 2 of the GNU C library (use - with caution on other system) + --with-libipt-type=TYPE type of library to search for (auto/static/shared) --with-sysroot[=DIR] search for usr/lib et al within DIR --with-system-gdbinit=PATH automatically load a system-wide gdbinit file + --with-system-gdbinit-dir=PATH + automatically load system-wide gdbinit files from + this directory --with-lzma support lzma compression (auto/yes/no) --with-liblzma-prefix[=DIR] search for liblzma in DIR/include and DIR/lib --without-liblzma-prefix don't search for liblzma in includedir and libdir + --with-liblzma-type=TYPE type of library to search for (auto/static/shared) --with-tcl directory containing tcl configuration (tclConfig.sh) --with-tk directory containing tk configuration (tkConfig.sh) --with-x use the X Window System --with-babeltrace include babeltrace support (auto/yes/no) --with-libbabeltrace-prefix[=DIR] search for libbabeltrace in DIR/include and DIR/lib --without-libbabeltrace-prefix don't search for libbabeltrace in includedir and libdir + --with-libbabeltrace-type=TYPE type of library to search for (auto/static/shared) + --with-xxhash use libxxhash for hashing (faster) (auto/yes/no) + --with-libxxhash-prefix[=DIR] search for libxxhash in DIR/include and DIR/lib + --without-libxxhash-prefix don't search for libxxhash in includedir and libdir + --with-libxxhash-type=TYPE type of library to search for (auto/static/shared) Some influential environment variables: CC C compiler command @@ -1635,6 +1696,15 @@ Some influential environment variables: MAKEINFO Parent configure detects if it is of sufficient version. MAKEINFOFLAGS Parameters for MAKEINFO. + PKG_CONFIG path to pkg-config utility + PKG_CONFIG_PATH + directories to add to pkg-config's search path + PKG_CONFIG_LIBDIR + path overriding pkg-config's built-in search path + DEBUGINFOD_CFLAGS + C compiler flags for DEBUGINFOD, overriding pkg-config + DEBUGINFOD_LIBS + linker flags for DEBUGINFOD, overriding pkg-config YACC The `Yet Another Compiler Compiler' implementation to use. Defaults to the first program found out of: `bison -y', `byacc', `yacc'. @@ -2292,63 +2362,6 @@ $as_echo "$ac_res" >&6; } } # ac_fn_c_check_func -# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES -# ---------------------------------------------------- -# Tries to find if the field MEMBER exists in type AGGR, after including -# INCLUDES, setting cache variable VAR accordingly. -ac_fn_c_check_member () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 -$as_echo_n "checking for $2.$3... " >&6; } -if eval \${$4+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$5 -int -main () -{ -static $2 ac_aggr; -if (ac_aggr.$3) -return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$4=yes" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$5 -int -main () -{ -static $2 ac_aggr; -if (sizeof ac_aggr.$3) -return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$4=yes" -else - eval "$4=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$4 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_member - # ac_fn_c_check_type LINENO TYPE VAR INCLUDES # ------------------------------------------- # Tests whether TYPE exists after having included INCLUDES, setting cache @@ -2448,6 +2461,176 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_decl + +# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES +# ---------------------------------------------------- +# Tries to find if the field MEMBER exists in type AGGR, after including +# INCLUDES, setting cache variable VAR accordingly. +ac_fn_c_check_member () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 +$as_echo_n "checking for $2.$3... " >&6; } +if eval \${$4+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$5 +int +main () +{ +static $2 ac_aggr; +if (ac_aggr.$3) +return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$4=yes" +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$5 +int +main () +{ +static $2 ac_aggr; +if (sizeof ac_aggr.$3) +return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$4=yes" +else + eval "$4=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$4 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_member + +# ac_fn_cxx_try_link LINENO +# ------------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_link + +# ac_fn_cxx_check_func LINENO FUNC VAR +# ------------------------------------ +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_cxx_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_cxx_check_func cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. @@ -2806,6 +2989,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + + ac_config_headers="$ac_config_headers config.h:config.in" @@ -2832,9 +3017,6 @@ fi -# Set the 'development' global. -. $srcdir/../bfd/development.sh - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -4593,15 +4775,56 @@ fi case "${host}" in - sparc-*-solaris*|i[3-7]86-*-solaris*) - # On native 32bit sparc and ia32 solaris, large-file and procfs support - # are mutually exclusive; and without procfs support, the bfd/ elf module - # cannot provide certain routines such as elfcore_write_prpsinfo - # or elfcore_write_prstatus. So unless the user explicitly requested - # large-file support through the --enable-largefile switch, disable - # large-file support in favor of procfs support. - test "${target}" = "${host}" -a "x$plugins" = xno \ - && : ${enable_largefile="no"} + sparc-*-solaris*|i?86-*-solaris*) + # On native 32-bit Solaris/SPARC and x86, large-file and procfs support + # were mutually exclusive until Solaris 11.3. Without procfs support, + # the bfd/ elf module cannot provide certain routines such as + # elfcore_write_prpsinfo or elfcore_write_prstatus. So unless the user + # explicitly requested large-file support through the + # --enable-largefile switch, disable large-file support in favor of + # procfs support. + # + # Check if is incompatible with large-file support. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#define _FILE_OFFSET_BITS 64 +#define _STRUCTURED_PROC 1 +#include +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + acx_cv_procfs_lfs=yes +else + acx_cv_procfs_lfs=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + # + # Forcefully disable large-file support only if necessary, gdb is in + # tree and enabled. + if test "${target}" = "${host}" -a "$acx_cv_procfs_lfs" = no \ + -a -d $srcdir/../gdb -a "$enable_gdb" != no; then + : ${enable_largefile="no"} + if test "$plugins" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: +plugin support disabled; require large-file support which is incompatible with GDB." >&5 +$as_echo "$as_me: WARNING: +plugin support disabled; require large-file support which is incompatible with GDB." >&2;} + plugins=no + fi + fi + # + # Explicitly undef _FILE_OFFSET_BITS if enable_largefile=no for the + # benefit of g++ 9+ which predefines it on Solaris. + if test "$enable_largefile" = no; then + LARGEFILE_CPPFLAGS="-U_FILE_OFFSET_BITS" + + fi ;; esac @@ -4806,90 +5029,8 @@ rm -rf conftest* fi - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${CC-cc} option to accept ANSI C" >&5 -$as_echo_n "checking for ${CC-cc} option to accept ANSI C... " >&6; } -if ${am_cv_prog_cc_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - am_cv_prog_cc_stdc=no -ac_save_CC="$CC" -# 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 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; - -int -main () -{ - -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - am_cv_prog_cc_stdc="$ac_arg"; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -CC="$ac_save_CC" - -fi - -if test -z "$am_cv_prog_cc_stdc"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_stdc" >&5 -$as_echo "$am_cv_prog_cc_stdc" >&6; } -fi -case "x$am_cv_prog_cc_stdc" in - x|xno) ;; - *) CC="$CC $am_cv_prog_cc_stdc" ;; -esac - -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${install_sh+set}" != xset; then case $am_aux_dir in @@ -5031,6 +5172,33 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. +# Set build, build_cpu, build_vendor and build_os. + + +# Set host, host_cpu, host_vendor, and host_os. + + +# Set target, target_cpu, target_vendor, and target_os. + + + case ${build_alias} in + "") build_noncanonical=${build} ;; + *) build_noncanonical=${build_alias} ;; +esac + + case ${host_alias} in + "") host_noncanonical=${build_noncanonical} ;; + *) host_noncanonical=${host_alias} ;; +esac + + case ${target_alias} in + "") target_noncanonical=${host_noncanonical} ;; + *) target_noncanonical=${target_alias} ;; +esac + + + + test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. @@ -5673,6 +5841,10 @@ eval ac_res=\$$cachevar $as_echo "$ac_res" >&6; } if eval test x\$$cachevar = xyes; then CXX_DIALECT="$switch" + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -5992,6 +6164,10 @@ eval ac_res=\$$cachevar $as_echo "$ac_res" >&6; } if eval test x\$$cachevar = xyes; then CXX_DIALECT="$switch" + CXX="$CXX $switch" + if test -n "$CXXCPP" ; then + CXXCPP="$CXXCPP $switch" + fi ac_success=yes break fi @@ -6138,119 +6314,6 @@ else CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type fi -gnulib_extra_configure_args= -# If large-file support is disabled, make sure gnulib does the same. -if test "$enable_largefile" = no; then -gnulib_extra_configure_args="$gnulib_extra_configure_args --disable-largefile" -fi - -# Configure gnulib. We need to build gnulib under some other -# directory not "gnulib", to avoid the problem of both GDB and -# GDBserver wanting to build it in the same directory, when building -# in the source dir. - - in_src="gnulib" - in_build="build-gnulib" - in_extra_args="$gnulib_extra_configure_args" - - # Remove --cache-file, --srcdir, and --disable-option-checking arguments - # so they do not pile up. - ac_sub_configure_args= - ac_prev= - eval "set x $ac_configure_args" - shift - for ac_arg - do - if test -n "$ac_prev"; then - ac_prev= - continue - fi - case $ac_arg in - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \ - | --c=*) - ;; - --config-cache | -C) - ;; - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - ;; - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - ;; - --disable-option-checking) - ;; - *) - case $ac_arg in - *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append ac_sub_configure_args " '$ac_arg'" ;; - esac - done - - # Always prepend --prefix to ensure using the same prefix - # in subdir configurations. - ac_arg="--prefix=$prefix" - case $ac_arg in - *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - ac_sub_configure_args="'$ac_arg' $ac_sub_configure_args" - - # Pass --silent - if test "$silent" = yes; then - ac_sub_configure_args="--silent $ac_sub_configure_args" - fi - - # Always prepend --disable-option-checking to silence warnings, since - # different subdirs can have different --enable and --with options. - ac_sub_configure_args="--disable-option-checking $ac_sub_configure_args" - - ac_popdir=`pwd` - ac_dir=$in_build - - ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)" - $as_echo "$as_me:${as_lineno-$LINENO}: $ac_msg" >&5 - $as_echo "$ac_msg" >&6 - as_dir="$ac_dir"; as_fn_mkdir_p - - case $srcdir in - [\\/]* | ?:[\\/]* ) - ac_srcdir=$srcdir/$in_src ;; - *) # Relative name. - ac_srcdir=../$srcdir/$in_src ;; - esac - - cd "$ac_dir" - - ac_sub_configure=$ac_srcdir/configure - - # Make the cache file name correct relative to the subdirectory. - case $cache_file in - [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;; - *) # Relative name. - ac_sub_cache_file=$ac_top_build_prefix$cache_file ;; - esac - - if test -n "$in_extra_args"; then - # Add the extra args at the end. - ac_sub_configure_args="$ac_sub_configure_args $in_extra_args" - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 -$as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;} - # The eval makes quoting arguments work. - eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \ - --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" || - as_fn_error $? "$ac_sub_configure failed for $ac_dir" "$LINENO" 5 - - cd "$ac_popdir" - - CONFIG_OBS= CONFIG_DEPS= @@ -6343,15 +6406,6 @@ if test x"$USE_NLS" = xyes; then CONFIG_UNINSTALL="$CONFIG_UNINSTALL uninstall-po" fi -GNULIB=build-gnulib/import - -# For Makefile dependencies. -GNULIB_STDINT_H= -if test x"$STDINT_H" != x; then - GNULIB_STDINT_H=$GNULIB/$STDINT_H -fi - - PACKAGE=gdb cat >>confdefs.h <<_ACEOF @@ -6528,7 +6582,7 @@ else with_auto_load_dir='$debugdir:$datadir/auto-load' fi -escape_dir=`echo $with_auto_load_dir | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'` +escape_dir=`echo $with_auto_load_dir | sed -e 's/[$]datadir\>/\\\\\\\\\\\\&/g' -e 's/[$]debugdir\>/\\\\\\\\\\\\&/g'` test "x$prefix" = xNONE && prefix="$ac_default_prefix" test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' @@ -6555,7 +6609,7 @@ else with_auto_load_safe_path="$with_auto_load_dir" fi -escape_dir=`echo $with_auto_load_safe_path | sed 's/[$]\(datadir\|debugdir\)\>/\\\\\\\\\\\\&/g'` +escape_dir=`echo $with_auto_load_safe_path | sed -e 's/[$]datadir\>/\\\\\\\\\\\\&/g' -e 's/[$]debugdir\>/\\\\\\\\\\\\&/g'` test "x$prefix" = xNONE && prefix="$ac_default_prefix" test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' @@ -6611,10 +6665,6 @@ fi . $srcdir/configure.host -# Add in the common host objects. -. $srcdir/common/common.host -gdb_host_obs="$gdb_host_obs $common_host_obs" - # Accumulate some settings from configure.tgt over all enabled targets TARGET_OBS= @@ -6725,7 +6775,6 @@ fi # For other settings, only the main target counts. gdb_sim= gdb_osabi= -build_gdbserver= targ=$target; . ${srcdir}/configure.tgt # Fetch the default architecture and default target vector from BFD. @@ -6764,7 +6813,7 @@ else fi if test x"$enable_gdbmi" = xyes; then - if test -d $srcdir/mi; then + if test -d "$srcdir/mi"; then CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_MI_OBS)" CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_MI_DEPS)" CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_MI_SRCS)" @@ -6796,7 +6845,7 @@ if test "${enable_gdbtk+set}" = set; then : as_fn_error $? "bad value $enableval for --enable-gdbtk" "$LINENO" 5 ;; esac else - if test -d $srcdir/gdbtk; then + if test -d "$srcdir/gdbtk"; then enable_gdbtk=yes else enable_gdbtk=no @@ -6811,72 +6860,321 @@ $as_echo "$as_me: WARNING: gdbtk isn't supported on $host; disabling" >&2;} enable_gdbtk=no ;; esac -# Libunwind support for ia64. +# Handle optional debuginfod support -# Check whether --with-libunwind-ia64 was given. -if test "${with_libunwind_ia64+set}" = set; then : - withval=$with_libunwind_ia64; -else - with_libunwind_ia64=auto -fi -# Backward compatibility option. -if test "${with_libunwind+set}" = set; then - if test x"$with_libunwind_ia64" != xauto; then - as_fn_error $? "option --with-libunwind is deprecated, use --with-libunwind-ia64" "$LINENO" 5 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&5 -$as_echo "$as_me: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&2;} - with_libunwind_ia64="$with_libunwind" -fi -case "$with_libunwind_ia64" in - yes | no) - ;; - auto) - for ac_header in libunwind-ia64.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default" -if test "x$ac_cv_header_libunwind_ia64_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBUNWIND_IA64_H 1 -_ACEOF -fi +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi done + done +IFS=$as_save_IFS - with_libunwind_ia64=$ac_cv_header_libunwind_ia64_h - ;; - *) - as_fn_error $? "bad value $with_libunwind_ia64 for GDB --with-libunwind-ia64 option" "$LINENO" 5 - ;; + ;; esac +fi +PKG_CONFIG=$ac_cv_path_PKG_CONFIG +if test -n "$PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +$as_echo "$PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi -if test x"$with_libunwind_ia64" = xyes; then - for ac_header in libunwind-ia64.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default" -if test "x$ac_cv_header_libunwind_ia64_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBUNWIND_IA64_H 1 -_ACEOF fi - +if test -z "$ac_cv_path_PKG_CONFIG"; then + ac_pt_PKG_CONFIG=$PKG_CONFIG + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ac_pt_PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi done + done +IFS=$as_save_IFS - if test x"$ac_cv_header_libunwind_ia64_h" != xyes; then - as_fn_error $? "GDB option --with-libunwind-ia64 requires libunwind-ia64.h" "$LINENO" 5 - fi - CONFIG_OBS="$CONFIG_OBS ia64-libunwind-tdep.o" - CONFIG_DEPS="$CONFIG_DEPS ia64-libunwind-tdep.o" - CONFIG_SRCS="$CONFIG_SRCS ia64-libunwind-tdep.c" + ;; +esac +fi +ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +if test -n "$ac_pt_PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 +$as_echo "$ac_pt_PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -opt_curses=no + if test "x$ac_pt_PKG_CONFIG" = x; then + PKG_CONFIG="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + PKG_CONFIG=$ac_pt_PKG_CONFIG + fi +else + PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +fi + +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=0.9.0 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 +$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + PKG_CONFIG="" + fi +fi + +# Handle optional debuginfod support + +# Check whether --with-debuginfod was given. +if test "${with_debuginfod+set}" = set; then : + withval=$with_debuginfod; +else + with_debuginfod=auto +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use debuginfod" >&5 +$as_echo_n "checking whether to use debuginfod... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_debuginfod" >&5 +$as_echo "$with_debuginfod" >&6; } + +if test "x$with_debuginfod" != xno; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libdebuginfod >= 0.179" >&5 +$as_echo_n "checking for libdebuginfod >= 0.179... " >&6; } + +if test -n "$DEBUGINFOD_CFLAGS"; then + pkg_cv_DEBUGINFOD_CFLAGS="$DEBUGINFOD_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdebuginfod >= 0.179\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libdebuginfod >= 0.179") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_DEBUGINFOD_CFLAGS=`$PKG_CONFIG --cflags "libdebuginfod >= 0.179" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$DEBUGINFOD_LIBS"; then + pkg_cv_DEBUGINFOD_LIBS="$DEBUGINFOD_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdebuginfod >= 0.179\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libdebuginfod >= 0.179") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_DEBUGINFOD_LIBS=`$PKG_CONFIG --libs "libdebuginfod >= 0.179" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + +if test $pkg_failed = no; then + pkg_save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $pkg_cv_DEBUGINFOD_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +else + pkg_failed=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$pkg_save_LDFLAGS +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + DEBUGINFOD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdebuginfod >= 0.179" 2>&1` + else + DEBUGINFOD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdebuginfod >= 0.179" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$DEBUGINFOD_PKG_ERRORS" >&5 + + if test "x$with_debuginfod" = xyes; then + as_fn_error $? "\"--with-debuginfod was given, but libdebuginfod is missing or unusable.\"" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libdebuginfod is missing or unusable; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: libdebuginfod is missing or unusable; some features may be unavailable." >&2;} + fi +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + if test "x$with_debuginfod" = xyes; then + as_fn_error $? "\"--with-debuginfod was given, but libdebuginfod is missing or unusable.\"" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libdebuginfod is missing or unusable; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: libdebuginfod is missing or unusable; some features may be unavailable." >&2;} + fi +else + DEBUGINFOD_CFLAGS=$pkg_cv_DEBUGINFOD_CFLAGS + DEBUGINFOD_LIBS=$pkg_cv_DEBUGINFOD_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +$as_echo "#define HAVE_LIBDEBUGINFOD 1" >>confdefs.h + +fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: debuginfod support disabled; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: debuginfod support disabled; some features may be unavailable." >&2;} +fi + + +# Libunwind support for ia64. + +# Check whether --with-libunwind-ia64 was given. +if test "${with_libunwind_ia64+set}" = set; then : + withval=$with_libunwind_ia64; +else + with_libunwind_ia64=auto +fi + + +# Backward compatibility option. +if test "${with_libunwind+set}" = set; then + if test x"$with_libunwind_ia64" != xauto; then + as_fn_error $? "option --with-libunwind is deprecated, use --with-libunwind-ia64" "$LINENO" 5 + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&5 +$as_echo "$as_me: WARNING: option --with-libunwind is deprecated, use --with-libunwind-ia64" >&2;} + with_libunwind_ia64="$with_libunwind" +fi + +case "$with_libunwind_ia64" in + yes | no) + ;; + auto) + for ac_header in libunwind-ia64.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default" +if test "x$ac_cv_header_libunwind_ia64_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBUNWIND_IA64_H 1 +_ACEOF + +fi + +done + + with_libunwind_ia64=$ac_cv_header_libunwind_ia64_h + ;; + *) + as_fn_error $? "bad value $with_libunwind_ia64 for GDB --with-libunwind-ia64 option" "$LINENO" 5 + ;; +esac + +if test x"$with_libunwind_ia64" = xyes; then + for ac_header in libunwind-ia64.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "libunwind-ia64.h" "ac_cv_header_libunwind_ia64_h" "$ac_includes_default" +if test "x$ac_cv_header_libunwind_ia64_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBUNWIND_IA64_H 1 +_ACEOF + +fi + +done + + if test x"$ac_cv_header_libunwind_ia64_h" != xyes; then + as_fn_error $? "GDB option --with-libunwind-ia64 requires libunwind-ia64.h" "$LINENO" 5 + fi + CONFIG_OBS="$CONFIG_OBS ia64-libunwind-tdep.o" + CONFIG_DEPS="$CONFIG_DEPS ia64-libunwind-tdep.o" + CONFIG_SRCS="$CONFIG_SRCS ia64-libunwind-tdep.c" +fi + +opt_curses=no # Check whether --with-curses was given. if test "${with_curses+set}" = set; then : @@ -6923,12 +7221,12 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -extern char _etext; - + extern char _etext; int main () { free (&_etext); + ; return 0; } @@ -6937,13 +7235,15 @@ if ac_fn_c_try_link "$LINENO"; then : ac_cv_var__etext=yes else ac_cv_var__etext=no + fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var__etext" >&5 $as_echo "$ac_cv_var__etext" >&6; } -if test $ac_cv_var__etext = yes; then +if test "$ac_cv_var__etext" = yes; then $as_echo "#define HAVE__ETEXT 1" >>confdefs.h @@ -6956,12 +7256,12 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -extern char etext; - + extern char etext; int main () { free (&etext); + ; return 0; } @@ -6970,19 +7270,21 @@ if ac_fn_c_try_link "$LINENO"; then : ac_cv_var_etext=yes else ac_cv_var_etext=no + fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_etext" >&5 $as_echo "$ac_cv_var_etext" >&6; } -if test $ac_cv_var_etext = yes; then +if test "$ac_cv_var_etext" = yes; then $as_echo "#define HAVE_ETEXT 1" >>confdefs.h fi if test "$enable_profiling" = yes ; then - if test $ac_cv_func_monstartup = no || test $ac_cv_func__mcleanup = no; then + if test "$ac_cv_func_monstartup" = no || test "$ac_cv_func__mcleanup" = no; then as_fn_error $? "--enable-profiling requires monstartup and _mcleanup" "$LINENO" 5 fi PROFILE_CFLAGS=-pg @@ -7009,13 +7311,15 @@ if ac_fn_c_try_compile "$LINENO"; then : ac_cv_cc_supports_pg=yes else ac_cv_cc_supports_pg=no + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_supports_pg" >&5 $as_echo "$ac_cv_cc_supports_pg" >&6; } - if test $ac_cv_cc_supports_pg = no; then + if test "$ac_cv_cc_supports_pg" = no; then as_fn_error $? "--enable-profiling requires a compiler which supports -pg" "$LINENO" 5 fi @@ -7058,7 +7362,7 @@ if test "${with_bugurl+set}" = set; then : ;; esac else - BUGURL="http://www.gnu.org/software/gdb/bugs/" + BUGURL="https://www.gnu.org/software/gdb/bugs/" fi @@ -7930,127 +8234,6 @@ fi -# On FreeBSD we may need libutil for kinfo_getvmmap (used by fbsd-nat.c). -# On GNU/kFreeBSD systems, FreeBSD libutil is renamed to libutil-freebsd. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing kinfo_getvmmap" >&5 -$as_echo_n "checking for library containing kinfo_getvmmap... " >&6; } -if ${ac_cv_search_kinfo_getvmmap+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char kinfo_getvmmap (); -int -main () -{ -return kinfo_getvmmap (); - ; - return 0; -} -_ACEOF -for ac_lib in '' util util-freebsd; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_kinfo_getvmmap=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_kinfo_getvmmap+:} false; then : - break -fi -done -if ${ac_cv_search_kinfo_getvmmap+:} false; then : - -else - ac_cv_search_kinfo_getvmmap=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_kinfo_getvmmap" >&5 -$as_echo "$ac_cv_search_kinfo_getvmmap" >&6; } -ac_res=$ac_cv_search_kinfo_getvmmap -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -$as_echo "#define HAVE_KINFO_GETVMMAP 1" >>confdefs.h - -fi - - -# fbsd-nat.c can also use kinfo_getfile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing kinfo_getfile" >&5 -$as_echo_n "checking for library containing kinfo_getfile... " >&6; } -if ${ac_cv_search_kinfo_getfile+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char kinfo_getfile (); -int -main () -{ -return kinfo_getfile (); - ; - return 0; -} -_ACEOF -for ac_lib in '' util util-freebsd; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_kinfo_getfile=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_kinfo_getfile+:} false; then : - break -fi -done -if ${ac_cv_search_kinfo_getfile+:} false; then : - -else - ac_cv_search_kinfo_getfile=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_kinfo_getfile" >&5 -$as_echo "$ac_cv_search_kinfo_getfile" >&6; } -ac_res=$ac_cv_search_kinfo_getfile -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -$as_echo "#define HAVE_KINFO_GETFILE 1" >>confdefs.h - -fi - - if test "X$prefix" = "XNONE"; then acl_final_prefix="$ac_default_prefix" @@ -8256,6 +8439,16 @@ if test "${with_libiconv_prefix+set}" = set; then : fi + +# Check whether --with-libiconv-type was given. +if test "${with_libiconv_type+set}" = set; then : + withval=$with_libiconv_type; with_libiconv_type=$withval +else + with_libiconv_type=auto +fi + + lib_type=`eval echo \$with_libiconv_type` + LIBICONV= LTLIBICONV= INCICONV= @@ -8293,13 +8486,13 @@ fi found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" @@ -8323,13 +8516,13 @@ fi case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" @@ -8557,8 +8750,13 @@ fi done fi else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-l:lib$name.$libext" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l:lib$name.$libext" + fi fi fi fi @@ -8668,7 +8866,7 @@ rm -f core conftest.err conftest.$ac_objext \ if test "$am_cv_func_iconv" != yes; then am_save_CPPFLAGS="$CPPFLAGS" am_save_LIBS="$LIBS" - CPPFLAGS="$LIBS $INCICONV" + CPPFLAGS="$CPPFLAGS $INCICONV" LIBS="$LIBS $LIBICONV" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8919,7 +9117,7 @@ fi # Check whether we should enable the TUI, but only do so if we really # can. if test x"$enable_tui" != xno; then - if test -d $srcdir/tui; then + if test -d "$srcdir/tui"; then if test "$curses_found" != no; then CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)" CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)" @@ -8942,7 +9140,7 @@ fi case $host_os in cygwin*) - if test -d $srcdir/libtermcap; then + if test -d "$srcdir/libtermcap"; then LIBS="../libtermcap/libtermcap.a $LIBS" ac_cv_search_tgetent="../libtermcap/libtermcap.a" fi ;; @@ -8976,7 +9174,7 @@ return tgetent (); return 0; } _ACEOF -for ac_lib in '' termcap tinfo curses ncursesw ncurses; do +for ac_lib in '' termcap tinfow tinfo curses ncursesw ncurses; do if test -z "$ac_lib"; then ac_res="none required" else @@ -9021,6 +9219,41 @@ fi if test "$with_system_readline" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system readline is new enough" >&5 +$as_echo_n "checking whether system readline is new enough... " >&6; } +if ${gdb_cv_readline_ok+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main () +{ +#if RL_VERSION_MAJOR < 7 + # error "readline version 7 required" + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gdb_cv_readline_ok=yes +else + gdb_cv_readline_ok=no + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_readline_ok" >&5 +$as_echo "$gdb_cv_readline_ok" >&6; } + if test "$gdb_cv_readline_ok" != yes; then + as_fn_error $? "system readline is not new enough" "$LINENO" 5 + fi + READLINE=-lreadline READLINE_DEPS= READLINE_CFLAGS= @@ -9326,6 +9559,16 @@ if test "${with_libexpat_prefix+set}" = set; then : fi + +# Check whether --with-libexpat-type was given. +if test "${with_libexpat_type+set}" = set; then : + withval=$with_libexpat_type; with_libexpat_type=$withval +else + with_libexpat_type=auto +fi + + lib_type=`eval echo \$with_libexpat_type` + LIBEXPAT= LTLIBEXPAT= INCEXPAT= @@ -9363,13 +9606,13 @@ fi found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" @@ -9393,13 +9636,13 @@ fi case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" @@ -9627,8 +9870,13 @@ fi done fi else - LIBEXPAT="${LIBEXPAT}${LIBEXPAT:+ }-l$name" - LTLIBEXPAT="${LTLIBEXPAT}${LTLIBEXPAT:+ }-l$name" + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBEXPAT="${LIBEXPAT}${LIBEXPAT:+ }-l$name" + LTLIBEXPAT="${LTLIBEXPAT}${LTLIBEXPAT:+ }-l$name" + else + LIBEXPAT="${LIBEXPAT}${LIBEXPAT:+ }-l:lib$name.$libext" + LTLIBEXPAT="${LTLIBEXPAT}${LTLIBEXPAT:+ }-l:lib$name.$libext" + fi fi fi fi @@ -9764,24 +10012,7 @@ done fi fi - -# Check whether --with-mpfr was given. -if test "${with_mpfr+set}" = set; then : - withval=$with_mpfr; -else - with_mpfr=auto -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use MPFR" >&5 -$as_echo_n "checking whether to use MPFR... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_mpfr" >&5 -$as_echo "$with_mpfr" >&6; } - -if test "${with_mpfr}" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MPFR support disabled; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: MPFR support disabled; some features may be unavailable." >&2;} - HAVE_LIBMPFR=no -else +# Verify that we have a usable GMP library. @@ -9804,9 +10035,9 @@ else prefix="$acl_save_prefix" -# Check whether --with-libmpfr-prefix was given. -if test "${with_libmpfr_prefix+set}" = set; then : - withval=$with_libmpfr_prefix; +# Check whether --with-libgmp-prefix was given. +if test "${with_libgmp_prefix+set}" = set; then : + withval=$with_libgmp_prefix; if test "X$withval" = "Xno"; then use_additional=no else @@ -9831,13 +10062,23 @@ if test "${with_libmpfr_prefix+set}" = set; then : fi - LIBMPFR= - LTLIBMPFR= - INCMPFR= + +# Check whether --with-libgmp-type was given. +if test "${with_libgmp_type+set}" = set; then : + withval=$with_libgmp_type; with_libgmp_type=$withval +else + with_libgmp_type=auto +fi + + lib_type=`eval echo \$with_libgmp_type` + + LIBGMP= + LTLIBGMP= + INCGMP= rpathdirs= ltrpathdirs= names_already_handled= - names_next_round='mpfr gmp' + names_next_round='gmp ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= @@ -9856,9 +10097,9 @@ fi if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" - test -z "$value" || LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$value" + test -z "$value" || LIBGMP="${LIBGMP}${LIBGMP:+ }$value" eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }$value" + test -z "$value" || LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }$value" else : fi @@ -9868,13 +10109,13 @@ fi found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" @@ -9885,7 +10126,7 @@ fi fi fi if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBMPFR; do + for x in $LDFLAGS $LTLIBGMP; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9898,13 +10139,13 @@ fi case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" @@ -9921,10 +10162,10 @@ fi done fi if test "X$found_dir" != "X"; then - LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-L$found_dir -l$name" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + LIBGMP="${LIBGMP}${LIBGMP:+ }$found_so" else haveit= for x in $ltrpathdirs; do @@ -9937,10 +10178,10 @@ fi ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$hardcode_direct" = yes; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + LIBGMP="${LIBGMP}${LIBGMP:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + LIBGMP="${LIBGMP}${LIBGMP:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then @@ -9953,7 +10194,7 @@ fi fi else haveit= - for x in $LDFLAGS $LIBMPFR; do + for x in $LDFLAGS $LIBGMP; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -9969,21 +10210,21 @@ fi fi done if test -z "$haveit"; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$found_dir" + LIBGMP="${LIBGMP}${LIBGMP:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + LIBGMP="${LIBGMP}${LIBGMP:+ }$found_so" else - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-l$name" + LIBGMP="${LIBGMP}${LIBGMP:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_a" + LIBGMP="${LIBGMP}${LIBGMP:+ }$found_a" else - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$found_dir -l$name" + LIBGMP="${LIBGMP}${LIBGMP:+ }-L$found_dir -l$name" fi fi additional_includedir= @@ -10004,7 +10245,7 @@ fi fi fi if test -z "$haveit"; then - for x in $CPPFLAGS $INCMPFR; do + for x in $CPPFLAGS $INCGMP; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -10021,7 +10262,7 @@ fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then - INCMPFR="${INCMPFR}${INCMPFR:+ }-I$additional_includedir" + INCGMP="${INCGMP}${INCGMP:+ }-I$additional_includedir" fi fi fi @@ -10049,7 +10290,7 @@ fi fi if test -z "$haveit"; then haveit= - for x in $LDFLAGS $LIBMPFR; do + for x in $LDFLAGS $LIBGMP; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -10066,11 +10307,11 @@ fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$additional_libdir" + LIBGMP="${LIBGMP}${LIBGMP:+ }-L$additional_libdir" fi fi haveit= - for x in $LDFLAGS $LTLIBMPFR; do + for x in $LDFLAGS $LTLIBGMP; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -10087,7 +10328,7 @@ fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-L$additional_libdir" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }-L$additional_libdir" fi fi fi @@ -10125,15 +10366,20 @@ fi names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$dep" - LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }$dep" + LIBGMP="${LIBGMP}${LIBGMP:+ }$dep" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }$dep" ;; esac done fi else - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-l$name" - LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-l$name" + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBGMP="${LIBGMP}${LIBGMP:+ }-l$name" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }-l$name" + else + LIBGMP="${LIBGMP}${LIBGMP:+ }-l:lib$name.$libext" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }-l:lib$name.$libext" + fi fi fi fi @@ -10149,27 +10395,27 @@ fi libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$flag" + LIBGMP="${LIBGMP}${LIBGMP:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$flag" + LIBGMP="${LIBGMP}${LIBGMP:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do - LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-R$found_dir" + LTLIBGMP="${LTLIBGMP}${LTLIBGMP:+ }-R$found_dir" done fi ac_save_CPPFLAGS="$CPPFLAGS" - for element in $INCMPFR; do + for element in $INCGMP; do haveit= for x in $CPPFLAGS; do @@ -10192,52 +10438,52 @@ fi done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libmpfr" >&5 -$as_echo_n "checking for libmpfr... " >&6; } -if ${ac_cv_libmpfr+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libgmp" >&5 +$as_echo_n "checking for libgmp... " >&6; } +if ${ac_cv_libgmp+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_LIBS="$LIBS" - LIBS="$LIBS $LIBMPFR" + LIBS="$LIBS $LIBGMP" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include int main () { -mpfr_exp_t exp; mpfr_t x; - mpfr_frexp (&exp, x, x, MPFR_RNDN); +mpz_t n; + mpz_init (n); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_libmpfr=yes + ac_cv_libgmp=yes else - ac_cv_libmpfr=no + ac_cv_libgmp=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$ac_save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libmpfr" >&5 -$as_echo "$ac_cv_libmpfr" >&6; } - if test "$ac_cv_libmpfr" = yes; then - HAVE_LIBMPFR=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libgmp" >&5 +$as_echo "$ac_cv_libgmp" >&6; } + if test "$ac_cv_libgmp" = yes; then + HAVE_LIBGMP=yes -$as_echo "#define HAVE_LIBMPFR 1" >>confdefs.h +$as_echo "#define HAVE_LIBGMP 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libmpfr" >&5 -$as_echo_n "checking how to link with libmpfr... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBMPFR" >&5 -$as_echo "$LIBMPFR" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libgmp" >&5 +$as_echo_n "checking how to link with libgmp... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBGMP" >&5 +$as_echo "$LIBGMP" >&6; } else - HAVE_LIBMPFR=no + HAVE_LIBGMP=no CPPFLAGS="$ac_save_CPPFLAGS" - LIBMPFR= - LTLIBMPFR= + LIBGMP= + LTLIBGMP= fi @@ -10245,658 +10491,591 @@ $as_echo "$LIBMPFR" >&6; } - if test "$HAVE_LIBMPFR" != yes; then - if test "$with_mpfr" = yes; then - as_fn_error $? "MPFR is missing or unusable" "$LINENO" 5 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MPFR is missing or unusable; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: MPFR is missing or unusable; some features may be unavailable." >&2;} - fi - fi +if test "$HAVE_LIBGMP" != yes; then + as_fn_error $? "GMP is missing or unusable" "$LINENO" 5 fi -# --------------------- # -# Check for libpython. # -# --------------------- # +# Check whether --with-mpfr was given. +if test "${with_mpfr+set}" = set; then : + withval=$with_mpfr; +else + with_mpfr=auto +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use MPFR" >&5 +$as_echo_n "checking whether to use MPFR... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_mpfr" >&5 +$as_echo "$with_mpfr" >&6; } +if test "${with_mpfr}" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MPFR support disabled; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: MPFR support disabled; some features may be unavailable." >&2;} + HAVE_LIBMPFR=no +else -# Check whether --with-python was given. -if test "${with_python+set}" = set; then : - withval=$with_python; -else - with_python=auto -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use python" >&5 -$as_echo_n "checking whether to use python... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_python" >&5 -$as_echo "$with_python" >&6; } -if test "${with_python}" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: python support disabled; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: python support disabled; some features may be unavailable." >&2;} - have_libpython=no -else - case "${with_python}" in - [\\/]* | ?:[\\/]*) - if test -d ${with_python}; then - # Assume the python binary is ${with_python}/bin/python. - python_prog="${with_python}/bin/python" - python_prefix= - # If python does not exit ${with_python}/bin, then try in - # ${with_python}. On Windows/MinGW, this is where the Python - # executable is. - if test ! -x "${python_prog}"; then - python_prog="${with_python}/python" - python_prefix= - fi - if test ! -x "${python_prog}"; then - # Fall back to gdb 7.0/7.1 behaviour. - python_prog=missing - python_prefix=${with_python} - fi - elif test -x "${with_python}"; then - # While we can't run python compiled for $host (unless host == build), - # the user could write a script that provides the needed information, - # so we support that. - python_prog=${with_python} - python_prefix= - else - as_fn_error $? "invalid value for --with-python" "$LINENO" 5 - fi - ;; - */*) - # Disallow --with-python=foo/bar. - as_fn_error $? "invalid value for --with-python" "$LINENO" 5 - ;; - *) - # The user has either specified auto, yes, or the name of the python - # program assumed to be in $PATH. - python_prefix= - case "${with_python}" in - yes | auto) - if test ${build} = ${host}; then - # Extract the first word of "python", so it can be a program name with args. -set dummy python; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_python_prog_path+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $python_prog_path in - [\\/]* | ?:[\\/]*) - ac_cv_path_python_prog_path="$python_prog_path" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_python_prog_path="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - test -z "$ac_cv_path_python_prog_path" && ac_cv_path_python_prog_path="missing" - ;; -esac -fi -python_prog_path=$ac_cv_path_python_prog_path -if test -n "$python_prog_path"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $python_prog_path" >&5 -$as_echo "$python_prog_path" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - if test "${python_prog_path}" = missing; then - python_prog=missing - else - python_prog=${python_prog_path} - fi - else - # Not much we can do except assume the cross-compiler will find the - # right files. - python_prog=missing - fi - ;; - *) - # While we can't run python compiled for $host (unless host == build), - # the user could write a script that provides the needed information, - # so we support that. - python_prog="${with_python}" - # Extract the first word of "${python_prog}", so it can be a program name with args. -set dummy ${python_prog}; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_python_prog_path+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $python_prog_path in - [\\/]* | ?:[\\/]*) - ac_cv_path_python_prog_path="$python_prog_path" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_python_prog_path="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_python_prog_path" && ac_cv_path_python_prog_path="missing" - ;; -esac -fi -python_prog_path=$ac_cv_path_python_prog_path -if test -n "$python_prog_path"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $python_prog_path" >&5 -$as_echo "$python_prog_path" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - + use_additional=yes - if test "${python_prog_path}" = missing; then - as_fn_error $? "unable to find python program ${python_prog}" "$LINENO" 5 - fi - ;; - esac - esac + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" - if test "${python_prog}" != missing; then - # We have a python program to use, but it may be too old. - # Don't flag an error for --with-python=auto (the default). - have_python_config=yes - python_includes=`${python_prog} ${srcdir}/python/python-config.py --includes` - if test $? != 0; then - have_python_config=failed - if test "${with_python}" != auto; then - as_fn_error $? "failure running python-config --includes" "$LINENO" 5 - fi - fi - python_libs=`${python_prog} ${srcdir}/python/python-config.py --ldflags` - if test $? != 0; then - have_python_config=failed - if test "${with_python}" != auto; then - as_fn_error $? "failure running python-config --ldflags" "$LINENO" 5 - fi - fi - python_prefix=`${python_prog} ${srcdir}/python/python-config.py --exec-prefix` - if test $? != 0; then - have_python_config=failed - if test "${with_python}" != auto; then - as_fn_error $? "failure running python-config --exec-prefix" "$LINENO" 5 - fi - fi - else - # We do not have a python executable we can use to determine where - # to find the Python headers and libs. We cannot guess the include - # path from the python_prefix either, because that include path - # depends on the Python version. So, there is nothing much we can - # do except assume that the compiler will be able to find those files. - python_includes= - python_libs= - have_python_config=no - fi + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" - # If we have python-config, only try the configuration it provides. - # Otherwise fallback on the old way of trying different versions of - # python in turn. + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - have_libpython=no - if test "${have_python_config}" = yes; then - # Determine the Python version by extracting "-lpython" - # part of the python_libs. is usually X.Y with X and Y - # being decimal numbers, but can also be XY (seen on Windows). - # - # The extraction is performed using sed with a regular expression. - # Initially, the regexp used was using the '?' quantifier to make - # the dot in the version number optional. Unfortunately, this - # does not work with non-GNU versions of sed because, because of - # what looks like a limitation (the '?' quantifier does not work - # with back-references). We work around this limitation by using - # the '*' quantifier instead. It means that, in theory, we might - # match unexpected version strings such as "-lpython2..7", but - # this seems unlikely in practice. And even if that happens, - # an error will be triggered later on, when checking that version - # number. - python_version=`echo " ${python_libs} " \ - | sed -e 's,^.* -l\(python[0-9]*[.]*[0-9]*\).*$,\1,'` - case "${python_version}" in - python*) - - version=${python_version} - new_CPPFLAGS=${python_includes} - new_LIBS=${python_libs} - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${version}" >&5 -$as_echo_n "checking for ${version}... " >&6; } - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$new_LIBS $LIBS" - found_usable_python=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "Python.h" -int -main () -{ -Py_Initialize (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libpython=${version} - found_usable_python=yes - PYTHON_CPPFLAGS=$new_CPPFLAGS - PYTHON_LIBS=$new_LIBS -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 -$as_echo "${found_usable_python}" >&6; } +# Check whether --with-libmpfr-prefix was given. +if test "${with_libmpfr_prefix+set}" = set; then : + withval=$with_libmpfr_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then - ;; - *) - as_fn_error $? "unable to determine python version from ${python_libs}" "$LINENO" 5 - ;; - esac - elif test "${have_python_config}" != failed; then - if test "${have_libpython}" = no; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" - version=python2.7 + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" - new_CPPFLAGS=${python_includes} - new_LIBS="-lpython2.7 ${python_libs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${version}" >&5 -$as_echo_n "checking for ${version}... " >&6; } - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$new_LIBS $LIBS" - found_usable_python=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "Python.h" -int -main () -{ -Py_Initialize (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libpython=${version} - found_usable_python=yes - PYTHON_CPPFLAGS=$new_CPPFLAGS - PYTHON_LIBS=$new_LIBS -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 -$as_echo "${found_usable_python}" >&6; } + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi fi - if test "${have_libpython}" = no; then - version=python2.6 - - new_CPPFLAGS=${python_includes} - new_LIBS="-lpython2.6 ${python_libs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${version}" >&5 -$as_echo_n "checking for ${version}... " >&6; } - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$new_LIBS $LIBS" - found_usable_python=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "Python.h" -int -main () -{ -Py_Initialize (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libpython=${version} - found_usable_python=yes - PYTHON_CPPFLAGS=$new_CPPFLAGS - PYTHON_LIBS=$new_LIBS fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 -$as_echo "${found_usable_python}" >&6; } - - fi - if test ${have_libpython} = no; then - version=python2.5 - new_CPPFLAGS=${python_includes} - new_LIBS="-lpython2.5 ${python_libs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${version}" >&5 -$as_echo_n "checking for ${version}... " >&6; } - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$new_LIBS $LIBS" - found_usable_python=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "Python.h" -int -main () -{ -Py_Initialize (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libpython=${version} - found_usable_python=yes - PYTHON_CPPFLAGS=$new_CPPFLAGS - PYTHON_LIBS=$new_LIBS +# Check whether --with-libmpfr-type was given. +if test "${with_libmpfr_type+set}" = set; then : + withval=$with_libmpfr_type; with_libmpfr_type=$withval +else + with_libmpfr_type=auto fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 -$as_echo "${found_usable_python}" >&6; } - - fi - if test ${have_libpython} = no; then - version=python2.4 + lib_type=`eval echo \$with_libmpfr_type` - new_CPPFLAGS=${python_includes} - new_LIBS="-lpython2.4 ${python_libs}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${version}" >&5 -$as_echo_n "checking for ${version}... " >&6; } - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$new_LIBS $LIBS" - found_usable_python=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "Python.h" -int -main () -{ -Py_Initialize (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libpython=${version} - found_usable_python=yes - PYTHON_CPPFLAGS=$new_CPPFLAGS - PYTHON_LIBS=$new_LIBS -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 -$as_echo "${found_usable_python}" >&6; } + LIBMPFR= + LTLIBMPFR= + INCMPFR= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='mpfr gmp' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBMPFR; do - fi - fi - if test "${have_libpython}" = python2.7 -o "${have_libpython}" = python27; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_LIBPYTHON2_7 1" >>confdefs.h + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBMPFR; do - elif test "${have_libpython}" = python2.6 -o "${have_libpython}" = python26; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_LIBPYTHON2_6 1" >>confdefs.h + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_so" + else + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$found_a" + else + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCMPFR; do - elif test "${have_libpython}" = python2.5 -o "${have_libpython}" = python25; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_LIBPYTHON2_5 1" >>confdefs.h + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCMPFR="${INCMPFR}${INCMPFR:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBMPFR; do - elif test "${have_libpython}" = python2.4 -o "${have_libpython}" = python24; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_LIBPYTHON2_4 1" >>confdefs.h + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBMPFR; do - fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - if test "${have_libpython}" = no; then - case "${with_python}" in - yes) - as_fn_error $? "python is missing or unusable" "$LINENO" 5 - ;; - auto) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: python is missing or unusable; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: python is missing or unusable; some features may be unavailable." >&2;} - ;; - *) - as_fn_error $? "no usable python found at ${with_python}" "$LINENO" 5 - ;; - esac - else - if test -n "${python_prefix}"; then - -cat >>confdefs.h <<_ACEOF -#define WITH_PYTHON_PATH "${python_prefix}" -_ACEOF - - - if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then - if test "x$prefix" = xNONE; then - test_prefix=/usr/local - else - test_prefix=$prefix - fi - else - test_prefix=$exec_prefix + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$dep" + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }$dep" + ;; + esac + done + fi + else + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-l$name" + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-l$name" + else + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }-l:lib$name.$libext" + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-l:lib$name.$libext" + fi + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBMPFR="${LIBMPFR}${LIBMPFR:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBMPFR="${LTLIBMPFR}${LTLIBMPFR:+ }-R$found_dir" + done fi - value=0 - case ${python_prefix} in - "${test_prefix}"|"${test_prefix}/"*|\ - '${exec_prefix}'|'${exec_prefix}/'*) - value=1 - ;; - esac -cat >>confdefs.h <<_ACEOF -#define PYTHON_PATH_RELOCATABLE $value -_ACEOF + ac_save_CPPFLAGS="$CPPFLAGS" - fi - fi -fi + for element in $INCMPFR; do + haveit= + for x in $CPPFLAGS; do -if test "${have_libpython}" != no; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_PYTHON 1" >>confdefs.h + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done - CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_PYTHON_OBS)" - CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_PYTHON_DEPS)" - CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_PYTHON_SRCS)" - CONFIG_INSTALL="$CONFIG_INSTALL install-python" - ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_PYTHON_CFLAGS)" - # Flags needed to compile Python code (taken from python-config --cflags). - # We cannot call python-config directly because it will output whatever was - # used when compiling the Python interpreter itself, including flags which - # would make the python-related objects be compiled differently from the - # rest of GDB (e.g., -O2 and -fPIC). - if test "${GCC}" = yes; then - tentative_python_cflags="-fno-strict-aliasing -fwrapv" - # Python headers recommend -DNDEBUG, but it's unclear if that just - # refers to building Python itself. In release mode, though, it - # doesn't hurt for the Python code in gdb to follow. - $development || tentative_python_cflags="$tentative_python_cflags -DNDEBUG" - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libmpfr" >&5 +$as_echo_n "checking for libmpfr... " >&6; } +if ${ac_cv_libmpfr+:} false; then : + $as_echo_n "(cached) " >&6 +else - if test "x${tentative_python_cflags}" != x; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler flags for python code" >&5 -$as_echo_n "checking compiler flags for python code... " >&6; } - for flag in ${tentative_python_cflags}; do - # Check that the compiler accepts it - saved_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $flag" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_save_LIBS="$LIBS" + LIBS="$LIBS $LIBMPFR" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - +#include int main () { - +mpfr_exp_t exp; mpfr_t x; + mpfr_frexp (&exp, x, x, MPFR_RNDN); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - PYTHON_CFLAGS="${PYTHON_CFLAGS} $flag" +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_libmpfr=yes +else + ac_cv_libmpfr=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$saved_CFLAGS" - done - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${PYTHON_CFLAGS}" >&5 -$as_echo "${PYTHON_CFLAGS}" >&6; } - fi - - # On x64 Windows, Python's include headers, and pyconfig.h in - # particular, rely on MS_WIN64 macro to detect that it's a 64bit - # version of Windows. Unfortunately, MS_WIN64 is only defined if - # _MSC_VER, a Microsoft-specific macro, is defined. So, when - # building on x64 Windows with GCC, we define MS_WIN64 ourselves. - # The issue was reported to the Python community, but still isn't - # solved as of 2012-10-02 (http://bugs.python.org/issue4709). +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$ac_save_LIBS" - case "$gdb_host" in - mingw64) - if test "${GCC}" = yes; then - CPPFLAGS="$CPPFLAGS -DMS_WIN64" - fi - ;; - esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libmpfr" >&5 +$as_echo "$ac_cv_libmpfr" >&6; } + if test "$ac_cv_libmpfr" = yes; then + HAVE_LIBMPFR=yes - # Note that "python -m threading" cannot be used to check for - # threading support due to a bug in Python 2.7.3 - # (http://bugs.python.org/issue15567). - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether python supports threads" >&5 -$as_echo_n "checking whether python supports threads... " >&6; } - saved_CPPFLAGS="${CPPFLAGS}" - CPPFLAGS="${PYTHON_CPPFLAGS}" - # Note that the test is reversed so that python_has_threads=yes on - # unexpected failures. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +$as_echo "#define HAVE_LIBMPFR 1" >>confdefs.h -#include -#ifdef WITH_THREAD -# error -#endif + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libmpfr" >&5 +$as_echo_n "checking how to link with libmpfr... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBMPFR" >&5 +$as_echo "$LIBMPFR" >&6; } + else + HAVE_LIBMPFR=no + CPPFLAGS="$ac_save_CPPFLAGS" + LIBMPFR= + LTLIBMPFR= + fi -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - python_has_threads=no -else - python_has_threads=yes -fi -rm -f conftest.err conftest.i conftest.$ac_ext - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${python_has_threads}" >&5 -$as_echo "${python_has_threads}" >&6; } - CPPFLAGS="${saved_CPPFLAGS}" -else - # Even if Python support is not compiled in, we need to have this file - # included so that the "python" command, et.al., still exists. - CONFIG_OBS="$CONFIG_OBS python/python.o" - CONFIG_SRCS="$CONFIG_SRCS python/python.c" -fi -# Work around Python http://bugs.python.org/issue10112. See also -# http://bugs.python.org/issue11410, otherwise -Wl,--dynamic-list has -# no effect. Note that the only test after this that uses Python is -# the -rdynamic/-Wl,--dynamic-list test, and we do want that one to be -# run without -export-dynamic too. -PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/-Xlinker -export-dynamic//'` - if test "${have_libpython}" != no; then - HAVE_PYTHON_TRUE= - HAVE_PYTHON_FALSE='#' -else - HAVE_PYTHON_TRUE='#' - HAVE_PYTHON_FALSE= + if test "$HAVE_LIBMPFR" != yes; then + if test "$with_mpfr" = yes; then + as_fn_error $? "MPFR is missing or unusable" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MPFR is missing or unusable; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: MPFR is missing or unusable; some features may be unavailable." >&2;} + fi + fi fi - -# -------------------- # -# Check for libguile. # -# -------------------- # +# --------------------- # +# Check for libpython. # +# --------------------- # -# Check whether --with-guile was given. -if test "${with_guile+set}" = set; then : - withval=$with_guile; +# Check whether --with-python was given. +if test "${with_python+set}" = set; then : + withval=$with_python; else - with_guile=auto + with_python=auto fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use guile" >&5 -$as_echo_n "checking whether to use guile... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_guile" >&5 -$as_echo "$with_guile" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use python" >&5 +$as_echo_n "checking whether to use python... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_python" >&5 +$as_echo "$with_python" >&6; } -# Extract the first word of "pkg-config", so it can be a program name with args. -set dummy pkg-config; ac_word=$2 +if test "${with_python}" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: python support disabled; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: python support disabled; some features may be unavailable." >&2;} + have_libpython=no +else + case "${with_python}" in + [\\/]* | ?:[\\/]*) + if test -d "${with_python}"; then + # Assume the python binary is ${with_python}/bin/python. + python_prog="${with_python}/bin/python" + python_prefix= + # If python does not exit ${with_python}/bin, then try in + # ${with_python}. On Windows/MinGW, this is where the Python + # executable is. + if test ! -x "${python_prog}"; then + python_prog="${with_python}/python" + python_prefix= + fi + if test ! -x "${python_prog}"; then + # Fall back to gdb 7.0/7.1 behaviour. + python_prog=missing + python_prefix=${with_python} + fi + elif test -x "${with_python}"; then + # While we can't run python compiled for $host (unless host == build), + # the user could write a script that provides the needed information, + # so we support that. + python_prog=${with_python} + python_prefix= + else + as_fn_error $? "invalid value for --with-python" "$LINENO" 5 + fi + ;; + */*) + # Disallow --with-python=foo/bar. + as_fn_error $? "invalid value for --with-python" "$LINENO" 5 + ;; + *) + # The user has either specified auto, yes, or the name of the python + # program assumed to be in $PATH. + python_prefix= + case "${with_python}" in + yes | auto) + if test "${build}" = "${host}"; then + # Extract the first word of "python", so it can be a program name with args. +set dummy python; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_pkg_config_prog_path+:} false; then : +if ${ac_cv_path_python_prog_path+:} false; then : $as_echo_n "(cached) " >&6 else - case $pkg_config_prog_path in + case $python_prog_path in [\\/]* | ?:[\\/]*) - ac_cv_path_pkg_config_prog_path="$pkg_config_prog_path" # Let the user override the test with a path. + ac_cv_path_python_prog_path="$python_prog_path" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -10906,7 +11085,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_pkg_config_prog_path="$as_dir/$ac_word$ac_exec_ext" + ac_cv_path_python_prog_path="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -10914,1144 +11093,1996 @@ done done IFS=$as_save_IFS - test -z "$ac_cv_path_pkg_config_prog_path" && ac_cv_path_pkg_config_prog_path="missing" + test -z "$ac_cv_path_python_prog_path" && ac_cv_path_python_prog_path="missing" ;; esac fi -pkg_config_prog_path=$ac_cv_path_pkg_config_prog_path -if test -n "$pkg_config_prog_path"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pkg_config_prog_path" >&5 -$as_echo "$pkg_config_prog_path" >&6; } +python_prog_path=$ac_cv_path_python_prog_path +if test -n "$python_prog_path"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $python_prog_path" >&5 +$as_echo "$python_prog_path" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi + if test "${python_prog_path}" = missing; then + python_prog=missing + else + python_prog=${python_prog_path} + fi + else + # Not much we can do except assume the cross-compiler will find the + # right files. + python_prog=missing + fi + ;; + *) + # While we can't run python compiled for $host (unless host == build), + # the user could write a script that provides the needed information, + # so we support that. + python_prog="${with_python}" + # Extract the first word of "${python_prog}", so it can be a program name with args. +set dummy ${python_prog}; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_python_prog_path+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $python_prog_path in + [\\/]* | ?:[\\/]*) + ac_cv_path_python_prog_path="$python_prog_path" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_python_prog_path="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS -try_guile_versions="guile-2.0" -have_libguile=no -case "${with_guile}" in -no) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: guile support disabled; some features will be unavailable." >&5 -$as_echo "$as_me: WARNING: guile support disabled; some features will be unavailable." >&2;} + test -z "$ac_cv_path_python_prog_path" && ac_cv_path_python_prog_path="missing" ;; -auto) - if test "${pkg_config_prog_path}" = "missing"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pkg-config not found, guile support disabled" >&5 -$as_echo "$as_me: WARNING: pkg-config not found, guile support disabled" >&2;} - else +esac +fi +python_prog_path=$ac_cv_path_python_prog_path +if test -n "$python_prog_path"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $python_prog_path" >&5 +$as_echo "$python_prog_path" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi - pkg_config=${pkg_config_prog_path} - guile_version_list=${try_guile_versions} - flag_errors=no - found_usable_guile=checking - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 -$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } - for guile_version in ${guile_version_list}; do - ${pkg_config} --exists ${guile_version} 2>/dev/null + if test "${python_prog_path}" = missing; then + as_fn_error $? "unable to find python program ${python_prog}" "$LINENO" 5 + fi + ;; + esac + esac + + if test "${python_prog}" != missing; then + # We have a python program to use, but it may be too old. + # Don't flag an error for --with-python=auto (the default). + have_python_config=yes + python_includes=`${python_prog} ${srcdir}/python/python-config.py --includes` if test $? != 0; then - continue + have_python_config=failed + if test "${with_python}" != auto; then + as_fn_error $? "failure running python-config --includes" "$LINENO" 5 + fi fi - new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` + python_libs=`${python_prog} ${srcdir}/python/python-config.py --ldflags` if test $? != 0; then - as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 + have_python_config=failed + if test "${with_python}" != auto; then + as_fn_error $? "failure running python-config --ldflags" "$LINENO" 5 + fi fi - new_LIBS=`${pkg_config} --libs ${guile_version}` + python_prefix=`${python_prog} ${srcdir}/python/python-config.py --exec-prefix` if test $? != 0; then - as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 - fi - found_usable_guile=${guile_version} - break - done - if test "${found_usable_guile}" = "checking"; then - if test "${flag_errors}" = "yes"; then - as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 - else - found_usable_guile=no + have_python_config=failed + if test "${with_python}" != auto; then + as_fn_error $? "failure running python-config --exec-prefix" "$LINENO" 5 + fi fi + else + # We do not have a python executable we can use to determine where + # to find the Python headers and libs. We cannot guess the include + # path from the python_prefix either, because that include path + # depends on the Python version. So, there is nothing much we can + # do except assume that the compiler will be able to find those files. + python_includes= + python_libs= + have_python_config=no fi - if test "${found_usable_guile}" != no; then - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$LIBS $new_LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + + # If we have python-config, only try the configuration it provides. + # Otherwise fallback on the old way of trying different versions of + # python in turn. + + have_libpython=no + if test "${have_python_config}" = yes; then + + + new_CPPFLAGS=${python_includes} + new_LIBS=${python_libs} + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for python" >&5 +$as_echo_n "checking for python... " >&6; } + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$new_LIBS $LIBS" + found_usable_python=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "libguile.h" +#include "Python.h" int main () { -scm_init_guile (); +Py_Initialize (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - have_libguile=yes - GUILE_CPPFLAGS=$new_CPPFLAGS - GUILE_LIBS=$new_LIBS -else - found_usable_guile=no + have_libpython=yes + found_usable_python=yes + PYTHON_CPPFLAGS=$new_CPPFLAGS + PYTHON_LIBS=$new_LIBS fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" -if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : - -$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 +$as_echo "${found_usable_python}" >&6; } + elif test "${have_python_config}" != failed; then + if test "${have_libpython}" = no; then -fi - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - if test "${found_usable_guile}" = no; then - if test "${flag_errors}" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "linking guile version ${guile_version} test program failed -See \`config.log' for more details" "$LINENO" 5; } - fi - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 -$as_echo "${found_usable_guile}" >&6; } - - fi - ;; -yes) - if test "${pkg_config_prog_path}" = "missing"; then - as_fn_error $? "pkg-config not found" "$LINENO" 5 - fi - - pkg_config=${pkg_config_prog_path} - guile_version_list=${try_guile_versions} - flag_errors=yes - - found_usable_guile=checking - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 -$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } - for guile_version in ${guile_version_list}; do - ${pkg_config} --exists ${guile_version} 2>/dev/null - if test $? != 0; then - continue - fi - new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 - fi - new_LIBS=`${pkg_config} --libs ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 - fi - found_usable_guile=${guile_version} - break - done - if test "${found_usable_guile}" = "checking"; then - if test "${flag_errors}" = "yes"; then - as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 - else - found_usable_guile=no - fi - fi - if test "${found_usable_guile}" != no; then - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$LIBS $new_LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + new_CPPFLAGS=${python_includes} + new_LIBS="-lpython2.7 ${python_libs}" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for python" >&5 +$as_echo_n "checking for python... " >&6; } + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$new_LIBS $LIBS" + found_usable_python=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "libguile.h" +#include "Python.h" int main () { -scm_init_guile (); +Py_Initialize (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - have_libguile=yes - GUILE_CPPFLAGS=$new_CPPFLAGS - GUILE_LIBS=$new_LIBS -else - found_usable_guile=no + have_libpython=yes + found_usable_python=yes + PYTHON_CPPFLAGS=$new_CPPFLAGS + PYTHON_LIBS=$new_LIBS fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" -if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : - -$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h - - -fi + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 +$as_echo "${found_usable_python}" >&6; } - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - if test "${found_usable_guile}" = no; then - if test "${flag_errors}" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "linking guile version ${guile_version} test program failed -See \`config.log' for more details" "$LINENO" 5; } - fi fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 -$as_echo "${found_usable_guile}" >&6; } - - ;; -[\\/]* | ?:[\\/]*) - if test -x "${with_guile}"; then + if test "${have_libpython}" = no; then - pkg_config=${with_guile} - guile_version_list=${try_guile_versions} - flag_errors=yes - found_usable_guile=checking - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 -$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } - for guile_version in ${guile_version_list}; do - ${pkg_config} --exists ${guile_version} 2>/dev/null - if test $? != 0; then - continue - fi - new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 - fi - new_LIBS=`${pkg_config} --libs ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 - fi - found_usable_guile=${guile_version} - break - done - if test "${found_usable_guile}" = "checking"; then - if test "${flag_errors}" = "yes"; then - as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 - else - found_usable_guile=no - fi - fi - if test "${found_usable_guile}" != no; then - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$LIBS $new_LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + new_CPPFLAGS=${python_includes} + new_LIBS="-lpython2.6 ${python_libs}" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for python" >&5 +$as_echo_n "checking for python... " >&6; } + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$new_LIBS $LIBS" + found_usable_python=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "libguile.h" +#include "Python.h" int main () { -scm_init_guile (); +Py_Initialize (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - have_libguile=yes - GUILE_CPPFLAGS=$new_CPPFLAGS - GUILE_LIBS=$new_LIBS -else - found_usable_guile=no + have_libpython=yes + found_usable_python=yes + PYTHON_CPPFLAGS=$new_CPPFLAGS + PYTHON_LIBS=$new_LIBS fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" -if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_python}" >&5 +$as_echo "${found_usable_python}" >&6; } -$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h + fi + fi + if test "${have_libpython}" = no; then + case "${with_python}" in + yes) + as_fn_error $? "python is missing or unusable" "$LINENO" 5 + ;; + auto) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: python is missing or unusable; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: python is missing or unusable; some features may be unavailable." >&2;} + ;; + *) + as_fn_error $? "no usable python found at ${with_python}" "$LINENO" 5 + ;; + esac + else + if test -n "${python_prefix}"; then -fi +cat >>confdefs.h <<_ACEOF +#define WITH_PYTHON_PATH "${python_prefix}" +_ACEOF - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - if test "${found_usable_guile}" = no; then - if test "${flag_errors}" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "linking guile version ${guile_version} test program failed -See \`config.log' for more details" "$LINENO" 5; } - fi - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 -$as_echo "${found_usable_guile}" >&6; } + if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then + if test "x$prefix" = xNONE; then + test_prefix=/usr/local + else + test_prefix=$prefix + fi else - as_fn_error $? "Guile config program not executable: ${with_guile}" "$LINENO" 5 - fi - ;; -"" | */*) - # Disallow --with=guile="" and --with-guile=foo/bar. - as_fn_error $? "invalid value for --with-guile" "$LINENO" 5 - ;; -*) - # A space separate list of guile versions to try, in order. - if test "${pkg_config_prog_path}" = "missing"; then - as_fn_error $? "pkg-config not found" "$LINENO" 5 + test_prefix=$exec_prefix fi + value=0 + case ${python_prefix} in + "${test_prefix}"|"${test_prefix}/"*|\ + '${exec_prefix}'|'${exec_prefix}/'*) + value=1 + ;; + esac + +cat >>confdefs.h <<_ACEOF +#define PYTHON_PATH_RELOCATABLE $value +_ACEOF - pkg_config=${pkg_config_prog_path} - guile_version_list=${with_guile} - flag_errors=yes - found_usable_guile=checking - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 -$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } - for guile_version in ${guile_version_list}; do - ${pkg_config} --exists ${guile_version} 2>/dev/null - if test $? != 0; then - continue - fi - new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 - fi - new_LIBS=`${pkg_config} --libs ${guile_version}` - if test $? != 0; then - as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 - fi - found_usable_guile=${guile_version} - break - done - if test "${found_usable_guile}" = "checking"; then - if test "${flag_errors}" = "yes"; then - as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 - else - found_usable_guile=no fi fi - if test "${found_usable_guile}" != no; then - save_CPPFLAGS=$CPPFLAGS - save_LIBS=$LIBS - CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" - LIBS="$LIBS $new_LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "libguile.h" -int -main () -{ -scm_init_guile (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_libguile=yes - GUILE_CPPFLAGS=$new_CPPFLAGS - GUILE_LIBS=$new_LIBS -else - found_usable_guile=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" -if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : -$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h +# Check whether --with-python-libdir was given. +if test "${with_python_libdir+set}" = set; then : + withval=$with_python_libdir; +else + + # If no python libdir is specified then select one based on + # python's prefix path. + if test -n "${python_prefix}"; then + with_python_libdir=${python_prefix}/lib + fi fi - CPPFLAGS=$save_CPPFLAGS - LIBS=$save_LIBS - if test "${found_usable_guile}" = no; then - if test "${flag_errors}" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "linking guile version ${guile_version} test program failed -See \`config.log' for more details" "$LINENO" 5; } - fi - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 -$as_echo "${found_usable_guile}" >&6; } - ;; -esac +if test "${have_libpython}" != no; then -if test "${have_libguile}" != no; then - case "${with_guile}" in - [\\/]* | ?:[\\/]*) +$as_echo "#define HAVE_PYTHON 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the absolute file name of the 'guild' command" >&5 -$as_echo_n "checking for the absolute file name of the 'guild' command... " >&6; } -if ${ac_cv_guild_program_name+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_guild_program_name="`"${with_guile}" --variable guild "${guile_version}"`" + CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_PYTHON_OBS)" + CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_PYTHON_DEPS)" + CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_PYTHON_SRCS)" + CONFIG_INSTALL="$CONFIG_INSTALL install-python" + ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_PYTHON_CFLAGS)" - # In Guile up to 2.0.11 included, guile-2.0.pc would not define - # the 'guild' and 'bindir' variables. In that case, try to guess - # what the program name is, at the risk of getting it wrong if - # Guile was configured with '--program-suffix' or similar. - if test "x$ac_cv_guild_program_name" = "x"; then - guile_exec_prefix="`"${with_guile}" --variable exec_prefix "${guile_version}"`" - ac_cv_guild_program_name="$guile_exec_prefix/bin/guild" - fi + if test -n "${with_python_libdir}"; then -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_program_name" >&5 -$as_echo "$ac_cv_guild_program_name" >&6; } +cat >>confdefs.h <<_ACEOF +#define WITH_PYTHON_LIBDIR "${with_python_libdir}" +_ACEOF - if ! "$ac_cv_guild_program_name" --version >&5 2>&5; then - as_fn_error $? "'$ac_cv_guild_program_name' appears to be unusable" "$LINENO" 5 + + if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then + if test "x$prefix" = xNONE; then + test_prefix=/usr/local + else + test_prefix=$prefix + fi + else + test_prefix=$exec_prefix fi + value=0 + case ${with_python_libdir} in + "${test_prefix}"|"${test_prefix}/"*|\ + '${exec_prefix}'|'${exec_prefix}/'*) + value=1 + ;; + esac - GUILD="$ac_cv_guild_program_name" +cat >>confdefs.h <<_ACEOF +#define PYTHON_LIBDIR_RELOCATABLE $value +_ACEOF - ;; - *) + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the absolute file name of the 'guild' command" >&5 -$as_echo_n "checking for the absolute file name of the 'guild' command... " >&6; } -if ${ac_cv_guild_program_name+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_guild_program_name="`"${pkg_config_prog_path}" --variable guild "${guile_version}"`" + # Flags needed to compile Python code (taken from python-config --cflags). + # We cannot call python-config directly because it will output whatever was + # used when compiling the Python interpreter itself, including flags which + # would make the python-related objects be compiled differently from the + # rest of GDB (e.g., -O2 and -fPIC). + if test "${GCC}" = yes; then + tentative_python_cflags="-fno-strict-aliasing -fwrapv" + # Python headers recommend -DNDEBUG, but it's unclear if that just + # refers to building Python itself. In release mode, though, it + # doesn't hurt for the Python code in gdb to follow. + $development || tentative_python_cflags="$tentative_python_cflags -DNDEBUG" + fi - # In Guile up to 2.0.11 included, guile-2.0.pc would not define - # the 'guild' and 'bindir' variables. In that case, try to guess - # what the program name is, at the risk of getting it wrong if - # Guile was configured with '--program-suffix' or similar. - if test "x$ac_cv_guild_program_name" = "x"; then - guile_exec_prefix="`"${pkg_config_prog_path}" --variable exec_prefix "${guile_version}"`" - ac_cv_guild_program_name="$guile_exec_prefix/bin/guild" - fi + if test "x${tentative_python_cflags}" != x; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler flags for python code" >&5 +$as_echo_n "checking compiler flags for python code... " >&6; } + for flag in ${tentative_python_cflags}; do + # Check that the compiler accepts it + saved_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_program_name" >&5 -$as_echo "$ac_cv_guild_program_name" >&6; } +int +main () +{ - if ! "$ac_cv_guild_program_name" --version >&5 2>&5; then - as_fn_error $? "'$ac_cv_guild_program_name' appears to be unusable" "$LINENO" 5 + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + PYTHON_CFLAGS="${PYTHON_CFLAGS} $flag" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$saved_CFLAGS" + done + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${PYTHON_CFLAGS}" >&5 +$as_echo "${PYTHON_CFLAGS}" >&6; } fi - GUILD="$ac_cv_guild_program_name" - + # On x64 Windows, Python's include headers, and pyconfig.h in + # particular, rely on MS_WIN64 macro to detect that it's a 64bit + # version of Windows. Unfortunately, MS_WIN64 is only defined if + # _MSC_VER, a Microsoft-specific macro, is defined. So, when + # building on x64 Windows with GCC, we define MS_WIN64 ourselves. + # The issue was reported to the Python community, but still isn't + # solved as of 2012-10-02 (http://bugs.python.org/issue4709). - ;; + case "$gdb_host" in + mingw64) + if test "${GCC}" = yes; then + CPPFLAGS="$CPPFLAGS -DMS_WIN64" + fi + ;; esac +else + # Even if Python support is not compiled in, we need to have this file + # included so that the "python" command, et.al., still exists. + CONFIG_OBS="$CONFIG_OBS python/python.o" + CONFIG_SRCS="$CONFIG_SRCS python/python.c" +fi - - if test "$cross_compiling" = no; then - GUILD_TARGET_FLAG= - else - GUILD_TARGET_FLAG="--target=$host" - fi +# Work around Python http://bugs.python.org/issue10112. See also +# http://bugs.python.org/issue11410, otherwise -Wl,--dynamic-list has +# no effect. Note that the only test after this that uses Python is +# the -rdynamic/-Wl,--dynamic-list test, and we do want that one to be +# run without -export-dynamic too. +PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/-Xlinker -export-dynamic//'` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether guild supports this host" >&5 -$as_echo_n "checking whether guild supports this host... " >&6; } -if ${ac_cv_guild_ok+:} false; then : - $as_echo_n "(cached) " >&6 + if test "${have_libpython}" != no; then + HAVE_PYTHON_TRUE= + HAVE_PYTHON_FALSE='#' else - echo "$ac_cv_guild_program_name compile $GUILD_TARGET_FLAG -o conftest.go $srcdir/guile/lib/gdb/support.scm" >&5 - if "$ac_cv_guild_program_name" compile $GUILD_TARGET_FLAG -o conftest.go "$srcdir/guile/lib/gdb/support.scm" >&5 2>&5; then - ac_cv_guild_ok=yes - else - ac_cv_guild_ok=no - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_ok" >&5 -$as_echo "$ac_cv_guild_ok" >&6; } - - if test "$ac_cv_guild_ok" = no; then - have_libguile=no - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling guile support" >&5 -$as_echo "$as_me: WARNING: disabling guile support" >&2;} - fi + HAVE_PYTHON_TRUE='#' + HAVE_PYTHON_FALSE= fi -if test "${have_libguile}" != no; then -$as_echo "#define HAVE_GUILE 1" >>confdefs.h +# -------------------- # +# Check for libguile. # +# -------------------- # - CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_GUILE_OBS)" - CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_GUILE_DEPS)" - CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_GUILE_SRCS)" - CONFIG_INSTALL="$CONFIG_INSTALL install-guile" - ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_GUILE_CFLAGS)" - save_LIBS="$LIBS" - save_CPPFLAGS="$CPPFLAGS" - LIBS="$GUILE_LIBS" - CPPFLAGS="$GUILE_CPPFLAGS" - for ac_func in scm_new_smob -do : - ac_fn_c_check_func "$LINENO" "scm_new_smob" "ac_cv_func_scm_new_smob" -if test "x$ac_cv_func_scm_new_smob" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SCM_NEW_SMOB 1 -_ACEOF -fi -done - LIBS="$save_LIBS" - CPPFLAGS="$save_CPPFLAGS" -else - # Even if Guile support is not compiled in, we need to have these files - # included. - CONFIG_OBS="$CONFIG_OBS guile/guile.o" - CONFIG_SRCS="$CONFIG_SRCS guile/guile.c" -fi - if test "${have_libguile}" != no; then - HAVE_GUILE_TRUE= - HAVE_GUILE_FALSE='#' +# Check whether --with-guile was given. +if test "${with_guile+set}" = set; then : + withval=$with_guile; else - HAVE_GUILE_TRUE='#' - HAVE_GUILE_FALSE= + with_guile=auto fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use guile" >&5 +$as_echo_n "checking whether to use guile... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_guile" >&5 +$as_echo "$with_guile" >&6; } -# --------------------- # -# Check for libmcheck. # -# --------------------- # - -# Enable -lmcheck by default (it provides cheap-enough memory mangling), -# but turn it off if Python is enabled with threads, since -lmcheck is -# not thread safe (http://sourceware.org/bugzilla/show_bug.cgi?id=9939), -# and for releases. -if test \( "${have_libpython}" = "no" -o "${python_has_threads}" = "no" \) \ - && $development; then - libmcheck_default=yes +# Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pkg_config_prog_path+:} false; then : + $as_echo_n "(cached) " >&6 else - libmcheck_default=no -fi + case $pkg_config_prog_path in + [\\/]* | ?:[\\/]*) + ac_cv_path_pkg_config_prog_path="$pkg_config_prog_path" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pkg_config_prog_path="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS - # Check whether --enable-libmcheck was given. -if test "${enable_libmcheck+set}" = set; then : - enableval=$enable_libmcheck; case "${enableval}" in - yes | y) ENABLE_LIBMCHECK="yes" ;; - no | n) ENABLE_LIBMCHECK="no" ;; - *) as_fn_error $? "bad value ${enableval} for --enable-libmcheck" "$LINENO" 5 ;; - esac + test -z "$ac_cv_path_pkg_config_prog_path" && ac_cv_path_pkg_config_prog_path="missing" + ;; +esac +fi +pkg_config_prog_path=$ac_cv_path_pkg_config_prog_path +if test -n "$pkg_config_prog_path"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pkg_config_prog_path" >&5 +$as_echo "$pkg_config_prog_path" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - if test -z "${ENABLE_LIBMCHECK}"; then - ENABLE_LIBMCHECK=${libmcheck_default} - fi - if test "$ENABLE_LIBMCHECK" = "yes" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lmcheck" >&5 -$as_echo_n "checking for main in -lmcheck... " >&6; } -if ${ac_cv_lib_mcheck_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lmcheck $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +try_guile_versions="guile-3.0 guile-2.2 guile-2.0" +have_libguile=no +case "${with_guile}" in +no) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: guile support disabled; some features will be unavailable." >&5 +$as_echo "$as_me: WARNING: guile support disabled; some features will be unavailable." >&2;} + ;; +auto) + if test "${pkg_config_prog_path}" = "missing"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pkg-config not found, guile support disabled" >&5 +$as_echo "$as_me: WARNING: pkg-config not found, guile support disabled" >&2;} + else + pkg_config=${pkg_config_prog_path} + guile_version_list=${try_guile_versions} + flag_errors=no + found_usable_guile=checking + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 +$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } + for guile_version in ${guile_version_list}; do + ${pkg_config} --exists ${guile_version} 2>/dev/null + if test $? != 0; then + continue + fi + new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 + fi + new_LIBS=`${pkg_config} --libs ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 + fi + found_usable_guile=${guile_version} + break + done + if test "${found_usable_guile}" = "checking"; then + if test "${flag_errors}" = "yes"; then + as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 + else + found_usable_guile=no + fi + fi + if test "${found_usable_guile}" != no; then + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$LIBS $new_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "libguile.h" int main () { -return main (); +scm_init_guile (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_mcheck_main=yes + have_libguile=yes + GUILE_CPPFLAGS=$new_CPPFLAGS + GUILE_LIBS=$new_LIBS else - ac_cv_lib_mcheck_main=no + found_usable_guile=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mcheck_main" >&5 -$as_echo "$ac_cv_lib_mcheck_main" >&6; } -if test "x$ac_cv_lib_mcheck_main" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBMCHECK 1 -_ACEOF - - LIBS="-lmcheck $LIBS" - -fi + ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" +if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : - fi +$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h -if test "$ENABLE_LIBMCHECK" = "yes" \ - -a "${have_libpython}" != "no" \ - -a "${python_has_threads}" = "yes" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-libmcheck may lead to spurious crashes if threads are used in python" >&5 -$as_echo "$as_me: WARNING: --enable-libmcheck may lead to spurious crashes if threads are used in python" >&2;} fi + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + if test "${found_usable_guile}" = no; then + if test "${flag_errors}" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "linking guile version ${guile_version} test program failed +See \`config.log' for more details" "$LINENO" 5; } + fi + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 +$as_echo "${found_usable_guile}" >&6; } -# Check whether --with-intel_pt was given. -if test "${with_intel_pt+set}" = set; then : - withval=$with_intel_pt; -else - with_intel_pt=auto -fi + fi + ;; +yes) + if test "${pkg_config_prog_path}" = "missing"; then + as_fn_error $? "pkg-config not found" "$LINENO" 5 + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use intel pt" >&5 -$as_echo_n "checking whether to use intel pt... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_intel_pt" >&5 -$as_echo "$with_intel_pt" >&6; } + pkg_config=${pkg_config_prog_path} + guile_version_list=${try_guile_versions} + flag_errors=yes -if test "${with_intel_pt}" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&2;} - HAVE_LIBIPT=no -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + found_usable_guile=checking + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 +$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } + for guile_version in ${guile_version_list}; do + ${pkg_config} --exists ${guile_version} 2>/dev/null + if test $? != 0; then + continue + fi + new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 + fi + new_LIBS=`${pkg_config} --libs ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 + fi + found_usable_guile=${guile_version} + break + done + if test "${found_usable_guile}" = "checking"; then + if test "${flag_errors}" = "yes"; then + as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 + else + found_usable_guile=no + fi + fi + if test "${found_usable_guile}" != no; then + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$LIBS $new_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#include -#ifndef PERF_ATTR_SIZE_VER5 -# error -#endif - +#include "libguile.h" +int +main () +{ +scm_init_guile (); + ; + return 0; +} _ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - perf_event=yes +if ac_fn_c_try_link "$LINENO"; then : + have_libguile=yes + GUILE_CPPFLAGS=$new_CPPFLAGS + GUILE_LIBS=$new_LIBS else - perf_event=no + found_usable_guile=no fi -rm -f conftest.err conftest.i conftest.$ac_ext - if test "$perf_event" != yes; then - if test "$with_intel_pt" = yes; then - as_fn_error $? "linux/perf_event.h missing or too old" "$LINENO" 5 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&2;} - fi - fi - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libipt-prefix was given. -if test "${with_libipt_prefix+set}" = set; then : - withval=$with_libipt_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" +if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" +$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +fi - else - additional_includedir="$withval/include" - additional_libdir="$withval/lib" + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + if test "${found_usable_guile}" = no; then + if test "${flag_errors}" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "linking guile version ${guile_version} test program failed +See \`config.log' for more details" "$LINENO" 5; } fi fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 +$as_echo "${found_usable_guile}" >&6; } -fi + ;; +[\\/]* | ?:[\\/]*) + if test -x "${with_guile}"; then - LIBIPT= - LTLIBIPT= - INCIPT= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='ipt ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBIPT="${LIBIPT}${LIBIPT:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then - found_dir="$additional_libdir" - found_so="$additional_libdir/lib$name.$shlibext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - else - if test -f "$additional_libdir/lib$name.$libext"; then - found_dir="$additional_libdir" - found_a="$additional_libdir/lib$name.$libext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBIPT; do + pkg_config=${with_guile} + guile_version_list=${try_guile_versions} + flag_errors=yes + + found_usable_guile=checking + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 +$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } + for guile_version in ${guile_version_list}; do + ${pkg_config} --exists ${guile_version} 2>/dev/null + if test $? != 0; then + continue + fi + new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 + fi + new_LIBS=`${pkg_config} --libs ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 + fi + found_usable_guile=${guile_version} + break + done + if test "${found_usable_guile}" = "checking"; then + if test "${flag_errors}" = "yes"; then + as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 + else + found_usable_guile=no + fi + fi + if test "${found_usable_guile}" != no; then + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$LIBS $new_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "libguile.h" +int +main () +{ +scm_init_guile (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + have_libguile=yes + GUILE_CPPFLAGS=$new_CPPFLAGS + GUILE_LIBS=$new_LIBS +else + found_usable_guile=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" +if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : + +$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h + + +fi + + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + if test "${found_usable_guile}" = no; then + if test "${flag_errors}" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "linking guile version ${guile_version} test program failed +See \`config.log' for more details" "$LINENO" 5; } + fi + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 +$as_echo "${found_usable_guile}" >&6; } + + else + as_fn_error $? "Guile config program not executable: ${with_guile}" "$LINENO" 5 + fi + ;; +"" | */*) + # Disallow --with=guile="" and --with-guile=foo/bar. + as_fn_error $? "invalid value for --with-guile" "$LINENO" 5 + ;; +*) + # A space separate list of guile versions to try, in order. + if test "${pkg_config_prog_path}" = "missing"; then + as_fn_error $? "pkg-config not found" "$LINENO" 5 + fi + + pkg_config=${pkg_config_prog_path} + guile_version_list=${with_guile} + flag_errors=yes + + found_usable_guile=checking + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for usable guile from ${pkg_config}" >&5 +$as_echo_n "checking for usable guile from ${pkg_config}... " >&6; } + for guile_version in ${guile_version_list}; do + ${pkg_config} --exists ${guile_version} 2>/dev/null + if test $? != 0; then + continue + fi + new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --cflags ${guile_version}" "$LINENO" 5 + fi + new_LIBS=`${pkg_config} --libs ${guile_version}` + if test $? != 0; then + as_fn_error $? "failure running pkg-config --libs ${guile_version}" "$LINENO" 5 + fi + found_usable_guile=${guile_version} + break + done + if test "${found_usable_guile}" = "checking"; then + if test "${flag_errors}" = "yes"; then + as_fn_error $? "unable to find usable guile version from \"${guile_version_list}\"" "$LINENO" 5 + else + found_usable_guile=no + fi + fi + if test "${found_usable_guile}" != no; then + save_CPPFLAGS=$CPPFLAGS + save_LIBS=$LIBS + CPPFLAGS="$CPPFLAGS $new_CPPFLAGS" + LIBS="$LIBS $new_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "libguile.h" +int +main () +{ +scm_init_guile (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + have_libguile=yes + GUILE_CPPFLAGS=$new_CPPFLAGS + GUILE_LIBS=$new_LIBS +else + found_usable_guile=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_fn_c_check_func "$LINENO" "scm_set_automatic_finalization_enabled" "ac_cv_func_scm_set_automatic_finalization_enabled" +if test "x$ac_cv_func_scm_set_automatic_finalization_enabled" = xyes; then : + +$as_echo "#define HAVE_GUILE_MANUAL_FINALIZATION 1" >>confdefs.h + + +fi + + CPPFLAGS=$save_CPPFLAGS + LIBS=$save_LIBS + if test "${found_usable_guile}" = no; then + if test "${flag_errors}" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "linking guile version ${guile_version} test program failed +See \`config.log' for more details" "$LINENO" 5; } + fi + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${found_usable_guile}" >&5 +$as_echo "${found_usable_guile}" >&6; } + + ;; +esac + +if test "${have_libguile}" != no; then + case "${with_guile}" in + [\\/]* | ?:[\\/]*) + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the absolute file name of the 'guild' command" >&5 +$as_echo_n "checking for the absolute file name of the 'guild' command... " >&6; } +if ${ac_cv_guild_program_name+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_guild_program_name="`"${with_guile}" --variable guild "${guile_version}"`" + + # In Guile up to 2.0.11 included, guile-2.0.pc would not define + # the 'guild' and 'bindir' variables. In that case, try to guess + # what the program name is, at the risk of getting it wrong if + # Guile was configured with '--program-suffix' or similar. + if test "x$ac_cv_guild_program_name" = "x"; then + guile_exec_prefix="`"${with_guile}" --variable exec_prefix "${guile_version}"`" + ac_cv_guild_program_name="$guile_exec_prefix/bin/guild" + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_program_name" >&5 +$as_echo "$ac_cv_guild_program_name" >&6; } + + if ! "$ac_cv_guild_program_name" --version >&5 2>&5; then + as_fn_error $? "'$ac_cv_guild_program_name' appears to be unusable" "$LINENO" 5 + fi + + GUILD="$ac_cv_guild_program_name" + + + ;; + *) + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the absolute file name of the 'guild' command" >&5 +$as_echo_n "checking for the absolute file name of the 'guild' command... " >&6; } +if ${ac_cv_guild_program_name+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_guild_program_name="`"${pkg_config_prog_path}" --variable guild "${guile_version}"`" + + # In Guile up to 2.0.11 included, guile-2.0.pc would not define + # the 'guild' and 'bindir' variables. In that case, try to guess + # what the program name is, at the risk of getting it wrong if + # Guile was configured with '--program-suffix' or similar. + if test "x$ac_cv_guild_program_name" = "x"; then + guile_exec_prefix="`"${pkg_config_prog_path}" --variable exec_prefix "${guile_version}"`" + ac_cv_guild_program_name="$guile_exec_prefix/bin/guild" + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_program_name" >&5 +$as_echo "$ac_cv_guild_program_name" >&6; } + + if ! "$ac_cv_guild_program_name" --version >&5 2>&5; then + as_fn_error $? "'$ac_cv_guild_program_name' appears to be unusable" "$LINENO" 5 + fi + + GUILD="$ac_cv_guild_program_name" + + + ;; + esac + + + if test "$cross_compiling" = no; then + GUILD_TARGET_FLAG= + else + GUILD_TARGET_FLAG="--target=$host" + fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether guild supports this host" >&5 +$as_echo_n "checking whether guild supports this host... " >&6; } +if ${ac_cv_guild_ok+:} false; then : + $as_echo_n "(cached) " >&6 +else + echo "$ac_cv_guild_program_name compile $GUILD_TARGET_FLAG -o conftest.go $srcdir/guile/lib/gdb/support.scm" >&5 + if "$ac_cv_guild_program_name" compile $GUILD_TARGET_FLAG -o conftest.go "$srcdir/guile/lib/gdb/support.scm" >&5 2>&5; then + ac_cv_guild_ok=yes + else + ac_cv_guild_ok=no + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_guild_ok" >&5 +$as_echo "$ac_cv_guild_ok" >&6; } + + if test "$ac_cv_guild_ok" = no; then + have_libguile=no + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling guile support" >&5 +$as_echo "$as_me: WARNING: disabling guile support" >&2;} + fi +fi + +if test "${have_libguile}" != no; then + +$as_echo "#define HAVE_GUILE 1" >>confdefs.h + + CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_GUILE_OBS)" + CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_GUILE_DEPS)" + CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_GUILE_SRCS)" + CONFIG_INSTALL="$CONFIG_INSTALL install-guile" + ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_GUILE_CFLAGS)" + + save_LIBS="$LIBS" + save_CPPFLAGS="$CPPFLAGS" + LIBS="$GUILE_LIBS" + CPPFLAGS="$GUILE_CPPFLAGS" + for ac_func in scm_new_smob +do : + ac_fn_c_check_func "$LINENO" "scm_new_smob" "ac_cv_func_scm_new_smob" +if test "x$ac_cv_func_scm_new_smob" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SCM_NEW_SMOB 1 +_ACEOF + +fi +done + + LIBS="$save_LIBS" + CPPFLAGS="$save_CPPFLAGS" +else + # Even if Guile support is not compiled in, we need to have these files + # included. + CONFIG_OBS="$CONFIG_OBS guile/guile.o" + CONFIG_SRCS="$CONFIG_SRCS guile/guile.c" +fi + + + if test "${have_libguile}" != no; then + HAVE_GUILE_TRUE= + HAVE_GUILE_FALSE='#' +else + HAVE_GUILE_TRUE='#' + HAVE_GUILE_FALSE= +fi + + +# ---------------------------- # +# Check for source highlight. # +# ---------------------------- # + +SRCHIGH_LIBS= +SRCHIGH_CFLAGS= + +# Check whether --enable-source-highlight was given. +if test "${enable_source_highlight+set}" = set; then : + enableval=$enable_source_highlight; case "${enableval}" in + yes) enable_source_highlight=yes ;; + no) enable_source_highlight=no ;; + *) as_fn_error $? "bad value ${enableval} for source-highlight option" "$LINENO" 5 ;; +esac +else + enable_source_highlight=auto +fi + + +if test "${enable_source_highlight}" != "no"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the source-highlight library" >&5 +$as_echo_n "checking for the source-highlight library... " >&6; } + if test "${pkg_config_prog_path}" = "missing"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no - pkg-config not found" >&5 +$as_echo "no - pkg-config not found" >&6; } + if test "${enable_source_highlight}" = "yes"; then + as_fn_error $? "pkg-config was not found in your system" "$LINENO" 5 + fi + else + if ${pkg_config_prog_path} --exists source-highlight; then + case "$LDFLAGS" in + *static-libstdc*) + as_fn_error $? "source highlight is incompatible with -static-libstdc++; either use --disable-source-highlight or --without-static-standard-libraries" "$LINENO" 5 + ;; + esac + + SRCHIGH_CFLAGS=`${pkg_config_prog_path} --cflags source-highlight` + SRCHIGH_LIBS=`${pkg_config_prog_path} --libs source-highlight` + +$as_echo "#define HAVE_SOURCE_HIGHLIGHT 1" >>confdefs.h + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + if test "${enable_source_highlight}" = "yes"; then + as_fn_error $? "source-highlight was not found in your system" "$LINENO" 5 + fi + fi + fi +fi + + + +# ------------------------- # +# Checks for header files. # +# ------------------------- # + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +# elf_hp.h is for HP/UX 64-bit shared library support. +for ac_header in nlist.h machine/reg.h \ + thread_db.h \ + sys/file.h sys/filio.h sys/ioctl.h sys/param.h \ + sys/procctl.h sys/resource.h sys/ptrace.h ptrace.h \ + sys/reg.h sys/debugreg.h \ + termios.h elf_hp.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + +for ac_header in sys/user.h +do : + ac_fn_c_check_header_compile "$LINENO" "sys/user.h" "ac_cv_header_sys_user_h" "#if HAVE_SYS_PARAM_H +# include +#endif + +" +if test "x$ac_cv_header_sys_user_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_USER_H 1 +_ACEOF + +fi + +done + + +for ac_header in curses.h cursesX.h ncurses.h ncursesw/ncurses.h ncurses/ncurses.h ncurses/term.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + +for ac_header in term.h +do : + ac_fn_c_check_header_compile "$LINENO" "term.h" "ac_cv_header_term_h" "#if HAVE_CURSES_H +# include +#endif + +" +if test "x$ac_cv_header_term_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_TERM_H 1 +_ACEOF + +fi + +done + + +for ac_header in sys/socket.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_socket_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_SOCKET_H 1 +_ACEOF + +fi + +done + +for ac_header in ws2tcpip.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "ws2tcpip.h" "ac_cv_header_ws2tcpip_h" "$ac_includes_default" +if test "x$ac_cv_header_ws2tcpip_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_WS2TCPIP_H 1 +_ACEOF + +fi + +done + + +# ------------------------- # +# Checks for declarations. # +# ------------------------- # + + + # Check for presence and size of long long. + ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default" +if test "x$ac_cv_type_long_long" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_LONG_LONG 1 +_ACEOF + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5 +$as_echo_n "checking size of long long... " >&6; } +if ${ac_cv_sizeof_long_long+:} false; then : + $as_echo_n "(cached) " >&6 +else + if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long" "$ac_includes_default"; then : + +else + if test "$ac_cv_type_long_long" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "cannot compute sizeof (long long) +See \`config.log' for more details" "$LINENO" 5; } + else + ac_cv_sizeof_long_long=0 + fi +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5 +$as_echo "$ac_cv_sizeof_long_long" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long +_ACEOF + + +fi + + + as_ac_Symbol=`$as_echo "ac_cv_have_decl_basename(char *)" | $as_tr_sh` +ac_fn_c_check_decl "$LINENO" "basename(char *)" "$as_ac_Symbol" "$ac_includes_default" +if eval test \"x\$"$as_ac_Symbol"\" = x"yes"; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_BASENAME $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "ffs" "ac_cv_have_decl_ffs" "$ac_includes_default" +if test "x$ac_cv_have_decl_ffs" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FFS $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "asprintf" "ac_cv_have_decl_asprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_asprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_ASPRINTF $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "vasprintf" "ac_cv_have_decl_vasprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_vasprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_VASPRINTF $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_snprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_SNPRINTF $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "vsnprintf" "ac_cv_have_decl_vsnprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_vsnprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_VSNPRINTF $ac_have_decl +_ACEOF + + ac_fn_c_check_decl "$LINENO" "strtol" "ac_cv_have_decl_strtol" "$ac_includes_default" +if test "x$ac_cv_have_decl_strtol" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRTOL $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "strtoul" "ac_cv_have_decl_strtoul" "$ac_includes_default" +if test "x$ac_cv_have_decl_strtoul" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRTOUL $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "strtoll" "ac_cv_have_decl_strtoll" "$ac_includes_default" +if test "x$ac_cv_have_decl_strtoll" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRTOLL $ac_have_decl +_ACEOF +ac_fn_c_check_decl "$LINENO" "strtoull" "ac_cv_have_decl_strtoull" "$ac_includes_default" +if test "x$ac_cv_have_decl_strtoull" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRTOULL $ac_have_decl +_ACEOF + + ac_fn_c_check_decl "$LINENO" "strverscmp" "ac_cv_have_decl_strverscmp" "$ac_includes_default" +if test "x$ac_cv_have_decl_strverscmp" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRVERSCMP $ac_have_decl +_ACEOF + + + +ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_snprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_SNPRINTF $ac_have_decl +_ACEOF + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 +$as_echo_n "checking for LC_MESSAGES... " >&6; } +if ${am_cv_val_LC_MESSAGES+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +return LC_MESSAGES + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + am_cv_val_LC_MESSAGES=yes +else + am_cv_val_LC_MESSAGES=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 +$as_echo "$am_cv_val_LC_MESSAGES" >&6; } + if test $am_cv_val_LC_MESSAGES = yes; then + +$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h + + fi + + +# ------------------ # +# Checks for types. # +# ------------------ # + +ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include +#if HAVE_SYS_SOCKET_H +# include +#elif HAVE_WS2TCPIP_H +# include +#endif + +" +if test "x$ac_cv_type_socklen_t" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_SOCKLEN_T 1 +_ACEOF + + +fi + + +# ------------------------------------- # +# Checks for compiler characteristics. # +# ------------------------------------- # + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if ${ac_cv_c_const+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + +#ifndef __cplusplus + /* Ultrix mips cc rejects this sort of thing. */ + typedef int charset[2]; + const charset cs = { 0, 0 }; + /* SunOS 4.1.1 cc rejects this. */ + char const *const *pcpcc; + char **ppc; + /* NEC SVR4.0.2 mips cc rejects this. */ + struct point {int x, y;}; + static struct point const zero = {0,0}; + /* AIX XL C 1.02.0.0 rejects this. + It does not let you subtract one const X* pointer from another in + an arm of an if-expression whose if-part is not a constant + expression */ + const char *g = "string"; + pcpcc = &g + (g ? g-g : 0); + /* HPUX 7.0 cc rejects these. */ + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; + { /* SCO 3.2v4 cc rejects this sort of thing. */ + char tx; + char *t = &tx; + char const *s = 0 ? (char *) 0 : (char const *) 0; + + *t++ = 0; + if (s) return 0; + } + { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ + int x[] = {25, 17}; + const int *foo = &x[0]; + ++foo; + } + { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ + typedef const int *iptr; + iptr p = 0; + ++p; + } + { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying + "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ + struct s { int j; const int *ap[3]; } bx; + struct s *b = &bx; b->j = 5; + } + { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ + const int foo = 10; + if (!foo) return 0; + } + return !cs[0] && !zero.x; +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_const=yes +else + ac_cv_c_const=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } +if test $ac_cv_c_const = no; then + +$as_echo "#define const /**/" >>confdefs.h + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if ${ac_cv_c_inline+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_inline=$ac_kw +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 +$as_echo_n "checking whether byte ordering is bigendian... " >&6; } +if ${ac_cv_c_bigendian+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_c_bigendian=unknown + # See if we're dealing with a universal compiler. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __APPLE_CC__ + not a universal capable compiler + #endif + typedef int dummy; + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + # Check for potential -arch flags. It is not universal unless + # there are at least two -arch flags with different values. + ac_arch= + ac_prev= + for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do + if test -n "$ac_prev"; then + case $ac_word in + i?86 | x86_64 | ppc | ppc64) + if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then + ac_arch=$ac_word + else + ac_cv_c_bigendian=universal + break + fi + ;; + esac + ac_prev= + elif test "x$ac_word" = "x-arch"; then + ac_prev=arch + fi + done +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + if test $ac_cv_c_bigendian = unknown; then + # See if sys/param.h defines the BYTE_ORDER macro. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + +int +main () +{ +#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ + && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ + && LITTLE_ENDIAN) + bogus endian macros + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + # It does; now see whether it defined to BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +int +main () +{ +#if BYTE_ORDER != BIG_ENDIAN + not big endian + #endif - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then - found_dir="$dir" - found_so="$dir/lib$name.$shlibext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - else - if test -f "$dir/lib$name.$libext"; then - found_dir="$dir" - found_a="$dir/lib$name.$libext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$hardcode_direct" = yes; then - LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" - else - if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBIPT; do + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_bigendian=yes +else + ac_cv_c_bigendian=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +int +main () +{ +#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) + bogus endian macros + #endif - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBIPT="${LIBIPT}${LIBIPT:+ }-L$found_dir" - fi - if test "$hardcode_minus_L" != no; then - LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" - else - LIBIPT="${LIBIPT}${LIBIPT:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBIPT="${LIBIPT}${LIBIPT:+ }$found_a" - else - LIBIPT="${LIBIPT}${LIBIPT:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCIPT; do + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + # It does; now see whether it defined to _BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +int +main () +{ +#ifndef _BIG_ENDIAN + not big endian + #endif - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCIPT="${INCIPT}${INCIPT:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/lib"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBIPT; do + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_bigendian=yes +else + ac_cv_c_bigendian=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # Compile a test program. + if test "$cross_compiling" = yes; then : + # Try to guess by grepping values from an object file. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +short int ascii_mm[] = + { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; + short int ascii_ii[] = + { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; + int use_ascii (int i) { + return ascii_mm[i] + ascii_ii[i]; + } + short int ebcdic_ii[] = + { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; + short int ebcdic_mm[] = + { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; + int use_ebcdic (int i) { + return ebcdic_mm[i] + ebcdic_ii[i]; + } + extern int foo; - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +int +main () +{ +return use_ascii (foo) == use_ebcdic (foo); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then + ac_cv_c_bigendian=yes + fi + if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then + if test "$ac_cv_c_bigendian" = unknown; then + ac_cv_c_bigendian=no + else + # finding both strings is unlikely to happen, but who knows? + ac_cv_c_bigendian=unknown + fi + fi +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBIPT="${LIBIPT}${LIBIPT:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBIPT; do + /* Are we little or big endian? From Harbison&Steele. */ + union + { + long int l; + char c[sizeof (long int)]; + } u; + u.l = 1; + return u.c[sizeof (long int) - 1] == 1; - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_c_bigendian=no +else + ac_cv_c_bigendian=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBIPT="${LIBIPT}${LIBIPT:+ }$dep" - LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }$dep" - ;; - esac - done - fi - else - LIBIPT="${LIBIPT}${LIBIPT:+ }-l$name" - LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBIPT="${LIBIPT}${LIBIPT:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBIPT="${LIBIPT}${LIBIPT:+ }$flag" - done fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-R$found_dir" - done - fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 +$as_echo "$ac_cv_c_bigendian" >&6; } + case $ac_cv_c_bigendian in #( + yes) + $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h +;; #( + no) + ;; #( + universal) +$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h - ac_save_CPPFLAGS="$CPPFLAGS" + ;; #( + *) + as_fn_error $? "unknown endianness + presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; + esac - for element in $INCIPT; do - haveit= - for x in $CPPFLAGS; do - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +# ------------------------------ # +# Checks for library functions. # +# ------------------------------ # - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done +for ac_func in getuid getgid \ + pipe pread pread64 pwrite resize_term \ + getpgid setsid \ + sigaction sigsetmask socketpair \ + ttrace wborder wresize setlocale iconvlist libiconvlist btowc \ + setrlimit getrlimit posix_madvise waitpid \ + use_default_colors +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF +fi +done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libipt" >&5 -$as_echo_n "checking for libipt... " >&6; } -if ${ac_cv_libipt+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5 +$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } +if ${am_cv_langinfo_codeset+:} false; then : $as_echo_n "(cached) " >&6 else - - ac_save_LIBS="$LIBS" - LIBS="$LIBS $LIBIPT" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include "intel-pt.h" +#include int main () { -pt_insn_alloc_decoder (0); +char* cs = nl_langinfo(CODESET); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_libipt=yes + am_cv_langinfo_codeset=yes else - ac_cv_libipt=no + am_cv_langinfo_codeset=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LIBS="$ac_save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libipt" >&5 -$as_echo "$ac_cv_libipt" >&6; } - if test "$ac_cv_libipt" = yes; then - HAVE_LIBIPT=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 +$as_echo "$am_cv_langinfo_codeset" >&6; } + if test $am_cv_langinfo_codeset = yes; then -$as_echo "#define HAVE_LIBIPT 1" >>confdefs.h +$as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libipt" >&5 -$as_echo_n "checking how to link with libipt... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBIPT" >&5 -$as_echo "$LIBIPT" >&6; } - else - HAVE_LIBIPT=no - CPPFLAGS="$ac_save_CPPFLAGS" - LIBIPT= - LTLIBIPT= fi +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = xyes; then : + +else + +cat >>confdefs.h <<_ACEOF +#define size_t unsigned int +_ACEOF +fi - if test "$HAVE_LIBIPT" != yes; then - if test "$with_intel_pt" = yes; then - as_fn_error $? "libipt is missing or unusable" "$LINENO" 5 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libipt is missing or unusable; some features may be unavailable." >&5 -$as_echo "$as_me: WARNING: libipt is missing or unusable; some features may be unavailable." >&2;} - fi - else - save_LIBS=$LIBS - LIBS="$LIBS $LIBIPT" - for ac_func in pt_insn_event + for ac_header in $ac_header_list do : - ac_fn_c_check_func "$LINENO" "pt_insn_event" "ac_cv_func_pt_insn_event" -if test "x$ac_cv_func_pt_insn_event" = xyes; then : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define HAVE_PT_INSN_EVENT 1 +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi + done - ac_fn_c_check_member "$LINENO" "struct pt_insn" "enabled" "ac_cv_member_struct_pt_insn_enabled" "#include -" -if test "x$ac_cv_member_struct_pt_insn_enabled" = xyes; then : -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_PT_INSN_ENABLED 1 -_ACEOF -fi -ac_fn_c_check_member "$LINENO" "struct pt_insn" "resynced" "ac_cv_member_struct_pt_insn_resynced" "#include -" -if test "x$ac_cv_member_struct_pt_insn_resynced" = xyes; then : + + + +ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" +if test "x$ac_cv_type_pid_t" = xyes; then : + +else cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_PT_INSN_RESYNCED 1 +#define pid_t int _ACEOF - fi - LIBS=$save_LIBS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${ac_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed + { ac_script=; unset ac_script;} + if test -z "$SED"; then + ac_path_SED_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_SED" || continue +# Check for GNU ac_path_SED and select it if it is found. + # Check for GNU $ac_path_SED +case `"$ac_path_SED" --version 2>&1` in +*GNU*) + ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo '' >> "conftest.nl" + "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_SED_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_SED="$ac_path_SED" + ac_path_SED_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_SED_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_SED"; then + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi +else + ac_cv_path_SED=$SED fi -# ------------------------- # -# Checks for header files. # -# ------------------------- # +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +$as_echo "$ac_cv_path_SED" >&6; } + SED="$ac_cv_path_SED" + rm -f conftest.sed -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 + + # Set the 'development' global. + . $srcdir/../bfd/development.sh + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 @@ -12112,95 +13143,290 @@ rm -f conftest* fi -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + + # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works +# for constant arguments. Useless! +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5 +$as_echo_n "checking for working alloca.h... " >&6; } +if ${ac_cv_working_alloca_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +char *p = (char *) alloca (2 * sizeof (int)); + if (p) return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_working_alloca_h=yes +else + ac_cv_working_alloca_h=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5 +$as_echo "$ac_cv_working_alloca_h" >&6; } +if test $ac_cv_working_alloca_h = yes; then + +$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5 +$as_echo_n "checking for alloca... " >&6; } +if ${ac_cv_func_alloca_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __GNUC__ +# define alloca __builtin_alloca +#else +# ifdef _MSC_VER +# include +# define alloca _alloca +# else +# ifdef HAVE_ALLOCA_H +# include +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ +void *alloca (size_t); +# endif +# endif +# endif +# endif +#endif + +int +main () +{ +char *p = (char *) alloca (1); + if (p) return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_func_alloca_works=yes +else + ac_cv_func_alloca_works=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5 +$as_echo "$ac_cv_func_alloca_works" >&6; } + +if test $ac_cv_func_alloca_works = yes; then + +$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h + +else + # The SVR3 libPW and SVR4 libucb both contain incompatible functions +# that cause trouble. Some versions do not even contain alloca or +# contain a buggy version. If you still want to use their alloca, +# use ar to extract alloca.o from them instead of compiling alloca.c. + +ALLOCA=\${LIBOBJDIR}alloca.$ac_objext + +$as_echo "#define C_ALLOCA 1" >>confdefs.h + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5 +$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } +if ${ac_cv_os_cray+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined CRAY && ! defined CRAY2 +webecray +#else +wenotbecray +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "webecray" >/dev/null 2>&1; then : + ac_cv_os_cray=yes +else + ac_cv_os_cray=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5 +$as_echo "$ac_cv_os_cray" >&6; } +if test $ac_cv_os_cray = yes; then + for ac_func in _getb67 GETB67 getb67; do + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + +cat >>confdefs.h <<_ACEOF +#define CRAY_STACKSEG_END $ac_func +_ACEOF + + break +fi + + done +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5 +$as_echo_n "checking stack direction for C alloca... " >&6; } +if ${ac_cv_c_stack_direction+:} false; then : + $as_echo_n "(cached) " >&6 +else if test "$cross_compiling" = yes; then : - : + ac_cv_c_stack_direction=0 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif +$ac_includes_default +int +find_stack_direction (int *addr, int depth) +{ + int dir, dummy = 0; + if (! addr) + addr = &dummy; + *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1; + dir = depth ? find_stack_direction (addr, depth - 1) : 0; + return dir + dummy; +} -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int -main () +main (int argc, char **argv) { - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; + return find_stack_direction (0, argc + !argv + 20) < 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - + ac_cv_c_stack_direction=1 else - ac_cv_header_stdc=no + ac_cv_c_stack_direction=-1 fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5 +$as_echo "$ac_cv_c_stack_direction" >&6; } +cat >>confdefs.h <<_ACEOF +#define STACK_DIRECTION $ac_cv_c_stack_direction +_ACEOF -$as_echo "#define STDC_HEADERS 1" >>confdefs.h fi -# elf_hp.h is for HP/UX 64-bit shared library support. -for ac_header in nlist.h machine/reg.h poll.h sys/poll.h proc_service.h \ - thread_db.h \ - sys/file.h sys/filio.h sys/ioctl.h sys/param.h \ - sys/resource.h sys/procfs.h sys/ptrace.h ptrace.h \ - sys/reg.h sys/debugreg.h sys/select.h \ - termios.h elf_hp.h \ - dlfcn.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF -fi + WIN32APILIBS= + case ${host} in + *mingw32*) -done +$as_echo "#define USE_WIN32API 1" >>confdefs.h -for ac_header in sys/user.h -do : - ac_fn_c_check_header_compile "$LINENO" "sys/user.h" "ac_cv_header_sys_user_h" "#if HAVE_SYS_PARAM_H -# include -#endif + WIN32APILIBS="-lws2_32" + ;; + esac -" -if test "x$ac_cv_header_sys_user_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SYS_USER_H 1 + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5 +$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } +if ${am_cv_langinfo_codeset+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +char* cs = nl_langinfo(CODESET); + ; + return 0; +} _ACEOF +if ac_fn_c_try_link "$LINENO"; then : + am_cv_langinfo_codeset=yes +else + am_cv_langinfo_codeset=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 +$as_echo "$am_cv_langinfo_codeset" >&6; } + if test $am_cv_langinfo_codeset = yes; then -done +$as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h + fi -for ac_header in curses.h cursesX.h ncurses.h ncursesw/ncurses.h ncurses/ncurses.h ncurses/term.h + + for ac_header in linux/perf_event.h locale.h memory.h signal.h sys/resource.h sys/socket.h sys/un.h sys/wait.h thread_db.h wait.h termios.h dlfcn.h linux/elf.h proc_service.h poll.h sys/poll.h sys/select.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" @@ -12213,1066 +13439,1223 @@ fi done -for ac_header in term.h -do : - ac_fn_c_check_header_compile "$LINENO" "term.h" "ac_cv_header_term_h" "#if HAVE_CURSES_H -# include -#endif -" -if test "x$ac_cv_header_term_h" = xyes; then : + +for ac_func in getpagesize +do : + ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" +if test "x$ac_cv_func_getpagesize" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_TERM_H 1 +#define HAVE_GETPAGESIZE 1 _ACEOF fi - done - -# ------------------------- # -# Checks for declarations. # -# ------------------------- # - - - # Check for presence and size of long long. - ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default" -if test "x$ac_cv_type_long_long" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_LONG_LONG 1 -_ACEOF - -# The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5 -$as_echo_n "checking size of long long... " >&6; } -if ${ac_cv_sizeof_long_long+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5 +$as_echo_n "checking for working mmap... " >&6; } +if ${ac_cv_func_mmap_fixed_mapped+:} false; then : $as_echo_n "(cached) " >&6 else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long" "$ac_includes_default"; then : - + if test "$cross_compiling" = yes; then : + ac_cv_func_mmap_fixed_mapped=no else - if test "$ac_cv_type_long_long" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (long long) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_long_long=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5 -$as_echo "$ac_cv_sizeof_long_long" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long -_ACEOF - + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +/* malloc might have been renamed as rpl_malloc. */ +#undef malloc -fi +/* Thanks to Mike Haertel and Jim Avera for this test. + Here is a matrix of mmap possibilities: + mmap private not fixed + mmap private fixed at somewhere currently unmapped + mmap private fixed at somewhere already mapped + mmap shared not fixed + mmap shared fixed at somewhere currently unmapped + mmap shared fixed at somewhere already mapped + For private mappings, we should verify that changes cannot be read() + back from the file, nor mmap's back from the file at a different + address. (There have been systems where private was not correctly + implemented like the infamous i386 svr4.0, and systems where the + VM page cache was not coherent with the file system buffer cache + like early versions of FreeBSD and possibly contemporary NetBSD.) + For shared mappings, we should conversely verify that changes get + propagated back to all the places they're supposed to be. + Grep wants private fixed already mapped. + The main things grep needs to know about mmap are: + * does it exist and is it safe to write into the mmap'd area + * how to use it (BSD variants) */ - as_ac_Symbol=`$as_echo "ac_cv_have_decl_basename(char *)" | $as_tr_sh` -ac_fn_c_check_decl "$LINENO" "basename(char *)" "$as_ac_Symbol" "$ac_includes_default" -if eval test \"x\$"$as_ac_Symbol"\" = x"yes"; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +#include +#include -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_BASENAME $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "ffs" "ac_cv_have_decl_ffs" "$ac_includes_default" -if test "x$ac_cv_have_decl_ffs" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H +char *malloc (); +#endif -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FFS $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "asprintf" "ac_cv_have_decl_asprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_asprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +/* This mess was copied from the GNU getpagesize.h. */ +#ifndef HAVE_GETPAGESIZE +# ifdef _SC_PAGESIZE +# define getpagesize() sysconf(_SC_PAGESIZE) +# else /* no _SC_PAGESIZE */ +# ifdef HAVE_SYS_PARAM_H +# include +# ifdef EXEC_PAGESIZE +# define getpagesize() EXEC_PAGESIZE +# else /* no EXEC_PAGESIZE */ +# ifdef NBPG +# define getpagesize() NBPG * CLSIZE +# ifndef CLSIZE +# define CLSIZE 1 +# endif /* no CLSIZE */ +# else /* no NBPG */ +# ifdef NBPC +# define getpagesize() NBPC +# else /* no NBPC */ +# ifdef PAGESIZE +# define getpagesize() PAGESIZE +# endif /* PAGESIZE */ +# endif /* no NBPC */ +# endif /* no NBPG */ +# endif /* no EXEC_PAGESIZE */ +# else /* no HAVE_SYS_PARAM_H */ +# define getpagesize() 8192 /* punt totally */ +# endif /* no HAVE_SYS_PARAM_H */ +# endif /* no _SC_PAGESIZE */ -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ASPRINTF $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "vasprintf" "ac_cv_have_decl_vasprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_vasprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +#endif /* no HAVE_GETPAGESIZE */ -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_VASPRINTF $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_snprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +int +main () +{ + char *data, *data2, *data3; + const char *cdata2; + int i, pagesize; + int fd, fd2; -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_SNPRINTF $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "vsnprintf" "ac_cv_have_decl_vsnprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_vsnprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi + pagesize = getpagesize (); -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_VSNPRINTF $ac_have_decl -_ACEOF + /* First, make a file with some known garbage in it. */ + data = (char *) malloc (pagesize); + if (!data) + return 1; + for (i = 0; i < pagesize; ++i) + *(data + i) = rand (); + umask (0); + fd = creat ("conftest.mmap", 0600); + if (fd < 0) + return 2; + if (write (fd, data, pagesize) != pagesize) + return 3; + close (fd); - ac_fn_c_check_decl "$LINENO" "strtol" "ac_cv_have_decl_strtol" "$ac_includes_default" -if test "x$ac_cv_have_decl_strtol" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi + /* Next, check that the tail of a page is zero-filled. File must have + non-zero length, otherwise we risk SIGBUS for entire page. */ + fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600); + if (fd2 < 0) + return 4; + cdata2 = ""; + if (write (fd2, cdata2, 1) != 1) + return 5; + data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L); + if (data2 == MAP_FAILED) + return 6; + for (i = 0; i < pagesize; ++i) + if (*(data2 + i)) + return 7; + close (fd2); + if (munmap (data2, pagesize)) + return 8; -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRTOL $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "strtoul" "ac_cv_have_decl_strtoul" "$ac_includes_default" -if test "x$ac_cv_have_decl_strtoul" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi + /* Next, try to mmap the file at a fixed address which already has + something else allocated at it. If we can, also make sure that + we see the same garbage. */ + fd = open ("conftest.mmap", O_RDWR); + if (fd < 0) + return 9; + if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_FIXED, fd, 0L)) + return 10; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data2 + i)) + return 11; -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRTOUL $ac_have_decl + /* Finally, make sure that changes to the mapped area do not + percolate back to the file as seen by read(). (This is a bug on + some variants of i386 svr4.0.) */ + for (i = 0; i < pagesize; ++i) + *(data2 + i) = *(data2 + i) + 1; + data3 = (char *) malloc (pagesize); + if (!data3) + return 12; + if (read (fd, data3, pagesize) != pagesize) + return 13; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data3 + i)) + return 14; + close (fd); + return 0; +} _ACEOF -ac_fn_c_check_decl "$LINENO" "strtoll" "ac_cv_have_decl_strtoll" "$ac_includes_default" -if test "x$ac_cv_have_decl_strtoll" = xyes; then : - ac_have_decl=1 +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_mmap_fixed_mapped=yes else - ac_have_decl=0 + ac_cv_func_mmap_fixed_mapped=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRTOLL $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "strtoull" "ac_cv_have_decl_strtoull" "$ac_includes_default" -if test "x$ac_cv_have_decl_strtoull" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5 +$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; } +if test $ac_cv_func_mmap_fixed_mapped = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRTOULL $ac_have_decl -_ACEOF +$as_echo "#define HAVE_MMAP 1" >>confdefs.h - ac_fn_c_check_decl "$LINENO" "strverscmp" "ac_cv_have_decl_strverscmp" "$ac_includes_default" -if test "x$ac_cv_have_decl_strverscmp" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 fi +rm -f conftest.mmap conftest.txt -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRVERSCMP $ac_have_decl + for ac_header in vfork.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "vfork.h" "ac_cv_header_vfork_h" "$ac_includes_default" +if test "x$ac_cv_header_vfork_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_VFORK_H 1 _ACEOF - - -ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_snprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_SNPRINTF $ac_have_decl +done + +for ac_func in fork vfork +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF +fi +done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 -$as_echo_n "checking for LC_MESSAGES... " >&6; } -if ${am_cv_val_LC_MESSAGES+:} false; then : +if test "x$ac_cv_func_fork" = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fork" >&5 +$as_echo_n "checking for working fork... " >&6; } +if ${ac_cv_func_fork_works+:} false; then : $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ac_cv_func_fork_works=cross else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +$ac_includes_default int main () { -return LC_MESSAGES + + /* By Ruediger Kuhlmann. */ + return fork () < 0; + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_val_LC_MESSAGES=yes +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_fork_works=yes else - am_cv_val_LC_MESSAGES=no + ac_cv_func_fork_works=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 -$as_echo "$am_cv_val_LC_MESSAGES" >&6; } - if test $am_cv_val_LC_MESSAGES = yes; then - -$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h - - fi - - -# ----------------------- # -# Checks for structures. # -# ----------------------- # - -ac_fn_c_check_member "$LINENO" "struct stat" "st_blocks" "ac_cv_member_struct_stat_st_blocks" "$ac_includes_default" -if test "x$ac_cv_member_struct_stat_st_blocks" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_BLOCKS 1 -_ACEOF - fi -ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default" -if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 -_ACEOF - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_fork_works" >&5 +$as_echo "$ac_cv_func_fork_works" >&6; } +else + ac_cv_func_fork_works=$ac_cv_func_fork fi - - -# ------------------ # -# Checks for types. # -# ------------------ # - -ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include -#include - -" -if test "x$ac_cv_type_socklen_t" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_SOCKLEN_T 1 -_ACEOF - - +if test "x$ac_cv_func_fork_works" = xcross; then + case $host in + *-*-amigaos* | *-*-msdosdjgpp*) + # Override, as these systems have only a dummy fork() stub + ac_cv_func_fork_works=no + ;; + *) + ac_cv_func_fork_works=yes + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5 +$as_echo "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;} fi - - -# ------------------------------------- # -# Checks for compiler characteristics. # -# ------------------------------------- # - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 -$as_echo_n "checking for an ANSI C-conforming const... " >&6; } -if ${ac_cv_c_const+:} false; then : +ac_cv_func_vfork_works=$ac_cv_func_vfork +if test "x$ac_cv_func_vfork" = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working vfork" >&5 +$as_echo_n "checking for working vfork... " >&6; } +if ${ac_cv_func_vfork_works+:} false; then : $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ac_cv_func_vfork_works=cross else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +/* Thanks to Paul Eggert for this test. */ +$ac_includes_default +#include +#ifdef HAVE_VFORK_H +# include +#endif +/* On some sparc systems, changes by the child to local and incoming + argument registers are propagated back to the parent. The compiler + is told about this with #include , but some compilers + (e.g. gcc -O) don't grok . Test for this by using a + static variable whose address is put into a register that is + clobbered by the vfork. */ +static void +#ifdef __cplusplus +sparc_address_test (int arg) +# else +sparc_address_test (arg) int arg; +#endif +{ + static pid_t child; + if (!child) { + child = vfork (); + if (child < 0) { + perror ("vfork"); + _exit(2); + } + if (!child) { + arg = getpid(); + write(-1, "", 0); + _exit (arg); + } + } +} int main () { + pid_t parent = getpid (); + pid_t child; -#ifndef __cplusplus - /* Ultrix mips cc rejects this sort of thing. */ - typedef int charset[2]; - const charset cs = { 0, 0 }; - /* SunOS 4.1.1 cc rejects this. */ - char const *const *pcpcc; - char **ppc; - /* NEC SVR4.0.2 mips cc rejects this. */ - struct point {int x, y;}; - static struct point const zero = {0,0}; - /* AIX XL C 1.02.0.0 rejects this. - It does not let you subtract one const X* pointer from another in - an arm of an if-expression whose if-part is not a constant - expression */ - const char *g = "string"; - pcpcc = &g + (g ? g-g : 0); - /* HPUX 7.0 cc rejects these. */ - ++pcpcc; - ppc = (char**) pcpcc; - pcpcc = (char const *const *) ppc; - { /* SCO 3.2v4 cc rejects this sort of thing. */ - char tx; - char *t = &tx; - char const *s = 0 ? (char *) 0 : (char const *) 0; + sparc_address_test (0); - *t++ = 0; - if (s) return 0; - } - { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ - int x[] = {25, 17}; - const int *foo = &x[0]; - ++foo; - } - { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ - typedef const int *iptr; - iptr p = 0; - ++p; - } - { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying - "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ - struct s { int j; const int *ap[3]; } bx; - struct s *b = &bx; b->j = 5; - } - { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ - const int foo = 10; - if (!foo) return 0; - } - return !cs[0] && !zero.x; -#endif + child = vfork (); - ; - return 0; + if (child == 0) { + /* Here is another test for sparc vfork register problems. This + test uses lots of local variables, at least as many local + variables as main has allocated so far including compiler + temporaries. 4 locals are enough for gcc 1.40.3 on a Solaris + 4.1.3 sparc, but we use 8 to be safe. A buggy compiler should + reuse the register of parent for one of the local variables, + since it will think that parent can't possibly be used any more + in this routine. Assigning to the local variable will thus + munge parent in the parent process. */ + pid_t + p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(), + p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid(); + /* Convince the compiler that p..p7 are live; otherwise, it might + use the same hardware register for all 8 local variables. */ + if (p != p1 || p != p2 || p != p3 || p != p4 + || p != p5 || p != p6 || p != p7) + _exit(1); + + /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent + from child file descriptors. If the child closes a descriptor + before it execs or exits, this munges the parent's descriptor + as well. Test for this by closing stdout in the child. */ + _exit(close(fileno(stdout)) != 0); + } else { + int status; + struct stat st; + + while (wait(&status) != child) + ; + return ( + /* Was there some problem with vforking? */ + child < 0 + + /* Did the child fail? (This shouldn't happen.) */ + || status + + /* Did the vfork/compiler bug occur? */ + || parent != getpid() + + /* Did the file descriptor bug occur? */ + || fstat(fileno(stdout), &st) != 0 + ); + } } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_const=yes +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_vfork_works=yes else - ac_cv_c_const=no + ac_cv_func_vfork_works=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 -$as_echo "$ac_cv_c_const" >&6; } -if test $ac_cv_c_const = no; then -$as_echo "#define const /**/" >>confdefs.h +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vfork_works" >&5 +$as_echo "$ac_cv_func_vfork_works" >&6; } +fi; +if test "x$ac_cv_func_fork_works" = xcross; then + ac_cv_func_vfork_works=$ac_cv_func_vfork + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5 +$as_echo "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;} fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 -$as_echo_n "checking for inline... " >&6; } -if ${ac_cv_c_inline+:} false; then : - $as_echo_n "(cached) " >&6 +if test "x$ac_cv_func_vfork_works" = xyes; then + +$as_echo "#define HAVE_WORKING_VFORK 1" >>confdefs.h + else - ac_cv_c_inline=no -for ac_kw in inline __inline__ __inline; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __cplusplus -typedef int foo_t; -static $ac_kw foo_t static_foo () {return 0; } -$ac_kw foo_t foo () {return 0; } -#endif -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_inline=$ac_kw -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test "$ac_cv_c_inline" != no && break -done +$as_echo "#define vfork fork" >>confdefs.h fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 -$as_echo "$ac_cv_c_inline" >&6; } +if test "x$ac_cv_func_fork_works" = xyes; then -case $ac_cv_c_inline in - inline | yes) ;; - *) - case $ac_cv_c_inline in - no) ac_val=;; - *) ac_val=$ac_cv_c_inline;; - esac - cat >>confdefs.h <<_ACEOF -#ifndef __cplusplus -#define inline $ac_val -#endif -_ACEOF - ;; -esac +$as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 -$as_echo_n "checking whether byte ordering is bigendian... " >&6; } -if ${ac_cv_c_bigendian+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_bigendian=unknown - # See if we're dealing with a universal compiler. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; +fi + for ac_func in fdwalk getrlimit pipe pipe2 poll socketpair sigaction \ + ptrace64 sbrk setns sigaltstack sigprocmask \ + setpgid setpgrp getrusage getauxval sigtimedwait +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # Check for potential -arch flags. It is not universal unless - # there are at least two -arch flags with different values. - ac_arch= - ac_prev= - for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do - if test -n "$ac_prev"; then - case $ac_word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then - ac_arch=$ac_word - else - ac_cv_c_bigendian=universal - break - fi - ;; - esac - ac_prev= - elif test "x$ac_word" = "x-arch"; then - ac_prev=arch - fi - done fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test $ac_cv_c_bigendian = unknown; then - # See if sys/param.h defines the BYTE_ORDER macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include +done + + + # This is needed for RHEL 5 and uclibc-ng < 1.0.39. + # These did not define ADDR_NO_RANDOMIZE in sys/personality.h, + # only in linux/personality.h. + ac_fn_c_check_decl "$LINENO" "ADDR_NO_RANDOMIZE" "ac_cv_have_decl_ADDR_NO_RANDOMIZE" "#include +" +if test "x$ac_cv_have_decl_ADDR_NO_RANDOMIZE" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -int -main () -{ -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ - && LITTLE_ENDIAN) - bogus endian macros - #endif +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_ADDR_NO_RANDOMIZE $ac_have_decl +_ACEOF - ; - return 0; -} + + ac_fn_c_check_decl "$LINENO" "strstr" "ac_cv_have_decl_strstr" "$ac_includes_default" +if test "x$ac_cv_have_decl_strstr" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRSTR $ac_have_decl _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include -int -main () -{ -#if BYTE_ORDER != BIG_ENDIAN - not big endian - #endif - ; - return 0; -} + # ----------------------- # + # Checks for structures. # + # ----------------------- # + + ac_fn_c_check_member "$LINENO" "struct stat" "st_blocks" "ac_cv_member_struct_stat_st_blocks" "$ac_includes_default" +if test "x$ac_cv_member_struct_stat_st_blocks" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_STAT_ST_BLOCKS 1 _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no + + fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_fn_c_check_member "$LINENO" "struct stat" "st_blksize" "ac_cv_member_struct_stat_st_blksize" "$ac_includes_default" +if test "x$ac_cv_member_struct_stat_st_blksize" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 +_ACEOF + + fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) - bogus endian macros - #endif - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to _BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + # On FreeBSD we need libutil for the kinfo_get* functions. On + # GNU/kFreeBSD systems, FreeBSD libutil is renamed to libutil-freebsd. + # Figure out which one to use. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing kinfo_getfile" >&5 +$as_echo_n "checking for library containing kinfo_getfile... " >&6; } +if ${ac_cv_search_kinfo_getfile+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char kinfo_getfile (); int main () { -#ifndef _BIG_ENDIAN - not big endian - #endif - +return kinfo_getfile (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes +for ac_lib in '' util util-freebsd; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_kinfo_getfile=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_kinfo_getfile+:} false; then : + break +fi +done +if ${ac_cv_search_kinfo_getfile+:} false; then : + else - ac_cv_c_bigendian=no + ac_cv_search_kinfo_getfile=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # Compile a test program. - if test "$cross_compiling" = yes; then : - # Try to guess by grepping values from an object file. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -short int ascii_mm[] = - { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - short int ascii_ii[] = - { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; - int use_ascii (int i) { - return ascii_mm[i] + ascii_ii[i]; - } - short int ebcdic_ii[] = - { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - short int ebcdic_mm[] = - { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; - int use_ebcdic (int i) { - return ebcdic_mm[i] + ebcdic_ii[i]; - } - extern int foo; +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_kinfo_getfile" >&5 +$as_echo "$ac_cv_search_kinfo_getfile" >&6; } +ac_res=$ac_cv_search_kinfo_getfile +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" -int -main () -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} +fi + + + # Define HAVE_KINFO_GETFILE if kinfo_getfile is available. + for ac_func in kinfo_getfile +do : + ac_fn_c_check_func "$LINENO" "kinfo_getfile" "ac_cv_func_kinfo_getfile" +if test "x$ac_cv_func_kinfo_getfile" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_KINFO_GETFILE 1 _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then - ac_cv_c_bigendian=yes - fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then - if test "$ac_cv_c_bigendian" = unknown; then - ac_cv_c_bigendian=no - else - # finding both strings is unlikely to happen, but who knows? - ac_cv_c_bigendian=unknown - fi - fi + fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +done + + + # Check for std::thread. This does not work on some platforms, like + # mingw and DJGPP. + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ax_pthread_ok=no + +# We used to check for pthread.h first, but this fails if pthread.h +# requires special compiler flags (e.g. on Tru64 or Sequent). +# It gets checked for in the link test anyway. + +# First of all, check if the user has set any of the PTHREAD_LIBS, +# etcetera environment variables, and if threads linking works using +# them: +if test "x$PTHREAD_CFLAGS$PTHREAD_LIBS" != "x"; then + ax_pthread_save_CC="$CC" + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + if test "x$PTHREAD_CC" != "x"; then : + CC="$PTHREAD_CC" +fi + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS" >&5 +$as_echo_n "checking for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_join (); int main () { - - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long int l; - char c[sizeof (long int)]; - } u; - u.l = 1; - return u.c[sizeof (long int) - 1] == 1; - +return pthread_join (); ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_bigendian=no -else - ac_cv_c_bigendian=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +if ac_fn_c_try_link "$LINENO"; then : + ax_pthread_ok=yes fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 +$as_echo "$ax_pthread_ok" >&6; } + if test "x$ax_pthread_ok" = "xno"; then + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" + fi + CC="$ax_pthread_save_CC" + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" +fi + +# We must check for the threads library under a number of different +# names; the ordering is very important because some systems +# (e.g. DEC) have both -lpthread and -lpthreads, where one of the +# libraries is broken (non-POSIX). + +# Create a list of thread flags to try. Items starting with a "-" are +# C compiler flags, and other items are library names, except for "none" +# which indicates that we try without any flags at all, and "pthread-config" +# which is a program returning the flags for the Pth emulation library. + +ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" + +# The ordering *is* (sometimes) important. Some notes on the +# individual items follow: + +# pthreads: AIX (must check this before -lpthread) +# none: in case threads are in libc; should be tried before -Kthread and +# other compiler flags to prevent continual compiler warnings +# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads), Tru64 +# (Note: HP C rejects this with "bad form for `-t' option") +# -pthreads: Solaris/gcc (Note: HP C also rejects) +# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it +# doesn't hurt to check since this sometimes defines pthreads and +# -D_REENTRANT too), HP C (must be checked before -lpthread, which +# is present but should not be used directly; and before -mthreads, +# because the compiler interprets this as "-mt" + "-hreads") +# -mthreads: Mingw32/gcc, Lynx/gcc +# pthread: Linux, etcetera +# --thread-safe: KAI C++ +# pthread-config: use pthread-config program (for GNU Pth library) - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 -$as_echo "$ac_cv_c_bigendian" >&6; } - case $ac_cv_c_bigendian in #( - yes) - $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h -;; #( - no) - ;; #( - universal) +case $host_os in + + freebsd*) + + # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) + # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h + ax_pthread_flags="-kthread lthread $ax_pthread_flags" + ;; - ;; #( - *) - as_fn_error $? "unknown endianness - presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; - esac + hpux*) + # From the cc(1) man page: "[-mt] Sets various -D flags to enable + # multi-threading and also sets -lpthread." -# ------------------------------ # -# Checks for library functions. # -# ------------------------------ # + ax_pthread_flags="-mt -pthread pthread $ax_pthread_flags" + ;; + openedition*) + # IBM z/OS requires a feature-test macro to be defined in order to + # enable POSIX threads at all, so give the user a hint if this is + # not set. (We don't define these ourselves, as they can affect + # other portions of the system API in unpredictable ways.) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - for ac_header in $ac_header_list -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF +# if !defined(_OPEN_THREADS) && !defined(_UNIX03_THREADS) + AX_PTHREAD_ZOS_MISSING +# endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "AX_PTHREAD_ZOS_MISSING" >/dev/null 2>&1; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support." >&5 +$as_echo "$as_me: WARNING: IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support." >&2;} fi +rm -f conftest* -done + ;; + solaris*) + # On Solaris (at least, for some versions), libc contains stubbed + # (non-functional) versions of the pthreads routines, so link-based + # tests will erroneously succeed. (N.B.: The stubs are missing + # pthread_cleanup_push, or rather a function called by this macro, + # so we could check for that, but who knows whether they'll stub + # that too in a future libc.) So we'll check first for the + # standard Solaris way of linking pthreads (-mt -lpthread). + ax_pthread_flags="-mt,pthread pthread $ax_pthread_flags" + ;; +esac +# GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) +if test "x$GCC" = "xyes"; then : + ax_pthread_flags="-pthread -pthreads $ax_pthread_flags" +fi +# The presence of a feature test macro requesting re-entrant function +# definitions is, on some systems, a strong hint that pthreads support is +# correctly enabled +case $host_os in + darwin* | hpux* | linux* | osf* | solaris*) + ax_pthread_check_macro="_REENTRANT" + ;; -for ac_func in getpagesize -do : - ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" -if test "x$ac_cv_func_getpagesize" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_GETPAGESIZE 1 -_ACEOF + aix*) + ax_pthread_check_macro="_THREAD_SAFE" + ;; + *) + ax_pthread_check_macro="--" + ;; +esac +if test "x$ax_pthread_check_macro" = "x--"; then : + ax_pthread_check_cond=0 +else + ax_pthread_check_cond="!defined($ax_pthread_check_macro)" fi -done -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5 -$as_echo_n "checking for working mmap... " >&6; } -if ${ac_cv_func_mmap_fixed_mapped+:} false; then : +# Are we compiling with Clang? + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC is Clang" >&5 +$as_echo_n "checking whether $CC is Clang... " >&6; } +if ${ax_cv_PTHREAD_CLANG+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - ac_cv_func_mmap_fixed_mapped=no -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ax_cv_PTHREAD_CLANG=no + # Note that Autoconf sets GCC=yes for Clang as well as GCC + if test "x$GCC" = "xyes"; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default -/* malloc might have been renamed as rpl_malloc. */ -#undef malloc +/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ +# if defined(__clang__) && defined(__llvm__) + AX_PTHREAD_CC_IS_CLANG +# endif -/* Thanks to Mike Haertel and Jim Avera for this test. - Here is a matrix of mmap possibilities: - mmap private not fixed - mmap private fixed at somewhere currently unmapped - mmap private fixed at somewhere already mapped - mmap shared not fixed - mmap shared fixed at somewhere currently unmapped - mmap shared fixed at somewhere already mapped - For private mappings, we should verify that changes cannot be read() - back from the file, nor mmap's back from the file at a different - address. (There have been systems where private was not correctly - implemented like the infamous i386 svr4.0, and systems where the - VM page cache was not coherent with the file system buffer cache - like early versions of FreeBSD and possibly contemporary NetBSD.) - For shared mappings, we should conversely verify that changes get - propagated back to all the places they're supposed to be. +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "AX_PTHREAD_CC_IS_CLANG" >/dev/null 2>&1; then : + ax_cv_PTHREAD_CLANG=yes +fi +rm -f conftest* - Grep wants private fixed already mapped. - The main things grep needs to know about mmap are: - * does it exist and is it safe to write into the mmap'd area - * how to use it (BSD variants) */ + fi -#include -#include +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_CLANG" >&5 +$as_echo "$ax_cv_PTHREAD_CLANG" >&6; } +ax_pthread_clang="$ax_cv_PTHREAD_CLANG" + +ax_pthread_clang_warning=no + +# Clang needs special handling, because older versions handle the -pthread +# option in a rather... idiosyncratic way + +if test "x$ax_pthread_clang" = "xyes"; then + + # Clang takes -pthread; it has never supported any other flag + + # (Note 1: This will need to be revisited if a system that Clang + # supports has POSIX threads in a separate library. This tends not + # to be the way of modern systems, but it's conceivable.) + + # (Note 2: On some systems, notably Darwin, -pthread is not needed + # to get POSIX threads support; the API is always present and + # active. We could reasonably leave PTHREAD_CFLAGS empty. But + # -pthread does define _REENTRANT, and while the Darwin headers + # ignore this macro, third-party headers might not.) + + PTHREAD_CFLAGS="-pthread" + PTHREAD_LIBS= + + ax_pthread_ok=yes + + # However, older versions of Clang make a point of warning the user + # that, in an invocation where only linking and no compilation is + # taking place, the -pthread option has no effect ("argument unused + # during compilation"). They expect -pthread to be passed in only + # when source code is being compiled. + # + # Problem is, this is at odds with the way Automake and most other + # C build frameworks function, which is that the same flags used in + # compilation (CFLAGS) are also used in linking. Many systems + # supported by AX_PTHREAD require exactly this for POSIX threads + # support, and in fact it is often not straightforward to specify a + # flag that is used only in the compilation phase and not in + # linking. Such a scenario is extremely rare in practice. + # + # Even though use of the -pthread flag in linking would only print + # a warning, this can be a nuisance for well-run software projects + # that build with -Werror. So if the active version of Clang has + # this misfeature, we search for an option to squash it. + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Clang needs flag to prevent \"argument unused\" warning when linking with -pthread" >&5 +$as_echo_n "checking whether Clang needs flag to prevent \"argument unused\" warning when linking with -pthread... " >&6; } +if ${ax_cv_PTHREAD_CLANG_NO_WARN_FLAG+:} false; then : + $as_echo_n "(cached) " >&6 +else + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG=unknown + # Create an alternate version of $ac_link that compiles and + # links in two steps (.c -> .o, .o -> exe) instead of one + # (.c -> exe), because the warning occurs only in the second + # step + ax_pthread_save_ac_link="$ac_link" + ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' + ax_pthread_link_step=`$as_echo "$ac_link" | sed "$ax_pthread_sed"` + ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" + ax_pthread_save_CFLAGS="$CFLAGS" + for ax_pthread_try in '' -Qunused-arguments -Wno-unused-command-line-argument unknown; do + if test "x$ax_pthread_try" = "xunknown"; then : + break +fi + CFLAGS="-Werror -Wunknown-warning-option $ax_pthread_try -pthread $ax_pthread_save_CFLAGS" + ac_link="$ax_pthread_save_ac_link" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int main(void){return 0;} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_link="$ax_pthread_2step_ac_link" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int main(void){return 0;} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + break +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext -#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H -char *malloc (); -#endif +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + done + ac_link="$ax_pthread_save_ac_link" + CFLAGS="$ax_pthread_save_CFLAGS" + if test "x$ax_pthread_try" = "x"; then : + ax_pthread_try=no +fi + ax_cv_PTHREAD_CLANG_NO_WARN_FLAG="$ax_pthread_try" -/* This mess was copied from the GNU getpagesize.h. */ -#ifndef HAVE_GETPAGESIZE -# ifdef _SC_PAGESIZE -# define getpagesize() sysconf(_SC_PAGESIZE) -# else /* no _SC_PAGESIZE */ -# ifdef HAVE_SYS_PARAM_H -# include -# ifdef EXEC_PAGESIZE -# define getpagesize() EXEC_PAGESIZE -# else /* no EXEC_PAGESIZE */ -# ifdef NBPG -# define getpagesize() NBPG * CLSIZE -# ifndef CLSIZE -# define CLSIZE 1 -# endif /* no CLSIZE */ -# else /* no NBPG */ -# ifdef NBPC -# define getpagesize() NBPC -# else /* no NBPC */ -# ifdef PAGESIZE -# define getpagesize() PAGESIZE -# endif /* PAGESIZE */ -# endif /* no NBPC */ -# endif /* no NBPG */ -# endif /* no EXEC_PAGESIZE */ -# else /* no HAVE_SYS_PARAM_H */ -# define getpagesize() 8192 /* punt totally */ -# endif /* no HAVE_SYS_PARAM_H */ -# endif /* no _SC_PAGESIZE */ +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" >&5 +$as_echo "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" >&6; } -#endif /* no HAVE_GETPAGESIZE */ + case "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" in + no | unknown) ;; + *) PTHREAD_CFLAGS="$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG $PTHREAD_CFLAGS" ;; + esac -int -main () -{ - char *data, *data2, *data3; - const char *cdata2; - int i, pagesize; - int fd, fd2; +fi # $ax_pthread_clang = yes - pagesize = getpagesize (); +if test "x$ax_pthread_ok" = "xno"; then +for ax_pthread_try_flag in $ax_pthread_flags; do - /* First, make a file with some known garbage in it. */ - data = (char *) malloc (pagesize); - if (!data) - return 1; - for (i = 0; i < pagesize; ++i) - *(data + i) = rand (); - umask (0); - fd = creat ("conftest.mmap", 0600); - if (fd < 0) - return 2; - if (write (fd, data, pagesize) != pagesize) - return 3; - close (fd); + case $ax_pthread_try_flag in + none) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5 +$as_echo_n "checking whether pthreads work without any flags... " >&6; } + ;; - /* Next, check that the tail of a page is zero-filled. File must have - non-zero length, otherwise we risk SIGBUS for entire page. */ - fd2 = open ("conftest.txt", O_RDWR | O_CREAT | O_TRUNC, 0600); - if (fd2 < 0) - return 4; - cdata2 = ""; - if (write (fd2, cdata2, 1) != 1) - return 5; - data2 = (char *) mmap (0, pagesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd2, 0L); - if (data2 == MAP_FAILED) - return 6; - for (i = 0; i < pagesize; ++i) - if (*(data2 + i)) - return 7; - close (fd2); - if (munmap (data2, pagesize)) - return 8; + -mt,pthread) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with -mt -lpthread" >&5 +$as_echo_n "checking whether pthreads work with -mt -lpthread... " >&6; } + PTHREAD_CFLAGS="-mt" + PTHREAD_LIBS="-lpthread" + ;; - /* Next, try to mmap the file at a fixed address which already has - something else allocated at it. If we can, also make sure that - we see the same garbage. */ - fd = open ("conftest.mmap", O_RDWR); - if (fd < 0) - return 9; - if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE, - MAP_PRIVATE | MAP_FIXED, fd, 0L)) - return 10; - for (i = 0; i < pagesize; ++i) - if (*(data + i) != *(data2 + i)) - return 11; + -*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $ax_pthread_try_flag" >&5 +$as_echo_n "checking whether pthreads work with $ax_pthread_try_flag... " >&6; } + PTHREAD_CFLAGS="$ax_pthread_try_flag" + ;; - /* Finally, make sure that changes to the mapped area do not - percolate back to the file as seen by read(). (This is a bug on - some variants of i386 svr4.0.) */ - for (i = 0; i < pagesize; ++i) - *(data2 + i) = *(data2 + i) + 1; - data3 = (char *) malloc (pagesize); - if (!data3) - return 12; - if (read (fd, data3, pagesize) != pagesize) - return 13; - for (i = 0; i < pagesize; ++i) - if (*(data + i) != *(data3 + i)) - return 14; - close (fd); - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_mmap_fixed_mapped=yes + pthread-config) + # Extract the first word of "pthread-config", so it can be a program name with args. +set dummy pthread-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ax_pthread_config+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_func_mmap_fixed_mapped=no + if test -n "$ax_pthread_config"; then + ac_cv_prog_ax_pthread_config="$ax_pthread_config" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ax_pthread_config="yes" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_prog_ax_pthread_config" && ac_cv_prog_ax_pthread_config="no" fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext fi - +ax_pthread_config=$ac_cv_prog_ax_pthread_config +if test -n "$ax_pthread_config"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_config" >&5 +$as_echo "$ax_pthread_config" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_fixed_mapped" >&5 -$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; } -if test $ac_cv_func_mmap_fixed_mapped = yes; then -$as_echo "#define HAVE_MMAP 1" >>confdefs.h + if test "x$ax_pthread_config" = "xno"; then : + continue fi -rm -f conftest.mmap conftest.txt + PTHREAD_CFLAGS="`pthread-config --cflags`" + PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" + ;; -ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" -if test "x$ac_cv_type_pid_t" = xyes; then : + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$ax_pthread_try_flag" >&5 +$as_echo_n "checking for the pthreads library -l$ax_pthread_try_flag... " >&6; } + PTHREAD_LIBS="-l$ax_pthread_try_flag" + ;; + esac -else + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + + # Check for various functions. We must include pthread.h, + # since some functions may be macros. (On the Sequent, we + # need a special flag -Kthread to make this header compile.) + # We check for pthread_join because it is in -lpthread on IRIX + # while pthread_create is in libc. We check for pthread_attr_init + # due to DEC craziness with -lpthreads. We check for + # pthread_cleanup_push because it is one of the few pthread + # functions on Solaris that doesn't have a non-functional libc stub. + # We try pthread_create on general principles. -cat >>confdefs.h <<_ACEOF -#define pid_t int + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +# if $ax_pthread_check_cond +# error "$ax_pthread_check_macro must be defined" +# endif + static void routine(void *a) { a = 0; } + static void *start_routine(void *a) { return a; } +int +main () +{ +pthread_t th; pthread_attr_t attr; + pthread_create(&th, 0, start_routine, 0); + pthread_join(th, 0); + pthread_attr_init(&attr); + pthread_cleanup_push(routine, 0); + pthread_cleanup_pop(0) /* ; */ + ; + return 0; +} _ACEOF - +if ac_fn_c_try_link "$LINENO"; then : + ax_pthread_ok=yes fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext -for ac_header in vfork.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "vfork.h" "ac_cv_header_vfork_h" "$ac_includes_default" -if test "x$ac_cv_header_vfork_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_VFORK_H 1 -_ACEOF + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 +$as_echo "$ax_pthread_ok" >&6; } + if test "x$ax_pthread_ok" = "xyes"; then : + break fi + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" done - -for ac_func in fork vfork -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - fi -done -if test "x$ac_cv_func_fork" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fork" >&5 -$as_echo_n "checking for working fork... " >&6; } -if ${ac_cv_func_fork_works+:} false; then : +# Various other checks: +if test "x$ax_pthread_ok" = "xyes"; then + ax_pthread_save_CFLAGS="$CFLAGS" + ax_pthread_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + + # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5 +$as_echo_n "checking for joinable pthread attribute... " >&6; } +if ${ax_cv_PTHREAD_JOINABLE_ATTR+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - ac_cv_func_fork_works=cross -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ax_cv_PTHREAD_JOINABLE_ATTR=unknown + for ax_pthread_attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default +#include int main () { - - /* By Ruediger Kuhlmann. */ - return fork () < 0; - +int attr = $ax_pthread_attr; return attr /* ; */ ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_fork_works=yes -else - ac_cv_func_fork_works=no +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_PTHREAD_JOINABLE_ATTR=$ax_pthread_attr; break fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + done + fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_JOINABLE_ATTR" >&5 +$as_echo "$ax_cv_PTHREAD_JOINABLE_ATTR" >&6; } + if test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xunknown" && \ + test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xPTHREAD_CREATE_JOINABLE" && \ + test "x$ax_pthread_joinable_attr_defined" != "xyes"; then : + +cat >>confdefs.h <<_ACEOF +#define PTHREAD_CREATE_JOINABLE $ax_cv_PTHREAD_JOINABLE_ATTR +_ACEOF + + ax_pthread_joinable_attr_defined=yes fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_fork_works" >&5 -$as_echo "$ac_cv_func_fork_works" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether more special flags are required for pthreads" >&5 +$as_echo_n "checking whether more special flags are required for pthreads... " >&6; } +if ${ax_cv_PTHREAD_SPECIAL_FLAGS+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_func_fork_works=$ac_cv_func_fork + ax_cv_PTHREAD_SPECIAL_FLAGS=no + case $host_os in + solaris*) + ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" + ;; + esac + fi -if test "x$ac_cv_func_fork_works" = xcross; then - case $host in - *-*-amigaos* | *-*-msdosdjgpp*) - # Override, as these systems have only a dummy fork() stub - ac_cv_func_fork_works=no - ;; - *) - ac_cv_func_fork_works=yes - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5 -$as_echo "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_SPECIAL_FLAGS" >&5 +$as_echo "$ax_cv_PTHREAD_SPECIAL_FLAGS" >&6; } + if test "x$ax_cv_PTHREAD_SPECIAL_FLAGS" != "xno" && \ + test "x$ax_pthread_special_flags_added" != "xyes"; then : + PTHREAD_CFLAGS="$ax_cv_PTHREAD_SPECIAL_FLAGS $PTHREAD_CFLAGS" + ax_pthread_special_flags_added=yes fi -ac_cv_func_vfork_works=$ac_cv_func_vfork -if test "x$ac_cv_func_vfork" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working vfork" >&5 -$as_echo_n "checking for working vfork... " >&6; } -if ${ac_cv_func_vfork_works+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5 +$as_echo_n "checking for PTHREAD_PRIO_INHERIT... " >&6; } +if ${ax_cv_PTHREAD_PRIO_INHERIT+:} false; then : $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - ac_cv_func_vfork_works=cross else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Thanks to Paul Eggert for this test. */ -$ac_includes_default -#include -#ifdef HAVE_VFORK_H -# include -#endif -/* On some sparc systems, changes by the child to local and incoming - argument registers are propagated back to the parent. The compiler - is told about this with #include , but some compilers - (e.g. gcc -O) don't grok . Test for this by using a - static variable whose address is put into a register that is - clobbered by the vfork. */ -static void -#ifdef __cplusplus -sparc_address_test (int arg) -# else -sparc_address_test (arg) int arg; -#endif -{ - static pid_t child; - if (!child) { - child = vfork (); - if (child < 0) { - perror ("vfork"); - _exit(2); - } - if (!child) { - arg = getpid(); - write(-1, "", 0); - _exit (arg); - } - } -} - +#include int main () { - pid_t parent = getpid (); - pid_t child; - - sparc_address_test (0); - - child = vfork (); +int i = PTHREAD_PRIO_INHERIT; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_PTHREAD_PRIO_INHERIT=yes +else + ax_cv_PTHREAD_PRIO_INHERIT=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext - if (child == 0) { - /* Here is another test for sparc vfork register problems. This - test uses lots of local variables, at least as many local - variables as main has allocated so far including compiler - temporaries. 4 locals are enough for gcc 1.40.3 on a Solaris - 4.1.3 sparc, but we use 8 to be safe. A buggy compiler should - reuse the register of parent for one of the local variables, - since it will think that parent can't possibly be used any more - in this routine. Assigning to the local variable will thus - munge parent in the parent process. */ - pid_t - p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(), - p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid(); - /* Convince the compiler that p..p7 are live; otherwise, it might - use the same hardware register for all 8 local variables. */ - if (p != p1 || p != p2 || p != p3 || p != p4 - || p != p5 || p != p6 || p != p7) - _exit(1); +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5 +$as_echo "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; } + if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes" && \ + test "x$ax_pthread_prio_inherit_defined" != "xyes"; then : - /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent - from child file descriptors. If the child closes a descriptor - before it execs or exits, this munges the parent's descriptor - as well. Test for this by closing stdout in the child. */ - _exit(close(fileno(stdout)) != 0); - } else { - int status; - struct stat st; +$as_echo "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h - while (wait(&status) != child) - ; - return ( - /* Was there some problem with vforking? */ - child < 0 + ax_pthread_prio_inherit_defined=yes - /* Did the child fail? (This shouldn't happen.) */ - || status +fi - /* Did the vfork/compiler bug occur? */ - || parent != getpid() + CFLAGS="$ax_pthread_save_CFLAGS" + LIBS="$ax_pthread_save_LIBS" - /* Did the file descriptor bug occur? */ - || fstat(fileno(stdout), &st) != 0 - ); - } -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_vfork_works=yes + # More AIX lossage: compile with *_r variant + if test "x$GCC" != "xyes"; then + case $host_os in + aix*) + case "x/$CC" in #( + x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) : + #handle absolute path differently from PATH based program lookup + case "x$CC" in #( + x/*) : + if as_fn_executable_p ${CC}_r; then : + PTHREAD_CC="${CC}_r" +fi ;; #( + *) : + for ac_prog in ${CC}_r +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_PTHREAD_CC+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_func_vfork_works=no + if test -n "$PTHREAD_CC"; then + ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_PTHREAD_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext fi - +PTHREAD_CC=$ac_cv_prog_PTHREAD_CC +if test -n "$PTHREAD_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5 +$as_echo "$PTHREAD_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vfork_works" >&5 -$as_echo "$ac_cv_func_vfork_works" >&6; } -fi; -if test "x$ac_cv_func_fork_works" = xcross; then - ac_cv_func_vfork_works=$ac_cv_func_vfork - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5 -$as_echo "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;} + + test -n "$PTHREAD_CC" && break +done +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + ;; +esac ;; #( + *) : + ;; +esac + ;; + esac + fi fi -if test "x$ac_cv_func_vfork_works" = xyes; then +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + -$as_echo "#define HAVE_WORKING_VFORK 1" >>confdefs.h -else -$as_echo "#define vfork fork" >>confdefs.h +# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: +if test "x$ax_pthread_ok" = "xyes"; then + threads=yes + : +else + ax_pthread_ok=no + threads=no fi -if test "x$ac_cv_func_fork_works" = xyes; then +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -$as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h + if test "$threads" = "yes"; then + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$PTHREAD_CFLAGS $save_CXXFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for std::thread" >&5 +$as_echo_n "checking for std::thread... " >&6; } +if ${gdb_cv_cxx_std_thread+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + void callback() { } +int +main () +{ +std::thread t(callback); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + gdb_cv_cxx_std_thread=yes +else + gdb_cv_cxx_std_thread=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_cxx_std_thread" >&5 +$as_echo "$gdb_cv_cxx_std_thread" >&6; } -for ac_func in getauxval getrusage getuid getgid \ - pipe poll pread pread64 pwrite resize_term \ - sbrk getpgid setpgid setpgrp setsid \ - sigaction sigprocmask sigsetmask socketpair \ - ttrace wborder wresize setlocale iconvlist libiconvlist btowc \ - setrlimit getrlimit posix_madvise waitpid \ - ptrace64 sigaltstack mkdtemp setns + # This check must be here, while LIBS includes any necessary + # threading library. + for ac_func in pthread_sigmask pthread_setname_np do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +ac_fn_cxx_check_func "$LINENO" "$ac_func" "$as_ac_var" if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 @@ -13282,1403 +14665,1484 @@ fi done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5 -$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } -if ${am_cv_langinfo_codeset+:} false; then : + LIBS="$save_LIBS" + CXXFLAGS="$save_CXXFLAGS" + fi + if test "$gdb_cv_cxx_std_thread" = "yes"; then + +$as_echo "#define CXX_STD_THREAD 1" >>confdefs.h + + fi + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigsetjmp" >&5 +$as_echo_n "checking for sigsetjmp... " >&6; } +if ${gdb_cv_func_sigsetjmp+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include int main () { -char* cs = nl_langinfo(CODESET); +sigjmp_buf env; + while (! sigsetjmp (env, 1)) + siglongjmp (env, 1); + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_langinfo_codeset=yes +if ac_fn_c_try_compile "$LINENO"; then : + gdb_cv_func_sigsetjmp=yes else - am_cv_langinfo_codeset=no + gdb_cv_func_sigsetjmp=no + fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 -$as_echo "$am_cv_langinfo_codeset" >&6; } - if test $am_cv_langinfo_codeset = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_sigsetjmp" >&5 +$as_echo "$gdb_cv_func_sigsetjmp" >&6; } + if test "$gdb_cv_func_sigsetjmp" = "yes"; then -$as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h +$as_echo "#define HAVE_SIGSETJMP 1" >>confdefs.h fi -ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" -if test "x$ac_cv_type_size_t" = xyes; then : +# Check whether --with-intel_pt was given. +if test "${with_intel_pt+set}" = set; then : + withval=$with_intel_pt; else - -cat >>confdefs.h <<_ACEOF -#define size_t unsigned int -_ACEOF - + with_intel_pt=auto fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use intel pt" >&5 +$as_echo_n "checking whether to use intel pt... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_intel_pt" >&5 +$as_echo "$with_intel_pt" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${with_intel_pt}" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: Intel Processor Trace support disabled; some features may be unavailable." >&2;} + HAVE_LIBIPT=no + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -#include -int -main () -{ + #include + #ifndef PERF_ATTR_SIZE_VER5 + # error + #endif - ; - return 0; -} _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes +if ac_fn_c_try_cpp "$LINENO"; then : + perf_event=yes else - ac_cv_header_stdc=no + perf_event=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext + if test "$perf_event" != yes; then + if test "$with_intel_pt" = yes; then + as_fn_error $? "linux/perf_event.h missing or too old" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: linux/perf_event.h missing or too old; some features may be unavailable." >&2;} + fi + fi -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : -else - ac_cv_header_stdc=no + + + + + + + use_additional=yes + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + +# Check whether --with-libipt-prefix was given. +if test "${with_libipt_prefix+set}" = set; then : + withval=$with_libipt_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi + fi -rm -f conftest* + +# Check whether --with-libipt-type was given. +if test "${with_libipt_type+set}" = set; then : + withval=$with_libipt_type; with_libipt_type=$withval +else + with_libipt_type=auto fi -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include + lib_type=`eval echo \$with_libipt_type` + + LIBIPT= + LTLIBIPT= + INCIPT= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='ipt ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBIPT="${LIBIPT}${LIBIPT:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBIPT; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBIPT; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBIPT="${LIBIPT}${LIBIPT:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBIPT="${LIBIPT}${LIBIPT:+ }$found_so" + else + LIBIPT="${LIBIPT}${LIBIPT:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBIPT="${LIBIPT}${LIBIPT:+ }$found_a" + else + LIBIPT="${LIBIPT}${LIBIPT:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCIPT; do -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -else - ac_cv_header_stdc=no -fi -rm -f conftest* + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCIPT="${INCIPT}${INCIPT:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBIPT; do -fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBIPT="${LIBIPT}${LIBIPT:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBIPT; do -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBIPT="${LIBIPT}${LIBIPT:+ }$dep" + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }$dep" + ;; + esac + done + fi + else + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBIPT="${LIBIPT}${LIBIPT:+ }-l$name" + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-l$name" + else + LIBIPT="${LIBIPT}${LIBIPT:+ }-l:lib$name.$libext" + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-l:lib$name.$libext" + fi + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBIPT="${LIBIPT}${LIBIPT:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBIPT="${LIBIPT}${LIBIPT:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBIPT="${LTLIBIPT}${LTLIBIPT:+ }-R$found_dir" + done + fi -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then -$as_echo "#define STDC_HEADERS 1" >>confdefs.h + ac_save_CPPFLAGS="$CPPFLAGS" -fi + for element in $INCIPT; do + haveit= + for x in $CPPFLAGS; do - # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works -# for constant arguments. Useless! -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5 -$as_echo_n "checking for working alloca.h... " >&6; } -if ${ac_cv_working_alloca_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -char *p = (char *) alloca (2 * sizeof (int)); - if (p) return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_working_alloca_h=yes -else - ac_cv_working_alloca_h=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5 -$as_echo "$ac_cv_working_alloca_h" >&6; } -if test $ac_cv_working_alloca_h = yes; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" -$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5 -$as_echo_n "checking for alloca... " >&6; } -if ${ac_cv_func_alloca_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libipt" >&5 +$as_echo_n "checking for libipt... " >&6; } +if ${ac_cv_libipt+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __GNUC__ -# define alloca __builtin_alloca -#else -# ifdef _MSC_VER -# include -# define alloca _alloca -# else -# ifdef HAVE_ALLOCA_H -# include -# else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca /* predefined by HP cc +Olibcalls */ -void *alloca (size_t); -# endif -# endif -# endif -# endif -#endif + ac_save_LIBS="$LIBS" + LIBS="$LIBS $LIBIPT" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include "intel-pt.h" int main () { -char *p = (char *) alloca (1); - if (p) return 0; +pt_insn_alloc_decoder (0); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_func_alloca_works=yes + ac_cv_libipt=yes else - ac_cv_func_alloca_works=no + ac_cv_libipt=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5 -$as_echo "$ac_cv_func_alloca_works" >&6; } - -if test $ac_cv_func_alloca_works = yes; then + LIBS="$ac_save_LIBS" -$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libipt" >&5 +$as_echo "$ac_cv_libipt" >&6; } + if test "$ac_cv_libipt" = yes; then + HAVE_LIBIPT=yes -else - # The SVR3 libPW and SVR4 libucb both contain incompatible functions -# that cause trouble. Some versions do not even contain alloca or -# contain a buggy version. If you still want to use their alloca, -# use ar to extract alloca.o from them instead of compiling alloca.c. +$as_echo "#define HAVE_LIBIPT 1" >>confdefs.h -ALLOCA=\${LIBOBJDIR}alloca.$ac_objext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libipt" >&5 +$as_echo_n "checking how to link with libipt... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBIPT" >&5 +$as_echo "$LIBIPT" >&6; } + else + HAVE_LIBIPT=no + CPPFLAGS="$ac_save_CPPFLAGS" + LIBIPT= + LTLIBIPT= + fi -$as_echo "#define C_ALLOCA 1" >>confdefs.h -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5 -$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } -if ${ac_cv_os_cray+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined CRAY && ! defined CRAY2 -webecray -#else -wenotbecray -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "webecray" >/dev/null 2>&1; then : - ac_cv_os_cray=yes -else - ac_cv_os_cray=no -fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5 -$as_echo "$ac_cv_os_cray" >&6; } -if test $ac_cv_os_cray = yes; then - for ac_func in _getb67 GETB67 getb67; do - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : -cat >>confdefs.h <<_ACEOF -#define CRAY_STACKSEG_END $ac_func + if test "$HAVE_LIBIPT" != yes; then + if test "$with_intel_pt" = yes; then + as_fn_error $? "libipt is missing or unusable" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libipt is missing or unusable; some features may be unavailable." >&5 +$as_echo "$as_me: WARNING: libipt is missing or unusable; some features may be unavailable." >&2;} + fi + else + save_LIBS=$LIBS + LIBS="$LIBS $LIBIPT" + for ac_func in pt_insn_event +do : + ac_fn_c_check_func "$LINENO" "pt_insn_event" "ac_cv_func_pt_insn_event" +if test "x$ac_cv_func_pt_insn_event" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_PT_INSN_EVENT 1 _ACEOF - break -fi - - done fi +done -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5 -$as_echo_n "checking stack direction for C alloca... " >&6; } -if ${ac_cv_c_stack_direction+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - ac_cv_c_stack_direction=0 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -find_stack_direction (int *addr, int depth) -{ - int dir, dummy = 0; - if (! addr) - addr = &dummy; - *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1; - dir = depth ? find_stack_direction (addr, depth - 1) : 0; - return dir + dummy; -} - -int -main (int argc, char **argv) -{ - return find_stack_direction (0, argc + !argv + 20) < 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_stack_direction=1 -else - ac_cv_c_stack_direction=-1 -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + ac_fn_c_check_member "$LINENO" "struct pt_insn" "enabled" "ac_cv_member_struct_pt_insn_enabled" "#include +" +if test "x$ac_cv_member_struct_pt_insn_enabled" = xyes; then : -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5 -$as_echo "$ac_cv_c_stack_direction" >&6; } cat >>confdefs.h <<_ACEOF -#define STACK_DIRECTION $ac_cv_c_stack_direction +#define HAVE_STRUCT_PT_INSN_ENABLED 1 _ACEOF fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5 -$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } -if ${am_cv_langinfo_codeset+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -char* cs = nl_langinfo(CODESET); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_langinfo_codeset=yes -else - am_cv_langinfo_codeset=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 -$as_echo "$am_cv_langinfo_codeset" >&6; } - if test $am_cv_langinfo_codeset = yes; then - -$as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h - - fi - - - for ac_header in linux/perf_event.h locale.h memory.h signal.h sys/resource.h sys/socket.h sys/un.h sys/wait.h thread_db.h wait.h termios.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +ac_fn_c_check_member "$LINENO" "struct pt_insn" "resynced" "ac_cv_member_struct_pt_insn_resynced" "#include +" +if test "x$ac_cv_member_struct_pt_insn_resynced" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_PT_INSN_RESYNCED 1 _ACEOF + fi -done + LIBS=$save_LIBS + fi + fi - for ac_func in fdwalk getrlimit pipe pipe2 socketpair sigaction +$as_echo "#define _STRUCTURED_PROC 1" >>confdefs.h + + for ac_header in sys/procfs.h do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + ac_fn_c_check_header_mongrel "$LINENO" "sys/procfs.h" "ac_cv_header_sys_procfs_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_procfs_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_SYS_PROCFS_H 1 _ACEOF fi -done - - - ac_fn_c_check_decl "$LINENO" "strerror" "ac_cv_have_decl_strerror" "$ac_includes_default" -if test "x$ac_cv_have_decl_strerror" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRERROR $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "strstr" "ac_cv_have_decl_strstr" "$ac_includes_default" -if test "x$ac_cv_have_decl_strstr" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRSTR $ac_have_decl -_ACEOF +done + if test "$ac_cv_header_sys_procfs_h" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigsetjmp" >&5 -$as_echo_n "checking for sigsetjmp... " >&6; } -if ${gdb_cv_func_sigsetjmp+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gregset_t in sys/procfs.h" >&5 +$as_echo_n "checking for gregset_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_gregset_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - +#define _SYSCALL32 +#include int main () { -sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1); +gregset_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_func_sigsetjmp=yes + bfd_cv_have_sys_procfs_type_gregset_t=yes else - gdb_cv_func_sigsetjmp=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_sigsetjmp" >&5 -$as_echo "$gdb_cv_func_sigsetjmp" >&6; } -if test $gdb_cv_func_sigsetjmp = yes; then - -$as_echo "#define HAVE_SIGSETJMP 1" >>confdefs.h - -fi - - -# Check the return and argument types of ptrace. - - -for ac_header in sys/ptrace.h ptrace.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF + bfd_cv_have_sys_procfs_type_gregset_t=no fi - -done - - -gdb_ptrace_headers=' -#include -#if HAVE_SYS_PTRACE_H -# include -#endif -#if HAVE_UNISTD_H -# include -#endif -' -# There is no point in checking if we don't have a prototype. -ac_fn_c_check_decl "$LINENO" "ptrace" "ac_cv_have_decl_ptrace" "$gdb_ptrace_headers -" -if test "x$ac_cv_have_decl_ptrace" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PTRACE $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : + if test $bfd_cv_have_sys_procfs_type_gregset_t = yes; then -else +$as_echo "#define HAVE_GREGSET_T 1" >>confdefs.h - : ${gdb_cv_func_ptrace_ret='int'} - : ${gdb_cv_func_ptrace_args='int,int,long,long'} + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_gregset_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_gregset_t" >&6; } -fi -# Check return type. Varargs (used on GNU/Linux) conflict with the -# empty argument list, so check for that explicitly. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of ptrace" >&5 -$as_echo_n "checking return type of ptrace... " >&6; } -if ${gdb_cv_func_ptrace_ret+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fpregset_t in sys/procfs.h" >&5 +$as_echo_n "checking for fpregset_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_fpregset_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$gdb_ptrace_headers + +#define _SYSCALL32 +#include int main () { -extern long ptrace (enum __ptrace_request, ...); +fpregset_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_func_ptrace_ret='long' + bfd_cv_have_sys_procfs_type_fpregset_t=yes +else + bfd_cv_have_sys_procfs_type_fpregset_t=no + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + + if test $bfd_cv_have_sys_procfs_type_fpregset_t = yes; then + +$as_echo "#define HAVE_FPREGSET_T 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_fpregset_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_fpregset_t" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset_t in sys/procfs.h" >&5 +$as_echo_n "checking for prgregset_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_prgregset_t+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$gdb_ptrace_headers + +#define _SYSCALL32 +#include int main () { -extern int ptrace (); +prgregset_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_func_ptrace_ret='int' + bfd_cv_have_sys_procfs_type_prgregset_t=yes else - gdb_cv_func_ptrace_ret='long' -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + bfd_cv_have_sys_procfs_type_prgregset_t=no + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_ptrace_ret" >&5 -$as_echo "$gdb_cv_func_ptrace_ret" >&6; } -cat >>confdefs.h <<_ACEOF -#define PTRACE_TYPE_RET $gdb_cv_func_ptrace_ret -_ACEOF + if test $bfd_cv_have_sys_procfs_type_prgregset_t = yes; then -# Check argument types. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking types of arguments for ptrace" >&5 -$as_echo_n "checking types of arguments for ptrace... " >&6; } -if ${gdb_cv_func_ptrace_args+:} false; then : +$as_echo "#define HAVE_PRGREGSET_T 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_prgregset_t" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prfpregset_t in sys/procfs.h" >&5 +$as_echo_n "checking for prfpregset_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_prfpregset_t+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$gdb_ptrace_headers + +#define _SYSCALL32 +#include int main () { -extern long ptrace (enum __ptrace_request, ...); +prfpregset_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_func_ptrace_args='enum __ptrace_request,int,long,long' + bfd_cv_have_sys_procfs_type_prfpregset_t=yes else + bfd_cv_have_sys_procfs_type_prfpregset_t=no -for gdb_arg1 in 'int' 'long'; do - for gdb_arg2 in 'pid_t' 'int' 'long'; do - for gdb_arg3 in 'int *' 'caddr_t' 'int' 'long' 'void *'; do - for gdb_arg4 in 'int' 'long' 'void *'; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$gdb_ptrace_headers -int -main () -{ - -extern $gdb_cv_func_ptrace_ret - ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4"; - break 4; fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - for gdb_arg5 in 'int *' 'int' 'long'; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +fi + + if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then + +$as_echo "#define HAVE_PRFPREGSET_T 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prfpregset_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_prfpregset_t" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset32_t in sys/procfs.h" >&5 +$as_echo_n "checking for prgregset32_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_prgregset32_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$gdb_ptrace_headers + +#define _SYSCALL32 +#include int main () { - -extern $gdb_cv_func_ptrace_ret - ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4, $gdb_arg5); - +prgregset32_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - -gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4,$gdb_arg5"; - break 5; -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done - done - done - done -done -# Provide a safe default value. -: ${gdb_cv_func_ptrace_args='int,int,long,long'} + bfd_cv_have_sys_procfs_type_prgregset32_t=yes +else + bfd_cv_have_sys_procfs_type_prgregset32_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_ptrace_args" >&5 -$as_echo "$gdb_cv_func_ptrace_args" >&6; } -ac_save_IFS=$IFS; IFS=',' -set dummy `echo "$gdb_cv_func_ptrace_args" | sed 's/\*/\*/g'` -IFS=$ac_save_IFS -shift - -cat >>confdefs.h <<_ACEOF -#define PTRACE_TYPE_ARG1 $1 -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PTRACE_TYPE_ARG3 $3 -_ACEOF + if test $bfd_cv_have_sys_procfs_type_prgregset32_t = yes; then -cat >>confdefs.h <<_ACEOF -#define PTRACE_TYPE_ARG4 $4 -_ACEOF - -if test -n "$5"; then - -cat >>confdefs.h <<_ACEOF -#define PTRACE_TYPE_ARG5 $5 -_ACEOF +$as_echo "#define HAVE_PRGREGSET32_T 1" >>confdefs.h -fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset32_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_prgregset32_t" >&6; } -if test "$cross_compiling" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setpgrp takes no argument" >&5 -$as_echo_n "checking whether setpgrp takes no argument... " >&6; } -if ${ac_cv_func_setpgrp_void+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lwpid_t in sys/procfs.h" >&5 +$as_echo_n "checking for lwpid_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_lwpid_t+:} false; then : $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - as_fn_error $? "cannot check setpgrp when cross compiling" "$LINENO" 5 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default + +#define _SYSCALL32 +#include int main () { -/* If this system has a BSD-style setpgrp which takes arguments, - setpgrp(1, 1) will fail with ESRCH and return -1, in that case - exit successfully. */ - return setpgrp (1,1) != -1; +lwpid_t avar ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_setpgrp_void=no +if ac_fn_c_try_compile "$LINENO"; then : + bfd_cv_have_sys_procfs_type_lwpid_t=yes else - ac_cv_func_setpgrp_void=yes + bfd_cv_have_sys_procfs_type_lwpid_t=no + fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_setpgrp_void" >&5 -$as_echo "$ac_cv_func_setpgrp_void" >&6; } -if test $ac_cv_func_setpgrp_void = yes; then + if test $bfd_cv_have_sys_procfs_type_lwpid_t = yes; then -$as_echo "#define SETPGRP_VOID 1" >>confdefs.h +$as_echo "#define HAVE_LWPID_T 1" >>confdefs.h -fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_lwpid_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_lwpid_t" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setpgrp takes no argument" >&5 -$as_echo_n "checking whether setpgrp takes no argument... " >&6; } -if ${ac_cv_func_setpgrp_void+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for psaddr_t in sys/procfs.h" >&5 +$as_echo_n "checking for psaddr_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_psaddr_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - +#define _SYSCALL32 +#include int main () { - - if (setpgrp(1,1) == -1) - exit (0); - else - exit (1); - +psaddr_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_func_setpgrp_void=no + bfd_cv_have_sys_procfs_type_psaddr_t=yes else - ac_cv_func_setpgrp_void=yes + bfd_cv_have_sys_procfs_type_psaddr_t=no + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_setpgrp_void" >&5 -$as_echo "$ac_cv_func_setpgrp_void" >&6; } -if test $ac_cv_func_setpgrp_void = yes; then - $as_echo "#define SETPGRP_VOID 1" >>confdefs.h -fi -fi + if test $bfd_cv_have_sys_procfs_type_psaddr_t = yes; then + +$as_echo "#define HAVE_PSADDR_T 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_psaddr_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_psaddr_t" >&6; } -# Assume we'll default to using the included libiberty regex. -gdb_use_included_regex=yes -# However, if the system regex is GNU regex, then default to *not* -# using the included regex. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU regex" >&5 -$as_echo_n "checking for GNU regex... " >&6; } -if ${gdb_cv_have_gnu_regex+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for elf_fpregset_t in sys/procfs.h" >&5 +$as_echo_n "checking for elf_fpregset_t in sys/procfs.h... " >&6; } + if ${bfd_cv_have_sys_procfs_type_elf_fpregset_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +#define _SYSCALL32 +#include int main () { -#define REGEX_INTERFACE_VERSION 1 -#if _GNU_REGEX_INTERFACE_VERSION != REGEX_INTERFACE_VERSION -# error "Version mismatch" -#endif +elf_fpregset_t avar ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_have_gnu_regex=yes + bfd_cv_have_sys_procfs_type_elf_fpregset_t=yes else - gdb_cv_have_gnu_regex=no + bfd_cv_have_sys_procfs_type_elf_fpregset_t=no + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_gnu_regex" >&5 -$as_echo "$gdb_cv_have_gnu_regex" >&6; } -if test $gdb_cv_have_gnu_regex = yes; then - gdb_use_included_regex=no -fi + if test $bfd_cv_have_sys_procfs_type_elf_fpregset_t = yes; then -# Check whether --with-included-regex was given. -if test "${with_included_regex+set}" = set; then : - withval=$with_included_regex; gdb_with_regex=$withval -else - gdb_with_regex=$gdb_use_included_regex -fi +$as_echo "#define HAVE_ELF_FPREGSET_T 1" >>confdefs.h -if test "$gdb_with_regex" = yes; then + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&5 +$as_echo "$bfd_cv_have_sys_procfs_type_elf_fpregset_t" >&6; } -$as_echo "#define USE_INCLUDED_REGEX 1" >>confdefs.h + fi -fi -# Check if defines `struct thread' with a td_pcb member. -ac_fn_c_check_member "$LINENO" "struct thread" "td_pcb" "ac_cv_member_struct_thread_td_pcb" "#include -#include +# Check the return and argument types of ptrace. -" -if test "x$ac_cv_member_struct_thread_td_pcb" = xyes; then : -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_THREAD_TD_PCB 1 +for ac_header in sys/ptrace.h ptrace.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF - fi +done -# See if defines `struct lwp`. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct lwp" >&5 -$as_echo_n "checking for struct lwp... " >&6; } -if ${gdb_cv_struct_lwp+:} false; then : + +gdb_ptrace_headers=' +#include +#if HAVE_SYS_PTRACE_H +# include +#endif +#if HAVE_UNISTD_H +# include +#endif +' + +# Check return type. Varargs (used on GNU/Linux) conflict with the +# empty argument list, so check for that explicitly. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of ptrace" >&5 +$as_echo_n "checking return type of ptrace... " >&6; } +if ${gdb_cv_func_ptrace_ret+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#define _KMEMUSER -#include + $gdb_ptrace_headers int main () { -struct lwp l; +extern long ptrace (enum __ptrace_request, ...); + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_struct_lwp=yes -else - gdb_cv_struct_lwp=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_struct_lwp" >&5 -$as_echo "$gdb_cv_struct_lwp" >&6; } -if test $gdb_cv_struct_lwp = yes; then - -$as_echo "#define HAVE_STRUCT_LWP 1" >>confdefs.h - -fi - -# See if degines `struct reg'. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct reg in machine/reg.h" >&5 -$as_echo_n "checking for struct reg in machine/reg.h... " >&6; } -if ${gdb_cv_struct_reg+:} false; then : - $as_echo_n "(cached) " >&6 + gdb_cv_func_ptrace_ret='long' else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include +$gdb_ptrace_headers int main () { -struct reg r; +extern int ptrace (); + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_struct_reg=yes + gdb_cv_func_ptrace_ret='int' else - gdb_cv_struct_reg=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_struct_reg" >&5 -$as_echo "$gdb_cv_struct_reg" >&6; } -if test $gdb_cv_struct_reg = yes; then - -$as_echo "#define HAVE_STRUCT_REG 1" >>confdefs.h + gdb_cv_func_ptrace_ret='long' fi - -# See if supports the %fs and %gs i386 segment registers. -# Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'. -ac_fn_c_check_member "$LINENO" "struct reg" "r_fs" "ac_cv_member_struct_reg_r_fs" "#include -#include -" -if test "x$ac_cv_member_struct_reg_r_fs" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_REG_R_FS 1 -_ACEOF - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -ac_fn_c_check_member "$LINENO" "struct reg" "r_gs" "ac_cv_member_struct_reg_r_gs" "#include -#include -" -if test "x$ac_cv_member_struct_reg_r_gs" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_REG_R_GS 1 -_ACEOF - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_ptrace_ret" >&5 +$as_echo "$gdb_cv_func_ptrace_ret" >&6; } -# See if supports the %fs_base and %gs_bas amd64 segment registers. -# Older amd64 Linux's don't have the fs_base and gs_base members of -# `struct user_regs_struct'. -ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "fs_base" "ac_cv_member_struct_user_regs_struct_fs_base" "#include -#include -" -if test "x$ac_cv_member_struct_user_regs_struct_fs_base" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_USER_REGS_STRUCT_FS_BASE 1 -_ACEOF - - -fi -ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "gs_base" "ac_cv_member_struct_user_regs_struct_gs_base" "#include -#include -" -if test "x$ac_cv_member_struct_user_regs_struct_gs_base" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_USER_REGS_STRUCT_GS_BASE 1 +#define PTRACE_TYPE_RET $gdb_cv_func_ptrace_ret _ACEOF -fi - - -# See if provides the PTRACE_GETREGS request. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTRACE_GETREGS" >&5 -$as_echo_n "checking for PTRACE_GETREGS... " >&6; } -if ${gdb_cv_have_ptrace_getregs+:} false; then : +# Check argument types. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking types of arguments for ptrace" >&5 +$as_echo_n "checking types of arguments for ptrace... " >&6; } +if ${gdb_cv_func_ptrace_args+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +$gdb_ptrace_headers int main () { -PTRACE_GETREGS; +extern long ptrace (enum __ptrace_request, ...); + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_have_ptrace_getregs=yes + gdb_cv_func_ptrace_args='enum __ptrace_request,int,long,long' else - gdb_cv_have_ptrace_getregs=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_ptrace_getregs" >&5 -$as_echo "$gdb_cv_have_ptrace_getregs" >&6; } -if test $gdb_cv_have_ptrace_getregs = yes; then + for gdb_arg1 in 'int' 'long'; do + for gdb_arg2 in 'pid_t' 'int' 'long'; do + for gdb_arg3 in 'int *' 'caddr_t' 'int' 'long' 'void *'; do + for gdb_arg4 in 'int' 'long' 'void *'; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$gdb_ptrace_headers +int +main () +{ +extern $gdb_cv_func_ptrace_ret ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4); -$as_echo "#define HAVE_PTRACE_GETREGS 1" >>confdefs.h + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4"; + break 4; fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# See if provides the PTRACE_GETFPXREGS request. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTRACE_GETFPXREGS" >&5 -$as_echo_n "checking for PTRACE_GETFPXREGS... " >&6; } -if ${gdb_cv_have_ptrace_getfpxregs+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + for gdb_arg5 in 'int *' 'int' 'long'; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +$gdb_ptrace_headers int main () { -PTRACE_GETFPXREGS; +extern $gdb_cv_func_ptrace_ret ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4, $gdb_arg5); + ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_have_ptrace_getfpxregs=yes -else - gdb_cv_have_ptrace_getfpxregs=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi +if ac_fn_c_try_compile "$LINENO"; then : + gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4,$gdb_arg5"; + break 5; + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done + done + done + done + done + # Provide a safe default value. + : ${gdb_cv_func_ptrace_args='int,int,long,long'} + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_func_ptrace_args" >&5 +$as_echo "$gdb_cv_func_ptrace_args" >&6; } + +ac_save_IFS=$IFS; IFS=',' +set dummy `echo "$gdb_cv_func_ptrace_args" | sed 's/\*/\*/g'` +IFS=$ac_save_IFS +shift + +cat >>confdefs.h <<_ACEOF +#define PTRACE_TYPE_ARG1 $1 +_ACEOF -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_ptrace_getfpxregs" >&5 -$as_echo "$gdb_cv_have_ptrace_getfpxregs" >&6; } -if test $gdb_cv_have_ptrace_getfpxregs = yes; then -$as_echo "#define HAVE_PTRACE_GETFPXREGS 1" >>confdefs.h +cat >>confdefs.h <<_ACEOF +#define PTRACE_TYPE_ARG3 $3 +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PTRACE_TYPE_ARG4 $4 +_ACEOF + +if test -n "$5"; then + +cat >>confdefs.h <<_ACEOF +#define PTRACE_TYPE_ARG5 $5 +_ACEOF fi -# See if provides the PT_GETDBREGS request. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PT_GETDBREGS" >&5 -$as_echo_n "checking for PT_GETDBREGS... " >&6; } -if ${gdb_cv_have_pt_getdbregs+:} false; then : + +if test "$cross_compiling" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setpgrp takes no argument" >&5 +$as_echo_n "checking whether setpgrp takes no argument... " >&6; } +if ${ac_cv_func_setpgrp_void+:} false; then : $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + as_fn_error $? "cannot check setpgrp when cross compiling" "$LINENO" 5 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include +$ac_includes_default int main () { -PT_GETDBREGS; +/* If this system has a BSD-style setpgrp which takes arguments, + setpgrp(1, 1) will fail with ESRCH and return -1, in that case + exit successfully. */ + return setpgrp (1,1) != -1; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_have_pt_getdbregs=yes +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_setpgrp_void=no else - gdb_cv_have_pt_getdbregs=no + ac_cv_func_setpgrp_void=yes fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_pt_getdbregs" >&5 -$as_echo "$gdb_cv_have_pt_getdbregs" >&6; } -if test $gdb_cv_have_pt_getdbregs = yes; then +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_setpgrp_void" >&5 +$as_echo "$ac_cv_func_setpgrp_void" >&6; } +if test $ac_cv_func_setpgrp_void = yes; then -$as_echo "#define HAVE_PT_GETDBREGS 1" >>confdefs.h +$as_echo "#define SETPGRP_VOID 1" >>confdefs.h fi -# See if provides the PT_GETXMMREGS request. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PT_GETXMMREGS" >&5 -$as_echo_n "checking for PT_GETXMMREGS... " >&6; } -if ${gdb_cv_have_pt_getxmmregs+:} false; then : +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setpgrp takes no argument" >&5 +$as_echo_n "checking whether setpgrp takes no argument... " >&6; } +if ${ac_cv_func_setpgrp_void+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include +#include int main () { -PT_GETXMMREGS; +if (setpgrp(1,1) == -1) + exit (0); + else + exit (1); + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gdb_cv_have_pt_getxmmregs=yes + ac_cv_func_setpgrp_void=no else - gdb_cv_have_pt_getxmmregs=no + ac_cv_func_setpgrp_void=yes + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_pt_getxmmregs" >&5 -$as_echo "$gdb_cv_have_pt_getxmmregs" >&6; } -if test $gdb_cv_have_pt_getxmmregs = yes; then - -$as_echo "#define HAVE_PT_GETXMMREGS 1" >>confdefs.h fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_setpgrp_void" >&5 +$as_echo "$ac_cv_func_setpgrp_void" >&6; } +if test "$ac_cv_func_setpgrp_void" = yes; then + $as_echo "#define SETPGRP_VOID 1" >>confdefs.h -# See if supports LWP names on FreeBSD -# Older FreeBSD versions don't have the pl_tdname member of -# `struct ptrace_lwpinfo'. -ac_fn_c_check_member "$LINENO" "struct ptrace_lwpinfo" "pl_tdname" "ac_cv_member_struct_ptrace_lwpinfo_pl_tdname" "#include -" -if test "x$ac_cv_member_struct_ptrace_lwpinfo_pl_tdname" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME 1 -_ACEOF - - +fi fi +# Check if defines `struct thread' with a td_pcb member. +ac_fn_c_check_member "$LINENO" "struct thread" "td_pcb" "ac_cv_member_struct_thread_td_pcb" "#include +#include -# See if supports syscall fields on FreeBSD. The -# pl_syscall_code member of `struct ptrace_lwpinfo' was added in -# FreeBSD 10.3. -ac_fn_c_check_member "$LINENO" "struct ptrace_lwpinfo" "pl_syscall_code" "ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" "#include " -if test "x$ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" = xyes; then : +if test "x$ac_cv_member_struct_thread_td_pcb" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE 1 +#define HAVE_STRUCT_THREAD_TD_PCB 1 _ACEOF fi -if test "$ac_cv_header_sys_procfs_h" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gregset_t in sys/procfs.h" >&5 -$as_echo_n "checking for gregset_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_gregset_t+:} false; then : +# See if defines `struct lwp`. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct lwp" >&5 +$as_echo_n "checking for struct lwp... " >&6; } +if ${gdb_cv_struct_lwp+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include + #define _KMEMUSER + #include int main () { -gregset_t avar +struct lwp l; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_gregset_t=yes + gdb_cv_struct_lwp=yes else - bfd_cv_have_sys_procfs_type_gregset_t=no + gdb_cv_struct_lwp=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - if test $bfd_cv_have_sys_procfs_type_gregset_t = yes; then +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_struct_lwp" >&5 +$as_echo "$gdb_cv_struct_lwp" >&6; } +if test "$gdb_cv_struct_lwp" = yes; then -$as_echo "#define HAVE_GREGSET_T 1" >>confdefs.h +$as_echo "#define HAVE_STRUCT_LWP 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_gregset_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_gregset_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fpregset_t in sys/procfs.h" >&5 -$as_echo_n "checking for fpregset_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_fpregset_t+:} false; then : +# See if degines `struct reg'. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct reg in machine/reg.h" >&5 +$as_echo_n "checking for struct reg in machine/reg.h... " >&6; } +if ${gdb_cv_struct_reg+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include + #include int main () { -fpregset_t avar +struct reg r; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_fpregset_t=yes + gdb_cv_struct_reg=yes else - bfd_cv_have_sys_procfs_type_fpregset_t=no + gdb_cv_struct_reg=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - if test $bfd_cv_have_sys_procfs_type_fpregset_t = yes; then +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_struct_reg" >&5 +$as_echo "$gdb_cv_struct_reg" >&6; } +if test "$gdb_cv_struct_reg" = yes; then -$as_echo "#define HAVE_FPREGSET_T 1" >>confdefs.h +$as_echo "#define HAVE_STRUCT_REG 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_fpregset_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_fpregset_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset_t in sys/procfs.h" >&5 -$as_echo_n "checking for prgregset_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_prgregset_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +# See if supports the %fs and %gs i386 segment registers. +# Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'. +ac_fn_c_check_member "$LINENO" "struct reg" "r_fs" "ac_cv_member_struct_reg_r_fs" "#include +#include +" +if test "x$ac_cv_member_struct_reg_r_fs" = xyes; then : -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include -int -main () -{ -prgregset_t avar - ; - return 0; -} +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_REG_R_FS 1 _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_prgregset_t=yes -else - bfd_cv_have_sys_procfs_type_prgregset_t=no + fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi +ac_fn_c_check_member "$LINENO" "struct reg" "r_gs" "ac_cv_member_struct_reg_r_gs" "#include +#include +" +if test "x$ac_cv_member_struct_reg_r_gs" = xyes; then : - if test $bfd_cv_have_sys_procfs_type_prgregset_t = yes; then +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_REG_R_GS 1 +_ACEOF -$as_echo "#define HAVE_PRGREGSET_T 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_prgregset_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prfpregset_t in sys/procfs.h" >&5 -$as_echo_n "checking for prfpregset_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_prfpregset_t+:} false; then : + +# See if provides the PTRACE_GETREGS request. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTRACE_GETREGS" >&5 +$as_echo_n "checking for PTRACE_GETREGS... " >&6; } +if ${gdb_cv_have_ptrace_getregs+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include int main () { -prfpregset_t avar +PTRACE_GETREGS; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_prfpregset_t=yes + gdb_cv_have_ptrace_getregs=yes else - bfd_cv_have_sys_procfs_type_prfpregset_t=no + gdb_cv_have_ptrace_getregs=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi - if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_ptrace_getregs" >&5 +$as_echo "$gdb_cv_have_ptrace_getregs" >&6; } +if test "$gdb_cv_have_ptrace_getregs" = yes; then -$as_echo "#define HAVE_PRFPREGSET_T 1" >>confdefs.h +$as_echo "#define HAVE_PTRACE_GETREGS 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prfpregset_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_prfpregset_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for prgregset32_t in sys/procfs.h" >&5 -$as_echo_n "checking for prgregset32_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_prgregset32_t+:} false; then : +# See if provides the PTRACE_GETFPXREGS request. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTRACE_GETFPXREGS" >&5 +$as_echo_n "checking for PTRACE_GETFPXREGS... " >&6; } +if ${gdb_cv_have_ptrace_getfpxregs+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include int main () { -prgregset32_t avar +PTRACE_GETFPXREGS; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_prgregset32_t=yes + gdb_cv_have_ptrace_getfpxregs=yes else - bfd_cv_have_sys_procfs_type_prgregset32_t=no + gdb_cv_have_ptrace_getfpxregs=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi - if test $bfd_cv_have_sys_procfs_type_prgregset32_t = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_ptrace_getfpxregs" >&5 +$as_echo "$gdb_cv_have_ptrace_getfpxregs" >&6; } +if test "$gdb_cv_have_ptrace_getfpxregs" = yes; then -$as_echo "#define HAVE_PRGREGSET32_T 1" >>confdefs.h +$as_echo "#define HAVE_PTRACE_GETFPXREGS 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_prgregset32_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_prgregset32_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lwpid_t in sys/procfs.h" >&5 -$as_echo_n "checking for lwpid_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_lwpid_t+:} false; then : +# See if provides the PT_GETDBREGS request. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PT_GETDBREGS" >&5 +$as_echo_n "checking for PT_GETDBREGS... " >&6; } +if ${gdb_cv_have_pt_getdbregs+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include + #include int main () { -lwpid_t avar +PT_GETDBREGS; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_lwpid_t=yes + gdb_cv_have_pt_getdbregs=yes else - bfd_cv_have_sys_procfs_type_lwpid_t=no + gdb_cv_have_pt_getdbregs=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi - if test $bfd_cv_have_sys_procfs_type_lwpid_t = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_pt_getdbregs" >&5 +$as_echo "$gdb_cv_have_pt_getdbregs" >&6; } +if test "$gdb_cv_have_pt_getdbregs" = yes; then -$as_echo "#define HAVE_LWPID_T 1" >>confdefs.h +$as_echo "#define HAVE_PT_GETDBREGS 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_lwpid_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_lwpid_t" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for psaddr_t in sys/procfs.h" >&5 -$as_echo_n "checking for psaddr_t in sys/procfs.h... " >&6; } - if ${bfd_cv_have_sys_procfs_type_psaddr_t+:} false; then : +# See if provides the PT_GETXMMREGS request. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PT_GETXMMREGS" >&5 +$as_echo_n "checking for PT_GETXMMREGS... " >&6; } +if ${gdb_cv_have_pt_getxmmregs+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#define _SYSCALL32 -/* Needed for new procfs interface on sparc-solaris. */ -#define _STRUCTURED_PROC 1 -#include +#include + #include int main () { -psaddr_t avar +PT_GETXMMREGS; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - bfd_cv_have_sys_procfs_type_psaddr_t=yes + gdb_cv_have_pt_getxmmregs=yes else - bfd_cv_have_sys_procfs_type_psaddr_t=no + gdb_cv_have_pt_getxmmregs=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi - if test $bfd_cv_have_sys_procfs_type_psaddr_t = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_pt_getxmmregs" >&5 +$as_echo "$gdb_cv_have_pt_getxmmregs" >&6; } +if test "$gdb_cv_have_pt_getxmmregs" = yes; then -$as_echo "#define HAVE_PSADDR_T 1" >>confdefs.h +$as_echo "#define HAVE_PT_GETXMMREGS 1" >>confdefs.h - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bfd_cv_have_sys_procfs_type_psaddr_t" >&5 -$as_echo "$bfd_cv_have_sys_procfs_type_psaddr_t" >&6; } +fi +# See if supports LWP names on FreeBSD +# Older FreeBSD versions don't have the pl_tdname member of +# `struct ptrace_lwpinfo'. +ac_fn_c_check_member "$LINENO" "struct ptrace_lwpinfo" "pl_tdname" "ac_cv_member_struct_ptrace_lwpinfo_pl_tdname" "#include +" +if test "x$ac_cv_member_struct_ptrace_lwpinfo_pl_tdname" = xyes; then : +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME 1 +_ACEOF - if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether prfpregset_t type is broken" >&5 -$as_echo_n "checking whether prfpregset_t type is broken... " >&6; } - if ${gdb_cv_prfpregset_t_broken+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - gdb_cv_prfpregset_t_broken=yes -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int main () - { - if (sizeof (prfpregset_t) == sizeof (void *)) - return 1; - return 0; - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gdb_cv_prfpregset_t_broken=no -else - gdb_cv_prfpregset_t_broken=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext fi -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_prfpregset_t_broken" >&5 -$as_echo "$gdb_cv_prfpregset_t_broken" >&6; } - if test $gdb_cv_prfpregset_t_broken = yes; then +# See if supports syscall fields on FreeBSD. The +# pl_syscall_code member of `struct ptrace_lwpinfo' was added in +# FreeBSD 10.3. +ac_fn_c_check_member "$LINENO" "struct ptrace_lwpinfo" "pl_syscall_code" "ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" "#include +" +if test "x$ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE 1 +_ACEOF -$as_echo "#define PRFPREGSET_T_BROKEN 1" >>confdefs.h - fi - fi fi + # Check if the compiler supports the `long long' type. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long support in compiler" >&5 @@ -14706,7 +16170,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_c_long_long" >&5 $as_echo "$gdb_cv_c_long_long" >&6; } -if test $gdb_cv_c_long_long != yes; then +if test "$gdb_cv_c_long_long" != yes; then # libdecnumber requires long long. as_fn_error $? "Compiler must support long long for GDB." "$LINENO" 5 fi @@ -14751,7 +16215,7 @@ fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_printf_has_long_long" >&5 $as_echo "$gdb_cv_printf_has_long_long" >&6; } -if test $gdb_cv_printf_has_long_long = yes; then +if test "$gdb_cv_printf_has_long_long" = yes; then $as_echo "#define PRINTF_HAS_LONG_LONG 1" >>confdefs.h @@ -14795,7 +16259,7 @@ fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_printf_has_decfloat" >&5 $as_echo "$gdb_cv_printf_has_decfloat" >&6; } -if test $gdb_cv_printf_has_decfloat = yes; then +if test "$gdb_cv_printf_has_decfloat" = yes; then $as_echo "#define PRINTF_HAS_DECFLOAT 1" >>confdefs.h @@ -14824,7 +16288,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_c_long_double" >&5 $as_echo "$gdb_cv_c_long_double" >&6; } -if test $gdb_cv_c_long_double = yes; then +if test "$gdb_cv_c_long_double" = yes; then $as_echo "#define HAVE_LONG_DOUBLE 1" >>confdefs.h @@ -14866,7 +16330,7 @@ fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_printf_has_long_double" >&5 $as_echo "$gdb_cv_printf_has_long_double" >&6; } -if test $gdb_cv_printf_has_long_double = yes; then +if test "$gdb_cv_printf_has_long_double" = yes; then $as_echo "#define PRINTF_HAS_LONG_DOUBLE 1" >>confdefs.h @@ -14908,7 +16372,7 @@ fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_scanf_has_long_double" >&5 $as_echo "$gdb_cv_scanf_has_long_double" >&6; } -if test $gdb_cv_scanf_has_long_double = yes; then +if test "$gdb_cv_scanf_has_long_double" = yes; then $as_echo "#define SCANF_HAS_LONG_DOUBLE 1" >>confdefs.h @@ -14921,16 +16385,15 @@ $as_echo_n "checking for -bbigtoc option... " >&6; } if ${gdb_cv_bigtoc+:} false; then : $as_echo_n "(cached) " >&6 else + SAVE_LDFLAGS=$LDFLAGS - SAVE_LDFLAGS=$LDFLAGS - - case $GCC in - yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;; - *) gdb_cv_bigtoc=-bbigtoc ;; - esac + case $GCC in + yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;; + *) gdb_cv_bigtoc=-bbigtoc ;; + esac - LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -14945,10 +16408,11 @@ if ac_fn_c_try_link "$LINENO"; then : else gdb_cv_bigtoc= + fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="${SAVE_LDFLAGS}" + LDFLAGS="${SAVE_LDFLAGS}" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_bigtoc" >&5 @@ -15013,7 +16477,7 @@ main () { int err; Py_Initialize (); - err = PyRun_SimpleString ("import itertools\n"); + err = PyRun_SimpleString ("import ctypes\n"); Py_Finalize (); return err == 0 ? 0 : 1; ; @@ -15045,7 +16509,7 @@ fi $as_echo "$found" >&6; } -if test ${build} = ${host} -a ${host} = ${target} ; then +if test "${build}" = "${host}" -a "${host}" = "${target}" ; then case ${host_os} in aix*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for AiX thread debugging library" >&5 @@ -15060,8 +16524,9 @@ int main () { #ifndef PTHDB_VERSION_3 - #error - #endif + #error + #endif + ; return 0; } @@ -15070,13 +16535,15 @@ if ac_fn_c_try_compile "$LINENO"; then : gdb_cv_have_aix_thread_debug=yes else gdb_cv_have_aix_thread_debug=no + fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_have_aix_thread_debug" >&5 $as_echo "$gdb_cv_have_aix_thread_debug" >&6; } - if test $gdb_cv_have_aix_thread_debug = yes; then + if test "$gdb_cv_have_aix_thread_debug" = yes; then CONFIG_SRCS="${CONFIG_SRCS} aix-thread.c" CONFIG_OBS="${CONFIG_OBS} aix-thread.o" LIBS="$LIBS -lpthdebug" @@ -15103,7 +16570,7 @@ _ACEOF fi if test "x$ac_cv_header_thread_db_h" = "xyes"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_NOTALLOC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_NOTALLOC" >&5 $as_echo_n "checking whether has TD_NOTALLOC... " >&6; } if ${gdb_cv_thread_db_h_has_td_notalloc+:} false; then : $as_echo_n "(cached) " >&6 @@ -15115,6 +16582,7 @@ int main () { int i = TD_NOTALLOC; + ; return 0; } @@ -15130,7 +16598,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_thread_db_h_has_td_notalloc" >&5 $as_echo "$gdb_cv_thread_db_h_has_td_notalloc" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_VERSION" >&5 + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_VERSION" >&5 $as_echo_n "checking whether has TD_VERSION... " >&6; } if ${gdb_cv_thread_db_h_has_td_version+:} false; then : $as_echo_n "(cached) " >&6 @@ -15142,6 +16611,7 @@ int main () { int i = TD_VERSION; + ; return 0; } @@ -15157,7 +16627,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_thread_db_h_has_td_version" >&5 $as_echo "$gdb_cv_thread_db_h_has_td_version" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_NOTLS" >&5 + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether has TD_NOTLS" >&5 $as_echo_n "checking whether has TD_NOTLS... " >&6; } if ${gdb_cv_thread_db_h_has_td_notls+:} false; then : $as_echo_n "(cached) " >&6 @@ -15169,6 +16640,7 @@ int main () { int i = TD_NOTLS; + ; return 0; } @@ -15201,80 +16673,6 @@ $as_echo "#define THREAD_DB_HAS_TD_NOTLS 1" >>confdefs.h fi -ac_fn_c_check_decl "$LINENO" "ADDR_NO_RANDOMIZE" "ac_cv_have_decl_ADDR_NO_RANDOMIZE" "#include -" -if test "x$ac_cv_have_decl_ADDR_NO_RANDOMIZE" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ADDR_NO_RANDOMIZE $ac_have_decl -_ACEOF - - -if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ - -# if !HAVE_DECL_ADDR_NO_RANDOMIZE -# define ADDR_NO_RANDOMIZE 0x0040000 -# endif - /* Test the flag could be set and stays set. */ - personality (personality (0xffffffff) | ADDR_NO_RANDOMIZE); - if (!(personality (personality (0xffffffff)) & ADDR_NO_RANDOMIZE)) - return 1 - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - have_personality=true -else - have_personality=false -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ - -# if !HAVE_DECL_ADDR_NO_RANDOMIZE -# define ADDR_NO_RANDOMIZE 0x0040000 -# endif - /* Test the flag could be set and stays set. */ - personality (personality (0xffffffff) | ADDR_NO_RANDOMIZE); - if (!(personality (personality (0xffffffff)) & ADDR_NO_RANDOMIZE)) - return 1 - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - have_personality=true -else - have_personality=false -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -if $have_personality -then - -$as_echo "#define HAVE_PERSONALITY 1" >>confdefs.h - -fi - case $host_os in go32* | *djgpp*) gdbinit=gdb.ini @@ -15290,6 +16688,12 @@ _ACEOF +cat >>confdefs.h <<_ACEOF +#define GDBEARLYINIT ".gdbearlyinit" +_ACEOF + + + # Support for --with-sysroot is a copy of GDB_AC_WITH_DIR, # except that the argument to --with-sysroot is optional. # --with-sysroot (or --with-sysroot=yes) sets the default sysroot path. @@ -15388,6 +16792,52 @@ _ACEOF +# Check whether --with-system-gdbinit-dir was given. +if test "${with_system_gdbinit_dir+set}" = set; then : + withval=$with_system_gdbinit_dir; + SYSTEM_GDBINIT_DIR=$withval +else + SYSTEM_GDBINIT_DIR= +fi + + + test "x$prefix" = xNONE && prefix="$ac_default_prefix" + test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + ac_define_dir=`eval echo $SYSTEM_GDBINIT_DIR` + ac_define_dir=`eval echo $ac_define_dir` + +cat >>confdefs.h <<_ACEOF +#define SYSTEM_GDBINIT_DIR "$ac_define_dir" +_ACEOF + + + + + if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then + if test "x$prefix" = xNONE; then + test_prefix=/usr/local + else + test_prefix=$prefix + fi + else + test_prefix=$exec_prefix + fi + value=0 + case ${ac_define_dir} in + "${test_prefix}"|"${test_prefix}/"*|\ + '${exec_prefix}'|'${exec_prefix}/'*) + value=1 + ;; + esac + +cat >>confdefs.h <<_ACEOF +#define SYSTEM_GDBINIT_DIR_RELOCATABLE $value +_ACEOF + + + + + # Check whether --enable-werror was given. if test "${enable_werror+set}" = set; then : enableval=$enable_werror; case "${enableval}" in @@ -15418,7 +16868,15 @@ build_warnings="-Wall -Wpointer-arith \ -Wno-error=deprecated-register \ -Wsuggest-override \ -Wimplicit-fallthrough=3 \ --Wduplicated-cond" +-Wduplicated-cond \ +-Wshadow=local \ +-Wdeprecated-copy \ +-Wdeprecated-copy-dtor \ +-Wredundant-move \ +-Wmissing-declarations \ +-Wmissing-prototypes \ +-Wstrict-null-sentinel \ +" case "${host}" in *-*-mingw32*) @@ -15515,13 +16973,30 @@ $as_echo_n "checking compiler warning flags... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ struct scoped_restore_base {}; - struct scoped_restore_tmpl : public scoped_restore_base { - ~scoped_restore_tmpl() {} - }; + struct scoped_restore_tmpl : public scoped_restore_base { + ~scoped_restore_tmpl() {} + }; int main () { const scoped_restore_base &b = scoped_restore_tmpl(); + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + WARN_CFLAGS="${WARN_CFLAGS} $w" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + ; return 0; } @@ -15529,9 +17004,50 @@ _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : WARN_CFLAGS="${WARN_CFLAGS} $w" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + CFLAGS="$saved_CFLAGS" + CXXFLAGS="$saved_CXXFLAGS" + esac + done + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${WARN_CFLAGS} ${WERROR_CFLAGS}" >&5 +$as_echo "${WARN_CFLAGS} ${WERROR_CFLAGS}" >&6; } +fi + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +# Check whether --enable-ubsan was given. +if test "${enable_ubsan+set}" = set; then : + enableval=$enable_ubsan; +else + enable_ubsan=no +fi + +if test "x$enable_ubsan" = xauto; then + if $development; then + enable_ubsan=yes + fi +fi +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + +if test "x$enable_ubsan" = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fsanitize=undefined is accepted" >&5 +$as_echo_n "checking whether -fsanitize=undefined is accepted... " >&6; } + saved_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS -fsanitize=undefined -fno-sanitize-recover=undefined" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -15542,21 +17058,22 @@ main () return 0; } _ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - WARN_CFLAGS="${WARN_CFLAGS} $w" +if ac_fn_cxx_try_link "$LINENO"; then : + enable_ubsan=yes +else + enable_ubsan=no + fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - CFLAGS="$saved_CFLAGS" - CXXFLAGS="$saved_CXXFLAGS" - esac - done - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${WARN_CFLAGS} ${WERROR_CFLAGS}" >&5 -$as_echo "${WARN_CFLAGS} ${WERROR_CFLAGS}" >&6; } +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CXXFLAGS="$saved_CXXFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_ubsan" >&5 +$as_echo "$enable_ubsan" >&6; } + if test "x$enable_ubsan" = xyes; then + WARN_CFLAGS="$WARN_CFLAGS -fsanitize=undefined -fno-sanitize-recover=undefined" + CONFIG_LDFLAGS="$CONFIG_LDFLAGS -fsanitize=undefined" + fi fi - - - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -15596,12 +17113,13 @@ case ${host} in *go32* ) SER_HARDWIRE=ser-go32.o ;; *djgpp* ) SER_HARDWIRE=ser-go32.o ;; *mingw32*) SER_HARDWIRE="ser-base.o ser-tcp.o ser-mingw.o" ;; + *) SER_HARDWIRE="$SER_HARDWIRE ser-uds.o" ;; esac # libreadline needs libuser32.a in a cygwin environment WIN32LIBS= -if test x$gdb_cv_os_cygwin = xyes; then +if test x"$gdb_cv_os_cygwin" = xyes; then WIN32LIBS="-luser32" case "${target}" in *cygwin*) WIN32LIBS="$WIN32LIBS -limagehlp" @@ -15610,15 +17128,8 @@ if test x$gdb_cv_os_cygwin = xyes; then fi # The ser-tcp.c module requires sockets. -case ${host} in - *mingw32*) - -$as_echo "#define USE_WIN32API 1" >>confdefs.h - - WIN32LIBS="$WIN32LIBS -lws2_32" - ;; -esac - +# Note that WIN32APILIBS is set by GDB_AC_COMMON. +WIN32LIBS="$WIN32LIBS $WIN32APILIBS" # Add ELF support to GDB, but only if BFD includes ELF support. @@ -15641,13 +17152,14 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include - #include "bfd.h" - #include "elf-bfd.h" - + #include + #include "bfd.h" + #include "elf-bfd.h" int main () { return bfd_get_elf_phdr_upper_bound (NULL); + ; return 0; } @@ -15656,17 +17168,20 @@ if ac_fn_c_try_link "$LINENO"; then : gdb_cv_var_elf=yes else gdb_cv_var_elf=no + fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_var_elf" >&5 $as_echo "$gdb_cv_var_elf" >&6; } CFLAGS=$OLD_CFLAGS LDFLAGS=$OLD_LDFLAGS LIBS=$OLD_LIBS -if test $gdb_cv_var_elf = yes; then - CONFIG_OBS="$CONFIG_OBS elfread.o stap-probe.o dtrace-probe.o" +if test "$gdb_cv_var_elf" = yes; then + CONFIG_OBS="$CONFIG_OBS elfread.o stap-probe.o dtrace-probe.o \ + gcore-elf.o elf-none-tdep.o" $as_echo "#define HAVE_ELF 1" >>confdefs.h @@ -15752,13 +17267,14 @@ else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include - #include "bfd.h" - #include "mach-o.h" - + #include + #include "bfd.h" + #include "mach-o.h" int main () { return bfd_mach_o_lookup_command (NULL, 0, NULL); + ; return 0; } @@ -15767,16 +17283,18 @@ if ac_fn_c_try_link "$LINENO"; then : gdb_cv_var_macho=yes else gdb_cv_var_macho=no + fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gdb_cv_var_macho" >&5 $as_echo "$gdb_cv_var_macho" >&6; } CFLAGS=$OLD_CFLAGS LDFLAGS=$OLD_LDFLAGS LIBS=$OLD_LIBS -if test $gdb_cv_var_macho = yes; then +if test "$gdb_cv_var_macho" = yes; then CONFIG_OBS="$CONFIG_OBS machoread.o" fi @@ -15784,7 +17302,7 @@ fi CONFIG_OBS="${CONFIG_OBS} ${gdb_host_obs}" # If building on ELF, look for lzma support for embedded compressed debug info. -if test $gdb_cv_var_elf = yes; then +if test "$gdb_cv_var_elf" = yes; then # Check whether --with-lzma was given. if test "${with_lzma+set}" = set; then : @@ -15848,6 +17366,16 @@ if test "${with_liblzma_prefix+set}" = set; then : fi + +# Check whether --with-liblzma-type was given. +if test "${with_liblzma_type+set}" = set; then : + withval=$with_liblzma_type; with_liblzma_type=$withval +else + with_liblzma_type=auto +fi + + lib_type=`eval echo \$with_liblzma_type` + LIBLZMA= LTLIBLZMA= INCLZMA= @@ -15885,13 +17413,13 @@ fi found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" @@ -15915,13 +17443,13 @@ fi case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" @@ -16149,8 +17677,13 @@ fi done fi else - LIBLZMA="${LIBLZMA}${LIBLZMA:+ }-l$name" - LTLIBLZMA="${LTLIBLZMA}${LTLIBLZMA:+ }-l$name" + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBLZMA="${LIBLZMA}${LIBLZMA:+ }-l$name" + LTLIBLZMA="${LTLIBLZMA}${LTLIBLZMA:+ }-l$name" + else + LIBLZMA="${LIBLZMA}${LIBLZMA:+ }-l:lib$name.$libext" + LTLIBLZMA="${LTLIBLZMA}${LTLIBLZMA:+ }-l:lib$name.$libext" + fi fi fi fi @@ -16778,7 +18311,7 @@ $as_echo "${private_dir}" >&6; } CONFIG_INSTALL="${CONFIG_INSTALL} install-gdbtk" CONFIG_UNINSTALL="${CONFIG_UNINSTALL} uninstall-gdbtk" - if test x$gdb_cv_os_cygwin = xyes; then + if test x"$gdb_cv_os_cygwin" = xyes; then WIN32LIBS="${WIN32LIBS} -lshell32 -lgdi32 -lcomdlg32 -ladvapi32" WIN32LDAPP="-Wl,--subsystem,console" CONFIG_OBS="${CONFIG_OBS} gdbres.o" @@ -17050,115 +18583,626 @@ fi -# List of host floatformats. +# List of host floatformats. + +cat >>confdefs.h <<_ACEOF +#define GDB_HOST_FLOAT_FORMAT $gdb_host_float_format +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define GDB_HOST_DOUBLE_FORMAT $gdb_host_double_format +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define GDB_HOST_LONG_DOUBLE_FORMAT $gdb_host_long_double_format +_ACEOF + + +# target_subdir is used by the testsuite to find the target libraries. +target_subdir= +if test "${host}" != "${target}"; then + target_subdir="${target_alias}/" +fi + + +# Import nat definitions. +nat_makefile_frag=/dev/null +if test "${gdb_native}" = "yes"; then + . ${srcdir}/configure.nat + nativefile=$NAT_FILE +fi + + + + + + + + + + + +if test x"${gdb_osabi}" != x ; then + +cat >>confdefs.h <<_ACEOF +#define GDB_OSABI_DEFAULT $gdb_osabi +_ACEOF + +fi + +# Check for babeltrace and babeltrace-ctf + +# Check whether --with-babeltrace was given. +if test "${with_babeltrace+set}" = set; then : + withval=$with_babeltrace; +else + with_babeltrace=auto +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use babeltrace" >&5 +$as_echo_n "checking whether to use babeltrace... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_babeltrace" >&5 +$as_echo "$with_babeltrace" >&6; } + +if test "x$with_babeltrace" = "xno"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: babletrace support disabled; GDB is unable to read CTF data." >&5 +$as_echo "$as_me: WARNING: babletrace support disabled; GDB is unable to read CTF data." >&2;} +else + # Append -Werror to CFLAGS so that configure can catch the warning + # "assignment from incompatible pointer type", which is related to + # the babeltrace change from 1.0.3 to 1.1.0. Babeltrace 1.1.0 works + # in GDB, while babeltrace 1.0.3 is broken. + # AC_LIB_HAVE_LINKFLAGS may modify CPPFLAGS in it, so it should be + # safe to save and restore CFLAGS here. + saved_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS -Werror" + + + + + + + + + use_additional=yes + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + +# Check whether --with-libbabeltrace-prefix was given. +if test "${with_libbabeltrace_prefix+set}" = set; then : + withval=$with_libbabeltrace_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi + +fi + + +# Check whether --with-libbabeltrace-type was given. +if test "${with_libbabeltrace_type+set}" = set; then : + withval=$with_libbabeltrace_type; with_libbabeltrace_type=$withval +else + with_libbabeltrace_type=auto +fi + + lib_type=`eval echo \$with_libbabeltrace_type` + + LIBBABELTRACE= + LTLIBBABELTRACE= + INCBABELTRACE= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='babeltrace babeltrace-ctf' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBBABELTRACE; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + elif test x$lib_type != xshared; then + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBBABELTRACE; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + else + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_a" + else + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCBABELTRACE; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCBABELTRACE="${INCBABELTRACE}${INCBABELTRACE:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBBABELTRACE; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBBABELTRACE; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$dep" + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }$dep" + ;; + esac + done + fi + else + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-l$name" + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-l$name" + else + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-l:lib$name.$libext" + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-l:lib$name.$libext" + fi + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-R$found_dir" + done + fi + + + ac_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCBABELTRACE; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done -cat >>confdefs.h <<_ACEOF -#define GDB_HOST_FLOAT_FORMAT $gdb_host_float_format -_ACEOF + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libbabeltrace" >&5 +$as_echo_n "checking for libbabeltrace... " >&6; } +if ${ac_cv_libbabeltrace+:} false; then : + $as_echo_n "(cached) " >&6 +else -cat >>confdefs.h <<_ACEOF -#define GDB_HOST_DOUBLE_FORMAT $gdb_host_double_format -_ACEOF + ac_save_LIBS="$LIBS" + LIBS="$LIBS $LIBBABELTRACE" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include +int +main () +{ +struct bt_iter_pos *pos = bt_iter_get_pos (bt_ctf_get_iter (NULL)); + struct bt_ctf_event *event = NULL; + const struct bt_definition *scope; + pos->type = BT_SEEK_BEGIN; + bt_iter_set_pos (bt_ctf_get_iter (NULL), pos); + scope = bt_ctf_get_top_level_scope (event, + BT_STREAM_EVENT_HEADER); + bt_ctf_get_uint64 (bt_ctf_get_field (event, scope, "id")); -cat >>confdefs.h <<_ACEOF -#define GDB_HOST_LONG_DOUBLE_FORMAT $gdb_host_long_double_format + ; + return 0; +} _ACEOF - - -# target_subdir is used by the testsuite to find the target libraries. -target_subdir= -if test "${host}" != "${target}"; then - target_subdir="${target_alias}/" +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_libbabeltrace=yes +else + ac_cv_libbabeltrace=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$ac_save_LIBS" - -# Import nat definitions. -nat_makefile_frag=/dev/null -if test "${gdb_native}" = "yes"; then - . ${srcdir}/configure.nat - nativefile=$NAT_FILE fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libbabeltrace" >&5 +$as_echo "$ac_cv_libbabeltrace" >&6; } + if test "$ac_cv_libbabeltrace" = yes; then + HAVE_LIBBABELTRACE=yes +$as_echo "#define HAVE_LIBBABELTRACE 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libbabeltrace" >&5 +$as_echo_n "checking how to link with libbabeltrace... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBBABELTRACE" >&5 +$as_echo "$LIBBABELTRACE" >&6; } + else + HAVE_LIBBABELTRACE=no + CPPFLAGS="$ac_save_CPPFLAGS" + LIBBABELTRACE= + LTLIBBABELTRACE= + fi + CFLAGS=$saved_CFLAGS - - -if test x"${gdb_osabi}" != x ; then - -cat >>confdefs.h <<_ACEOF -#define GDB_OSABI_DEFAULT $gdb_osabi -_ACEOF - + if test "$HAVE_LIBBABELTRACE" != yes; then + if test "$with_babeltrace" = yes; then + as_fn_error $? "babeltrace is missing or unusable" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: babeltrace is missing or unusable; GDB is unable to read CTF data." >&5 +$as_echo "$as_me: WARNING: babeltrace is missing or unusable; GDB is unable to read CTF data." >&2;} + fi + fi fi -# Check whether --enable-gdbserver was given. -if test "${enable_gdbserver+set}" = set; then : - enableval=$enable_gdbserver; case "${enableval}" in - yes| no|auto) ;; - *) as_fn_error $? "bad value ${enableval} for --enable-gdbserver option" "$LINENO" 5 ;; -esac +# Check for xxhash + +# Check whether --with-xxhash was given. +if test "${with_xxhash+set}" = set; then : + withval=$with_xxhash; else - enable_gdbserver=auto + with_xxhash=auto fi -# We only build gdbserver automatically in a native configuration, and -# only if the user did not explicitly disable its build. -if test "$gdb_native" = "yes" -a "$enable_gdbserver" != "no"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gdbserver is supported on this host" >&5 -$as_echo_n "checking whether gdbserver is supported on this host... " >&6; } - if test "x$build_gdbserver" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - subdirs="$subdirs gdbserver" + # Check whether --enable-libctf was given. +if test "${enable_libctf+set}" = set; then : + enableval=$enable_libctf; + case "$enableval" in + yes|no) ;; + *) as_fn_error $? "Argument to enable/disable libctf must be yes or no" "$LINENO" 5 ;; + esac - gdbserver_build_enabled=yes - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi +else + enable_libctf=yes fi -# If the user explicitly request the gdbserver to be built, verify that -# we were in fact able to enable it. -if test "$enable_gdbserver" = "yes" -a "$gdbserver_build_enabled" != "yes"; then - as_fn_error $? "Automatic gdbserver build is not supported for this configuration" "$LINENO" 5 + +if test x${enable_static} = xno; then + LIBCTF="-Wl,--rpath,../libctf/.libs ../libctf/.libs/libctf.so" + CTF_DEPS="../libctf/.libs/libctf.so" +else + LIBCTF="../libctf/.libs/libctf.a" + CTF_DEPS="$LIBCTF" fi +if test "${enable_libctf}" = yes; then -# Check for babeltrace and babeltrace-ctf +$as_echo "#define ENABLE_LIBCTF 1" >>confdefs.h -# Check whether --with-babeltrace was given. -if test "${with_babeltrace+set}" = set; then : - withval=$with_babeltrace; else - with_babeltrace=auto + LIBCTF= + CTF_DEPS= fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use babeltrace" >&5 -$as_echo_n "checking whether to use babeltrace... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_babeltrace" >&5 -$as_echo "$with_babeltrace" >&6; } -if test "x$with_babeltrace" = "xno"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: babletrace support disabled; GDB is unable to read CTF data." >&5 -$as_echo "$as_me: WARNING: babletrace support disabled; GDB is unable to read CTF data." >&2;} -else - # Append -Werror to CFLAGS so that configure can catch the warning - # "assignment from incompatible pointer type", which is related to - # the babeltrace change from 1.0.3 to 1.1.0. Babeltrace 1.1.0 works - # in GDB, while babeltrace 1.0.3 is broken. - # AC_LIB_HAVE_LINKFLAGS may modify CPPFLAGS in it, so it should be - # safe to save and restore CFLAGS here. - saved_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -Werror" + +# If nativefile (NAT_FILE) is not set in configure.nat, we link to an +# empty version. + +if test "x$with_xxhash" != "xno"; then @@ -17181,9 +19225,9 @@ else prefix="$acl_save_prefix" -# Check whether --with-libbabeltrace-prefix was given. -if test "${with_libbabeltrace_prefix+set}" = set; then : - withval=$with_libbabeltrace_prefix; +# Check whether --with-libxxhash-prefix was given. +if test "${with_libxxhash_prefix+set}" = set; then : + withval=$with_libxxhash_prefix; if test "X$withval" = "Xno"; then use_additional=no else @@ -17208,13 +19252,23 @@ if test "${with_libbabeltrace_prefix+set}" = set; then : fi - LIBBABELTRACE= - LTLIBBABELTRACE= - INCBABELTRACE= + +# Check whether --with-libxxhash-type was given. +if test "${with_libxxhash_type+set}" = set; then : + withval=$with_libxxhash_type; with_libxxhash_type=$withval +else + with_libxxhash_type=auto +fi + + lib_type=`eval echo \$with_libxxhash_type` + + LIBXXHASH= + LTLIBXXHASH= + INCXXHASH= rpathdirs= ltrpathdirs= names_already_handled= - names_next_round='babeltrace babeltrace-ctf' + names_next_round='xxhash ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= @@ -17233,9 +19287,9 @@ fi if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" - test -z "$value" || LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$value" + test -z "$value" || LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$value" eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }$value" + test -z "$value" || LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }$value" else : fi @@ -17245,13 +19299,13 @@ fi found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" @@ -17262,7 +19316,7 @@ fi fi fi if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBBABELTRACE; do + for x in $LDFLAGS $LTLIBXXHASH; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -17275,13 +19329,13 @@ fi case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext" && test x$lib_type != xstatic; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi - else + elif test x$lib_type != xshared; then if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" @@ -17298,10 +19352,10 @@ fi done fi if test "X$found_dir" != "X"; then - LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-L$found_dir -l$name" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$found_so" else haveit= for x in $ltrpathdirs; do @@ -17314,10 +19368,10 @@ fi ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$hardcode_direct" = yes; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then @@ -17330,7 +19384,7 @@ fi fi else haveit= - for x in $LDFLAGS $LIBBABELTRACE; do + for x in $LDFLAGS $LIBXXHASH; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -17346,21 +19400,21 @@ fi fi done if test -z "$haveit"; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$found_dir" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_so" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$found_so" else - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-l$name" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$found_a" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$found_a" else - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$found_dir -l$name" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-L$found_dir -l$name" fi fi additional_includedir= @@ -17381,7 +19435,7 @@ fi fi fi if test -z "$haveit"; then - for x in $CPPFLAGS $INCBABELTRACE; do + for x in $CPPFLAGS $INCXXHASH; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -17398,7 +19452,7 @@ fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then - INCBABELTRACE="${INCBABELTRACE}${INCBABELTRACE:+ }-I$additional_includedir" + INCXXHASH="${INCXXHASH}${INCXXHASH:+ }-I$additional_includedir" fi fi fi @@ -17426,7 +19480,7 @@ fi fi if test -z "$haveit"; then haveit= - for x in $LDFLAGS $LIBBABELTRACE; do + for x in $LDFLAGS $LIBXXHASH; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -17443,11 +19497,11 @@ fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-L$additional_libdir" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-L$additional_libdir" fi fi haveit= - for x in $LDFLAGS $LTLIBBABELTRACE; do + for x in $LDFLAGS $LTLIBXXHASH; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" @@ -17464,7 +19518,7 @@ fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then - LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-L$additional_libdir" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }-L$additional_libdir" fi fi fi @@ -17502,15 +19556,20 @@ fi names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$dep" - LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }$dep" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$dep" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }$dep" ;; esac done fi else - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }-l$name" - LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-l$name" + if test "x$lib_type" = "xauto" || test "x$lib_type" = "xshared"; then + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-l$name" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }-l$name" + else + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }-l:lib$name.$libext" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }-l:lib$name.$libext" + fi fi fi fi @@ -17526,27 +19585,27 @@ fi libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$flag" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" - LIBBABELTRACE="${LIBBABELTRACE}${LIBBABELTRACE:+ }$flag" + LIBXXHASH="${LIBXXHASH}${LIBXXHASH:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do - LTLIBBABELTRACE="${LTLIBBABELTRACE}${LTLIBBABELTRACE:+ }-R$found_dir" + LTLIBXXHASH="${LTLIBXXHASH}${LTLIBXXHASH:+ }-R$found_dir" done fi ac_save_CPPFLAGS="$CPPFLAGS" - for element in $INCBABELTRACE; do + for element in $INCXXHASH; do haveit= for x in $CPPFLAGS; do @@ -17569,62 +19628,52 @@ fi done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libbabeltrace" >&5 -$as_echo_n "checking for libbabeltrace... " >&6; } -if ${ac_cv_libbabeltrace+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libxxhash" >&5 +$as_echo_n "checking for libxxhash... " >&6; } +if ${ac_cv_libxxhash+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_LIBS="$LIBS" - LIBS="$LIBS $LIBBABELTRACE" + LIBS="$LIBS $LIBXXHASH" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - #include +#include int main () { -struct bt_iter_pos *pos = bt_iter_get_pos (bt_ctf_get_iter (NULL)); - struct bt_ctf_event *event = NULL; - const struct bt_definition *scope; - - pos->type = BT_SEEK_BEGIN; - bt_iter_set_pos (bt_ctf_get_iter (NULL), pos); - scope = bt_ctf_get_top_level_scope (event, - BT_STREAM_EVENT_HEADER); - bt_ctf_get_uint64 (bt_ctf_get_field (event, scope, "id")); +XXH32("foo", 3, 0); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_libbabeltrace=yes + ac_cv_libxxhash=yes else - ac_cv_libbabeltrace=no + ac_cv_libxxhash=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$ac_save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libbabeltrace" >&5 -$as_echo "$ac_cv_libbabeltrace" >&6; } - if test "$ac_cv_libbabeltrace" = yes; then - HAVE_LIBBABELTRACE=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libxxhash" >&5 +$as_echo "$ac_cv_libxxhash" >&6; } + if test "$ac_cv_libxxhash" = yes; then + HAVE_LIBXXHASH=yes -$as_echo "#define HAVE_LIBBABELTRACE 1" >>confdefs.h +$as_echo "#define HAVE_LIBXXHASH 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libbabeltrace" >&5 -$as_echo_n "checking how to link with libbabeltrace... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBBABELTRACE" >&5 -$as_echo "$LIBBABELTRACE" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libxxhash" >&5 +$as_echo_n "checking how to link with libxxhash... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBXXHASH" >&5 +$as_echo "$LIBXXHASH" >&6; } else - HAVE_LIBBABELTRACE=no + HAVE_LIBXXHASH=no CPPFLAGS="$ac_save_CPPFLAGS" - LIBBABELTRACE= - LTLIBBABELTRACE= + LIBXXHASH= + LTLIBXXHASH= fi @@ -17632,40 +19681,40 @@ $as_echo "$LIBBABELTRACE" >&6; } - CFLAGS=$saved_CFLAGS - - if test "$HAVE_LIBBABELTRACE" != yes; then - if test "$with_babeltrace" = yes; then - as_fn_error $? "babeltrace is missing or unusable" "$LINENO" 5 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: babeltrace is missing or unusable; GDB is unable to read CTF data." >&5 -$as_echo "$as_me: WARNING: babeltrace is missing or unusable; GDB is unable to read CTF data." >&2;} - fi + if test "$HAVE_LIBXXHASH" != yes; then + if test "$with_xxhash" = yes; then + as_fn_error $? "xxhash is missing or unusable" "$LINENO" 5 + fi + fi + if test "x$with_xxhash" = "xauto"; then + with_xxhash="$HAVE_LIBXXHASH" fi fi -# If nativefile (NAT_FILE) is not set in configure.nat, we link to an -# empty version. - -files= -links= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use xxhash" >&5 +$as_echo_n "checking whether to use xxhash... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_xxhash" >&5 +$as_echo "$with_xxhash" >&6; } +NM_H= rm -f nm.h if test "${nativefile}" != ""; then case "${nativefile}" in nm-*.h ) GDB_NM_FILE="config/${gdb_host_cpu}/${nativefile}" ;; * ) GDB_NM_FILE="${nativefile}" esac - files="${files} ${GDB_NM_FILE}" - links="${links} nm.h" + ac_config_links="$ac_config_links nm.h:$GDB_NM_FILE" + cat >>confdefs.h <<_ACEOF #define GDB_NM_FILE "${GDB_NM_FILE}" _ACEOF + NM_H=nm.h fi + for ac_prog in xsltproc do # Extract the first word of "$ac_prog", so it can be a program name with args. @@ -17719,31 +19768,49 @@ if test "x$USE_MAINTAINER_MODE" = xyes; then fi -ac_sources="$files" -ac_dests="$links" -while test -n "$ac_sources"; do - set $ac_dests; ac_dest=$1; shift; ac_dests=$* - set $ac_sources; ac_source=$1; shift; ac_sources=$* - ac_config_links_1="$ac_config_links_1 $ac_dest:$ac_source" -done -ac_config_links="$ac_config_links $ac_config_links_1" +$as_echo "#define GDB_DEFAULT_HOST_CHARSET \"UTF-8\"" >>confdefs.h + -$as_echo "#define GDB_DEFAULT_HOST_CHARSET \"UTF-8\"" >>confdefs.h +# Check whether we will enable the inclusion of unit tests when +# compiling GDB. +# +# The default value of this option changes depending whether we're on +# development mode (in which case it's "true") or not (in which case +# it's "false"). The $development variable is set by the GDB_AC_COMMON +# macro, which must therefore be used before GDB_AC_SELFTEST. + +if test "x$development" != xtrue && test "x$development" != xfalse; then : + as_fn_error $? "Invalid value for \$development, got \"$development\", expecting \"true\" or \"false\"." "$LINENO" 5 +fi + +# Check whether --enable-unit-tests was given. +if test "${enable_unit_tests+set}" = set; then : + enableval=$enable_unit_tests; case "${enableval}" in + yes) enable_unittests=true ;; + no) enable_unittests=false ;; + *) as_fn_error $? "bad value ${enableval} for --{enable,disable}-unit-tests option" "$LINENO" 5 ;; +esac +else + enable_unittests=$development +fi -if $development; then +if $enable_unittests; then $as_echo "#define GDB_SELF_TEST 1" >>confdefs.h - CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_UNITTESTS_OBS) common/selftest.o selftest-arch.o" - CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_UNITTESTS_SRCS) common/selftest.c selftest-arch.c" + + CONFIG_OBS="$CONFIG_OBS \$(SELFTESTS_OBS)" + CONFIG_SRCS="$CONFIG_SRCS \$(SELFTESTS_SRCS)" + fi + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` GDB_TRANSFORM_NAME=`echo gdb | sed -e "$gdb_ac_transform"` if test "x$GDB_TRANSFORM_NAME" = x; then @@ -18472,6 +20539,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # INIT-COMMANDS # ac_aux_dir=$ac_aux_dir DEPDIR=$DEPDIR +GDB_NM_FILE=$GDB_NM_FILE _ACEOF @@ -18484,7 +20552,7 @@ do "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.in" ;; "depdir") CONFIG_COMMANDS="$CONFIG_COMMANDS depdir" ;; "jit-reader.h") CONFIG_FILES="$CONFIG_FILES jit-reader.h:jit-reader.in" ;; - "$ac_config_links_1") CONFIG_LINKS="$CONFIG_LINKS $ac_config_links_1" ;; + "nm.h") CONFIG_LINKS="$CONFIG_LINKS nm.h:$GDB_NM_FILE" ;; "gcore") CONFIG_FILES="$CONFIG_FILES gcore" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "gdb-gdb.gdb") CONFIG_FILES="$CONFIG_FILES gdb-gdb.gdb" ;; @@ -19117,38 +21185,10 @@ $as_echo "$as_me: executing $ac_file commands" >&6;} case $ac_file$ac_mode in + "config.h":H) echo > stamp-h ;; "depdir":C) $SHELL $ac_aux_dir/mkinstalldirs $DEPDIR ;; + "nm.h":L) echo > stamp-nmh ;; "gcore":F) chmod +x gcore ;; - "Makefile":F) -case x$CONFIG_HEADERS in -xconfig.h:config.in) -echo > stamp-h ;; -esac - ;; - "gdb-gdb.gdb":F) -case x$CONFIG_HEADERS in -xconfig.h:config.in) -echo > stamp-h ;; -esac - ;; - "gdb-gdb.py":F) -case x$CONFIG_HEADERS in -xconfig.h:config.in) -echo > stamp-h ;; -esac - ;; - "doc/Makefile":F) -case x$CONFIG_HEADERS in -xconfig.h:config.in) -echo > stamp-h ;; -esac - ;; - "data-directory/Makefile":F) -case x$CONFIG_HEADERS in -xconfig.h:config.in) -echo > stamp-h ;; -esac - ;; esac done # for ac_tag