From https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/736/console : /builds/FreeBSD_HEAD_sparc64/obj/sparc64.sparc64/builds/FreeBSD_HEAD_sparc64/rescue/rescue//builds/FreeBSD_HEAD_sparc64/bin/cat/cat.o /builds/FreeBSD_HEAD_sparc64/obj/sparc64.sparc64/builds/FreeBSD_HEAD_sparc64/tmp/usr/bin/ld: --relax and -r may not be used together *** [cat.lo] Error code 1
contrib/gcc/config/sparc/freebsd.h: #define LINK_SPEC "%(link_arch) \ %{!mno-relax:%{!r:-relax}} ...... This means -relax is passed to the linker unless -mno-relax or -r appears on the compiler command line. I guess -Wl,-r in crunchgen code has to be changed back to -r.
A commit references this bug: Author: tijl Date: Mon Jun 15 19:48:29 UTC 2015 New revision: 284422 URL: https://svnweb.freebsd.org/changeset/base/284422 Log: Change -Wl,-r back to -r so gcc doesn't pass --relax to the linker on some architectures. PR: 200881 Changes: head/usr.sbin/crunch/crunchgen/crunchgen.c
MFC is for adrian to decide.
Adrian: please close this bug if you don't plan on MFCing your changes to crunchgen and bsd.crunchgen.mk .
Closing bug due to lack of feedback.