libffi/configure.ac does not correctly determine writable eh_frame
Anthony Green
green@redhat.com
Thu Feb 3 22:45:00 GMT 2011
Ian Lance Taylor <iant@google.com> writes:
> In the version of libffi distributed with gcc, I see this in
> configure.ac:
>
> echo 'extern void foo (void); void bar (void) { foo (); foo (); }' > conftest.c
> if $CC $CFLAGS -S -fpic -fexceptions -o conftest.s conftest.c > /dev/null 2>&1; then
> if grep '.section.*eh_frame.*"a"' conftest.s > /dev/null; then
> libffi_cv_ro_eh_frame=yes
> elif grep '.section.*eh_frame.*#alloc' conftest.c \
> | grep -v '#write' > /dev/null; then
> libffi_cv_ro_eh_frame=yes
> fi
> fi
>
> This does not work with current gcc. When that code is compiled, no
> .eh_frame section is generated. Therefore the configure script assumes
> that a writable .eh_frame section is appropriate, even when it is not.
>
> This was detected due to a bug in gold; see http://gcc.gnu.org/PR47248
> for more details. However, this issue in libffi should be fixed
> independently of the gold bug fix.
Thanks Ian. Any suggestions on what do I need to do to now to force an
.eh_frame section?
AG
>
> Ian
More information about the Libffi-discuss
mailing list