| 123456789101112131415161718192021222324252627282930313233343536 | 
							
- #!
 
- #! See http://www.cmake.org/Wiki/CMakeMacroParseArguments
 
- #!
 
- #! \ingroup CMakeUtilities
 
- macro(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()
 
 
  |