mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-15 04:20:28 +08:00
098a657fe4
PI_STATIC_AND_HIDDEN indicates whether accesses to internal linkage variables and hidden visibility variables in a shared object (ld.so) need dynamic relocations (usually R_*_RELATIVE). PI (position independent) in the macro name is a misnomer: a code sequence using GOT is typically position-independent as well, but using dynamic relocations does not meet the requirement. Not defining PI_STATIC_AND_HIDDEN is legacy and we expect that all new ports will define PI_STATIC_AND_HIDDEN. Current ports defining PI_STATIC_AND_HIDDEN are more than the opposite. Change the configure default. No functional change. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
19 lines
599 B
Plaintext
19 lines
599 B
Plaintext
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
|
|
# Local configure fragment for sysdeps/riscv/elf.
|
|
|
|
# Check if static linker supports R_RISCV_ALIGN
|
|
AC_CACHE_CHECK([for R_RISCV_ALIGN linker relaxation support], [libc_cv_riscv_r_align],[dnl
|
|
cat > conftest.S <<EOF
|
|
.align 3
|
|
foo:
|
|
li a0,42
|
|
ret
|
|
EOF
|
|
libc_cv_riscv_r_align=no
|
|
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o contests.o conftest.S])
|
|
then
|
|
libc_cv_riscv_r_align=yes
|
|
fi
|
|
rm -rf conftest.*])
|
|
LIBC_CONFIG_VAR([riscv-r-align], [$libc_cv_riscv_r_align])
|