[Question] when is F_CPU macro set?

I am trying to use the following F_CPU macro in a library:
#define F_CPU SystemCoreClock

This macro is found in stm32_def.h.

The problem is that SystemCoreClock is not resolved to a value at that time and the compiler complains that it is not a compile time constant when I try to use it.

Is there any way I can use it properly in a library? I expect to get the SystemCoreClock value.