acinclude.m4 (GLIBCXX_CONDITIONAL): New macro.

2003-08-27  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCXX_CONDITIONAL):  New macro.  Wrap
	AM_CONDITIONAL.  Replace all calls to AM_CONDITIONAL with this one.
	(GLIBCXX_ENABLE_HOSTED):  New macro, sets new variable is_hosted,
	used elsewhere in this file.
	(GLIBCXX_EVALUATE_CONDITIONALS):  New macro...
	* configure.ac:  ...called here to expand all conditionals.
	* Makefile.am:  Conditionalize SUBDIRS on GLIBCXX_HOSTED.
	* include/Makefile.am:  Remove redundant gxx_include_dir assignment.
	(install-freestanding-headers):  New target, a subset of
	install-headers.  Conditionalize install-data-local on GLIBCXX_HOSTED.

	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
	src/Makefile.in, testsuite/Makefile.in:  Regenerated.

From-SVN: r70854
This commit is contained in:
Phil Edwards 2003-08-27 19:06:56 +00:00
parent 5af2f3d3ff
commit 92eabea208
14 changed files with 408 additions and 163 deletions

View File

@ -1,3 +1,20 @@
2003-08-27 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
(GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
used elsewhere in this file.
(GLIBCXX_EVALUATE_CONDITIONALS): New macro...
* configure.ac: ...called here to expand all conditionals.
* Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
* include/Makefile.am: Remove redundant gxx_include_dir assignment.
(install-freestanding-headers): New target, a subset of
install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
* aclocal.m4, configure, Makefile.in, include/Makefile.in,
libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
src/Makefile.in, testsuite/Makefile.in: Regenerated.
2003-08-26 Phil Edwards <pme@gcc.gnu.org> 2003-08-26 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local

View File

@ -24,8 +24,12 @@
include $(top_srcdir)/fragment.am include $(top_srcdir)/fragment.am
if GLIBCXX_HOSTED
# Possibly libmath as well...
hosted_source = src po
endif
## Keep this list sync'd with acinclude.m4:GLIBCXX_CONFIGURE. ## Keep this list sync'd with acinclude.m4:GLIBCXX_CONFIGURE.
SUBDIRS = include libmath libsupc++ src po testsuite SUBDIRS = include libmath libsupc++ $(hosted_source) testsuite
# These rules are messy, but are hella worth it. # These rules are messy, but are hella worth it.
doxygen: doxygen:

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@
@ -216,8 +218,8 @@ WARN_CXXFLAGS = \
# -I/-D flags to pass when compiling. # -I/-D flags to pass when compiling.
AM_CPPFLAGS = $(GLIBCXX_INCLUDES) AM_CPPFLAGS = $(GLIBCXX_INCLUDES)
@GLIBCXX_HOSTED_TRUE@hosted_source = src po
SUBDIRS = include libmath libsupc++ src po testsuite SUBDIRS = include libmath libsupc++ $(hosted_source) testsuite
# Multilib support. # Multilib support.
MAKEOVERRIDES = MAKEOVERRIDES =
@ -296,7 +298,7 @@ DIST_COMMON = README $(top_srcdir)/fragment.am ../ABOUT-NLS ../COPYING \
../ltconfig ../ltmain.sh ../missing ../mkinstalldirs ../ylwrap \ ../ltconfig ../ltmain.sh ../missing ../mkinstalldirs ../ylwrap \
ChangeLog Makefile.am Makefile.in acconfig.h acinclude.m4 \ ChangeLog Makefile.am Makefile.in acconfig.h acinclude.m4 \
aclocal.m4 config.h.in configure configure.ac aclocal.m4 config.h.in configure configure.ac
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = include libmath libsupc++ src po testsuite
all: config.h all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive $(MAKE) $(AM_MAKEFLAGS) all-recursive
@ -491,7 +493,7 @@ distdir: $(DISTFILES)
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test -d $(distdir)/$$subdir \ test -d $(distdir)/$$subdir \
|| mkdir $(distdir)/$$subdir \ || mkdir $(distdir)/$$subdir \
@ -670,6 +672,8 @@ uninstall-info: uninstall-info-recursive
uninstall-info-recursive uninstall-recursive uninstall-info-recursive uninstall-recursive
@GLIBCXX_HOSTED_TRUE@ # Possibly libmath as well...
# These rules are messy, but are hella worth it. # These rules are messy, but are hella worth it.
doxygen: doxygen:
-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \ -(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \

View File

@ -1,4 +1,21 @@
dnl
dnl GLIBCXX_CONDITIONAL (NAME, SHELL-TEST)
dnl
dnl Exactly like AM_CONDITIONAL, but delays evaluation of the test until the
dnl end of configure. This lets tested variables be reassigned, and the
dnl conditional will depend on the final state of the variable. For a simple
dnl example of why this is needed, see GLIBCXX_ENABLE_HOSTED.
dnl
m4_define([_m4_divert(glibcxx_diversion)], 8000)dnl
AC_DEFUN(GLIBCXX_CONDITIONAL, [dnl
m4_divert_text([glibcxx_diversion],dnl
AM_CONDITIONAL([$1],[$2])
)dnl
])dnl
AC_DEFUN(GLIBCXX_EVALUATE_CONDITIONALS, [m4_undivert([glibcxx_diversion])])dnl
dnl dnl
dnl Check to see what architecture and operating system we are compiling dnl Check to see what architecture and operating system we are compiling
dnl for. Also, if architecture- or OS-specific flags are required for dnl for. Also, if architecture- or OS-specific flags are required for
@ -143,7 +160,10 @@ AC_DEFUN(GLIBCXX_CONFIGURE, [
AM_MAINTAINER_MODE AM_MAINTAINER_MODE
# Set up safe default values for all subsequent AM_CONDITIONAL tests. # Set up safe default values for all subsequent AM_CONDITIONAL tests
# which are themselves conditionally expanded.
## (Right now, this only matters for enable_wchar_t, but nothing prevents
## other macros from doing the same. This should be automated.) -pme
need_libmath=no need_libmath=no
enable_wchar_t=no enable_wchar_t=no
#enable_libstdcxx_debug=no #enable_libstdcxx_debug=no
@ -152,6 +172,7 @@ AC_DEFUN(GLIBCXX_CONFIGURE, [
#c_compatibility=no #c_compatibility=no
#enable_abi_check=no #enable_abi_check=no
#enable_symvers=no #enable_symvers=no
#enable_hosted_libstdcxx=yes
# Find platform-specific directories containing configuration info. # Find platform-specific directories containing configuration info.
# Also possibly modify flags used elsewhere, as needed by the platform. # Also possibly modify flags used elsewhere, as needed by the platform.
@ -560,7 +581,7 @@ dnl Substs:
dnl baseline_dir dnl baseline_dir
dnl dnl
AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
if $GLIBCXX_IS_NATIVE; then if $GLIBCXX_IS_NATIVE && test $is_hosted = yes; then
# Do checks for memory limit functions. # Do checks for memory limit functions.
GLIBCXX_CHECK_SETRLIMIT GLIBCXX_CHECK_SETRLIMIT
@ -573,7 +594,7 @@ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
AC_SUBST(baseline_dir) AC_SUBST(baseline_dir)
# Determine if checking the ABI is desirable. # Determine if checking the ABI is desirable.
if test $enable_symvers = no; then if test $enable_symvers = no || test $is_hosted = no; then
enable_abi_check=no enable_abi_check=no
else else
case "$host" in case "$host" in
@ -584,8 +605,8 @@ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
esac esac
fi fi
AM_CONDITIONAL(GLIBCXX_TEST_WCHAR_T, test $enable_wchar_t = yes) GLIBCXX_CONDITIONAL(GLIBCXX_TEST_WCHAR_T, test $enable_wchar_t = yes)
AM_CONDITIONAL(GLIBCXX_TEST_ABI, test $enable_abi_check = yes) GLIBCXX_CONDITIONAL(GLIBCXX_TEST_ABI, test $enable_abi_check = yes)
]) ])
@ -897,9 +918,9 @@ AC_DEFUN(GLIBCXX_ENABLE_CHEADERS, [
C_INCLUDE_DIR='${glibcxx_srcdir}/include/'$enable_cheaders C_INCLUDE_DIR='${glibcxx_srcdir}/include/'$enable_cheaders
AC_SUBST(C_INCLUDE_DIR) AC_SUBST(C_INCLUDE_DIR)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_C, test $enable_cheaders = c) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_C, test $enable_cheaders = c)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_C_STD, test $enable_cheaders = c_std) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_C_STD, test $enable_cheaders = c_std)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_COMPATIBILITY, test $c_compatibility = yes) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_COMPATIBILITY, test $c_compatibility = yes)
]) ])
@ -1213,7 +1234,7 @@ AC_DEFUN(GLIBCXX_ENABLE_DEBUG, [
AC_MSG_CHECKING([for additional debug build]) AC_MSG_CHECKING([for additional debug build])
GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library]) GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library])
AC_MSG_RESULT($enable_libstdcxx_debug) AC_MSG_RESULT($enable_libstdcxx_debug)
AM_CONDITIONAL(GLIBCXX_BUILD_DEBUG, test $enable_libstdcxx_debug = yes) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_DEBUG, test $enable_libstdcxx_debug = yes)
]) ])
@ -1246,6 +1267,34 @@ AC_DEFUN(GLIBCXX_ENABLE_DEBUG_FLAGS, [
]) ])
dnl
dnl Check if the user only wants a freestanding library implementation.
dnl
dnl --disable-hosted-libstdcxx will turn off most of the library build,
dnl installing only the headers required by [17.4.1.3] and the language
dnl support library. More than that will be built (to keep the Makefiles
dnl conveniently clean), but not installed.
dnl
dnl Sets:
dnl is_hosted (yes/no)
dnl
AC_DEFUN(GLIBCXX_ENABLE_HOSTED, [
AC_ARG_ENABLE([hosted-libstdcxx],
AC_HELP_STRING([--disable-hosted-libstdcxx],
[only build freestanding C++ runtime support]),,
[enable_hosted_libstdcxx=yes])
if test "$enable_hosted_libstdcxx" = no; then
AC_MSG_NOTICE([Only freestanding libraries will be built])
is_hosted=no
enable_abi_check=no
enable_libstdcxx_pch=no
else
is_hosted=yes
fi
GLIBCXX_CONDITIONAL(GLIBCXX_HOSTED, test $is_hosted = yes)
])
dnl dnl
dnl Check for libunwind exception handling support. If enabled, then dnl Check for libunwind exception handling support. If enabled, then
dnl we assume that the _Unwind_* functions that make up the Unwind ABI dnl we assume that the _Unwind_* functions that make up the Unwind ABI
@ -1351,7 +1400,7 @@ AC_DEFUN(GLIBCXX_ENABLE_PCH, [
enable_libstdcxx_pch=$glibcxx_cv_prog_CXX_pch enable_libstdcxx_pch=$glibcxx_cv_prog_CXX_pch
fi fi
AM_CONDITIONAL(GLIBCXX_BUILD_PCH, test $enable_libstdcxx_pch = yes) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_PCH, test $enable_libstdcxx_pch = yes)
if test $enable_libstdcxx_pch = yes; then if test $enable_libstdcxx_pch = yes; then
glibcxx_PCHFLAGS="-include bits/stdc++.h" glibcxx_PCHFLAGS="-include bits/stdc++.h"
else else
@ -1523,7 +1572,7 @@ esac
AC_SUBST(SYMVER_MAP) AC_SUBST(SYMVER_MAP)
AC_SUBST(port_specific_symbol_files) AC_SUBST(port_specific_symbol_files)
AM_CONDITIONAL(GLIBCXX_BUILD_VERSIONED_SHLIB, test $enable_symvers != no) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_VERSIONED_SHLIB, test $enable_symvers != no)
AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers) AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers)
]) ])

