set(i 0) set(in_file_args FALSE) while (i LESS CMAKE_ARGC) if (in_file_args) if (NOT EXISTS "${CMAKE_ARGV${i}}") message(FATAL_ERROR "${CMAKE_ARGV${i}} does not exist") endif() elseif (CMAKE_ARGV${i} STREQUAL "-P") # skip script name math(EXPR i "${i} + 1") set(in_file_args TRUE) endif() math(EXPR i "${i} + 1") endwhile()