svn commit: r325446 - in head: . lib/libclang_rt share/mk
Warner Losh
imp at bsdimp.com
Sun Nov 5 20:10:06 UTC 2017
On Sun, Nov 5, 2017 at 1:01 PM, Ngie Cooper <ngie at 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
More information about the svn-src-head
mailing list