Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Nov 2019 16:04:44 -0700
From:      Warner Losh <imp@bsdimp.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Li-Wen Hsu <lwhsu@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r354900 - head/usr.sbin/jail
Message-ID:  <CANCZdfoG198Qqj90NS=NZ_%2BsMWoEPffGcJJmg25u4U97KgPfBQ@mail.gmail.com>
In-Reply-To: <59bf120c-2f35-1a22-b6fa-a9c9bb8cfdf4@FreeBSD.org>
References:  <201911201654.xAKGsMTv094014@repo.freebsd.org> <CANCZdfqVLZUqGiCDagwkULH7xegrZwehRsn8Ek-BJR=OVTpXGw@mail.gmail.com> <59bf120c-2f35-1a22-b6fa-a9c9bb8cfdf4@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Nov 20, 2019 at 3:09 PM John Baldwin <jhb@freebsd.org> wrote:

> On 11/20/19 10:01 AM, Warner Losh wrote:
> > On Wed, Nov 20, 2019 at 9:54 AM Li-Wen Hsu <lwhsu@freebsd.org> wrote:
> >
> >> Author: lwhsu
> >> Date: Wed Nov 20 16:54:21 2019
> >> New Revision: 354900
> >> URL: https://svnweb.freebsd.org/changeset/base/354900
> >>
> >> Log:
> >>   Use the correct variable, also limit the scope to bfd
> >>
> >>   PR:           242109
> >>   Reported by:  jhb
> >>   Sponsored by: The FreeBSD Foundation
> >>
> >> Modified:
> >>   head/usr.sbin/jail/Makefile
> >>
> >> Modified: head/usr.sbin/jail/Makefile
> >>
> >>
> ==============================================================================
> >> --- head/usr.sbin/jail/Makefile Wed Nov 20 16:35:58 2019
> (r354899)
> >> +++ head/usr.sbin/jail/Makefile Wed Nov 20 16:54:21 2019
> (r354900)
> >> @@ -18,7 +18,7 @@ CFLAGS+=-I. -I${.CURDIR}
> >>  # workaround for GNU ld (GNU Binutils) 2.33.1:
> >>  #   relocation truncated to fit: R_RISCV_GPREL_I against `.LANCHOR2'
> >>  # https://bugs.freebsd.org/242109
> >> -.if ${MACHINE_ARCH} == "riscv"
> >> +.if ${LINKER_TYPE} == "bfd" && ${MACHINE} == "riscv"
> >>
> >
> > MACHINE isn't the right thing to use here. It's never the proper thing in
> > userland makefiles, unless they are interfacing with the kernel.
> >
> > MACHINE_CPUARCH is what you want here.
>
> Eh, that claim doesn't seem quite true.  src.opts.mk only uses MACHINE
> and not
> MACHINE_CPUARCH for example (to set _TT that is then used all over the
> place in src.opts.mk).  My experience is that uses of *_CPUARCH are in
> fact
> pretty rare.
>

However, __TT is used bogusly in many places in src.opts.mk. They are all
relatively new related to llvm (and one for google test). MACHINE has
always been for the kernel and MACHINE_ARCH for userland. MACHINE_CPUARCH
was created for those architectures where we have a number of MACHINE_ARCH
to make things easier to cope with.

I've done several sweeps of the tree over the years to keep this enforced,
so I'm quite sure of the dichotomy...

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfoG198Qqj90NS=NZ_%2BsMWoEPffGcJJmg25u4U97KgPfBQ>