Page MenuHomeFreeBSD

bsd.symver.mk: pass $CFLAGS to $CPP invocation
ClosedPublic

Authored by emaste on May 24 2024, 4:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Dec 20, 7:51 PM
Unknown Object (File)
Mon, Dec 1, 5:13 AM
Unknown Object (File)
Sat, Nov 29, 2:23 PM
Unknown Object (File)
Fri, Nov 28, 11:05 PM
Unknown Object (File)
Wed, Nov 26, 3:20 PM
Unknown Object (File)
Nov 10 2025, 10:39 PM
Unknown Object (File)
Nov 10 2025, 10:27 PM
Unknown Object (File)
Nov 3 2025, 8:45 PM

Details

Summary
This allows us to support symbols optionally available based on
configuration, not just on compiler built-in #defines.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

@jrtc27 wondered if cpp accepts all of the same flags as cc. I imagine so but we could also limit this to ${CFLAGS:M-D*} perhaps.

Probably worth testing with a gcc toolchain to see if we need to filter. Including -D* might be a place to start, but some other options to impact defines in ways that might impact symbols (e.g., -march, -mabi, -mcpu) so it might be we want to have a deny list (certainly we could filter out -Wl*.)

it might be we want to have a deny list (certainly we could filter out -Wl*.)

Yeah, I could start with `:N-Wl* as there is no linking so no reason to pass linker flags.

Ping? @jhb has just encountered this issue downstream in CheriBSD. I'd suggest landing it as-is and we can whack problematic flags as we discover them?

Yeah, I used this patch directly in CheriBSD (just all of CFLAGS)

I'm fine with trying this as is and adding :N filters if it proves to be an issue.

This revision is now accepted and ready to land.Aug 21 2024, 12:28 AM