[Bug 227274] There's a conflict between various versions of stdint.h which prevent kernel build on RPi3 for r331869

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Apr 3 22:55:02 UTC 2018


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

            Bug ID: 227274
           Summary: There's a conflict between various versions of
                    stdint.h which prevent kernel build on RPi3 for
                    r331869
           Product: Base System
           Version: CURRENT
          Hardware: arm64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: arm
          Assignee: freebsd-arm at FreeBSD.org
          Reporter: fbsd at www.zefox.net

Attempts to build a kernel on RPI3 running -current at r331869 fail with

--- all_subdir_armv8crypto ---
In file included from /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c:46:
In file included from /usr/lib/clang/6.0.0/include/arm_neon.h:31:
/usr/lib/clang/6.0.0/include/stdint.h:228:25: error: typedef redefinition with
different types ('int16_t' (aka 'short') vs '__int_fast16_t' (aka 'int'))
typedef __int_least16_t int_fast16_t;
--- all_subdir_amr ---
:> export_syms
--- all_subdir_armv8crypto ---
                        ^
/usr/obj/usr/src/arm64.aarch64/tmp/usr/include/stdint.h:51:25: note: previous
definition is here
typedef __int_fast16_t          int_fast16_t;
                                ^
In file included from /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c:46:
In file included from /usr/lib/clang/6.0.0/include/arm_neon.h:31:
/usr/lib/clang/6.0.0/include/stdint.h:229:26: error: typedef redefinition with
different types ('uint16_t' (aka 'unsigned short') vs '__uint_fast16_t' (aka
'unsigned int'))
typedef __uint_least16_t uint_fast16_t;
                         ^
/usr/obj/usr/src/arm64.aarch64/tmp/usr/include/stdint.h:56:26: note: previous
definition is here
typedef __uint_fast16_t         uint_fast16_t;
                                ^
In file included from /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c:46:
In file included from /usr/lib/clang/6.0.0/include/arm_neon.h:31:
/usr/lib/clang/6.0.0/include/stdint.h:245:24: error: typedef redefinition with
different types ('int8_t' (aka 'signed char') vs '__int_fast8_t' (aka 'int'))
typedef __int_least8_t int_fast8_t;
                       ^
/usr/obj/usr/src/arm64.aarch64/tmp/usr/include/stdint.h:50:24: note: previous
definition is here
typedef __int_fast8_t           int_fast8_t;
                                ^
In file included from /usr/src/sys/crypto/armv8/armv8_crypto_wrap.c:46:
--- all_subdir_amr ---
awk -f /usr/src/sys/conf/kmod_syms.awk amr_cam.kld  export_syms | xargs -J%
objcopy % amr_cam.kld
--- all_subdir_armv8crypto ---
In file included from /usr/lib/clang/6.0.0/include/arm_neon.h:31:
/usr/lib/clang/6.0.0/include/stdint.h:246:25: error: typedef redefinition with
different types ('uint8_t' (aka 'unsigned char') vs '__uint_fast8_t' (aka
'unsigned int'))
typedef __uint_least8_t uint_fast8_t;
                        ^
/usr/obj/usr/src/arm64.aarch64/tmp/usr/include/stdint.h:55:25: note: previous
definition is here
typedef __uint_fast8_t          uint_fast8_t;
                                ^
--- all_subdir_amr ---
--- amr_cam.ko.full ---
ld -m aarch64elf -Bshareable -znotext -d -warn-common --build-id=sha1  -o
amr_cam.ko.full amr_cam.kld
--- amr_cam.ko.debug ---
objcopy --only-keep-debug amr_cam.ko.full amr_cam.ko.debug
--- amr_cam.ko ---
objcopy --strip-debug --add-gnu-debuglink=amr_cam.ko.debug  amr_cam.ko.full
amawk -f /usr/src/sys/conf/kmod_syms.awk amr_cam.kld  export_syms | xargs -J%
ob
jcopy % amr_cam.kld
--- all_subdir_armv8crypto ---
In file included from /usr/lib/clang/6.0.0/include/arm_neon.h:31:
/usr/lib/clang/6.0.0/include/stdint.h:246:25: error: typedef redefinition with
 different types ('uint8_t' (aka 'unsigned char') vs '__uint_fast8_t' (aka 'un
signed int'))
typedef __uint_least8_t uint_fast8_t;
                        ^
/usr/obj/usr/src/arm64.aarch64/tmp/usr/include/stdint.h:55:25: note: previous 
definition is here
typedef __uint_fast8_t          uint_fast8_t;


Replacement of /usr/src has no effect, removal of /usr/obj/usr/src has no
effect. It's a little surprising to see buildkernel reference files outside
/usr/src or /usr/obj, I thought the whole point of buildkernel was to segregate
the new kernel environment from the old version of the system.

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


More information about the freebsd-arm mailing list