svn commit: r356465 - in stable/12: . contrib/llvm-project/clang/include/clang/CodeGen contrib/llvm-project/clang/lib/Basic/Targets contrib/llvm-project/clang/lib/CodeGen contrib/llvm-project/clang...

Dimitry Andric dim at FreeBSD.org
Wed Jan 8 21:06:37 UTC 2020


On 8 Jan 2020, at 19:37, mike tancsa <mike at sentex.net> wrote:
> 
> On 1/8/2020 1:14 PM, mike tancsa wrote:
>> On 1/8/2020 1:08 PM, Ian Lepore wrote:
>>> I am at r356502
>>>> root at asrock-ryzen7a:/usr/src # sleep 20;time make -j 16 buildworld >
>>>> /var/log/build.out ; time make -j16 buildkernel > /var/log/build.out.k
>>>> [Creating objdir /usr/obj/usr/src/amd64.amd64...]
>>>> 20805.460u 1075.767s 26:02.05 1400.8%   58220+3452k 650321+3431159io
>>>> 222076pf+0w
>>>> 1487.734u 147.997s 1:45.14 1555.7%      52726+3205k 195595+3387101io
>>>> 70456pf+0w
>>>> root at asrock-ryzen7a:/usr/src #
>>>> 
>>>> Just tried again. installkernel/world and reboot, yet still get
>>>> SYSTEM_LINKER: libclang will be built for bootstrapping a cross-linker.
>>>> 
>>>> 
>>>>    ---Mike
>>>> 
>>> What's the output of "make test-system-compiler"?  That will display
>>> all the variables used to make the decisions on what to (re)build.
>> Just installed again and rebooted
>> 
>> root at asrock-ryzen7a:/usr/src # svnlite status --show-updates
>> Status against revision: 356505
>> root at asrock-ryzen7a:/usr/src #
>> 
>> root at asrock-ryzen7a:/usr/src # make test-system-compiler
>> USING_SYSTEM_COMPILER              = yes
>> MK_SYSTEM_COMPILER                 = yes
>> MK_CROSS_COMPILER                  = yes
>> MK_CLANG_BOOTSTRAP                 = no
>> MK_GCC_BOOTSTRAP                   = no
>> WANT_COMPILER_TYPE                 = clang
>> WANT_COMPILER_VERSION              = 90001
>> WANT_COMPILER_VERSION_FILE         =
>> lib/clang/include/clang/Basic/Version.inc
>> WANT_COMPILER_FREEBSD_VERSION      = 1200021
>> WANT_COMPILER_FREEBSD_VERSION_FILE = lib/clang/freebsd_cc_version.h
>> CC                                 = cc
>> COMPILER_TYPE                      = clang
>> COMPILER_FEATURES                  =  c++11 c++14 c++17 retpoline
>> COMPILER_VERSION                   = 90001
>> COMPILER_FREEBSD_VERSION           = 1200021
>> XCC                                = cc
>> X_COMPILER_TYPE                    = clang
>> X_COMPILER_FEATURES                =  c++11 c++14 c++17 retpoline
>> X_COMPILER_VERSION                 = 90001
>> X_COMPILER_FREEBSD_VERSION         = 1200021
>> root at asrock-ryzen7a:/usr/src # make test-system-linker
>> USING_SYSTEM_LINKER                = no
>> MK_SYSTEM_LINKER                   = yes
>> MK_LLD_BOOTSTRAP                   = yes
>> MK_BINUTILS_BOOTSTRAP              = yes
>> WANT_LINKER_TYPE                   = lld
>> WANT_LINKER_VERSION                = 90001
>> WANT_LINKER_VERSION_FILE           =
>> lib/clang/include/lld/Common/Version.inc
>> WANT_LINKER_FREEBSD_VERSION        =
>> WANT_LINKER_FREEBSD_VERSION_FILE   =
>> lib/clang/include/lld/Common/Version.inc
>> LD                                 = ld
>> LINKER_TYPE                        = lld
>> LINKER_FEATURES                    =  build-id ifunc filter retpoline
>> LINKER_VERSION                     = 90001
>> LINKER_FREEBSD_VERSION             =
>> c1a0a213378a458fbea1a5c77b315c7dce08fd05-1200010
>> XLD                                = ld
>> X_LINKER_TYPE                      = lld
>> X_LINKER_FEATURES                  =  build-id ifunc filter retpoline
>> X_LINKER_VERSION                   = 90001
>> X_LINKER_FREEBSD_VERSION           =
>> c1a0a213378a458fbea1a5c77b315c7dce08fd05-1200010
>> root at asrock-ryzen7a:/usr/src #
>> 
> I also did make delete-old and make delete-old-libs, but no difference.
> make test-system-compiler and  make test-system-linker give the same
> results.
> 
> Also just tried blowing away /usr/obj and the same deal. The system
> linker needs to be rebuilt each time
> 
> make[1]: "/usr/src/Makefile.inc1" line 341: SYSTEM_COMPILER: Determined
> that CC=cc matches the source tree.  Not bootstrapping a cross-compiler.
> make[1]: "/usr/src/Makefile.inc1" line 348: SYSTEM_LINKER: libclang will
> be built for bootstrapping a cross-linker.

Hm, so it thinks the compiler is new enough, but not the linker?  This
might be due to the recent change of the upstream Subversion revision
into a Git coommit hash, e.g. lld used to print:

LLD 9.0.0 (FreeBSD 372316-1300005) (compatible with GNU linkers)

but now it prints:

LLD 9.0.1 (FreeBSD c1a0a213378a458fbea1a5c77b315c7dce08fd05-1300006) (compatible with GNU linkers)

The first number or hash is the upstream revision or commit, the second
number is "our" monotonically increasing version number.  If we make
changes that require re-bootstrapping the linker, we bump that second
number.

I think something in the MK_SYSTEM_LINKER logic may have fallen over due
to the change in this output.  Ed, any ideas?

Note I didn't see any reports about this in head, but it could also be
a problem there.

-Dimitry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 223 bytes
Desc: Message signed with OpenPGP
URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20200108/2fbe3cdf/attachment.sig>


More information about the freebsd-stable mailing list