This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 1/5] Avoid build multiarch if compiler warns about mismatched alias
On Thu, 19 Oct 2017, Adhemerval Zanella wrote:
> The patch also fixes the default value of the multiarch support in
> configure.ac (the correct value which is tested later in the script
> assumer 'yes' instead of 'default').
I'm concerned about this "fix". Did you test on an architecture where the
assembler and linker lack IFUNC support?
The default is supposed to be support if assembler and linker support is
present. If absent, an explicit --enable-multi-arch should give an error,
but the default would just disable the feature.
> if test x"$libc_cv_ld_gnu_indirect_function" != xyes; then
> if test x"$multi_arch" = xyes; then
> AC_MSG_ERROR([--enable-multi-arch support requires assembler and linker support])
That is, this is deliberately distinguishing "default" (turned into "no"
here if assembler and linker support absent) from "yes" (give an error
here if multi-arch explicitly requested but assembler and linker support
absent). This logic should be maintained when adding the requirement for
ifunc attributes to work with GCC 8 or later: for "default", missing
support means "no"; for "yes", missing support means error.
Later code in configure.ac also explicitly checks for "default" and turns
it into "no" when there are no multiarch sysdeps directories.
--
Joseph S. Myers
joseph@codesourcery.com