Page MenuHomeFreeBSD

Fix riscv64 build with binutils 2.33.1
ClosedPublic

Authored by lwhsu on Nov 20 2019, 2:42 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Nov 12, 8:04 PM
Unknown Object (File)
Fri, Nov 1, 6:42 PM
Unknown Object (File)
Sat, Oct 26, 1:01 PM
Unknown Object (File)
Wed, Oct 23, 5:59 PM
Unknown Object (File)
Wed, Oct 23, 2:37 PM
Unknown Object (File)
Sep 22 2024, 12:42 PM
Unknown Object (File)
Sep 17 2024, 1:22 PM
Unknown Object (File)
Sep 8 2024, 4:23 PM
Subscribers

Details

Summary

riscv64 build fails with binutils 2.33.1:

/usr/local/bin/riscv64-unknown-freebsd12.0-gcc --sysroot=/scratch/tmp/lwhsu/obj/scratch/tmp/lwhsu/src/riscv.riscv64/tmp -B/usr/local/riscv64-unknown-freebsd12.0/bin/ -O2 -pipe -march=rv64imafdc -mabi=lp64d -I. -I/scratch/tmp/lwhsu/src/usr.sbin/jail -DINET6 -DINET -g -std=gnu99 -Wno-format-zero-length -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-error=address -Wno-error=array-bounds -Wno-error=attributes -Wno-error=bool-compare -Wno-error=cast-align -Wno-error=clobbered -Wno-error=deprecated-declarations -Wno-error=enum-compare -Wno-error=extra -Wno-error=inline -Wno-error=logical-not-parentheses -Wno-error=strict-aliasing -Wno-error=uninitialized -Wno-error=unused-but-set-variable -Wno-error=unused-function -Wno-error=unused-value -Wno-error=misleading-indentation -Wno-error=nonnull-compare -Wno-error=shift-negative-value -Wno-error=tautological-compare -Wno-error=unused-const-variable -Wno-error=bool-operation -Wno-error=deprecated -Wno-error=expansion-to-defined -Wno-error=format-overflow -Wno-error=format-truncation -Wno-error=implicit-fallthrough -Wno-error=int-in-bool-context -Wno-error=memset-elt-size -Wno-error=noexcept-type -Wno-error=nonnull -Wno-error=pointer-compare -Wno-error=stringop-overflow -Wno-error=aggressive-loop-optimizations -Wno-error=cast-function-type -Wno-error=catch-value -Wno-error=multistatement-macros -Wno-error=restrict -Wno-error=sizeof-pointer-memaccess -Wno-error=stringop-truncation    -o jail.full jail.o command.o config.o state.o jaillex.o jailparse.o   -ljail  -lkvm  -lutil
jailparse.o: in function `yyparse':
/scratch/tmp/lwhsu/src/usr.sbin/jail/jailparse.y:75:(.text+0xfe): relocation truncated to fit: R_RISCV_GPREL_I against `.LANCHOR2'
collect2: error: ld returned 1 exit status
*** [jail.full] Error code 1

make[4]: stopped in /scratch/tmp/lwhsu/src/usr.sbin/jail
1 error

Passing --no-relax to linker to workaround this.

Test Plan

make CROSS_TOOLCHAIN=riscv64-gcc buildworld buildkernel

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable