mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-22 23:50:07 +08:00
60c7f4ef5e
* aclocal.m4, configure, include/config.h.in: Rebuilt. * acinclude.m4 (CHECK_FOR_BROKEN_MINGW_LD): Resurrected; was in aclocal.m4 and lost in some merge. From-SVN: r62188
276 lines
8.7 KiB
Plaintext
276 lines
8.7 KiB
Plaintext
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 does AC_REQUIRE (AC_CANONICAL_BUILD). If we don't
|
|
# run it explicitly here, it will be run implicitly before
|
|
# LIBGCJ_CONFIGURE, which doesn't work because that means that it will
|
|
# be run before AC_CANONICAL_HOST.
|
|
AC_CANONICAL_BUILD
|
|
|
|
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],
|
|
[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
|