OK, so I see two needs for pkg-flags here then.
1. finding headers that aren't in the standard locations and wouldn't otherwise be found. 2. finding headers for a specific version of a library.
I think the current committed behaviour works nicely for use case #1. Use case #2, which you've raised, suggests that ignoring a missing pkg-config is a bad default. What about adding making it an option?
Also, if we're going to cater to use case #2, then perhaps we should support a list of alternatives à la define-foreign-library. What do you think?
Finally, how about renaming the directive to pkg-config-cflags? (I can sort of imagine we might want a pkg-config-lfags for wrappers at some point in the future.)