Define a preprocessor symbol when shape is present

Avatar

Is there a way to know when the shape assembly is present in the project at compilation time.
I feel like the easiest way would be having a "SHAPE" preprocessor symbole that would make thing such as

#if SHAPE
GetComponent().Color = colors[Random.Range(0, colors.Length)];
#endif

My specific use case involve generic utility code reused across project. I like to be able to have script that are compatible with shape. In that example, i've got a script that change the color of an game object, by checking if it's an UI Image, a MeshRenderer or a Shape.

Maybe some similar feature or effect already exist ? Maybe there's a better way to do that ?

Reporting a bug? please specify Unity version:
Reporting a bug? please specify Shapes version:
Reporting a bug? please specify Render Pipeline:
URP