| dnl aclocal.m4 generated automatically by aclocal 1.4-p6 |
| |
| dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. |
| dnl This file is free software; the Free Software Foundation |
| dnl gives unlimited permission to copy and/or distribute it, |
| dnl with or without modifications, as long as this notice is preserved. |
| |
| dnl This program is distributed in the hope that it will be useful, |
| dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without |
| dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
| dnl PARTICULAR PURPOSE. |
| |
| sinclude(../config/accross.m4) |
| |
| AC_DEFUN(LIBGCJ_CONFIGURE, |
| [ |
| dnl Default to --enable-multilib |
| AC_ARG_ENABLE(multilib, |
| [ --enable-multilib build many library versions (default)], |
| [case "${enableval}" in |
| yes) multilib=yes ;; |
| no) multilib=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;; |
| esac], [multilib=yes])dnl |
| |
| dnl We may get other options which we don't document: |
| dnl --with-target-subdir, --with-multisrctop, --with-multisubdir |
| |
| # When building with srcdir == objdir, links to the source files will |
| # be created in directories within the target_subdir. We have to |
| # adjust toplevel_srcdir accordingly, so that configure finds |
| # install-sh and other auxiliary files that live in the top-level |
| # source directory. |
| if test "${srcdir}" = "."; then |
| if test -z "${with_target_subdir}"; then |
| toprel=".." |
| else |
| if test "${with_target_subdir}" != "."; then |
| toprel="${with_multisrctop}../.." |
| else |
| toprel="${with_multisrctop}.." |
| fi |
| fi |
| else |
| toprel=".." |
| fi |
| |
| libgcj_basedir=$srcdir/$toprel/$1/libjava |
| AC_SUBST(libgcj_basedir) |
| |
| AC_CONFIG_AUX_DIR(${srcdir}/$toprel) |
| if :; then :; else |
| # This overrides the previous occurrence for automake, but not for |
| # autoconf, which is exactly what we want. |
| AC_CONFIG_AUX_DIR(..) |
| fi |
| |
| # This works around an automake problem. |
| mkinstalldirs="`cd $ac_aux_dir && ${PWDCMD-pwd}`/mkinstalldirs" |
| AC_SUBST(mkinstalldirs) |
| |
| AC_CANONICAL_SYSTEM |
| |
| dnl This shouldn't be needed, as long as top-level dependencies are |
| dnl defined correctly and shared-library paths are set up so that |
| dnl execution tests succeed. FIXME. |
| define([AC_PROG_CC_WORKS],[]) |
| define([AC_PROG_CXX_WORKS],[]) |
| |
| AC_PROG_CC |
| |
| # We use the libstdc++-v3 version of LIB_AC_PROG_CXX, but use |
| # glibjava_CXX instead of glibcpp_CXX. That's because we're passed a |
| # different definition of CXX than other directories, since we don't |
| # depend on libstdc++-v3 having already been built. |
| AC_DEFUN(LIB_AC_PROG_CXX, |
| [AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl |
| dnl Fool anybody using AC_PROG_CXX. |
| AC_PROVIDE([AC_PROG_CXX]) |
| # Use glibjava_CXX so that we do not cause CXX to be cached with the |
| # flags that come in CXX while configuring libjava. They're different |
| # from those used for all other target libraries. If CXX is set in |
| # the environment, respect that here. |
| glibjava_CXX=$CXX |
| AC_CHECK_PROGS(glibjava_CXX, $CCC c++ g++ gcc CC cxx cc++, gcc) |
| AC_SUBST(CXX) |
| CXX=$glibjava_CXX |
| test -z "$glibjava_CXX" && AC_MSG_ERROR([no acceptable c++ found in \$PATH]) |
| |
| AC_PROG_CXX_GNU |
| |
| if test $ac_cv_prog_gxx = yes; then |
| GXX=yes |
| dnl Check whether -g works, even if CXXFLAGS is set, in case the package |
| dnl plays around with CXXFLAGS (such as to build both debugging and |
| dnl normal versions of a library), tasteless as that idea is. |
| ac_test_CXXFLAGS="${CXXFLAGS+set}" |
| ac_save_CXXFLAGS="$CXXFLAGS" |
| CXXFLAGS= |
| AC_PROG_CXX_G |
| if test "$ac_test_CXXFLAGS" = set; then |
| CXXFLAGS="$ac_save_CXXFLAGS" |
| elif test $ac_cv_prog_cxx_g = yes; then |
| CXXFLAGS="-g -O2" |
| else |
| CXXFLAGS="-O2" |
| fi |
| else |
| GXX= |
| test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" |
| fi |
| ]) |
| |
| LIB_AC_PROG_CXX |
| |
| dnl version is pulled out to make it a bit easier to change using sed. |
| version=0.0.7 |
| dnl Still use "libjava" here to placate dejagnu. |
| AM_INIT_AUTOMAKE(libjava, $version) |
| |
| AC_CHECK_TOOL(AS, as) |
| AC_CHECK_TOOL(AR, ar) |
| AC_CHECK_TOOL(RANLIB, ranlib, :) |
| |
| AC_PROG_INSTALL |
| |
| AM_MAINTAINER_MODE |
| |
| AC_EXEEXT |
| |
| # configure.host sets the following important variables |
| # libgcj_cflags - host specific C compiler flags |
| # libgcj_cxxflags - host specific C++ compiler flags |
| # libgcj_javaflags - host specific Java compiler flags |
| |
| libgcj_cflags= |
| libgcj_cxxflags= |
| libgcj_javaflags= |
| |
| . [$]{srcdir}/configure.host |
| |
| LIBGCJ_CFLAGS="[$]{libgcj_cflags}" |
| LIBGCJ_CXXFLAGS="[$]{libgcj_cxxflags}" |
| LIBGCJ_JAVAFLAGS="[$]{libgcj_javaflags}" |
| AC_SUBST(LIBGCJ_CFLAGS) |
| AC_SUBST(LIBGCJ_CXXFLAGS) |
| AC_SUBST(LIBGCJ_JAVAFLAGS) |
| ])dnl |
| |
| sinclude(../libtool.m4) |
| dnl The lines below arrange for aclocal not to bring libtool.m4 |
| dnl AM_PROG_LIBTOOL into aclocal.m4, while still arranging for automake |
| dnl to add a definition of LIBTOOL to Makefile.in. |
| ifelse(yes,no,[ |
| AC_DEFUN([AM_PROG_LIBTOOL],) |
| AC_DEFUN([AC_LIBTOOL_DLOPEN],) |
| AC_DEFUN([AC_LIBLTDL_CONVENIENCE],) |
| AC_DEFUN([LT_AC_PROG_GCJ],) |
| AC_SUBST(GCJ) |
| AC_SUBST(LIBTOOL) |
| ]) |
| |
| #serial AM2 |
| |
| dnl From Bruno Haible. |
| |
| AC_DEFUN([AM_ICONV], |
| [ |
| dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and |
| dnl those with the standalone portable GNU libiconv installed). |
| |
| am_cv_lib_iconv_ldpath= |
| AC_ARG_WITH([libiconv-prefix], |
| [ --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib], [ |
| for dir in `echo "$withval" | tr : ' '`; do |
| if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi |
| if test -d $dir/lib; then am_cv_lib_iconv_ldpath="-L$dir/lib"; fi |
| done |
| ]) |
| |
| AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ |
| am_cv_func_iconv="no, consider installing GNU libiconv" |
| am_cv_lib_iconv=no |
| AC_TRY_LINK([#include <stdlib.h> |
| #include <iconv.h>], |
| [iconv_t cd = iconv_open("",""); |
| iconv(cd,NULL,NULL,NULL,NULL); |
| iconv_close(cd);], |
| am_cv_func_iconv=yes) |
| if test "$am_cv_func_iconv" != yes; then |
| am_save_LIBS="$LIBS" |
| LIBS="$LIBS $am_cv_libiconv_ldpath -liconv" |
| AC_TRY_LINK([#include <stdlib.h> |
| #include <iconv.h>], |
| [iconv_t cd = iconv_open("",""); |
| iconv(cd,NULL,NULL,NULL,NULL); |
| iconv_close(cd);], |
| am_cv_lib_iconv=yes |
| am_cv_func_iconv=yes) |
| LIBS="$am_save_LIBS" |
| fi |
| ]) |
| if test "$am_cv_func_iconv" = yes; then |
| AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) |
| AC_MSG_CHECKING([for iconv declaration]) |
| AC_CACHE_VAL(am_cv_proto_iconv, [ |
| AC_TRY_COMPILE([ |
| #include <stdlib.h> |
| #include <iconv.h> |
| extern |
| #ifdef __cplusplus |
| "C" |
| #endif |
| #if defined(__STDC__) || defined(__cplusplus) |
| size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); |
| #else |
| size_t iconv(); |
| #endif |
| ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") |
| am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) |
| am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` |
| AC_MSG_RESULT([$]{ac_t:- |
| }[$]am_cv_proto_iconv) |
| AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, |
| [Define as const if the declaration of iconv() needs const.]) |
| fi |
| LIBICONV= |
| if test "$am_cv_lib_iconv" = yes; then |
| LIBICONV="$am_cv_lib_iconv_ldpath -liconv" |
| fi |
| AC_SUBST(LIBICONV) |
| ]) |
| |
| # Check whether LC_MESSAGES is available in <locale.h>. |
| # Ulrich Drepper <drepper@cygnus.com>, 1995. |
| # |
| # This file can be copied and used freely without restrictions. It can |
| # be used in projects which are not available under the GNU General Public |
| # License or the GNU Library General Public License but which still want |
| # to provide support for the GNU gettext functionality. |
| # Please note that the actual code of the GNU gettext library is covered |
| # by the GNU Library General Public License, and the rest of the GNU |
| # gettext package package is covered by the GNU General Public License. |
| # They are *not* in the public domain. |
| |
| # serial 2 |
| |
| AC_DEFUN([AM_LC_MESSAGES], |
| [AC_CHECK_HEADERS(locale.h) |
| if test $ac_cv_header_locale_h = yes; then |
| AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, |
| [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES], |
| am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) |
| if test $am_cv_val_LC_MESSAGES = yes; then |
| AC_DEFINE(HAVE_LC_MESSAGES, 1, |
| [Define if your <locale.h> file defines LC_MESSAGES.]) |
| fi |
| fi]) |
| |
| AC_DEFUN([CHECK_FOR_BROKEN_MINGW_LD], |
| [ |
| AC_MSG_CHECKING(whether 'ld' is at least 2.13) |
| LD_PROG=`$CC --print-prog-name=ld` |
| LD_VERSION=`$LD_PROG --version` |
| LD_VERSION_MAJOR=`echo "$LD_VERSION" | head -1 | cut -d '.' -f 1 | cut -d ' ' -f 4` |
| LD_VERSION_MINOR=`echo "$LD_VERSION" | head -1 | cut -d '.' -f 2` |
| if expr "$LD_VERSION_MAJOR" \> 2 > /dev/null; then |
| LD_OK="ok" |
| else |
| if expr "$LD_VERSION_MAJOR" = 2 && expr "$LD_VERSION_MINOR" \>= 13 > /dev/null; then |
| LD_OK="ok" |
| fi |
| fi |
| if test "x$LD_OK" != x; then |
| AC_MSG_RESULT([yes; major=$LD_VERSION_MAJOR, minor=$LD_VERSION_MINOR]) |
| else |
| AC_MSG_RESULT([no; major=$LD_VERSION_MAJOR, minor=$LD_VERSION_MINOR]) |
| AC_MSG_WARN([ld <2.13 detected; enabling JV_LINKER_CANNOT_8BYTE_ALIGN_STATICS hack...]) |
| AC_DEFINE(JV_LINKER_CANNOT_8BYTE_ALIGN_STATICS, 1, |
| [Indicate that linker is not able to 8-byte align static data]) |
| fi[]dnl |
| ])# CHECK_FOR_BROKEN_MINGW_LD |
| |
| dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) |
| dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page |
| dnl also defines GSTUFF_PKG_ERRORS on error |
| AC_DEFUN(PKG_CHECK_MODULES, [ |
| succeeded=no |
| |
| if test -z "$PKG_CONFIG"; then |
| AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| fi |
| |
| if test "$PKG_CONFIG" = "no" ; then |
| echo "*** The pkg-config script could not be found. Make sure it is" |
| echo "*** in your path, or set the PKG_CONFIG environment variable" |
| echo "*** to the full path to pkg-config." |
| echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." |
| else |
| PKG_CONFIG_MIN_VERSION=0.9.0 |
| if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then |
| AC_MSG_CHECKING(for $2) |
| |
| if $PKG_CONFIG --exists "$2" ; then |
| AC_MSG_RESULT(yes) |
| succeeded=yes |
| |
| AC_MSG_CHECKING($1_CFLAGS) |
| $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` |
| AC_MSG_RESULT($$1_CFLAGS) |
| |
| AC_MSG_CHECKING($1_LIBS) |
| $1_LIBS=`$PKG_CONFIG --libs "$2"` |
| AC_MSG_RESULT($$1_LIBS) |
| else |
| $1_CFLAGS="" |
| $1_LIBS="" |
| ## If we have a custom action on failure, don't print errors, but |
| ## do set a variable so people can do so. |
| $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` |
| ifelse([$4], ,echo $$1_PKG_ERRORS,) |
| fi |
| |
| AC_SUBST($1_CFLAGS) |
| AC_SUBST($1_LIBS) |
| else |
| echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." |
| echo "*** See http://www.freedesktop.org/software/pkgconfig" |
| fi |
| fi |
| |
| if test $succeeded = yes; then |
| ifelse([$3], , :, [$3]) |
| else |
| ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) |
| fi |
| ]) |
| |
| |
| |
| # lib-prefix.m4 serial 3 (gettext-0.12.2) |
| dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. |
| dnl This file is free software, distributed under the terms of the GNU |
| dnl General Public License. As a special exception to the GNU General |
| dnl Public License, this file may be distributed as part of a program |
| dnl that contains a configuration script generated by Autoconf, under |
| dnl the same distribution terms as the rest of that program. |
| |
| dnl From Bruno Haible. |
| |
| dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and |
| dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't |
| dnl require excessive bracketing. |
| ifdef([AC_HELP_STRING], |
| [AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], |
| [AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) |
| |
| dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed |
| dnl to access previously installed libraries. The basic assumption is that |
| dnl a user will want packages to use other packages he previously installed |
| dnl with the same --prefix option. |
| dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate |
| dnl libraries, but is otherwise very convenient. |
| AC_DEFUN([AC_LIB_PREFIX], |
| [ |
| AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) |
| AC_REQUIRE([AC_PROG_CC]) |
| AC_REQUIRE([AC_CANONICAL_HOST]) |
| AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) |
| dnl By default, look in $includedir and $libdir. |
| use_additional=yes |
| AC_LIB_WITH_FINAL_PREFIX([ |
| eval additional_includedir=\"$includedir\" |
| eval additional_libdir=\"$libdir\" |
| ]) |
| AC_LIB_ARG_WITH([lib-prefix], |
| [ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib |
| --without-lib-prefix don't search for libraries in includedir and libdir], |
| [ |
| if test "X$withval" = "Xno"; then |
| use_additional=no |
| else |
| if test "X$withval" = "X"; then |
| AC_LIB_WITH_FINAL_PREFIX([ |
| eval additional_includedir=\"$includedir\" |
| eval additional_libdir=\"$libdir\" |
| ]) |
| else |
| additional_includedir="$withval/include" |
| additional_libdir="$withval/lib" |
| fi |
| fi |
| ]) |
| if test $use_additional = yes; then |
| dnl Potentially add $additional_includedir to $CPPFLAGS. |
| dnl But don't add it |
| dnl 1. if it's the standard /usr/include, |
| dnl 2. if it's already present in $CPPFLAGS, |
| dnl 3. if it's /usr/local/include and we are using GCC on Linux, |
| dnl 4. if it doesn't exist as a directory. |
| if test "X$additional_includedir" != "X/usr/include"; then |
| haveit= |
| for x in $CPPFLAGS; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| if test "X$x" = "X-I$additional_includedir"; then |
| haveit=yes |
| break |
| fi |
| done |
| if test -z "$haveit"; then |
| 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 |
| if test -d "$additional_includedir"; then |
| dnl Really add $additional_includedir to $CPPFLAGS. |
| CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" |
| fi |
| fi |
| fi |
| fi |
| dnl Potentially add $additional_libdir to $LDFLAGS. |
| dnl But don't add it |
| dnl 1. if it's the standard /usr/lib, |
| dnl 2. if it's already present in $LDFLAGS, |
| dnl 3. if it's /usr/local/lib and we are using GCC on Linux, |
| dnl 4. if it doesn't exist as a directory. |
| if test "X$additional_libdir" != "X/usr/lib"; then |
| haveit= |
| for x in $LDFLAGS; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| if test "X$x" = "X-L$additional_libdir"; then |
| haveit=yes |
| break |
| fi |
| done |
| if test -z "$haveit"; then |
| 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 |
| if test -d "$additional_libdir"; then |
| dnl Really add $additional_libdir to $LDFLAGS. |
| LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" |
| fi |
| fi |
| fi |
| fi |
| fi |
| ]) |
| |
| dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, |
| dnl acl_final_exec_prefix, containing the values to which $prefix and |
| dnl $exec_prefix will expand at the end of the configure script. |
| AC_DEFUN([AC_LIB_PREPARE_PREFIX], |
| [ |
| dnl Unfortunately, prefix and exec_prefix get only finally determined |
| dnl at the end of configure. |
| if test "X$prefix" = "XNONE"; then |
| acl_final_prefix="$ac_default_prefix" |
| else |
| acl_final_prefix="$prefix" |
| fi |
| if test "X$exec_prefix" = "XNONE"; then |
| acl_final_exec_prefix='${prefix}' |
| else |
| acl_final_exec_prefix="$exec_prefix" |
| fi |
| acl_save_prefix="$prefix" |
| prefix="$acl_final_prefix" |
| eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" |
| prefix="$acl_save_prefix" |
| ]) |
| |
| dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the |
| dnl variables prefix and exec_prefix bound to the values they will have |
| dnl at the end of the configure script. |
| AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], |
| [ |
| acl_save_prefix="$prefix" |
| prefix="$acl_final_prefix" |
| acl_save_exec_prefix="$exec_prefix" |
| exec_prefix="$acl_final_exec_prefix" |
| $1 |
| exec_prefix="$acl_save_exec_prefix" |
| prefix="$acl_save_prefix" |
| ]) |
| |
| # lib-link.m4 serial 4 (gettext-0.12) |
| dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. |
| dnl This file is free software, distributed under the terms of the GNU |
| dnl General Public License. As a special exception to the GNU General |
| dnl Public License, this file may be distributed as part of a program |
| dnl that contains a configuration script generated by Autoconf, under |
| dnl the same distribution terms as the rest of that program. |
| |
| dnl From Bruno Haible. |
| |
| dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and |
| dnl the libraries corresponding to explicit and implicit dependencies. |
| dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and |
| dnl augments the CPPFLAGS variable. |
| AC_DEFUN([AC_LIB_LINKFLAGS], |
| [ |
| AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) |
| AC_REQUIRE([AC_LIB_RPATH]) |
| define([Name],[translit([$1],[./-], [___])]) |
| define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], |
| [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) |
| AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ |
| AC_LIB_LINKFLAGS_BODY([$1], [$2]) |
| ac_cv_lib[]Name[]_libs="$LIB[]NAME" |
| ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" |
| ac_cv_lib[]Name[]_cppflags="$INC[]NAME" |
| ]) |
| LIB[]NAME="$ac_cv_lib[]Name[]_libs" |
| LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" |
| INC[]NAME="$ac_cv_lib[]Name[]_cppflags" |
| AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) |
| AC_SUBST([LIB]NAME) |
| AC_SUBST([LTLIB]NAME) |
| dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the |
| dnl results of this search when this library appears as a dependency. |
| HAVE_LIB[]NAME=yes |
| undefine([Name]) |
| undefine([NAME]) |
| ]) |
| |
| dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) |
| dnl searches for libname and the libraries corresponding to explicit and |
| dnl implicit dependencies, together with the specified include files and |
| dnl the ability to compile and link the specified testcode. If found, it |
| dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and |
| dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and |
| dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs |
| dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. |
| AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], |
| [ |
| AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) |
| AC_REQUIRE([AC_LIB_RPATH]) |
| define([Name],[translit([$1],[./-], [___])]) |
| define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], |
| [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) |
| |
| dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME |
| dnl accordingly. |
| AC_LIB_LINKFLAGS_BODY([$1], [$2]) |
| |
| dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, |
| dnl because if the user has installed lib[]Name and not disabled its use |
| dnl via --without-lib[]Name-prefix, he wants to use it. |
| ac_save_CPPFLAGS="$CPPFLAGS" |
| AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) |
| |
| AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ |
| ac_save_LIBS="$LIBS" |
| LIBS="$LIBS $LIB[]NAME" |
| AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) |
| LIBS="$ac_save_LIBS" |
| ]) |
| if test "$ac_cv_lib[]Name" = yes; then |
| HAVE_LIB[]NAME=yes |
| AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) |
| AC_MSG_CHECKING([how to link with lib[]$1]) |
| AC_MSG_RESULT([$LIB[]NAME]) |
| else |
| HAVE_LIB[]NAME=no |
| dnl If $LIB[]NAME didn't lead to a usable library, we don't need |
| dnl $INC[]NAME either. |
| CPPFLAGS="$ac_save_CPPFLAGS" |
| LIB[]NAME= |
| LTLIB[]NAME= |
| fi |
| AC_SUBST([HAVE_LIB]NAME) |
| AC_SUBST([LIB]NAME) |
| AC_SUBST([LTLIB]NAME) |
| undefine([Name]) |
| undefine([NAME]) |
| ]) |
| |
| dnl Determine the platform dependent parameters needed to use rpath: |
| dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, |
| dnl hardcode_direct, hardcode_minus_L. |
| AC_DEFUN([AC_LIB_RPATH], |
| [ |
| AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS |
| AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld |
| AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host |
| AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir |
| AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ |
| CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ |
| ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh |
| . ./conftest.sh |
| rm -f ./conftest.sh |
| acl_cv_rpath=done |
| ]) |
| wl="$acl_cv_wl" |
| libext="$acl_cv_libext" |
| shlibext="$acl_cv_shlibext" |
| hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" |
| hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" |
| hardcode_direct="$acl_cv_hardcode_direct" |
| hardcode_minus_L="$acl_cv_hardcode_minus_L" |
| dnl Determine whether the user wants rpath handling at all. |
| AC_ARG_ENABLE(rpath, |
| [ --disable-rpath do not hardcode runtime library paths], |
| :, enable_rpath=yes) |
| ]) |
| |
| dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and |
| dnl the libraries corresponding to explicit and implicit dependencies. |
| dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. |
| AC_DEFUN([AC_LIB_LINKFLAGS_BODY], |
| [ |
| define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], |
| [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) |
| dnl By default, look in $includedir and $libdir. |
| use_additional=yes |
| AC_LIB_WITH_FINAL_PREFIX([ |
| eval additional_includedir=\"$includedir\" |
| eval additional_libdir=\"$libdir\" |
| ]) |
| AC_LIB_ARG_WITH([lib$1-prefix], |
| [ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib |
| --without-lib$1-prefix don't search for lib$1 in includedir and libdir], |
| [ |
| if test "X$withval" = "Xno"; then |
| use_additional=no |
| else |
| if test "X$withval" = "X"; then |
| AC_LIB_WITH_FINAL_PREFIX([ |
| eval additional_includedir=\"$includedir\" |
| eval additional_libdir=\"$libdir\" |
| ]) |
| else |
| additional_includedir="$withval/include" |
| additional_libdir="$withval/lib" |
| fi |
| fi |
| ]) |
| dnl Search the library and its dependencies in $additional_libdir and |
| dnl $LDFLAGS. Using breadth-first-seach. |
| LIB[]NAME= |
| LTLIB[]NAME= |
| INC[]NAME= |
| rpathdirs= |
| ltrpathdirs= |
| names_already_handled= |
| names_next_round='$1 $2' |
| 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" |
| dnl See if it was already located by an earlier AC_LIB_LINKFLAGS |
| dnl or AC_LIB_HAVE_LINKFLAGS call. |
| 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" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" |
| eval value=\"\$LTLIB$uppername\" |
| test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" |
| else |
| dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined |
| dnl that this library doesn't exist. So just drop it. |
| : |
| fi |
| else |
| dnl Search the library lib$name in $additional_libdir and $LDFLAGS |
| dnl and the already constructed $LIBNAME/$LTLIBNAME. |
| 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 $LTLIB[]NAME; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| 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 |
| dnl Found the library. |
| LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" |
| if test "X$found_so" != "X"; then |
| dnl Linking with a shared library. We attempt to hardcode its |
| dnl directory into the executable's runpath, unless it's the |
| dnl standard /usr/lib. |
| if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then |
| dnl No hardcoding is needed. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" |
| else |
| dnl Use an explicit option to hardcode DIR into the resulting |
| dnl binary. |
| dnl Potentially add DIR to ltrpathdirs. |
| dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. |
| 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 |
| dnl The hardcoding into $LIBNAME is system dependent. |
| if test "$hardcode_direct" = yes; then |
| dnl Using DIR/libNAME.so during linking hardcodes DIR into the |
| dnl resulting binary. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" |
| else |
| if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then |
| dnl Use an explicit option to hardcode DIR into the resulting |
| dnl binary. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" |
| dnl Potentially add DIR to rpathdirs. |
| dnl The rpathdirs will be appended to $LIBNAME at the end. |
| 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 |
| dnl Rely on "-L$found_dir". |
| dnl But don't add it if it's already contained in the LDFLAGS |
| dnl or the already constructed $LIBNAME |
| haveit= |
| for x in $LDFLAGS $LIB[]NAME; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| if test "X$x" = "X-L$found_dir"; then |
| haveit=yes |
| break |
| fi |
| done |
| if test -z "$haveit"; then |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" |
| fi |
| if test "$hardcode_minus_L" != no; then |
| dnl FIXME: Not sure whether we should use |
| dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" |
| dnl here. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" |
| else |
| dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH |
| dnl here, because this doesn't fit in flags passed to the |
| dnl compiler. So give up. No hardcoding. This affects only |
| dnl very old systems. |
| dnl FIXME: Not sure whether we should use |
| dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" |
| dnl here. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" |
| fi |
| fi |
| fi |
| fi |
| else |
| if test "X$found_a" != "X"; then |
| dnl Linking with a static library. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" |
| else |
| dnl We shouldn't come here, but anyway it's good to have a |
| dnl fallback. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" |
| fi |
| fi |
| dnl Assume the include files are nearby. |
| 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 |
| dnl Potentially add $additional_includedir to $INCNAME. |
| dnl But don't add it |
| dnl 1. if it's the standard /usr/include, |
| dnl 2. if it's /usr/local/include and we are using GCC on Linux, |
| dnl 3. if it's already present in $CPPFLAGS or the already |
| dnl constructed $INCNAME, |
| dnl 4. if it doesn't exist as a directory. |
| 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 $INC[]NAME; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| 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 |
| dnl Really add $additional_includedir to $INCNAME. |
| INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" |
| fi |
| fi |
| fi |
| fi |
| fi |
| dnl Look for dependencies. |
| if test -n "$found_la"; then |
| dnl Read the .la file. It defines the variables |
| dnl dlname, library_names, old_library, dependency_libs, current, |
| dnl age, revision, installed, dlopen, dlpreopen, libdir. |
| save_libdir="$libdir" |
| case "$found_la" in |
| */* | *\\*) . "$found_la" ;; |
| *) . "./$found_la" ;; |
| esac |
| libdir="$save_libdir" |
| dnl We use only dependency_libs. |
| for dep in $dependency_libs; do |
| case "$dep" in |
| -L*) |
| additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` |
| dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. |
| dnl But don't add it |
| dnl 1. if it's the standard /usr/lib, |
| dnl 2. if it's /usr/local/lib and we are using GCC on Linux, |
| dnl 3. if it's already present in $LDFLAGS or the already |
| dnl constructed $LIBNAME, |
| dnl 4. if it doesn't exist as a directory. |
| 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 $LIB[]NAME; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| 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 |
| dnl Really add $additional_libdir to $LIBNAME. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" |
| fi |
| fi |
| haveit= |
| for x in $LDFLAGS $LTLIB[]NAME; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| 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 |
| dnl Really add $additional_libdir to $LTLIBNAME. |
| LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" |
| fi |
| fi |
| fi |
| fi |
| ;; |
| -R*) |
| dir=`echo "X$dep" | sed -e 's/^X-R//'` |
| if test "$enable_rpath" != no; then |
| dnl Potentially add DIR to rpathdirs. |
| dnl The rpathdirs will be appended to $LIBNAME at the end. |
| 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 |
| dnl Potentially add DIR to ltrpathdirs. |
| dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. |
| 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*) |
| dnl Handle this in the next round. |
| names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` |
| ;; |
| *.la) |
| dnl Handle this in the next round. Throw away the .la's |
| dnl directory; it is already contained in a preceding -L |
| dnl option. |
| names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` |
| ;; |
| *) |
| dnl Most likely an immediate library name. |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" |
| LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" |
| ;; |
| esac |
| done |
| fi |
| else |
| dnl Didn't find the library; assume it is in the system directories |
| dnl known to the linker and runtime loader. (All the system |
| dnl directories known to the linker should also be known to the |
| dnl runtime loader, otherwise the system is severely misconfigured.) |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" |
| LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" |
| fi |
| fi |
| fi |
| done |
| done |
| if test "X$rpathdirs" != "X"; then |
| if test -n "$hardcode_libdir_separator"; then |
| dnl Weird platform: only the last -rpath option counts, the user must |
| dnl pass all path elements in one option. We can arrange that for a |
| dnl single library, but not when more than one $LIBNAMEs are used. |
| alldirs= |
| for found_dir in $rpathdirs; do |
| alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" |
| done |
| dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. |
| acl_save_libdir="$libdir" |
| libdir="$alldirs" |
| eval flag=\"$hardcode_libdir_flag_spec\" |
| libdir="$acl_save_libdir" |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" |
| else |
| dnl The -rpath options are cumulative. |
| for found_dir in $rpathdirs; do |
| acl_save_libdir="$libdir" |
| libdir="$found_dir" |
| eval flag=\"$hardcode_libdir_flag_spec\" |
| libdir="$acl_save_libdir" |
| LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" |
| done |
| fi |
| fi |
| if test "X$ltrpathdirs" != "X"; then |
| dnl When using libtool, the option that works for both libraries and |
| dnl executables is -R. The -R options are cumulative. |
| for found_dir in $ltrpathdirs; do |
| LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" |
| done |
| fi |
| ]) |
| |
| dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, |
| dnl unless already present in VAR. |
| dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes |
| dnl contains two or three consecutive elements that belong together. |
| AC_DEFUN([AC_LIB_APPENDTOVAR], |
| [ |
| for element in [$2]; do |
| haveit= |
| for x in $[$1]; do |
| AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) |
| if test "X$x" = "X$element"; then |
| haveit=yes |
| break |
| fi |
| done |
| if test -z "$haveit"; then |
| [$1]="${[$1]}${[$1]:+ }$element" |
| fi |
| done |
| ]) |
| |
| # lib-ld.m4 serial 2 (gettext-0.12) |
| dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. |
| dnl This file is free software, distributed under the terms of the GNU |
| dnl General Public License. As a special exception to the GNU General |
| dnl Public License, this file may be distributed as part of a program |
| dnl that contains a configuration script generated by Autoconf, under |
| dnl the same distribution terms as the rest of that program. |
| |
| dnl Subroutines of libtool.m4, |
| dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision |
| dnl with libtool.m4. |
| |
| dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. |
| AC_DEFUN([AC_LIB_PROG_LD_GNU], |
| [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, |
| [# I'd rather use --version here, but apparently some GNU ld's only accept -v. |
| if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then |
| acl_cv_prog_gnu_ld=yes |
| else |
| acl_cv_prog_gnu_ld=no |
| fi]) |
| with_gnu_ld=$acl_cv_prog_gnu_ld |
| ]) |
| |
| dnl From libtool-1.4. Sets the variable LD. |
| AC_DEFUN([AC_LIB_PROG_LD], |
| [AC_ARG_WITH(gnu-ld, |
| [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], |
| test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) |
| AC_REQUIRE([AC_PROG_CC])dnl |
| AC_REQUIRE([AC_CANONICAL_HOST])dnl |
| # Prepare PATH_SEPARATOR. |
| # The user is always right. |
| if test "${PATH_SEPARATOR+set}" != set; then |
| echo "#! /bin/sh" >conf$$.sh |
| echo "exit 0" >>conf$$.sh |
| chmod +x conf$$.sh |
| if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then |
| PATH_SEPARATOR=';' |
| else |
| PATH_SEPARATOR=: |
| fi |
| rm -f conf$$.sh |
| fi |
| ac_prog=ld |
| if test "$GCC" = yes; then |
| # Check if gcc -print-prog-name=ld gives a path. |
| AC_MSG_CHECKING([for ld used by GCC]) |
| case $host in |
| *-*-mingw*) |
| # gcc leaves a trailing carriage return which upsets mingw |
| ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; |
| *) |
| ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; |
| esac |
| case $ac_prog in |
| # Accept absolute paths. |
| [[\\/]* | [A-Za-z]:[\\/]*)] |
| [re_direlt='/[^/][^/]*/\.\./'] |
| # Canonicalize the path of ld |
| ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` |
| while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do |
| ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` |
| done |
| test -z "$LD" && LD="$ac_prog" |
| ;; |
| "") |
| # If it fails, then pretend we aren't using GCC. |
| ac_prog=ld |
| ;; |
| *) |
| # If it is relative, then search for the first ld in PATH. |
| with_gnu_ld=unknown |
| ;; |
| esac |
| elif test "$with_gnu_ld" = yes; then |
| AC_MSG_CHECKING([for GNU ld]) |
| else |
| AC_MSG_CHECKING([for non-GNU ld]) |
| fi |
| AC_CACHE_VAL(acl_cv_path_LD, |
| [if test -z "$LD"; then |
| IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" |
| for ac_dir in $PATH; do |
| test -z "$ac_dir" && ac_dir=. |
| if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then |
| acl_cv_path_LD="$ac_dir/$ac_prog" |
| # Check to see if the program is GNU ld. I'd rather use --version, |
| # but apparently some GNU ld's only accept -v. |
| # Break only if it was the GNU/non-GNU ld that we prefer. |
| if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then |
| test "$with_gnu_ld" != no && break |
| else |
| test "$with_gnu_ld" != yes && break |
| fi |
| fi |
| done |
| IFS="$ac_save_ifs" |
| else |
| acl_cv_path_LD="$LD" # Let the user override the test with a path. |
| fi]) |
| LD="$acl_cv_path_LD" |
| if test -n "$LD"; then |
| AC_MSG_RESULT($LD) |
| else |
| AC_MSG_RESULT(no) |
| fi |
| test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) |
| AC_LIB_PROG_LD_GNU |
| ]) |
| |
| # Do all the work for Automake. This macro actually does too much -- |
| # some checks are only needed if your package does certain things. |
| # But this isn't really a big deal. |
| |
| # serial 1 |
| |
| dnl Usage: |
| dnl AM_INIT_AUTOMAKE(package,version, [no-define]) |
| |
| AC_DEFUN([AM_INIT_AUTOMAKE], |
| [AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl |
| AC_REQUIRE([AC_PROG_INSTALL]) |
| PACKAGE=[$1] |
| AC_SUBST(PACKAGE) |
| VERSION=[$2] |
| AC_SUBST(VERSION) |
| dnl test to see if srcdir already configured |
| if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then |
| AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) |
| fi |
| ifelse([$3],, |
| AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) |
| AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) |
| AC_REQUIRE([AM_SANITY_CHECK]) |
| AC_REQUIRE([AC_ARG_PROGRAM]) |
| dnl FIXME This is truly gross. |
| missing_dir=`cd $ac_aux_dir && pwd` |
| AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir) |
| AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) |
| AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir) |
| AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) |
| AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) |
| AC_REQUIRE([AC_PROG_MAKE_SET])]) |
| |
| # Copyright 2002 Free Software Foundation, Inc. |
| |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 2, or (at your option) |
| # any later version. |
| |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write to the Free Software |
| # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA |
| |
| # AM_AUTOMAKE_VERSION(VERSION) |
| # ---------------------------- |
| # Automake X.Y traces this macro to ensure aclocal.m4 has been |
| # generated from the m4 files accompanying Automake X.Y. |
| AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"]) |
| |
| # AM_SET_CURRENT_AUTOMAKE_VERSION |
| # ------------------------------- |
| # Call AM_AUTOMAKE_VERSION so it can be traced. |
| # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. |
| AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], |
| [AM_AUTOMAKE_VERSION([1.4-p6])]) |
| |
| # |
| # Check to make sure that the build environment is sane. |
| # |
| |
| AC_DEFUN([AM_SANITY_CHECK], |
| [AC_MSG_CHECKING([whether build environment is sane]) |
| # Just in case |
| sleep 1 |
| echo timestamp > conftestfile |
| # Do `set' in a subshell so we don't clobber the current shell's |
| # arguments. Must try -L first in case configure is actually a |
| # symlink; some systems play weird games with the mod time of symlinks |
| # (eg FreeBSD returns the mod time of the symlink's containing |
| # directory). |
| if ( |
| set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` |
| if test "[$]*" = "X"; then |
| # -L didn't work. |
| set X `ls -t $srcdir/configure conftestfile` |
| fi |
| if test "[$]*" != "X $srcdir/configure conftestfile" \ |
| && test "[$]*" != "X conftestfile $srcdir/configure"; then |
| |
| # If neither matched, then we have a broken ls. This can happen |
| # if, for instance, CONFIG_SHELL is bash and it inherits a |
| # broken ls alias from the environment. This has actually |
| # happened. Such a system could not be considered "sane". |
| AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken |
| alias in your environment]) |
| fi |
| |
| test "[$]2" = conftestfile |
| ) |
| then |
| # Ok. |
| : |
| else |
| AC_MSG_ERROR([newly created file is older than distributed files! |
| Check your system clock]) |
| fi |
| rm -f conftest* |
| AC_MSG_RESULT(yes)]) |
| |
| dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) |
| dnl The program must properly implement --version. |
| AC_DEFUN([AM_MISSING_PROG], |
| [AC_MSG_CHECKING(for working $2) |
| # Run test in a subshell; some versions of sh will print an error if |
| # an executable is not found, even if stderr is redirected. |
| # Redirect stdin to placate older versions of autoconf. Sigh. |
| if ($2 --version) < /dev/null > /dev/null 2>&1; then |
| $1=$2 |
| AC_MSG_RESULT(found) |
| else |
| $1="$3/missing $2" |
| AC_MSG_RESULT(missing) |
| fi |
| AC_SUBST($1)]) |
| |
| # Add --enable-maintainer-mode option to configure. |
| # From Jim Meyering |
| |
| # serial 1 |
| |
| AC_DEFUN([AM_MAINTAINER_MODE], |
| [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) |
| dnl maintainer-mode is disabled by default |
| AC_ARG_ENABLE(maintainer-mode, |
| [ --enable-maintainer-mode enable make rules and dependencies not useful |
| (and sometimes confusing) to the casual installer], |
| USE_MAINTAINER_MODE=$enableval, |
| USE_MAINTAINER_MODE=no) |
| AC_MSG_RESULT($USE_MAINTAINER_MODE) |
| AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) |
| MAINT=$MAINTAINER_MODE_TRUE |
| AC_SUBST(MAINT)dnl |
| ] |
| ) |
| |
| # Define a conditional. |
| |
| AC_DEFUN([AM_CONDITIONAL], |
| [AC_SUBST($1_TRUE) |
| AC_SUBST($1_FALSE) |
| if $2; then |
| $1_TRUE= |
| $1_FALSE='#' |
| else |
| $1_TRUE='#' |
| $1_FALSE= |
| fi]) |
| |
| # Like AC_CONFIG_HEADER, but automatically create stamp file. |
| |
| AC_DEFUN([AM_CONFIG_HEADER], |
| [AC_PREREQ([2.12]) |
| AC_CONFIG_HEADER([$1]) |
| dnl When config.status generates a header, we must update the stamp-h file. |
| dnl This file resides in the same directory as the config header |
| dnl that is generated. We must strip everything past the first ":", |
| dnl and everything past the last "/". |
| AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl |
| ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, |
| <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, |
| <<am_indx=1 |
| for am_file in <<$1>>; do |
| case " <<$>>CONFIG_HEADERS " in |
| *" <<$>>am_file "*<<)>> |
| echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx |
| ;; |
| esac |
| am_indx=`expr "<<$>>am_indx" + 1` |
| done<<>>dnl>>) |
| changequote([,]))]) |
| |
| # Configure paths for GTK+ |
| # Owen Taylor 1997-2001 |
| |
| dnl AM_PATH_GTK_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) |
| dnl Test for GTK+, and define GTK_CFLAGS and GTK_LIBS, if gthread is specified in MODULES, |
| dnl pass to pkg-config |
| dnl |
| AC_DEFUN(AM_PATH_GTK_2_0, |
| [dnl |
| dnl Get the cflags and libraries from pkg-config |
| dnl |
| AC_ARG_ENABLE(gtktest, [ --disable-gtktest do not try to compile and run a test GTK+ program], |
| , enable_gtktest=yes) |
| |
| pkg_config_args=gtk+-2.0 |
| for module in . $4 |
| do |
| case "$module" in |
| gthread) |
| pkg_config_args="$pkg_config_args gthread-2.0" |
| ;; |
| esac |
| done |
| |
| no_gtk="" |
| |
| AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| |
| if test x$PKG_CONFIG != xno ; then |
| if pkg-config --atleast-pkgconfig-version 0.7 ; then |
| : |
| else |
| echo *** pkg-config too old; version 0.7 or better required. |
| no_gtk=yes |
| PKG_CONFIG=no |
| fi |
| else |
| no_gtk=yes |
| fi |
| |
| min_gtk_version=ifelse([$1], ,2.0.0,$1) |
| AC_MSG_CHECKING(for GTK+ - version >= $min_gtk_version) |
| |
| if test x$PKG_CONFIG != xno ; then |
| ## don't try to run the test against uninstalled libtool libs |
| if $PKG_CONFIG --uninstalled $pkg_config_args; then |
| echo "Will use uninstalled version of GTK+ found in PKG_CONFIG_PATH" |
| enable_gtktest=no |
| fi |
| |
| if $PKG_CONFIG --atleast-version $min_gtk_version $pkg_config_args; then |
| : |
| else |
| no_gtk=yes |
| fi |
| fi |
| |
| if test x"$no_gtk" = x ; then |
| GTK_CFLAGS=`$PKG_CONFIG $pkg_config_args --cflags` |
| GTK_LIBS=`$PKG_CONFIG $pkg_config_args --libs` |
| gtk_config_major_version=`$PKG_CONFIG --modversion gtk+-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
| gtk_config_minor_version=`$PKG_CONFIG --modversion gtk+-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
| gtk_config_micro_version=`$PKG_CONFIG --modversion gtk+-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
| if test "x$enable_gtktest" = "xyes" ; then |
| ac_save_CFLAGS="$CFLAGS" |
| ac_save_LIBS="$LIBS" |
| CFLAGS="$CFLAGS $GTK_CFLAGS" |
| LIBS="$GTK_LIBS $LIBS" |
| dnl |
| dnl Now check if the installed GTK+ is sufficiently new. (Also sanity |
| dnl checks the results of pkg-config to some extent) |
| dnl |
| rm -f conf.gtktest |
| AC_TRY_RUN([ |
| #include <gtk/gtk.h> |
| #include <stdio.h> |
| #include <stdlib.h> |
| |
| int |
| main () |
| { |
| int major, minor, micro; |
| char *tmp_version; |
| |
| system ("touch conf.gtktest"); |
| |
| /* HP/UX 9 (%@#!) writes to sscanf strings */ |
| tmp_version = g_strdup("$min_gtk_version"); |
| if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { |
| printf("%s, bad version string\n", "$min_gtk_version"); |
| exit(1); |
| } |
| |
| if ((gtk_major_version != $gtk_config_major_version) || |
| (gtk_minor_version != $gtk_config_minor_version) || |
| (gtk_micro_version != $gtk_config_micro_version)) |
| { |
| printf("\n*** 'pkg-config --modversion gtk+-2.0' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", |
| $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version, |
| gtk_major_version, gtk_minor_version, gtk_micro_version); |
| printf ("*** was found! If pkg-config was correct, then it is best\n"); |
| printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); |
| printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); |
| printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); |
| printf("*** required on your system.\n"); |
| printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); |
| printf("*** to point to the correct configuration files\n"); |
| } |
| else if ((gtk_major_version != GTK_MAJOR_VERSION) || |
| (gtk_minor_version != GTK_MINOR_VERSION) || |
| (gtk_micro_version != GTK_MICRO_VERSION)) |
| { |
| printf("*** GTK+ header files (version %d.%d.%d) do not match\n", |
| GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); |
| printf("*** library (version %d.%d.%d)\n", |
| gtk_major_version, gtk_minor_version, gtk_micro_version); |
| } |
| else |
| { |
| if ((gtk_major_version > major) || |
| ((gtk_major_version == major) && (gtk_minor_version > minor)) || |
| ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) |
| { |
| return 0; |
| } |
| else |
| { |
| printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", |
| gtk_major_version, gtk_minor_version, gtk_micro_version); |
| printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", |
| major, minor, micro); |
| printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); |
| printf("***\n"); |
| printf("*** If you have already installed a sufficiently new version, this error\n"); |
| printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); |
| printf("*** being found. The easiest way to fix this is to remove the old version\n"); |
| printf("*** of GTK+, but you can also set the PKG_CONFIG environment to point to the\n"); |
| printf("*** correct copy of pkg-config. (In this case, you will have to\n"); |
| printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); |
| printf("*** so that the correct libraries are found at run-time))\n"); |
| } |
| } |
| return 1; |
| } |
| ],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| if test "x$no_gtk" = x ; then |
| AC_MSG_RESULT(yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)) |
| ifelse([$2], , :, [$2]) |
| else |
| AC_MSG_RESULT(no) |
| if test "$PKG_CONFIG" = "no" ; then |
| echo "*** A new enough version of pkg-config was not found." |
| echo "*** See http://pkgconfig.sourceforge.net" |
| else |
| if test -f conf.gtktest ; then |
| : |
| else |
| echo "*** Could not run GTK+ test program, checking why..." |
| ac_save_CFLAGS="$CFLAGS" |
| ac_save_LIBS="$LIBS" |
| CFLAGS="$CFLAGS $GTK_CFLAGS" |
| LIBS="$LIBS $GTK_LIBS" |
| AC_TRY_LINK([ |
| #include <gtk/gtk.h> |
| #include <stdio.h> |
| ], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ], |
| [ echo "*** The test program compiled, but did not run. This usually means" |
| echo "*** that the run-time linker is not finding GTK+ or finding the wrong" |
| echo "*** version of GTK+. If it is not finding GTK+, you'll need to set your" |
| echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" |
| echo "*** to the installed location Also, make sure you have run ldconfig if that" |
| echo "*** is required on your system" |
| echo "***" |
| echo "*** If you have an old version installed, it is best to remove it, although" |
| echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], |
| [ echo "*** The test program failed to compile or link. See the file config.log for the" |
| echo "*** exact error that occured. This usually means GTK+ is incorrectly installed."]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| GTK_CFLAGS="" |
| GTK_LIBS="" |
| ifelse([$3], , :, [$3]) |
| fi |
| AC_SUBST(GTK_CFLAGS) |
| AC_SUBST(GTK_LIBS) |
| rm -f conf.gtktest |
| ]) |
| |
| # Configure paths for GLIB |
| # Owen Taylor 1997-2001 |
| |
| dnl AM_PATH_GLIB_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) |
| dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gmodule, gobject or |
| dnl gthread is specified in MODULES, pass to pkg-config |
| dnl |
| AC_DEFUN(AM_PATH_GLIB_2_0, |
| [dnl |
| dnl Get the cflags and libraries from pkg-config |
| dnl |
| AC_ARG_ENABLE(glibtest, [ --disable-glibtest do not try to compile and run a test GLIB program], |
| , enable_glibtest=yes) |
| |
| pkg_config_args=glib-2.0 |
| for module in . $4 |
| do |
| case "$module" in |
| gmodule) |
| pkg_config_args="$pkg_config_args gmodule-2.0" |
| ;; |
| gobject) |
| pkg_config_args="$pkg_config_args gobject-2.0" |
| ;; |
| gthread) |
| pkg_config_args="$pkg_config_args gthread-2.0" |
| ;; |
| esac |
| done |
| |
| AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
| |
| no_glib="" |
| |
| if test x$PKG_CONFIG != xno ; then |
| if $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then |
| : |
| else |
| echo *** pkg-config too old; version 0.7 or better required. |
| no_glib=yes |
| PKG_CONFIG=no |
| fi |
| else |
| no_glib=yes |
| fi |
| |
| min_glib_version=ifelse([$1], ,2.0.0,$1) |
| AC_MSG_CHECKING(for GLIB - version >= $min_glib_version) |
| |
| if test x$PKG_CONFIG != xno ; then |
| ## don't try to run the test against uninstalled libtool libs |
| if $PKG_CONFIG --uninstalled $pkg_config_args; then |
| echo "Will use uninstalled version of GLib found in PKG_CONFIG_PATH" |
| enable_glibtest=no |
| fi |
| |
| if $PKG_CONFIG --atleast-version $min_glib_version $pkg_config_args; then |
| : |
| else |
| no_glib=yes |
| fi |
| fi |
| |
| if test x"$no_glib" = x ; then |
| GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` |
| GOBJECT_QUERY=`$PKG_CONFIG --variable=gobject_query glib-2.0` |
| GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` |
| |
| GLIB_CFLAGS=`$PKG_CONFIG --cflags $pkg_config_args` |
| GLIB_LIBS=`$PKG_CONFIG --libs $pkg_config_args` |
| glib_config_major_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
| glib_config_minor_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
| glib_config_micro_version=`$PKG_CONFIG --modversion glib-2.0 | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
| if test "x$enable_glibtest" = "xyes" ; then |
| ac_save_CFLAGS="$CFLAGS" |
| ac_save_LIBS="$LIBS" |
| CFLAGS="$CFLAGS $GLIB_CFLAGS" |
| LIBS="$GLIB_LIBS $LIBS" |
| dnl |
| dnl Now check if the installed GLIB is sufficiently new. (Also sanity |
| dnl checks the results of pkg-config to some extent) |
| dnl |
| rm -f conf.glibtest |
| AC_TRY_RUN([ |
| #include <glib.h> |
| #include <stdio.h> |
| #include <stdlib.h> |
| |
| int |
| main () |
| { |
| int major, minor, micro; |
| char *tmp_version; |
| |
| system ("touch conf.glibtest"); |
| |
| /* HP/UX 9 (%@#!) writes to sscanf strings */ |
| tmp_version = g_strdup("$min_glib_version"); |
| if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { |
| printf("%s, bad version string\n", "$min_glib_version"); |
| exit(1); |
| } |
| |
| if ((glib_major_version != $glib_config_major_version) || |
| (glib_minor_version != $glib_config_minor_version) || |
| (glib_micro_version != $glib_config_micro_version)) |
| { |
| printf("\n*** 'pkg-config --modversion glib-2.0' returned %d.%d.%d, but GLIB (%d.%d.%d)\n", |
| $glib_config_major_version, $glib_config_minor_version, $glib_config_micro_version, |
| glib_major_version, glib_minor_version, glib_micro_version); |
| printf ("*** was found! If pkg-config was correct, then it is best\n"); |
| printf ("*** to remove the old version of GLib. You may also be able to fix the error\n"); |
| printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); |
| printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); |
| printf("*** required on your system.\n"); |
| printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); |
| printf("*** to point to the correct configuration files\n"); |
| } |
| else if ((glib_major_version != GLIB_MAJOR_VERSION) || |
| (glib_minor_version != GLIB_MINOR_VERSION) || |
| (glib_micro_version != GLIB_MICRO_VERSION)) |
| { |
| printf("*** GLIB header files (version %d.%d.%d) do not match\n", |
| GLIB_MAJOR_VERSION, GLIB_MINOR_VERSION, GLIB_MICRO_VERSION); |
| printf("*** library (version %d.%d.%d)\n", |
| glib_major_version, glib_minor_version, glib_micro_version); |
| } |
| else |
| { |
| if ((glib_major_version > major) || |
| ((glib_major_version == major) && (glib_minor_version > minor)) || |
| ((glib_major_version == major) && (glib_minor_version == minor) && (glib_micro_version >= micro))) |
| { |
| return 0; |
| } |
| else |
| { |
| printf("\n*** An old version of GLIB (%d.%d.%d) was found.\n", |
| glib_major_version, glib_minor_version, glib_micro_version); |
| printf("*** You need a version of GLIB newer than %d.%d.%d. The latest version of\n", |
| major, minor, micro); |
| printf("*** GLIB is always available from ftp://ftp.gtk.org.\n"); |
| printf("***\n"); |
| printf("*** If you have already installed a sufficiently new version, this error\n"); |
| printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); |
| printf("*** being found. The easiest way to fix this is to remove the old version\n"); |
| printf("*** of GLIB, but you can also set the PKG_CONFIG environment to point to the\n"); |
| printf("*** correct copy of pkg-config. (In this case, you will have to\n"); |
| printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); |
| printf("*** so that the correct libraries are found at run-time))\n"); |
| } |
| } |
| return 1; |
| } |
| ],, no_glib=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| if test "x$no_glib" = x ; then |
| AC_MSG_RESULT(yes (version $glib_config_major_version.$glib_config_minor_version.$glib_config_micro_version)) |
| ifelse([$2], , :, [$2]) |
| else |
| AC_MSG_RESULT(no) |
| if test "$PKG_CONFIG" = "no" ; then |
| echo "*** A new enough version of pkg-config was not found." |
| echo "*** See http://www.freedesktop.org/software/pkgconfig/" |
| else |
| if test -f conf.glibtest ; then |
| : |
| else |
| echo "*** Could not run GLIB test program, checking why..." |
| ac_save_CFLAGS="$CFLAGS" |
| ac_save_LIBS="$LIBS" |
| CFLAGS="$CFLAGS $GLIB_CFLAGS" |
| LIBS="$LIBS $GLIB_LIBS" |
| AC_TRY_LINK([ |
| #include <glib.h> |
| #include <stdio.h> |
| ], [ return ((glib_major_version) || (glib_minor_version) || (glib_micro_version)); ], |
| [ echo "*** The test program compiled, but did not run. This usually means" |
| echo "*** that the run-time linker is not finding GLIB or finding the wrong" |
| echo "*** version of GLIB. If it is not finding GLIB, you'll need to set your" |
| echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" |
| echo "*** to the installed location Also, make sure you have run ldconfig if that" |
| echo "*** is required on your system" |
| echo "***" |
| echo "*** If you have an old version installed, it is best to remove it, although" |
| echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], |
| [ echo "*** The test program failed to compile or link. See the file config.log for the" |
| echo "*** exact error that occured. This usually means GLIB is incorrectly installed."]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| GLIB_CFLAGS="" |
| GLIB_LIBS="" |
| GLIB_GENMARSHAL="" |
| GOBJECT_QUERY="" |
| GLIB_MKENUMS="" |
| ifelse([$3], , :, [$3]) |
| fi |
| AC_SUBST(GLIB_CFLAGS) |
| AC_SUBST(GLIB_LIBS) |
| AC_SUBST(GLIB_GENMARSHAL) |
| AC_SUBST(GOBJECT_QUERY) |
| AC_SUBST(GLIB_MKENUMS) |
| rm -f conf.glibtest |
| ]) |
| |
| # Configure paths for LIBART |
| # Raph Levien 98-11-18 |
| # stolen from Manish Singh 98-9-30 |
| # stolen back from Frank Belew |
| # stolen from Manish Singh |
| # Shamelessly stolen from Owen Taylor |
| |
| dnl AM_PATH_LIBART([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) |
| dnl Test for LIBART, and define LIBART_CFLAGS and LIBART_LIBS |
| dnl |
| AC_DEFUN(AM_PATH_LIBART, |
| [dnl |
| dnl Get the cflags and libraries from the libart-config script |
| dnl |
| AC_ARG_WITH(libart-prefix,[ --with-libart-prefix=PFX Prefix where LIBART is installed (optional)], |
| libart_prefix="$withval", libart_prefix="") |
| AC_ARG_WITH(libart-exec-prefix,[ --with-libart-exec-prefix=PFX Exec prefix where LIBART is installed (optional)], |
| libart_exec_prefix="$withval", libart_exec_prefix="") |
| AC_ARG_ENABLE(libarttest, [ --disable-libarttest Do not try to compile and run a test LIBART program], |
| , enable_libarttest=yes) |
| |
| if test x$libart_exec_prefix != x ; then |
| libart_args="$libart_args --exec-prefix=$libart_exec_prefix" |
| if test x${LIBART_CONFIG+set} != xset ; then |
| LIBART_CONFIG=$libart_exec_prefix/bin/libart-config |
| fi |
| fi |
| if test x$libart_prefix != x ; then |
| libart_args="$libart_args --prefix=$libart_prefix" |
| if test x${LIBART_CONFIG+set} != xset ; then |
| LIBART_CONFIG=$libart_prefix/bin/libart-config |
| fi |
| fi |
| |
| AC_PATH_PROG(LIBART_CONFIG, libart2-config, no) |
| if test "$LIBART_CONFIG" = "no" ; then |
| AC_PATH_PROG(LIBART_CONFIG, libart-config, no) |
| fi |
| min_libart_version=ifelse([$1], ,0.2.5,$1) |
| AC_MSG_CHECKING(for LIBART - version >= $min_libart_version) |
| no_libart="" |
| if test "$LIBART_CONFIG" = "no" ; then |
| no_libart=yes |
| else |
| LIBART_CFLAGS=`$LIBART_CONFIG $libartconf_args --cflags` |
| LIBART_LIBS=`$LIBART_CONFIG $libartconf_args --libs` |
| |
| libart_major_version=`$LIBART_CONFIG $libart_args --version | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
| libart_minor_version=`$LIBART_CONFIG $libart_args --version | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
| libart_micro_version=`$LIBART_CONFIG $libart_config_args --version | \ |
| sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
| if test "x$enable_libarttest" = "xyes" ; then |
| ac_save_CFLAGS="$CFLAGS" |
| ac_save_LIBS="$LIBS" |
| CFLAGS="$CFLAGS $LIBART_CFLAGS" |
| LIBS="$LIBS $LIBART_LIBS" |
| dnl |
| dnl Now check if the installed LIBART is sufficiently new. (Also sanity |
| dnl checks the results of libart-config to some extent |
| dnl |
| rm -f conf.libarttest |
| AC_TRY_RUN([ |
| #include <stdio.h> |
| #include <stdlib.h> |
| #include <string.h> |
| #include <libart_lgpl/libart.h> |
| |
| char* |
| my_strdup (char *str) |
| { |
| char *new_str; |
| |
| if (str) |
| { |
| new_str = malloc ((strlen (str) + 1) * sizeof(char)); |
| strcpy (new_str, str); |
| } |
| else |
| new_str = NULL; |
| |
| return new_str; |
| } |
| |
| int main () |
| { |
| int major, minor, micro; |
| char *tmp_version; |
| |
| system ("touch conf.libarttest"); |
| |
| /* HP/UX 9 (%@#!) writes to sscanf strings */ |
| tmp_version = my_strdup("$min_libart_version"); |
| if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { |
| printf("%s, bad version string\n", "$min_libart_version"); |
| exit(1); |
| } |
| |
| if (($libart_major_version > major) || |
| (($libart_major_version == major) && ($libart_minor_version > minor)) || |
| (($libart_major_version == major) && ($libart_minor_version == minor) && ($libart_micro_version >= micro))) |
| { |
| return 0; |
| } |
| else |
| { |
| printf("\n*** 'libart-config --version' returned %d.%d.%d, but the minimum version\n", $libart_major_version, $libart_minor_version, $libart_micro_version); |
| printf("*** of LIBART required is %d.%d.%d. If libart-config is correct, then it is\n", major, minor, micro); |
| printf("*** best to upgrade to the required version.\n"); |
| printf("*** If libart-config was wrong, set the environment variable LIBART_CONFIG\n"); |
| printf("*** to point to the correct copy of libart-config, and remove the file\n"); |
| printf("*** config.cache before re-running configure\n"); |
| return 1; |
| } |
| } |
| |
| ],, no_libart=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| if test "x$no_libart" = x ; then |
| AC_MSG_RESULT(yes) |
| ifelse([$2], , :, [$2]) |
| else |
| AC_MSG_RESULT(no) |
| if test "$LIBART_CONFIG" = "no" ; then |
| echo "*** The libart-config script installed by LIBART could not be found" |
| echo "*** If LIBART was installed in PREFIX, make sure PREFIX/bin is in" |
| echo "*** your path, or set the LIBART_CONFIG environment variable to the" |
| echo "*** full path to libart-config." |
| else |
| if test -f conf.libarttest ; then |
| : |
| else |
| echo "*** Could not run LIBART test program, checking why..." |
| CFLAGS="$CFLAGS $LIBART_CFLAGS" |
| LIBS="$LIBS $LIBART_LIBS" |
| AC_TRY_LINK([ |
| #include <stdio.h> |
| #include <libart_lgpl/libart.h> |
| ], [ return 0; ], |
| [ echo "*** The test program compiled, but did not run. This usually means" |
| echo "*** that the run-time linker is not finding LIBART or finding the wrong" |
| echo "*** version of LIBART. If it is not finding LIBART, you'll need to set your" |
| echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" |
| echo "*** to the installed location Also, make sure you have run ldconfig if that" |
| echo "*** is required on your system" |
| echo "***" |
| echo "*** If you have an old version installed, it is best to remove it, although" |
| echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], |
| [ echo "*** The test program failed to compile or link. See the file config.log for the" |
| echo "*** exact error that occured. This usually means LIBART was incorrectly installed" |
| echo "*** or that you have moved LIBART since it was installed. In the latter case, you" |
| echo "*** may want to edit the libart-config script: $LIBART_CONFIG" ]) |
| CFLAGS="$ac_save_CFLAGS" |
| LIBS="$ac_save_LIBS" |
| fi |
| fi |
| LIBART_CFLAGS="" |
| LIBART_LIBS="" |
| ifelse([$3], , :, [$3]) |
| fi |
| AC_SUBST(LIBART_CFLAGS) |
| AC_SUBST(LIBART_LIBS) |
| rm -f conf.libarttest |
| ]) |
| |