[Bug 220125] head -r320059 (e.g.) arm64: buildkernel after kernel-toolchain: crypto/armv8/armv8_crypto_wrap.c compile fails with .../lib/clang/4.0.0/include/arm_neon.h: fatal error: 'stdint.h' file not found

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Jun 19 06:22:45 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220125

            Bug ID: 220125
           Summary: head -r320059 (e.g.) arm64: buildkernel after
                    kernel-toolchain: crypto/armv8/armv8_crypto_wrap.c
                    compile fails with
                    .../lib/clang/4.0.0/include/arm_neon.h: fatal error:
                    'stdint.h' file not found
           Product: Base System
           Version: CURRENT
          Hardware: arm64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: markmi at dsl-only.net

[No matter if kernel-toolchain is modified to create a stdint.h (plus
whatever might go with it) vs. if arm_neon.h is made to avoid including
stdint.h this is a toolchain issue from what I can tell.]

Doing a kernel-toolchain build establishes:

# ls -dlT /usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/*
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:57 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/arpa
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:59 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/gssapi
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:57 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/protocols
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:58 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/rpc
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:58 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/rpcsvc
drwxr-xr-x  2 root  wheel  2 Jun 18 22:14:59 2017
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/include/xlocale

which excludes the following that a buildworld establishes
(shown from a different build):

# find /usr/obj/cortexA53_clang/ -name stdint.h -print | more
/usr/obj/cortexA53_clang/arm64.aarch64/usr/src/tmp/usr/include/sys/stdint.h
/usr/obj/cortexA53_clang/arm64.aarch64/usr/src/tmp/usr/include/c++/v1/stdint.h
/usr/obj/cortexA53_clang/arm64.aarch64/usr/src/tmp/usr/include/c++/v1/tr1/stdint.h
/usr/obj/cortexA53_clang/arm64.aarch64/usr/src/tmp/usr/include/stdint.h

But /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c includes
<...>/lib/clang/4.0.0/include/arm_neon.h which in turn includes
stdint.h via (this was an attempted debug build of the
kernel):

#include <stdint.h>

The overall combination prevents doing a buildkernel after
having done kernel-toolchain without ever having done
buildworld. In other words: buildworld is required before
buildkernel can finish.

--- armv8_crypto_wrap.o ---
In file included from /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c:46:
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/usr/bin/../lib/clang/4.0.0/include/arm_neon.h:31:10:
fatal error: 'stdint.h' file not found
#include <stdint.h>
         ^~~~~~~~~~
--- all_subdir_armv8crypto ---
*** [armv8_crypto_wrap.o] Error code 1

make[4]: stopped in /usr/src/sys/modules/armv8crypto
.ERROR_TARGET='armv8_crypto_wrap.o'
.ERROR_META_FILE='/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG/modules/usr/src/sys/modules/armv8crypto/armv8_crypto_wrap.o.meta'
.MAKE.LEVEL='4'
MAKEFILE=''
.MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
_ERROR_CMD='cc -mcpu=cortex-a53 -target aarch64-unknown-freebsd12.0
--sysroot=/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp
-B/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/usr/bin -c -O3 -pipe
-fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-DHAVE_KERNEL_OPTION_HEADERS -include
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG/opt_global.h
-I. -I/usr/src/sys -fno-common -g -fPIC
-I/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG -ffixed-x18
-ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall -Wredundant-decls
-Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
-Winline -Wcast-qual -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__
-Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas
-Wno-error-tautological-compare -Wno-error-empty-body
-Wno-error-parentheses-equality -Wno-error-unused-function
-Wno-error-pointer-sign -Wno-error-shift-negative-value
-Wno-error-address-of-packed-member -std=iso9899:1999  -Werror  
-march=armv8a+crypto /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c; ctfconvert
-L VERSION -g armv8_crypto_wrap.o;'
.CURDIR='/usr/src/sys/modules/armv8crypto'
.MAKE='make'
.OBJDIR='/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG/modules/usr/src/sys/modules/armv8crypto'
.TARGETS='all'
DESTDIR=''
LD_LIBRARY_PATH=''
MACHINE='arm64'
MACHINE_ARCH='aarch64'
MAKEOBJDIRPREFIX='/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG/modules'
MAKESYSPATH='/usr/src/share/mk'
MAKE_VERSION='20170510'
PATH='/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/legacy/usr/sbin:/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/legacy/usr/bin:/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/legacy/bin:/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/usr/sbin:/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin'
SRCTOP='/usr/src'
OBJTOP='/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG/modules/usr/src'
.MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk
/usr/src/share/mk/src.sys.env.mk
/root/src.configs/src.conf.cortexA53dbg-clang-bootstrap.amd64-host
/usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk
/root/src.configs/make.conf /usr/src/share/mk/local.sys.mk
/usr/src/share/mk/src.sys.mk /dev/null
/usr/src/sys/modules/armv8crypto/Makefile /usr/src/share/mk/bsd.kmod.mk
/usr/src/sys/conf/kmod.mk /usr/src/share/mk/bsd.init.mk
/usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk
/usr/src/share/mk/local.init.mk /usr/src/share/mk/src.init.mk
/usr/src/sys/modules/armv8crypto/../Makefile.inc /usr/src/share/mk/bsd.own.mk
/usr/src/share/mk/bsd.compiler.mk /usr/src/sys/conf/kern.opts.mk
/usr/src/sys/conf/config.mk /usr/src/share/mk/bsd.links.mk
/usr/src/share/mk/bsd.dep.mk /usr/src/share/mk/bsd.clang-analyze.mk
/usr/src/share/mk/bsd.obj.mk /usr/src/share/mk/bsd.subdir.mk
/usr/src/sys/conf/kern.mk'
.PATH='. /usr/src/sys/modules/armv8crypto /usr/src/sys/crypto/armv8
/usr/obj/cortexA53dbg_clang/arm64.aarch64/usr/src/sys/GENERIC-DBG'
1 error

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list