diff options
author | Jakub Jelinek <jakub@redhat.com> | 2003-05-17 00:09:22 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2003-05-17 00:09:22 +0200 |
commit | a733b15e510bf45335f9b5dc345117d4741ae743 (patch) | |
tree | 0263f96916c31cb329b80472caf4f2a3a0ffa797 /libffi/configure | |
parent | f5a1c99c633d3cc9a3f3c4ee4c34094f0369bbac (diff) | |
download | gcc-a733b15e510bf45335f9b5dc345117d4741ae743.zip gcc-a733b15e510bf45335f9b5dc345117d4741ae743.tar.gz gcc-a733b15e510bf45335f9b5dc345117d4741ae743.tar.bz2 |
configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section should be read-only.
* configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section
should be read-only.
* configure: Rebuilt.
* fficonfig.h.in: Rebuilt.
* include/ffi.h.in (EH_FRAME_FLAGS): Define.
* src/alpha/osf.S: Use EH_FRAME_FLAGS.
* src/powerpc/linux64.S: Likewise.
* src/powerpc/linux64_closure.S: Likewise. Include ffi.h.
* src/powerpc/sysv.S: Use EH_FRAME_FLAGS. Use pcrel encoding
if -fpic/-fPIC/-mrelocatable.
* src/powerpc/powerpc_closure.S: Likewise.
* src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include
#write in .eh_frame flags.
* src/sparc/v9.S: Likewise.
* src/x86/unix64.S: Use EH_FRAME_FLAGS.
* src/x86/sysv.S: Likewise. Use pcrel encoding if -fpic/-fPIC.
* src/s390/sysv.S: Use EH_FRAME_FLAGS. Include ffi.h.
From-SVN: r66887
Diffstat (limited to 'libffi/configure')
-rwxr-xr-x | libffi/configure | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libffi/configure b/libffi/configure index 5cbef7a..9c2550d 100755 --- a/libffi/configure +++ b/libffi/configure @@ -3638,6 +3638,34 @@ EOF fi fi +echo $ac_n "checking whether .eh_frame section should be read-only""... $ac_c" 1>&6 +echo "configure:3495: checking whether .eh_frame section should be read-only" >&5 +if eval "test \"`echo '$''{'libffi_cv_ro_eh_frame'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + libffi_cv_ro_eh_frame=no + 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 + rm -f conftest.* + +fi + +echo "$ac_t""$libffi_cv_ro_eh_frame" 1>&6 +if test "x$libffi_cv_ro_eh_frame" = xyes; then + cat >> confdefs.h <<\EOF +#define HAVE_RO_EH_FRAME 1 +EOF + +fi + |