View File

@ -12,6 +12,23 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
dnl
dnl GLIBCXX_CONDITIONAL (NAME, SHELL-TEST)
dnl
dnl Exactly like AM_CONDITIONAL, but delays evaluation of the test until the
dnl end of configure. This lets tested variables be reassigned, and the
dnl conditional will depend on the final state of the variable. For a simple
dnl example of why this is needed, see GLIBCXX_ENABLE_HOSTED.
dnl
m4_define([_m4_divert(glibcxx_diversion)], 8000)dnl
AC_DEFUN(GLIBCXX_CONDITIONAL, [dnl
m4_divert_text([glibcxx_diversion],dnl
AM_CONDITIONAL([$1],[$2])
)dnl
])dnl
AC_DEFUN(GLIBCXX_EVALUATE_CONDITIONALS, [m4_undivert([glibcxx_diversion])])dnl
dnl dnl
dnl Check to see what architecture and operating system we are compiling dnl Check to see what architecture and operating system we are compiling
dnl for. Also, if architecture- or OS-specific flags are required for dnl for. Also, if architecture- or OS-specific flags are required for
@ -156,7 +173,10 @@ AC_DEFUN(GLIBCXX_CONFIGURE, [
AM_MAINTAINER_MODE AM_MAINTAINER_MODE
# Set up safe default values for all subsequent AM_CONDITIONAL tests. # Set up safe default values for all subsequent AM_CONDITIONAL tests
# which are themselves conditionally expanded.
## (Right now, this only matters for enable_wchar_t, but nothing prevents
## other macros from doing the same. This should be automated.) -pme
need_libmath=no need_libmath=no
enable_wchar_t=no enable_wchar_t=no
#enable_libstdcxx_debug=no #enable_libstdcxx_debug=no
@ -165,6 +185,7 @@ AC_DEFUN(GLIBCXX_CONFIGURE, [
#c_compatibility=no #c_compatibility=no
#enable_abi_check=no #enable_abi_check=no
#enable_symvers=no #enable_symvers=no
#enable_hosted_libstdcxx=yes
# Find platform-specific directories containing configuration info. # Find platform-specific directories containing configuration info.
# Also possibly modify flags used elsewhere, as needed by the platform. # Also possibly modify flags used elsewhere, as needed by the platform.
@ -573,7 +594,7 @@ dnl Substs:
dnl baseline_dir dnl baseline_dir
dnl dnl
AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
if $GLIBCXX_IS_NATIVE; then if $GLIBCXX_IS_NATIVE && test $is_hosted = yes; then
# Do checks for memory limit functions. # Do checks for memory limit functions.
GLIBCXX_CHECK_SETRLIMIT GLIBCXX_CHECK_SETRLIMIT
@ -586,7 +607,7 @@ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
AC_SUBST(baseline_dir) AC_SUBST(baseline_dir)
# Determine if checking the ABI is desirable. # Determine if checking the ABI is desirable.
if test $enable_symvers = no; then if test $enable_symvers = no || test $is_hosted = no; then
enable_abi_check=no enable_abi_check=no
else else
case "$host" in case "$host" in
@ -597,8 +618,8 @@ AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
esac esac
fi fi
AM_CONDITIONAL(GLIBCXX_TEST_WCHAR_T, test $enable_wchar_t = yes) GLIBCXX_CONDITIONAL(GLIBCXX_TEST_WCHAR_T, test $enable_wchar_t = yes)
AM_CONDITIONAL(GLIBCXX_TEST_ABI, test $enable_abi_check = yes) GLIBCXX_CONDITIONAL(GLIBCXX_TEST_ABI, test $enable_abi_check = yes)
]) ])
@ -910,9 +931,9 @@ AC_DEFUN(GLIBCXX_ENABLE_CHEADERS, [
C_INCLUDE_DIR='${glibcxx_srcdir}/include/'$enable_cheaders C_INCLUDE_DIR='${glibcxx_srcdir}/include/'$enable_cheaders
AC_SUBST(C_INCLUDE_DIR) AC_SUBST(C_INCLUDE_DIR)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_C, test $enable_cheaders = c) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_C, test $enable_cheaders = c)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_C_STD, test $enable_cheaders = c_std) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_C_STD, test $enable_cheaders = c_std)
AM_CONDITIONAL(GLIBCXX_C_HEADERS_COMPATIBILITY, test $c_compatibility = yes) GLIBCXX_CONDITIONAL(GLIBCXX_C_HEADERS_COMPATIBILITY, test $c_compatibility = yes)
]) ])
@ -1226,7 +1247,7 @@ AC_DEFUN(GLIBCXX_ENABLE_DEBUG, [
AC_MSG_CHECKING([for additional debug build]) AC_MSG_CHECKING([for additional debug build])
GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library]) GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library])
AC_MSG_RESULT($enable_libstdcxx_debug) AC_MSG_RESULT($enable_libstdcxx_debug)
AM_CONDITIONAL(GLIBCXX_BUILD_DEBUG, test $enable_libstdcxx_debug = yes) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_DEBUG, test $enable_libstdcxx_debug = yes)
]) ])
@ -1259,6 +1280,34 @@ AC_DEFUN(GLIBCXX_ENABLE_DEBUG_FLAGS, [
]) ])
dnl
dnl Check if the user only wants a freestanding library implementation.
dnl
dnl --disable-hosted-libstdcxx will turn off most of the library build,
dnl installing only the headers required by [17.4.1.3] and the language
dnl support library. More than that will be built (to keep the Makefiles
dnl conveniently clean), but not installed.
dnl
dnl Sets:
dnl is_hosted (yes/no)
dnl
AC_DEFUN(GLIBCXX_ENABLE_HOSTED, [
AC_ARG_ENABLE([hosted-libstdcxx],
AC_HELP_STRING([--disable-hosted-libstdcxx],
[only build freestanding C++ runtime support]),,
[enable_hosted_libstdcxx=yes])
if test "$enable_hosted_libstdcxx" = no; then
AC_MSG_NOTICE([Only freestanding libraries will be built])
is_hosted=no
enable_abi_check=no
enable_libstdcxx_pch=no
else
is_hosted=yes
fi
GLIBCXX_CONDITIONAL(GLIBCXX_HOSTED, test $is_hosted = yes)
])
dnl dnl
dnl Check for libunwind exception handling support. If enabled, then dnl Check for libunwind exception handling support. If enabled, then
dnl we assume that the _Unwind_* functions that make up the Unwind ABI dnl we assume that the _Unwind_* functions that make up the Unwind ABI
@ -1364,7 +1413,7 @@ AC_DEFUN(GLIBCXX_ENABLE_PCH, [
enable_libstdcxx_pch=$glibcxx_cv_prog_CXX_pch enable_libstdcxx_pch=$glibcxx_cv_prog_CXX_pch
fi fi
AM_CONDITIONAL(GLIBCXX_BUILD_PCH, test $enable_libstdcxx_pch = yes) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_PCH, test $enable_libstdcxx_pch = yes)
if test $enable_libstdcxx_pch = yes; then if test $enable_libstdcxx_pch = yes; then
glibcxx_PCHFLAGS="-include bits/stdc++.h" glibcxx_PCHFLAGS="-include bits/stdc++.h"
else else
@ -1536,7 +1585,7 @@ esac
AC_SUBST(SYMVER_MAP) AC_SUBST(SYMVER_MAP)
AC_SUBST(port_specific_symbol_files) AC_SUBST(port_specific_symbol_files)
AM_CONDITIONAL(GLIBCXX_BUILD_VERSIONED_SHLIB, test $enable_symvers != no) GLIBCXX_CONDITIONAL(GLIBCXX_BUILD_VERSIONED_SHLIB, test $enable_symvers != no)
AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers) AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers)
]) ])
@ -1608,6 +1657,50 @@ AC_DEFUN([AC_PROG_LD])
dnl vim:et:ts=2:sw=2 dnl vim:et:ts=2:sw=2
# AM_CONDITIONAL -*- Autoconf -*-
# Copyright 1997, 2000, 2001 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
# 02111-1307, USA.
# serial 5
AC_PREREQ(2.52)
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
AC_DEFUN([AM_CONDITIONAL],
[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
AC_SUBST([$1_TRUE])
AC_SUBST([$1_FALSE])
if $2; then
$1_TRUE=
$1_FALSE='#'
else
$1_TRUE='#'
$1_FALSE=
fi
AC_CONFIG_COMMANDS_PRE(
[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
AC_MSG_ERROR([conditional "$1" was never defined.
Usually this means the macro was only invoked conditionally.])
fi])])
# Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc. # Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
@ -1742,50 +1835,6 @@ AC_DEFUN([AM_MAINTAINER_MODE],
AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
# AM_CONDITIONAL -*- Autoconf -*-
# Copyright 1997, 2000, 2001 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
# 02111-1307, USA.
# serial 5
AC_PREREQ(2.52)
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
AC_DEFUN([AM_CONDITIONAL],
[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
AC_SUBST([$1_TRUE])
AC_SUBST([$1_FALSE])
if $2; then
$1_TRUE=
$1_FALSE='#'
else
$1_TRUE='#'
$1_FALSE=
fi
AC_CONFIG_COMMANDS_PRE(
[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
AC_MSG_ERROR([conditional "$1" was never defined.
Usually this means the macro was only invoked conditionally.])
fi])])
# Do all the work for Automake. -*- Autoconf -*- # Do all the work for Automake. -*- Autoconf -*-
# This macro actually does too much some checks are only needed if # This macro actually does too much some checks are only needed if

226
libstdc++-v3/configure vendored
View File

@ -308,7 +308,7 @@ ac_includes_default="\
# include <unistd.h> # include <unistd.h>
#endif" #endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static LIBUNWIND_FLAG GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H FPOS_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CCODECVT_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE glibcxx_thread_h DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS SYMVER_MAP port_specific_symbol_files GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE baseline_dir GLIBCXX_TEST_WCHAR_T_TRUE GLIBCXX_TEST_WCHAR_T_FALSE GLIBCXX_TEST_ABI_TRUE GLIBCXX_TEST_ABI_FALSE ATOMICITY_INC_SRCDIR FPOS_INC_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS' ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE LIBUNWIND_FLAG GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H FPOS_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CCODECVT_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE glibcxx_thread_h DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS SYMVER_MAP port_specific_symbol_files GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE baseline_dir GLIBCXX_TEST_WCHAR_T_TRUE GLIBCXX_TEST_WCHAR_T_FALSE GLIBCXX_TEST_ABI_TRUE GLIBCXX_TEST_ABI_FALSE ATOMICITY_INC_SRCDIR FPOS_INC_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
ac_subst_files='' ac_subst_files=''
# Initialize some variables set by options. # Initialize some variables set by options.
@ -850,6 +850,8 @@ Optional Features:
--enable-static=PKGS build static libraries default=yes --enable-static=PKGS build static libraries default=yes
--enable-fast-install=PKGS optimize for fast installation default=yes --enable-fast-install=PKGS optimize for fast installation default=yes
--disable-libtool-lock avoid locking (might break parallel builds) --disable-libtool-lock avoid locking (might break parallel builds)
--disable-hosted-libstdcxx
only build freestanding C++ runtime support
--enable-sjlj-exceptions --enable-sjlj-exceptions
force use of builtin_setjmp for exceptions force use of builtin_setjmp for exceptions
[default=auto] [default=auto]
@ -857,7 +859,7 @@ Optional Features:
force use of libunwind for exceptions force use of libunwind for exceptions
[default=no] [default=no]
--enable-libstdcxx-pch build pre-compiled libstdc++ headers --enable-libstdcxx-pch build pre-compiled libstdc++ headers
[default=yes] [default=$is_hosted]
--enable-cstdio=PACKAGE use target-specific I/O package --enable-cstdio=PACKAGE use target-specific I/O package
[default=stdio] [default=stdio]
--enable-clocale[=MODEL] --enable-clocale[=MODEL]
@ -3536,7 +3538,10 @@ fi
# Set up safe default values for all subsequent AM_CONDITIONAL tests. # Set up safe default values for all subsequent AM_CONDITIONAL tests
# which are themselves conditionally expanded.
## (Right now, this only matters for enable_wchar_t, but nothing prevents
## other macros from doing the same. This should be automated.) -pme
need_libmath=no need_libmath=no
enable_wchar_t=no enable_wchar_t=no
#enable_libstdcxx_debug=no #enable_libstdcxx_debug=no
@ -3545,6 +3550,7 @@ fi
#c_compatibility=no #c_compatibility=no
#enable_abi_check=no #enable_abi_check=no
#enable_symvers=no #enable_symvers=no
#enable_hosted_libstdcxx=yes
# Find platform-specific directories containing configuration info. # Find platform-specific directories containing configuration info.
# Also possibly modify flags used elsewhere, as needed by the platform. # Also possibly modify flags used elsewhere, as needed by the platform.
@ -4287,7 +4293,7 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in case $host in
*-*-irix6*) *-*-irix6*)
# Find out which ABI we are using. # Find out which ABI we are using.
echo '#line 4290 "configure"' > conftest.$ac_ext echo '#line 4296 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5 (eval $ac_compile) 2>&5
ac_status=$? ac_status=$?
@ -4821,6 +4827,29 @@ exec 5>>./config.log
#AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10 #AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10
# Possibly disable most of the library.
## XXX Consider skipping unncessary tests altogether in this case, rather
## than just ignoring the results. Faster /and/ more correct, win win.
# Check whether --enable-hosted-libstdcxx or --disable-hosted-libstdcxx was given.
if test "${enable_hosted_libstdcxx+set}" = set; then
enableval="$enable_hosted_libstdcxx"
else
enable_hosted_libstdcxx=yes
fi;
if test "$enable_hosted_libstdcxx" = no; then
{ echo "$as_me:$LINENO: Only freestanding libraries will be built" >&5
echo "$as_me: Only freestanding libraries will be built" >&6;}
is_hosted=no
enable_abi_check=no
enable_libstdcxx_pch=no
else
is_hosted=yes
fi
# Check for support bits and g++ features that don't require linking. # Check for support bits and g++ features that don't require linking.
echo "$as_me:$LINENO: checking for exception model to use" >&5 echo "$as_me:$LINENO: checking for exception model to use" >&5
@ -4856,7 +4885,7 @@ fi;
# #
# Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style. # Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style.
cat > conftest.$ac_ext << EOF cat > conftest.$ac_ext << EOF
#line 4859 "configure" #line 4888 "configure"
struct S { ~S(); }; struct S { ~S(); };
void bar(); void bar();
void foo() void foo()
@ -4953,7 +4982,7 @@ echo "$as_me: error: Argument to enable/disable libstdcxx-pch must be yes or no"
esac esac
else else
enable_libstdcxx_pch=yes enable_libstdcxx_pch=$is_hosted
fi; fi;
echo "$as_me:$LINENO: result: $enable_libstdcxx_pch" >&5 echo "$as_me:$LINENO: result: $enable_libstdcxx_pch" >&5
@ -5002,15 +5031,6 @@ echo "${ECHO_T}$glibcxx_cv_prog_CXX_pch" >&6
fi fi
if test $enable_libstdcxx_pch = yes; then
GLIBCXX_BUILD_PCH_TRUE=
GLIBCXX_BUILD_PCH_FALSE='#'
else
GLIBCXX_BUILD_PCH_TRUE='#'
GLIBCXX_BUILD_PCH_FALSE=
fi
if test $enable_libstdcxx_pch = yes; then if test $enable_libstdcxx_pch = yes; then
glibcxx_PCHFLAGS="-include bits/stdc++.h" glibcxx_PCHFLAGS="-include bits/stdc++.h"
else else
@ -6088,33 +6108,6 @@ echo "$as_me: \"C\" header strategy set to $enable_cheaders" >&6;}
if test $enable_cheaders = c; then
GLIBCXX_C_HEADERS_C_TRUE=
GLIBCXX_C_HEADERS_C_FALSE='#'
else
GLIBCXX_C_HEADERS_C_TRUE='#'
GLIBCXX_C_HEADERS_C_FALSE=
fi
if test $enable_cheaders = c_std; then
GLIBCXX_C_HEADERS_C_STD_TRUE=
GLIBCXX_C_HEADERS_C_STD_FALSE='#'
else
GLIBCXX_C_HEADERS_C_STD_TRUE='#'
GLIBCXX_C_HEADERS_C_STD_FALSE=
fi
if test $c_compatibility = yes; then
GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE=
GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE='#'
else
GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE='#'
GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE=
fi
# Check whether --enable-c-mbchar or --disable-c-mbchar was given. # Check whether --enable-c-mbchar or --disable-c-mbchar was given.
@ -7427,15 +7420,6 @@ fi;
echo "${ECHO_T}$enable_libstdcxx_debug" >&6 echo "${ECHO_T}$enable_libstdcxx_debug" >&6
if test $enable_libstdcxx_debug = yes; then
GLIBCXX_BUILD_DEBUG_TRUE=
GLIBCXX_BUILD_DEBUG_FALSE='#'
else
GLIBCXX_BUILD_DEBUG_TRUE='#'
GLIBCXX_BUILD_DEBUG_FALSE=
fi
echo "$as_me:$LINENO: checking for extra compiler flags for building" >&5 echo "$as_me:$LINENO: checking for extra compiler flags for building" >&5
echo $ECHO_N "checking for extra compiler flags for building... $ECHO_C" >&6 echo $ECHO_N "checking for extra compiler flags for building... $ECHO_C" >&6
# Check whether --enable-cxx-flags or --disable-cxx-flags was given. # Check whether --enable-cxx-flags or --disable-cxx-flags was given.
@ -56984,22 +56968,13 @@ esac
if test $enable_symvers != no; then
GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE=
GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE='#'
else
GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE='#'
GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE=
fi
{ echo "$as_me:$LINENO: versioning on shared library symbols is $enable_symvers" >&5 { echo "$as_me:$LINENO: versioning on shared library symbols is $enable_symvers" >&5
echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;} echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;}
# This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE. # This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE.
if $GLIBCXX_IS_NATIVE; then if $GLIBCXX_IS_NATIVE && test $is_hosted = yes; then
# Do checks for memory limit functions. # Do checks for memory limit functions.
setrlimit_have_headers=yes setrlimit_have_headers=yes
@ -57562,7 +57537,7 @@ done
# Determine if checking the ABI is desirable. # Determine if checking the ABI is desirable.
if test $enable_symvers = no; then if test $enable_symvers = no || test $is_hosted = no; then
enable_abi_check=no enable_abi_check=no
else else
case "$host" in case "$host" in
@ -57575,24 +57550,6 @@ done
if test $enable_wchar_t = yes; then
GLIBCXX_TEST_WCHAR_T_TRUE=
GLIBCXX_TEST_WCHAR_T_FALSE='#'
else
GLIBCXX_TEST_WCHAR_T_TRUE='#'
GLIBCXX_TEST_WCHAR_T_FALSE=
fi
if test $enable_abi_check = yes; then
GLIBCXX_TEST_ABI_TRUE=
GLIBCXX_TEST_ABI_FALSE='#'
else
GLIBCXX_TEST_ABI_TRUE='#'
GLIBCXX_TEST_ABI_FALSE=
fi
# Propagate the target-specific source directories through the build chain. # Propagate the target-specific source directories through the build chain.
@ -57611,6 +57568,106 @@ FPOS_INC_SRCDIR=config/${fpos_include_dir}
# from GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT: # from GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT:
#AM_CONDITIONAL(GLIBCXX_BUILD_LIBMATH, test $need_libmath = yes) #AM_CONDITIONAL(GLIBCXX_BUILD_LIBMATH, test $need_libmath = yes)
if test $is_hosted = yes; then
GLIBCXX_HOSTED_TRUE=
GLIBCXX_HOSTED_FALSE='#'
else
GLIBCXX_HOSTED_TRUE='#'
GLIBCXX_HOSTED_FALSE=
fi
if test $enable_libstdcxx_pch = yes; then
GLIBCXX_BUILD_PCH_TRUE=
GLIBCXX_BUILD_PCH_FALSE='#'
else
GLIBCXX_BUILD_PCH_TRUE='#'
GLIBCXX_BUILD_PCH_FALSE=
fi
if test $enable_cheaders = c; then
GLIBCXX_C_HEADERS_C_TRUE=
GLIBCXX_C_HEADERS_C_FALSE='#'
else
GLIBCXX_C_HEADERS_C_TRUE='#'
GLIBCXX_C_HEADERS_C_FALSE=
fi
if test $enable_cheaders = c_std; then
GLIBCXX_C_HEADERS_C_STD_TRUE=
GLIBCXX_C_HEADERS_C_STD_FALSE='#'
else
GLIBCXX_C_HEADERS_C_STD_TRUE='#'
GLIBCXX_C_HEADERS_C_STD_FALSE=
fi
if test $c_compatibility = yes; then
GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE=
GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE='#'
else
GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE='#'
GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE=
fi
if test $enable_libstdcxx_debug = yes; then
GLIBCXX_BUILD_DEBUG_TRUE=
GLIBCXX_BUILD_DEBUG_FALSE='#'
else
GLIBCXX_BUILD_DEBUG_TRUE='#'
GLIBCXX_BUILD_DEBUG_FALSE=
fi
if test $enable_symvers != no; then
GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE=
GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE='#'
else
GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE='#'
GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE=
fi
if test $enable_wchar_t = yes; then
GLIBCXX_TEST_WCHAR_T_TRUE=
GLIBCXX_TEST_WCHAR_T_FALSE='#'
else
GLIBCXX_TEST_WCHAR_T_TRUE='#'
GLIBCXX_TEST_WCHAR_T_FALSE=
fi
if test $enable_abi_check = yes; then
GLIBCXX_TEST_ABI_TRUE=
GLIBCXX_TEST_ABI_FALSE='#'
else
GLIBCXX_TEST_ABI_TRUE='#'
GLIBCXX_TEST_ABI_FALSE=
fi
cat >confcache <<\_ACEOF cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure # This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure # tests run on this system so they can be shared between configure
@ -57911,6 +57968,13 @@ echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;} Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; } { (exit 1); exit 1; }; }
fi fi
if test -z "${GLIBCXX_HOSTED_TRUE}" && test -z "${GLIBCXX_HOSTED_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"GLIBCXX_HOSTED\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
echo "$as_me: error: conditional \"GLIBCXX_HOSTED\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
if test -z "${GLIBCXX_BUILD_PCH_TRUE}" && test -z "${GLIBCXX_BUILD_PCH_FALSE}"; then if test -z "${GLIBCXX_BUILD_PCH_TRUE}" && test -z "${GLIBCXX_BUILD_PCH_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"GLIBCXX_BUILD_PCH\" was never defined. { { echo "$as_me:$LINENO: error: conditional \"GLIBCXX_BUILD_PCH\" was never defined.
Usually this means the macro was only invoked conditionally." >&5 Usually this means the macro was only invoked conditionally." >&5
@ -58581,6 +58645,8 @@ s,@CXXCPP@,$CXXCPP,;t t
s,@CPPFLAGS@,$CPPFLAGS,;t t s,@CPPFLAGS@,$CPPFLAGS,;t t
s,@enable_shared@,$enable_shared,;t t s,@enable_shared@,$enable_shared,;t t
s,@enable_static@,$enable_static,;t t s,@enable_static@,$enable_static,;t t
s,@GLIBCXX_HOSTED_TRUE@,$GLIBCXX_HOSTED_TRUE,;t t
s,@GLIBCXX_HOSTED_FALSE@,$GLIBCXX_HOSTED_FALSE,;t t
s,@LIBUNWIND_FLAG@,$LIBUNWIND_FLAG,;t t s,@LIBUNWIND_FLAG@,$LIBUNWIND_FLAG,;t t
s,@GLIBCXX_BUILD_PCH_TRUE@,$GLIBCXX_BUILD_PCH_TRUE,;t t s,@GLIBCXX_BUILD_PCH_TRUE@,$GLIBCXX_BUILD_PCH_TRUE,;t t
s,@GLIBCXX_BUILD_PCH_FALSE@,$GLIBCXX_BUILD_PCH_FALSE,;t t s,@GLIBCXX_BUILD_PCH_FALSE@,$GLIBCXX_BUILD_PCH_FALSE,;t t

