# Used Behaviors Plugin

The "Used Behaviors Plugin" extracts the type names of all Behaviors referenced in a solution.  
At asset generation time, it generates a CMake file as given in the plugin configuration.

When configuring a build with CMake, there is a new option "CONTROLS\_PLUGIN\_CONFIGURATION\_ENABLED".

<p class="callout info">This option is hidden, when "COURIER\_ADD\_SCHOST\_PROJECT" flag is set to ON.</p>

When the option "CONTROLS\_PLUGIN\_CONFIGURATION\_ENABLED" is turned on, then another option "CONTROLS\_USED\_BEHAVIORS\_CONFIG\_PATH" is exposed, which must be set to the file as configured in the plugin.

Then the build is configured by CMake to only contain the Behaviors referenced in the solution, and some base behaviors and functionality, which is always required.