diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2017-10-10 11:12:50 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2017-10-20 16:54:27 -0200 |
commit | 8f6f5362727dc93360fe37e6d4e964f386b7b8e7 (patch) | |
tree | 4def4f88d147070f708b932a97a195297deccd56 /ChangeLog | |
parent | fe05e1cb6d64dba6172249c79526f1e9af8f2bfd (diff) | |
download | glibc-8f6f5362727dc93360fe37e6d4e964f386b7b8e7.tar glibc-8f6f5362727dc93360fe37e6d4e964f386b7b8e7.tar.gz glibc-8f6f5362727dc93360fe37e6d4e964f386b7b8e7.tar.bz2 glibc-8f6f5362727dc93360fe37e6d4e964f386b7b8e7.zip |
Avoid build multiarch if compiler warns about mismatched alias
GCC 8 emits an warning for alias for functions with incompatible types
and it is used extensivelly for ifunc resolvers implementations in C
(for instance on weak_alias with the internal symbol name to the
external one or with the libc_hidden_def to set ifunc for internal
usage).
This breaks the build when the ifunc resolver is not defined using
gcc attribute extensions (HAVE_GCC_IFUNC being 0). Although for
all currently architectures that have multiarch support this compiler
options is enabled for default, there is still the option where the
user might try build glibc with a compiler without support for such
extension. In this case this patch just disable the multiarch folder
in sysdeps selections.
GCC 7 and before still builds IFUNCs regardless of compiler support
(although for the lack of attribute support debug information would
be optimal).
Checked with a build on multiarch support architectures (aarch64,
arm, sparc, s390, powerpc, x86_64, i386) with multiarch enable
and disable and with GCC 7 and GCC 8.
* configure.ac (libc_cv_gcc_incompatbile_alias): New define:
indicates whether compiler emits an warning for alias for
functions with incompatible types.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -1,5 +1,9 @@ 2017-10-20 Adhemerval Zanella <adhemerval.zanella@linaro.org> + * configure.ac (libc_cv_gcc_incompatbile_alias): New define: + indicates whether compiler emits an warning for alias for + functions with incompatible types. + [BZ #22273] * sysdeps/unix/sysv/linux/spawni.c (__spawnix): Handle the case where the auxiliary process is terminated by a signal before calling _exit |