View File

@ -70,10 +70,15 @@ AC_SUBST(enable_shared)
AC_SUBST(enable_static) AC_SUBST(enable_static)
#AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10 #AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10
# Possibly disable most of the library.
## XXX Consider skipping unncessary tests altogether in this case, rather
## than just ignoring the results. Faster /and/ more correct, win win.
GLIBCXX_ENABLE_HOSTED
# Check for support bits and g++ features that don't require linking. # Check for support bits and g++ features that don't require linking.
GLIBCXX_ENABLE_SJLJ_EXCEPTIONS GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS
GLIBCXX_ENABLE_PCH([yes]) GLIBCXX_ENABLE_PCH($is_hosted)
# Enable all the variable C++ runtime options. # Enable all the variable C++ runtime options.
# NB: C_MBCHAR must come early. # NB: C_MBCHAR must come early.
@ -266,6 +271,7 @@ AC_SUBST(OS_INC_SRCDIR)
#AM_CONDITIONAL(CANADIAN, test $CANADIAN = yes) #AM_CONDITIONAL(CANADIAN, test $CANADIAN = yes)
# from GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT: # from GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT:
#AM_CONDITIONAL(GLIBCXX_BUILD_LIBMATH, test $need_libmath = yes) #AM_CONDITIONAL(GLIBCXX_BUILD_LIBMATH, test $need_libmath = yes)
GLIBCXX_EVALUATE_CONDITIONALS
AC_CACHE_SAVE AC_CACHE_SAVE

