diff --git a/tools/build/Makefile b/tools/build/Makefile index 49223f9d9d4..75dc6ab6055 100644 --- a/tools/build/Makefile +++ b/tools/build/Makefile @@ -153,6 +153,15 @@ SYSINCS+= ${SRCTOP}/sys/sys/nlist_aout.h .if ${.MAKE.OS} != "FreeBSD" .PATH: ${.CURDIR}/cross-build + +# Needed by our sys/types.h wrapper +SYSINCS+= ${SRCTOP}/sys/sys/bitcount.h + +# macOS's bitstring lacks FreeBSD-specific additions used by makefs's ZFS code +# and Linux doesn't have it at all. +INCS+= ${SRCTOP}/include/bitstring.h +SYSINCS+= ${SRCTOP}/sys/sys/bitstring.h + # dbopen() behaves differently on Linux and FreeBSD so we ensure that we # bootstrap the FreeBSD db code. The cross-build headers #define dbopen() to # __freebsd_dbopen() so that we don't ever use the host version diff --git a/tools/build/cross-build/include/common/sys/types.h b/tools/build/cross-build/include/common/sys/types.h index 044ca6bed4f..82436e7e922 100644 --- a/tools/build/cross-build/include/common/sys/types.h +++ b/tools/build/cross-build/include/common/sys/types.h @@ -68,4 +68,8 @@ typedef unsigned long cap_ioctl_t; struct cap_rights; typedef struct cap_rights cap_rights_t; + +/* Needed for bitstring */ +#include + #endif