Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Dec 2019 21:26:37 -0800
From:      Mark Millard <marklmi@yahoo.com>
To:        "jhibbits@freebsd.org " <jhibbits@FreeBSD.org>, svn-src-head@freebsd.org
Subject:   Re: svn commit: r356054 - in head: share/mk stand
Message-ID:  <8A9C94C7-094F-45B4-B156-5A04958C4938@yahoo.com>
References:  <8A9C94C7-094F-45B4-B156-5A04958C4938.ref@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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=3D${LOCALBASE}/bin/${CROSS_BINUTILS_PREFIX}-ld.bfd
+.else
+LD_BFD=3D${OBJTOP}/tmp/usr/bin/ld.bfd
+.endif

I'm confused by the 2 lines:

+.if defined(CROSS_BINUTILS_PREFIX)
+LD_BFD=3D${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=3D/usr/l=
ocal/aarch64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/amd64-gcc6.mk:CROSS_BINUTILS_PREFIX=3D/usr/loc=
al/x86_64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/powerpc64-gcc6.mk:CROSS_BINUTILS_PREFIX=3D/usr=
/local/powerpc64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/aarch64-gcc9.mk:CROSS_BINUTILS_PREFIX=3D/usr/l=
ocal/aarch64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/amd64-gcc9.mk:CROSS_BINUTILS_PREFIX=3D/usr/loc=
al/x86_64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/powerpc64-gcc9.mk:CROSS_BINUTILS_PREFIX=3D/usr=
/local/powerpc64-unknown-freebsd13.0/bin/
=
/usr/local/share/toolchains/powerpc-gcc9.mk:CROSS_BINUTILS_PREFIX=3D/usr/l=
ocal/powerpc-unknown-freebsd13.0/bin/

And when I look in /usr/srcv/Makefile.inc1 I see:

=
/usr/src/Makefile.inc1:CROSS_BINUTILS_PREFIX=3D/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).

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8A9C94C7-094F-45B4-B156-5A04958C4938>