Your assessment of the DIRECTORY
keyword to set_property
and set_source_files_properties
is correct.
The directory-scoped command available is add_compile_options
. This command adds compile options to all source files in the current directory and below. This command is syntactic sugar for set_property (DIRECTORY PROPERTY COMPILE_DEFINITIONS <opts...>)