HomeFreeBSD

Prepare some build fixes in advance of more _FORTIFY_SOURCE

Description

Prepare some build fixes in advance of more _FORTIFY_SOURCE

ZFS' libspl needs to be made aware that we have strlcat(3) and
strlcpy(3) to avoid some more complicated declaration duplication, so
go ahead and define these HAVE_ macros now.

libprocstat has to define _KERNEL and include kernel headers in order
to get what it wants, but this results in sys/cdefs.h being included too
late and we pick up the build breaking version of the __RENAME
definition. Just explicitly include sys/cdefs.h earlier rather than
disabling _FORTIFY_SOURCE. The zfs/ subdir only builds an object that
holds some structures and sizes, so just disable _FORTIFY_SOURCE there
entirely rather than trying to move #define _KERNEL into the file..

While we're here, make sure that we disable _FORTIFY_SOURCE in the
bootloader because we don't have the symbol renaming support today to do
it as cleanly as we'd like. ssp/ssp.h needs to be pulled into the libsa
environment so that other bits can understand that ssp is disabled in
the consistent __SSP_FORTIFY_LEVEL way that we try to do.

Reviewed by: allanjude (previous version), markj
Sponsored by: Klara, Inc.
Sponsored by: Stormshield
Differential Revision: https://reviews.freebsd.org/D45676

Details

Provenance
kevansAuthored on Jul 13 2024, 5:16 AM
Reviewer
allanjude
Differential Revision
D45676: Prepare some build fixes in advance of more _FORTIFY_SOURCE
Parents
rG9b505845a3ae: unionfs: fix LINT build
Branches
Unknown
Tags
Unknown