View File

@ -510,10 +510,30 @@ ${pch_input}: ${allstamped} ${host_builddir}/c++config.h ${pch_source}
# `$(mkinstalldirs)' instead of `mkdir -p'. In particular, # `$(mkinstalldirs)' instead of `mkdir -p'. In particular,
# host_headers_extra are taken out of the build tree staging area; # host_headers_extra are taken out of the build tree staging area;
# the rest are taken from the original source tree. # the rest are taken from the original source tree.
gxx_include_dir = @gxx_include_dir@
if GLIBCXX_HOSTED
install-data-local: install-headers ${pch_install} install-data-local: install-headers ${pch_install}
else
install-data-local: install-freestanding-headers
endif
# This is a subset of the full install-headers rule. We only need <cstddef>,
# <limits>, <cstdlib>, <cstdarg>, <new>, <typeinfo>, <exception>, and any
# files which they include (and which we provide). The last three headers
# are installed by libsupc++, so only the first four and the sub-includes
# are copied here.
install-freestanding-headers:
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${host_builddir}
for file in ${host_srcdir}/os_defines.h ${host_builddir}/c++config.h; do \
$(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${host_builddir}; done
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir}
$(INSTALL_DATA) ${std_builddir}/limits $(DESTDIR)${gxx_include_dir}/${std_builddir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir}
for file in cstddef cstdlib cstdarg; do \
$(INSTALL_DATA) ${c_base_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done
# The real deal.
install-headers: install-headers:
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir} $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir} $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir}

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@
@ -169,15 +171,6 @@ glibcxx_srcdir = @glibcxx_srcdir@
glibcxx_thread_h = @glibcxx_thread_h@ glibcxx_thread_h = @glibcxx_thread_h@
glibcxx_toolexecdir = @glibcxx_toolexecdir@ glibcxx_toolexecdir = @glibcxx_toolexecdir@
glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@ glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@
# For robustness sake (in light of junk files or in-source
# configuration), copy from the build or source tree to the install
# tree using only the human-maintained file lists and directory
# components. Yes, with minor differences, this is sheer duplication
# of the staging rules above using $(INSTALL_DATA) instead of LN_S and
# `$(mkinstalldirs)' instead of `mkdir -p'. In particular,
# host_headers_extra are taken out of the build tree staging area;
# the rest are taken from the original source tree.
gxx_include_dir = @gxx_include_dir@ gxx_include_dir = @gxx_include_dir@
host = @host@ host = @host@
host_alias = @host_alias@ host_alias = @host_alias@
@ -860,8 +853,35 @@ ${pch_input}: ${allstamped} ${host_builddir}/c++config.h ${pch_source}
$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O0 -g -o ${pch_output_builddir}/O0g; \ $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O0 -g -o ${pch_output_builddir}/O0g; \
$(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O2 -g -o ${pch_output_builddir}/O2g; $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O2 -g -o ${pch_output_builddir}/O2g;
install-data-local: install-headers ${pch_install} # For robustness sake (in light of junk files or in-source
# configuration), copy from the build or source tree to the install
# tree using only the human-maintained file lists and directory
# components. Yes, with minor differences, this is sheer duplication
# of the staging rules above using $(INSTALL_DATA) instead of LN_S and
# `$(mkinstalldirs)' instead of `mkdir -p'. In particular,
# host_headers_extra are taken out of the build tree staging area;
# the rest are taken from the original source tree.
@GLIBCXX_HOSTED_TRUE@install-data-local: install-headers ${pch_install}
@GLIBCXX_HOSTED_FALSE@install-data-local: install-freestanding-headers
# This is a subset of the full install-headers rule. We only need <cstddef>,
# <limits>, <cstdlib>, <cstdarg>, <new>, <typeinfo>, <exception>, and any
# files which they include (and which we provide). The last three headers
# are installed by libsupc++, so only the first four and the sub-includes
# are copied here.
install-freestanding-headers:
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${host_builddir}
for file in ${host_srcdir}/os_defines.h ${host_builddir}/c++config.h; do \
$(INSTALL_DATA) $${file} $(DESTDIR)${gxx_include_dir}/${host_builddir}; done
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${std_builddir}
$(INSTALL_DATA) ${std_builddir}/limits $(DESTDIR)${gxx_include_dir}/${std_builddir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${c_base_builddir}
for file in cstddef cstdlib cstdarg; do \
$(INSTALL_DATA) ${c_base_builddir}/$${file} $(DESTDIR)${gxx_include_dir}/${c_base_builddir}; done
# The real deal.
install-headers: install-headers:
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir} $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}
$(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir} $(mkinstalldirs) $(DESTDIR)${gxx_include_dir}/${bits_builddir}

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@

View File

@ -95,6 +95,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@

View File

@ -94,6 +94,8 @@ GLIBCXX_C_HEADERS_C_FALSE = @GLIBCXX_C_HEADERS_C_FALSE@
GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@ GLIBCXX_C_HEADERS_C_STD_FALSE = @GLIBCXX_C_HEADERS_C_STD_FALSE@
GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@ GLIBCXX_C_HEADERS_C_STD_TRUE = @GLIBCXX_C_HEADERS_C_STD_TRUE@
GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@ GLIBCXX_C_HEADERS_C_TRUE = @GLIBCXX_C_HEADERS_C_TRUE@
GLIBCXX_HOSTED_FALSE = @GLIBCXX_HOSTED_FALSE@
GLIBCXX_HOSTED_TRUE = @GLIBCXX_HOSTED_TRUE@
GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@
GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@ GLIBCXX_TEST_ABI_FALSE = @GLIBCXX_TEST_ABI_FALSE@
GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@ GLIBCXX_TEST_ABI_TRUE = @GLIBCXX_TEST_ABI_TRUE@