On 2019-Dec-24, at 21:26, Mark Millard <marklmi at yahoo.com> wrote: > In: > > +# Defines a variable for Binutils linker, to be used to workaround some > +# issue with LLVM LLD (i.e. support for PowerPC32 bit on PowerPC64) > +# > +# This is an unavoidable cross coupling with Makefile.inc1 and > +# normal builds works when CROSS_BINUTILS_PREFIX and could be removed > +# when LLD PowerPC 32 bit support is completed > +.if defined(CROSS_BINUTILS_PREFIX) > +LD_BFD=${LOCALBASE}/bin/${CROSS_BINUTILS_PREFIX}-ld.bfd > +.else > +LD_BFD=${OBJTOP}/tmp/usr/bin/ld.bfd > +.endif > > I'm confused by the 2 lines: > > +.if defined(CROSS_BINUTILS_PREFIX) > +LD_BFD=${LOCALBASE}/bin/${CROSS_BINUTILS_PREFIX}-ld.bfd > > Looking in /usr/local/share/toolchains/*.mk I see > CROSS_BINUTILS_PREFIX as a full path in each case > ( based on devel/freebsd-gcc[69] in my context): > > # grep -r CROSS_BINU /usr/local/share/toolchains/ | more > /usr/local/share/toolchains/aarch64-gcc6.mk:CROSS_BINUTILS_PREFIX=/usr/local/aarch64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/amd64-gcc6.mk:CROSS_BINUTILS_PREFIX=/usr/local/x86_64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/powerpc64-gcc6.mk:CROSS_BINUTILS_PREFIX=/usr/local/powerpc64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/aarch64-gcc9.mk:CROSS_BINUTILS_PREFIX=/usr/local/aarch64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/amd64-gcc9.mk:CROSS_BINUTILS_PREFIX=/usr/local/x86_64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/powerpc64-gcc9.mk:CROSS_BINUTILS_PREFIX=/usr/local/powerpc64-unknown-freebsd13.0/bin/ > /usr/local/share/toolchains/powerpc-gcc9.mk:CROSS_BINUTILS_PREFIX=/usr/local/powerpc-unknown-freebsd13.0/bin/ > > And when I look in /usr/srcv/Makefile.inc1 I see: > > /usr/src/Makefile.inc1:CROSS_BINUTILS_PREFIX=/usr/local/${TARGET_TRIPLE}/bin/ > > Having an overall path structure like: > > ${LOCALBASE}/bin/usr/local/powerpc64-unknown-freebsd13.0/bin/-ld.bfd > > seems strange (using powerpc64 as an example). > I got to the point of trying a build that happens to have tried to use this code. It failed, reporting: --- libc.so.7.full --- building shared library libc.so.7 cc: error: invalid linker name in argument '-fuse-ld=/usr/local/bin//usr/local/powerpc64-unknown-freebsd13.0/bin/-ld.bfd' *** [libc.so.7.full] Error code 1 So I switched the code to: .if defined(CROSS_BINUTILS_PREFIX) LD_BFD=${CROSS_BINUTILS_PREFIX}ld.bfd .else LD_BFD=${OBJTOP}/tmp/usr/bin/ld.bfd .endif With that in place, the build completed. === Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar) _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
Re: svn commit: r356054 - in head: share/mk stand
Mark Millard via svn-src-head Sun, 29 Dec 2019 20:21:27 -0800
- svn commit: r356054 - in head: share/mk stan... Justin Hibbits
- Re: svn commit: r356054 - in head: shar... Mark Millard via svn-src-head
- Re: svn commit: r356054 - in head: ... Mark Millard via svn-src-head