glibc/sysdeps/riscv/configure
Adhemerval Zanella 09f214528c riscv: Build with -mno-relax if linker does not support R_RISCV_ALIGN
It allows build both glibc and tests with lld (Since lld does not
support R_RISCV_ALIGN linker relaxation).

Checked with a build for riscv32-linux-gnu-rv32imafdc-ilp32d and
riscv64-linux-gnu-rv64imafdc-lp64d.

Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
Reviewed-by: Fangrui Song <maskray@google.com>
2021-11-03 09:25:06 -03:00

35 lines
1.1 KiB
Plaintext

# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/riscv/elf.
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
# Check if static linker supports R_RISCV_ALIGN
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for R_RISCV_ALIGN linker relaxation support" >&5
$as_echo_n "checking for R_RISCV_ALIGN linker relaxation support... " >&6; }
if ${libc_cv_riscv_r_align+:} false; then :
$as_echo_n "(cached) " >&6
else
cat > conftest.S <<EOF
.align 3
foo:
li a0,42
ret
EOF
libc_cv_riscv_r_align=no
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -nostdlib -nostartfiles $no_ssp -shared -fPIC -o contests.o conftest.S'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; }
then
libc_cv_riscv_r_align=yes
fi
rm -rf conftest.*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_riscv_r_align" >&5
$as_echo "$libc_cv_riscv_r_align" >&6; }
config_vars="$config_vars
riscv-r-align = $libc_cv_riscv_r_align"