cmake/Tests/Fuzzing/cmScript.dict
Leslie P. Polzer c602a9824c Tests/Fuzzing: Add cmScriptFuzzer
Fuzz the CMake script interpreter.
Tests execution of cmake -P scripts.
2026-01-20 14:06:36 -05:00

194 lines
1.9 KiB
Plaintext

# CMake script dictionary - comprehensive command coverage
# Basic structure
"("
")"
"\x0a"
" "
"\x09"
# Comments
"#"
"#[["
"]]"
# Quotes and brackets
"\""
"[["
"]]"
"[=["
"]=]"
# Variable references
"$"
"${"
"}"
"${}"
"$ENV{"
"$CACHE{"
# Generator expressions
"$<"
">"
"$<BOOL:"
"$<AND:"
"$<OR:"
"$<NOT:"
"$<IF:"
"$<STREQUAL:"
"$<VERSION_LESS:"
"$<TARGET_FILE:"
# Core commands
"cmake_minimum_required"
"project"
"set"
"unset"
"message"
"return"
"include"
# Variable commands
"option"
"mark_as_advanced"
"separate_arguments"
# Control flow
"if"
"elseif"
"else"
"endif"
"foreach"
"endforeach"
"while"
"endwhile"
"break"
"continue"
"function"
"endfunction"
"macro"
"endmacro"
"block"
"endblock"
# String operations
"string"
"LENGTH"
"SUBSTRING"
"FIND"
"REPLACE"
"REGEX"
"MATCH"
"MATCHALL"
"TOUPPER"
"TOLOWER"
"STRIP"
"GENEX_STRIP"
"APPEND"
"PREPEND"
"CONCAT"
"JOIN"
"COMPARE"
"MD5"
"SHA1"
"SHA256"
"MAKE_C_IDENTIFIER"
"RANDOM"
"TIMESTAMP"
"UUID"
"JSON"
# List operations
"list"
"GET"
"APPEND"
"PREPEND"
"INSERT"
"FILTER"
"REMOVE_ITEM"
"REMOVE_AT"
"REMOVE_DUPLICATES"
"REVERSE"
"SORT"
"TRANSFORM"
"SUBLIST"
"POP_BACK"
"POP_FRONT"
# Math
"math"
"EXPR"
# File operations
"file"
"READ"
"STRINGS"
"WRITE"
"APPEND"
"GLOB"
"GLOB_RECURSE"
"RENAME"
"REMOVE"
"MAKE_DIRECTORY"
"RELATIVE_PATH"
"TO_CMAKE_PATH"
"TO_NATIVE_PATH"
"DOWNLOAD"
"UPLOAD"
"COPY"
"INSTALL"
"SIZE"
"READ_SYMLINK"
"CREATE_LINK"
"CHMOD"
"TOUCH"
"GENERATE"
"CONFIGURE"
"ARCHIVE_CREATE"
"ARCHIVE_EXTRACT"
# Conditionals
"DEFINED"
"COMMAND"
"POLICY"
"TARGET"
"TEST"
"EXISTS"
"IS_DIRECTORY"
"IS_SYMLINK"
"IS_ABSOLUTE"
"MATCHES"
"LESS"
"GREATER"
"EQUAL"
"STRLESS"
"STRGREATER"
"STREQUAL"
"VERSION_LESS"
"VERSION_GREATER"
"VERSION_EQUAL"
"AND"
"OR"
"NOT"
"IN_LIST"
# Common values
"TRUE"
"FALSE"
"ON"
"OFF"
"YES"
"NO"
"STATUS"
"WARNING"
"FATAL_ERROR"
"SEND_ERROR"
"PARENT_SCOPE"
"CACHE"
"FORCE"
"INTERNAL"
"STRING"
"BOOL"
"PATH"
"FILEPATH"