| 123456789101112131415161718192021222324252627282930313233343536 | 
#!#! See http://www.cmake.org/Wiki/CMakeMacroParseArguments#!#! \ingroup CMakeUtilitiesmacro(CtkMacroParseArguments prefix arg_names option_names)  set(DEFAULT_ARGS)  foreach(arg_name ${arg_names})    set(${prefix}_${arg_name})  endforeach()  foreach(option ${option_names})    set(${prefix}_${option} FALSE)  endforeach()  set(current_arg_name DEFAULT_ARGS)  set(current_arg_list)  foreach(arg ${ARGN})    set(larg_names ${arg_names})    list(FIND larg_names "${arg}" is_arg_name)    IF (is_arg_name GREATER -1)      set(${prefix}_${current_arg_name} ${current_arg_list})      set(current_arg_name ${arg})      set(current_arg_list)    ELSE (is_arg_name GREATER -1)      set(loption_names ${option_names})          list(FIND loption_names "${arg}" is_option)      IF (is_option GREATER -1)        set(${prefix}_${arg} TRUE)      ELSE (is_option GREATER -1)        set(current_arg_list ${current_arg_list} ${arg})      ENDIF (is_option GREATER -1)    ENDIF (is_arg_name GREATER -1)  endforeach()  set(${prefix}_${current_arg_name} ${current_arg_list})endmacro()
 |