Re: New kernel-toolchain buildkernel problem for amd64 -> aarch64 cross build ( after -r336348 ) : ld used for addf_data only can target: elf_x86_64_fbsd elf_i386_fbsd

From: Bryan Drewery <bdrewery_at_FreeBSD.org>
Date: Mon, 16 Jul 2018 16:47:53 -0700
On 7/16/2018 3:49 PM, Mark Millard wrote:
> 
> 
> On 2018-Jul-16, at 3:31 PM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
> 
>> On 7/16/18 1:21 PM, Mark Millard wrote:
>>> I attempted a from-scratch (. . ./arm64.aarch64/ empty) kernel-toolchain buildkernel
>>> targeting aarch64 from amd64 based on head -r336349 . It failed by ending up
>>> using an ld that can only target elf_x86_64_fbsd elf_i386_fbsd :
>>
>> I probably extended the LLVM_TARGET_ALL=no in cross-compiler too far. I
>> thought I had left that out for kernel-toolchain but apparently not.
>>
>> Try this patch and kernel-toolchain after applying please:
>> http://people.freebsd.org/~bdrewery/patches/cross-compiler-fix.diff
>> . . .
> 
> Result is unchanged. Details follow.

Ok, I'll look more tomorrow.

> 
> With:
> 
> # svnlite diff /usr/src/Makefile.inc1
> Index: /usr/src/Makefile.inc1
> ===================================================================
> --- /usr/src/Makefile.inc1	(revision 336349)
> +++ /usr/src/Makefile.inc1	(working copy)
> _at__at_ -666,7 +666,7 _at__at_
>  BMAKE=		\
>  		${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \
>  		${BSARGS}
> -.if empty(.MAKEOVERRIDES:MMK_LLVM_TARGET_ALL)
> +.if empty(.MAKEOVERRIDES:MMK_LLVM_TARGET_ALL) && !make(*toolchain*)
>  BMAKE+=		MK_LLVM_TARGET_ALL=no
>  .endif
>  
> used via:
> 
> # rm -fr /usr/obj/cortexA53_clang/arm64.aarch64/*
> # ~/sys_build_scripts.amd64-host/make_cortexA53_nodebug_clang_bootstrap-amd64-host.sh -j4 kernel-toolchain buildkernel
> 
> I still get:
> 
> --- buildkernel ---
> Building /usr/obj/cortexA53_clang/arm64.aarch64/usr/src/arm64.aarch64/sys/GENERIC-NODBG/modules/usr/src/sys/modules/accf_data/accf_data.kld
> --- accf_data.kld ---
> ld: unrecognised emulation mode: aarch64elf
> Supported emulations: elf_x86_64_fbsd elf_i386_fbsd
> *** [accf_data.kld] Error code 1
> 
> 
> 
> Reminder of what my .sh script does:
> 
> # more ~/sys_build_scripts.amd64-host/make_cortexA53_nodebug_clang_bootstrap-amd64-host.sh
> kldload -n filemon && \
> script ~/sys_typescripts/typescript_make_cortexA53_nodebug_clang_bootstrap-amd64-host-$(date +%Y-%m-%d:%H:%M:%S) \
> env __MAKE_CONF="/root/src.configs/make.conf" SRCCONF="/dev/null" SRC_ENV_CONF="/root/src.configs/src.conf.cortexA53-clang-bootstrap.amd64-host" \
> WITH_META_MODE=yes \
> MAKEOBJDIRPREFIX="/usr/obj/cortexA53_clang/arm64.aarch64" \
> make $*
> 
> (I'll not repeat the other supporting material.)
> 
> ===
> Mark Millard
> marklmi at yahoo.com
> ( dsl-only.net went
> away in early 2018-Mar)
> 


-- 
Regards,
Bryan Drewery


Received on Mon Jul 16 2018 - 21:48:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:17 UTC