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)
Wed, Mar 5, 6:03 PM
Unknown Object (File)
Wed, Feb 26, 11:06 AM
Unknown Object (File)
Feb 22 2025, 2:26 PM
Unknown Object (File)
Feb 22 2025, 1:57 PM
Unknown Object (File)
Feb 22 2025, 1:45 PM
Unknown Object (File)
Feb 15 2025, 3:45 AM
Unknown Object (File)
Jan 30 2025, 5:07 AM
Unknown Object (File)
Jan 29 2025, 2:52 AM

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