macro(test_target_property PROP) add_custom_target(CustomTarget) set_property(TARGET CustomTarget PROPERTY ${PROP} x) set_property(TARGET CustomTarget PROPERTY ${PROP}) set_property(TARGET CustomTarget APPEND PROPERTY ${PROP}) set_property(TARGET CustomTarget PROPERTY ${PROP} a) set_property(TARGET CustomTarget APPEND PROPERTY ${PROP} "") set_property(TARGET CustomTarget APPEND PROPERTY ${PROP} b c) set_property(TARGET CustomTarget APPEND PROPERTY ${PROP}) set_property(TARGET CustomTarget APPEND PROPERTY ${PROP} "d;;e") get_property(val TARGET CustomTarget PROPERTY ${PROP}) message(STATUS "Target ${PROP} is '${val}'") set_property(TARGET CustomTarget PROPERTY ${PROP}) endmacro() macro(test_directory_property PROP) set_property(DIRECTORY PROPERTY ${PROP} x) set_property(DIRECTORY PROPERTY ${PROP}) set_property(DIRECTORY APPEND PROPERTY ${PROP}) set_property(DIRECTORY PROPERTY ${PROP} a) set_property(DIRECTORY APPEND PROPERTY ${PROP} "") set_property(DIRECTORY APPEND PROPERTY ${PROP} b c) set_property(DIRECTORY APPEND PROPERTY ${PROP}) set_property(DIRECTORY APPEND PROPERTY ${PROP} "d;;e") get_property(val DIRECTORY PROPERTY ${PROP}) message(STATUS "Directory ${PROP} is '${val}'") set_property(DIRECTORY PROPERTY ${PROP}) endmacro()