blob: 8976d34ca0c61ef507b304407e586e80c51b22e5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# This file is generated from configure.in by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/powerpc/powerpc64.
# The Aix ld uses global .symbol_names instead of symbol_names
# and unfortunately early Linux PPC64 linkers use it as well.
{ echo "$as_me:$LINENO: checking for support for omitting dot symbols" >&5
echo $ECHO_N "checking for support for omitting dot symbols... $ECHO_C" >&6; }
if test "${libc_cv_omit_dot_syms+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
libc_cv_omit_dot_syms=no
echo 'void foo (void) {}' > conftest.c
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S conftest.c -o conftest.s 1>&5'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
if grep -w '\.foo' conftest.s > /dev/null; then
:
else
libc_cv_omit_dot_syms=yes
fi
fi
rm -f conftest.c conftest.s
fi
{ echo "$as_me:$LINENO: result: $libc_cv_omit_dot_syms" >&5
echo "${ECHO_T}$libc_cv_omit_dot_syms" >&6; }
if test x$libc_cv_omit_dot_syms != xyes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_ASM_GLOBAL_DOT_NAME 1
_ACEOF
fi
{ echo "$as_me:$LINENO: checking for linker support for overlapping .opd entries" >&5
echo $ECHO_N "checking for linker support for overlapping .opd entries... $ECHO_C" >&6; }
if test "${libc_cv_overlapping_opd+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
libc_cv_overlapping_opd=no
echo 'void foo (void) {}' > conftest.c
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S conftest.c -o conftest.s 1>&5'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
if grep '\.TOC\.@tocbase' conftest.s > /dev/null; then
if grep '\.TOC\.@tocbase[ ]*,[ ]*0' conftest.s > /dev/null; then
:
else
libc_cv_overlapping_opd=yes
fi
fi
fi
rm -f conftest.c conftest.s
fi
{ echo "$as_me:$LINENO: result: $libc_cv_overlapping_opd" >&5
echo "${ECHO_T}$libc_cv_overlapping_opd" >&6; }
if test x$libc_cv_overlapping_opd = xyes; then
cat >>confdefs.h <<\_ACEOF
#define USE_PPC64_OVERLAPPING_OPD 1
_ACEOF
fi
# Some compilers have been configured to emit PT_GNU_STACK on PowerPC64 even
# though this isn't necessary. If it is present then which check-execstack is
# tested should be changed.
{ echo "$as_me:$LINENO: checking if PT_GNU_STACK ELF program header is emitted by the compiler on PowerPC64" >&5
echo $ECHO_N "checking if PT_GNU_STACK ELF program header is emitted by the compiler on PowerPC64... $ECHO_C" >&6; }
if test "${libc_cv_ppc64_pt_gnu_stack+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
echo 'int main (void) { return 0; }' > conftest.c
libc_cv_ppc64_pt_gnu_stack=no
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest
conftest.c 1>&5'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }
then
if readelf -l conftest | fgrep GNU_STACK > /dev/null; then
libc_cv_ppc64_pt_gnu_stack=yes
fi
fi
rm -f conftest*
fi
{ echo "$as_me:$LINENO: result: $libc_cv_ppc64_pt_gnu_stack" >&5
echo "${ECHO_T}$libc_cv_ppc64_pt_gnu_stack" >&6; }
#AC_SUBST(libc_cv_ppc64_pt_gnu_stack)
if test $libc_cv_ppc64_pt_gnu_stack = yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_PPC64_PT_GNU_STACK 1
_ACEOF
fi
|