Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Nov 2017 13:10:04 -0700
From:      Warner Losh <imp@bsdimp.com>
To:        Ngie Cooper <ngie@freebsd.org>
Cc:        src-committers <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r325446 - in head: . lib/libclang_rt share/mk
Message-ID:  <CANCZdfoR=AxP6gZDKoDX1RS3euDwF7dKZ08Mg976ciKVq7DcdA@mail.gmail.com>
In-Reply-To: <201711052001.vA5K107E042015@repo.freebsd.org>
References:  <201711052001.vA5K107E042015@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 5, 2017 at 1:01 PM, Ngie Cooper <ngie@freebsd.org> wrote:

> Author: ngie
> Date: Sun Nov  5 20:01:00 2017
> New Revision: 325446
> URL: https://svnweb.freebsd.org/changeset/base/325446
>
> Log:
>   Revert r325443
>
>   Despite the fact that it's a working solution, it doesn't follow the
> design

  philosophy of only doing TARGET_* in Makefile.inc1 and special locations
> in
>   the source tree.
>

Except for the things it could break, sure.

  PR:           222925
>   Requested by: imp
>
> Modified:
>   head/ObsoleteFiles.inc
>   head/lib/libclang_rt/Makefile.inc
>   head/share/mk/sys.mk
> Directory Properties:
>   head/   (props changed)
>
> Modified: head/ObsoleteFiles.inc
> ============================================================
> ==================
> --- head/ObsoleteFiles.inc      Sun Nov  5 19:52:11 2017        (r325445)
> +++ head/ObsoleteFiles.inc      Sun Nov  5 20:01:00 2017        (r325446)
> @@ -38,21 +38,6 @@
>  #   xargs -n1 | sort | uniq -d;
>  # done
>
> -# 20171105: fixing lib/libclang_rt CRTARCH for arm:armv[67].
> -.if ${MACHINE} == "arm"
> -.if ${MACHINE_ARCH:Marmv[67]*} != "" && ${CPUTYPE:M*soft*} == ""
>

This was fine.


> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.asan-preinit-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.asan-arm.a
> -OLD_LIBS+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.asan-arm.so
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.asan_cxx-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.profile-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.safestack-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.stats-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.stats_client-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.
> ubsan_standalone-arm.a
> -OLD_FILES+=usr/lib/clang/5.0.0/lib/freebsd/libclang_rt.
> ubsan_standalone_cxx-arm.a
> -.endif
> -.endif
>  # 20171104: libcap_random should be in /lib not in /usr/lib
>  OLD_LIBS+=usr/lib/libcap_random.so.0
>  # 20171104: Casper can work only as shared library
>
> Modified: head/lib/libclang_rt/Makefile.inc
> ============================================================
> ==================
> --- head/lib/libclang_rt/Makefile.inc   Sun Nov  5 19:52:11 2017
> (r325445)
> +++ head/lib/libclang_rt/Makefile.inc   Sun Nov  5 20:01:00 2017
> (r325446)
> @@ -2,14 +2,7 @@
>
>  .include <src.opts.mk>
>
> -# NOTE: based on TARGET_ABI/TARGET_CPUTYPE, set in Makefile.inc1 .
> -.if ${MACHINE} == "arm"
> -.if ${MACHINE_ARCH:Marmv[67]*} != "" && ${CPUTYPE:M*soft*} == ""
> -CRTARCH=       armhf
> -.endif
> -.endif
> -
> -CRTARCH?=      ${TARGET_CPUARCH:C/amd64/x86_64/}
> +CRTARCH=       ${MACHINE_CPUARCH:C/amd64/x86_64/}
>  CRTSRC=                ${SRCTOP}/contrib/compiler-r
>

It worked because you tested MACHINE* here. It further worked because you
polluted things with TARGET_CPUARCH based on MACHINE_CPUARCH, that is,
everything was ultimately derived from MACHINE* variables...

But you shouldn't test MACHINE here at all (it's only for kernel stuff, and
this isn't kernel stuff). Thankfully, it's completely redundant here, and
can be removed completely. With that, if you retain the current CRTARCH
line, but turn it into ?= it should be good. You'll need to fix the
comments, or better yet, just remove them.

 .PATH:         ${CRTSRC}/lib
>
> Modified: head/share/mk/sys.mk
> ============================================================
> ==================
> --- head/share/mk/sys.mk        Sun Nov  5 19:52:11 2017        (r325445)
> +++ head/share/mk/sys.mk        Sun Nov  5 20:01:00 2017        (r325446)
> @@ -15,11 +15,6 @@ unix         ?=      We run FreeBSD, not UNIX.
>  #
>  __TO_CPUARCH=C/mips(n32|64)?(el)?(hf)?/mips/:C/arm(v[67])?(
> eb)?/arm/:C/powerpc(64|spe)/powerpc/:C/riscv64(sf)?/riscv/
>  MACHINE_CPUARCH=${MACHINE_ARCH:${__TO_CPUARCH}}
> -.ifdef TARGET_ARCH
> -TARGET_CPUARCH=${TARGET_ARCH:${__TO_CPUARCH}}
> -.else
> -TARGET_CPUARCH=${MACHINE_CPUARCH}
> -.endif
>  .endif
>

This part should not return.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfoR=AxP6gZDKoDX1RS3euDwF7dKZ08Mg976ciKVq7DcdA>