This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Solaris vtv port breaks x32 build
- From: Ulrich Drepper <drepper at gmail dot com>
- To: GCC Development <gcc at gcc dot gnu dot org>, ro at cebitec dot uni-bielefeld dot de
- Date: Sat, 28 Nov 2015 10:40:04 -0500
- Subject: Solaris vtv port breaks x32 build
- Authentication-results: sourceware.org; auth=none
After the Solaris vtv port was added my build of the x86 gcc with x32
support fails. The build is special since the kernel doesn't have x32
support and I cannot directly run x32 binaries (they are run in a kvm
kernel). This is used to work well by configuring the tree with
--build and --host etc.
The changes to libvtv/configure.ac forced the execution of some code
for all targets, specifically the AC_USE_SYSTEM_EXTENSIONS macro.
Once I take this (and the code depending on it) out the build is once
again fine. Below is the change I used. Can we revert the change
until the Solaris port is correctly done?
--- a/libvtv/configure.ac
+++ b/libvtv/configure.ac
@@ -27,7 +27,7 @@ target_alias=${target_alias-$host_alias}
AC_SUBST(target_alias)
GCC_LIBSTDCXX_RAW_CXX_FLAGS
-AC_USE_SYSTEM_EXTENSIONS
+# AC_USE_SYSTEM_EXTENSIONS
# Use same top-level configure hooks in libgcc/libstdc++/libvtv.
AC_MSG_CHECKING([for --enable-vtable-verify])
@@ -45,21 +45,21 @@ AC_MSG_RESULT($enable_vtable_verify)
unset VTV_SUPPORTED
AC_MSG_CHECKING([for host support for vtable verification])
. ${srcdir}/configure.tgt
-case ${host} in
- *-*-solaris2*)
- # libvtv requires init priority support, which depends on the linker
- # used on Solaris.
- AC_CACHE_CHECK(for init priority support, libvtv_cv_init_priority, [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,
- [[void ip (void) __attribute__ ((constructor (1)));]])],
- [libgcc_cv_init_priority=yes],[libgcc_cv_init_priority=no])])
- if test x$libvtv_cv_init_priority = xno; then
- VTV_SUPPORTED=no
- fi
- # FIXME: Maybe check for dl_iterate_phdr, too? Should be covered by
- # configure.tgt restricting to libvtv to Solaris 11+.
- ;;
-esac
+# case ${host} in
+# *-*-solaris2*)
+# # libvtv requires init priority support, which depends on the linker
+# # used on Solaris.
+# AC_CACHE_CHECK(for init priority support, libvtv_cv_init_priority, [
+# AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,
+# [[void ip (void) __attribute__ ((constructor (1)));]])],
+# [libgcc_cv_init_priority=yes],[libgcc_cv_init_priority=no])])
+# if test x$libvtv_cv_init_priority = xno; then
+# VTV_SUPPORTED=no
+# fi
+# # FIXME: Maybe check for dl_iterate_phdr, too? Should be covered by
+# # configure.tgt restricting to libvtv to Solaris 11+.
+# ;;
+# esac
AC_MSG_RESULT($VTV_SUPPORTED)
# Decide if it's usable.