3

In modern CMake one can specify a library as INTERFACE: it does not produce build output, but it can have properties associated to it, although not all properties can be set (for instance the FOLDER property is not supported). Say I have a generic CMake macro setting properties for a generic library target, is there a way to tell that the input target is an interface library, so that I can skip the unsupported properties only for that target?

Kevin
  • 16,549
  • 8
  • 60
  • 74
Paolo Crosetto
  • 1,038
  • 7
  • 17

1 Answers1

7

You query the TYPE property of target....

get_target_property(type target TYPE)
if (${type} STREQUAL "INTERFACE_LIBRARY")
KamilCuk
  • 120,984
  • 8
  • 59
  • 111