diff --git a/Languages/Resources/Jamfile b/Languages/Resources/Jamfile
index a1c4207..4c3cdf9 100644
--- a/Languages/Resources/Jamfile
+++ b/Languages/Resources/Jamfile
@@ -3,6 +3,7 @@ SubDir TOP Languages Resources ;
#
RezObjects
keywords.asm.r
+ keywords.cmake.r
keywords.cpp.r
keywords.d.r
keywords.diff.r
diff --git a/Languages/Resources/keywords.cmake b/Languages/Resources/keywords.cmake
new file mode 100644
index 0000000..f8f0e37
--- /dev/null
+++ b/Languages/Resources/keywords.cmake
@@ -0,0 +1,1134 @@
+-Pe-Keywords-Language- # cmake --help-command-list
+add_compile_definitions
+add_compile_options
+add_custom_command
+add_custom_target
+add_definitions
+add_dependencies
+add_executable
+add_library
+add_link_options
+add_subdirectory
+add_test
+aux_source_directory
+block
+break
+build_command
+build_name
+cmake_file_api
+cmake_host_system_information
+cmake_language
+cmake_minimum_required
+cmake_parse_arguments
+cmake_path
+cmake_policy
+configure_file
+continue
+create_test_sourcelist
+ctest_build
+ctest_configure
+ctest_coverage
+ctest_empty_binary_directory
+ctest_memcheck
+ctest_read_custom_files
+ctest_run_script
+ctest_sleep
+ctest_start
+ctest_submit
+ctest_test
+ctest_update
+ctest_upload
+define_property
+else
+elseif
+enable_language
+enable_testing
+endblock
+endforeach
+endfunction
+endif
+endmacro
+endwhile
+exec_program
+execute_process
+export
+export_library_dependencies
+file
+find_file
+find_library
+find_package
+find_path
+find_program
+fltk_wrap_ui
+foreach
+function
+get_cmake_property
+get_directory_property
+get_filename_component
+get_property
+get_source_file_property
+get_target_property
+get_test_property
+if
+include
+include_directories
+include_external_msproject
+include_guard
+include_regular_expression
+install
+install_files
+install_programs
+install_targets
+link_directories
+link_libraries
+list
+load_cache
+load_command
+macro
+make_directory
+mark_as_advanced
+math
+message
+option
+output_required_files
+project
+qt_wrap_cpp
+qt_wrap_ui
+remove
+remove_definitions
+return
+separate_arguments
+set
+set_directory_properties
+set_property
+set_source_files_properties
+set_target_properties
+set_tests_properties
+site_name
+source_group
+string
+subdir_depends
+subdirs
+target_compile_definitions
+target_compile_features
+target_compile_options
+target_include_directories
+target_link_directories
+target_link_libraries
+target_link_options
+target_precompile_headers
+target_sources
+try_compile
+try_run
+unset
+use_mangled_mesa
+utility_source
+variable_requires
+variable_watch
+while
+write_file
+
+-Pe-Keywords-User1- # cmake --help-variable-list
+_BINARY_DIR
+_DESCRIPTION
+_HOMEPAGE_URL
+_IS_TOP_LEVEL
+_SOURCE_DIR
+_VERSION
+_VERSION_MAJOR
+_VERSION_MINOR
+_VERSION_PATCH
+_VERSION_TWEAK
+_ROOT
+ANDROID
+APPLE
+BORLAND
+BSD
+BUILD_SHARED_LIBS
+CACHE
+CMAKE__POSTFIX
+CMAKE__ANDROID_TOOLCHAIN_MACHINE
+CMAKE__ANDROID_TOOLCHAIN_PREFIX
+CMAKE__ANDROID_TOOLCHAIN_SUFFIX
+CMAKE__ARCHIVE_APPEND
+CMAKE__ARCHIVE_CREATE
+CMAKE__ARCHIVE_FINISH
+CMAKE__BYTE_ORDER
+CMAKE__CLANG_TIDY
+CMAKE__CLANG_TIDY_EXPORT_FIXES_DIR
+CMAKE__COMPILER
+CMAKE__COMPILER_ABI
+CMAKE__COMPILER_AR
+CMAKE__COMPILER_ARCHITECTURE_ID
+CMAKE__COMPILER_EXTERNAL_TOOLCHAIN
+CMAKE__COMPILER_FRONTEND_VARIANT
+CMAKE__COMPILER_ID
+CMAKE__COMPILER_LAUNCHER
+CMAKE__COMPILER_LINKER
+CMAKE__COMPILER_LINKER_FRONTEND_VARIANT
+CMAKE__COMPILER_LINKER_ID
+CMAKE__COMPILER_LINKER_VERSION
+CMAKE__COMPILER_LOADED
+CMAKE__COMPILER_PREDEFINES_COMMAND
+CMAKE__COMPILER_RANLIB
+CMAKE__COMPILER_TARGET
+CMAKE__COMPILER_VERSION
+CMAKE__COMPILER_VERSION_INTERNAL
+CMAKE__COMPILE_OBJECT
+CMAKE__CPPCHECK
+CMAKE__CPPLINT
+CMAKE__CREATE_SHARED_LIBRARY
+CMAKE__CREATE_SHARED_MODULE
+CMAKE__CREATE_STATIC_LIBRARY
+CMAKE__EXTENSIONS
+CMAKE__EXTENSIONS_DEFAULT
+CMAKE__FLAGS
+CMAKE__FLAGS_
+CMAKE__FLAGS__INIT
+CMAKE__FLAGS_DEBUG
+CMAKE__FLAGS_DEBUG_INIT
+CMAKE__FLAGS_INIT
+CMAKE__FLAGS_MINSIZEREL
+CMAKE__FLAGS_MINSIZEREL_INIT
+CMAKE__FLAGS_RELEASE
+CMAKE__FLAGS_RELEASE_INIT
+CMAKE__FLAGS_RELWITHDEBINFO
+CMAKE__FLAGS_RELWITHDEBINFO_INIT
+CMAKE__HOST_COMPILER
+CMAKE__IGNORE_EXTENSIONS
+CMAKE__IMPLICIT_INCLUDE_DIRECTORIES
+CMAKE__IMPLICIT_LINK_DIRECTORIES
+CMAKE__IMPLICIT_LINK_FRAMEWORK_DIRECTORIES
+CMAKE__IMPLICIT_LINK_LIBRARIES
+CMAKE__INCLUDE_WHAT_YOU_USE
+CMAKE__LIBRARY_ARCHITECTURE
+CMAKE__LINKER_LAUNCHER
+CMAKE__LINKER_PREFERENCE
+CMAKE__LINKER_PREFERENCE_PROPAGATES
+CMAKE__LINKER_WRAPPER_FLAG
+CMAKE__LINKER_WRAPPER_FLAG_SEP
+CMAKE__LINK_EXECUTABLE
+CMAKE__LINK_GROUP_USING_
+CMAKE__LINK_GROUP_USING__SUPPORTED
+CMAKE__LINK_LIBRARY__ATTRIBUTES
+CMAKE__LINK_LIBRARY_FILE_FLAG
+CMAKE__LINK_LIBRARY_FLAG
+CMAKE__LINK_LIBRARY_SUFFIX
+CMAKE__LINK_LIBRARY_USING_
+CMAKE__LINK_LIBRARY_USING__SUPPORTED
+CMAKE__LINK_WHAT_YOU_USE_FLAG
+CMAKE__OUTPUT_EXTENSION
+CMAKE__PLATFORM_ID
+CMAKE__SIMULATE_ID
+CMAKE__SIMULATE_VERSION
+CMAKE__SIZEOF_DATA_PTR
+CMAKE__SOURCE_FILE_EXTENSIONS
+CMAKE__STANDARD
+CMAKE__STANDARD_DEFAULT
+CMAKE__STANDARD_INCLUDE_DIRECTORIES
+CMAKE__STANDARD_LATEST
+CMAKE__STANDARD_LIBRARIES
+CMAKE__STANDARD_REQUIRED
+CMAKE__USING_LINKER_
+CMAKE__USING_LINKER_MODE
+CMAKE__VISIBILITY_PRESET
+CMAKE_ABSOLUTE_DESTINATION_FILES
+CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY
+CMAKE_ADSP_ROOT
+CMAKE_AIX_EXPORT_ALL_SYMBOLS
+CMAKE_ANDROID_ANT_ADDITIONAL_OPTIONS
+CMAKE_ANDROID_API
+CMAKE_ANDROID_API_MIN
+CMAKE_ANDROID_ARCH
+CMAKE_ANDROID_ARCH_ABI
+CMAKE_ANDROID_ARM_MODE
+CMAKE_ANDROID_ARM_NEON
+CMAKE_ANDROID_ASSETS_DIRECTORIES
+CMAKE_ANDROID_EXCEPTIONS
+CMAKE_ANDROID_GUI
+CMAKE_ANDROID_JAR_DEPENDENCIES
+CMAKE_ANDROID_JAR_DIRECTORIES
+CMAKE_ANDROID_JAVA_SOURCE_DIR
+CMAKE_ANDROID_NATIVE_LIB_DEPENDENCIES
+CMAKE_ANDROID_NATIVE_LIB_DIRECTORIES
+CMAKE_ANDROID_NDK
+CMAKE_ANDROID_NDK_DEPRECATED_HEADERS
+CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG
+CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION
+CMAKE_ANDROID_NDK_VERSION
+CMAKE_ANDROID_PROCESS_MAX
+CMAKE_ANDROID_PROGUARD
+CMAKE_ANDROID_PROGUARD_CONFIG_PATH
+CMAKE_ANDROID_RTTI
+CMAKE_ANDROID_SECURE_PROPS_PATH
+CMAKE_ANDROID_SKIP_ANT_STEP
+CMAKE_ANDROID_STANDALONE_TOOLCHAIN
+CMAKE_ANDROID_STL_TYPE
+CMAKE_APPBUNDLE_PATH
+CMAKE_APPLE_SILICON_PROCESSOR
+CMAKE_AR
+CMAKE_ARCHIVE_OUTPUT_DIRECTORY
+CMAKE_ARCHIVE_OUTPUT_DIRECTORY_
+CMAKE_ARGC
+CMAKE_ARGV0
+CMAKE_AUTOGEN_BETTER_GRAPH_MULTI_CONFIG
+CMAKE_AUTOGEN_COMMAND_LINE_LENGTH_MAX
+CMAKE_AUTOGEN_ORIGIN_DEPENDS
+CMAKE_AUTOGEN_PARALLEL
+CMAKE_AUTOGEN_USE_SYSTEM_INCLUDE
+CMAKE_AUTOGEN_VERBOSE
+CMAKE_AUTOMOC
+CMAKE_AUTOMOC_COMPILER_PREDEFINES
+CMAKE_AUTOMOC_DEPEND_FILTERS
+CMAKE_AUTOMOC_EXECUTABLE
+CMAKE_AUTOMOC_MACRO_NAMES
+CMAKE_AUTOMOC_MOC_OPTIONS
+CMAKE_AUTOMOC_PATH_PREFIX
+CMAKE_AUTOMOC_RELAXED_MODE
+CMAKE_AUTORCC
+CMAKE_AUTORCC_EXECUTABLE
+CMAKE_AUTORCC_OPTIONS
+CMAKE_AUTOUIC
+CMAKE_AUTOUIC_EXECUTABLE
+CMAKE_AUTOUIC_OPTIONS
+CMAKE_AUTOUIC_SEARCH_PATHS
+CMAKE_BACKWARDS_COMPATIBILITY
+CMAKE_BINARY_DIR
+CMAKE_BUILD_RPATH
+CMAKE_BUILD_RPATH_USE_ORIGIN
+CMAKE_BUILD_TOOL
+CMAKE_BUILD_TYPE
+CMAKE_BUILD_WITH_INSTALL_NAME_DIR
+CMAKE_BUILD_WITH_INSTALL_RPATH
+CMAKE_CACHEFILE_DIR
+CMAKE_CACHE_MAJOR_VERSION
+CMAKE_CACHE_MINOR_VERSION
+CMAKE_CACHE_PATCH_VERSION
+CMAKE_CFG_INTDIR
+CMAKE_CLANG_VFS_OVERLAY
+CMAKE_CL_64
+CMAKE_CODEBLOCKS_COMPILER_ID
+CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES
+CMAKE_CODELITE_USE_TARGETS
+CMAKE_COLOR_DIAGNOSTICS
+CMAKE_COLOR_MAKEFILE
+CMAKE_COMMAND
+CMAKE_COMPILER_2005
+CMAKE_COMPILER_IS_GNUCC
+CMAKE_COMPILER_IS_GNUCXX
+CMAKE_COMPILER_IS_GNUG77
+CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY
+CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_
+CMAKE_COMPILE_WARNING_AS_ERROR
+CMAKE_CONFIGURATION_TYPES
+CMAKE_CPACK_COMMAND
+CMAKE_CROSSCOMPILING
+CMAKE_CROSSCOMPILING_EMULATOR
+CMAKE_CROSS_CONFIGS
+CMAKE_CTEST_ARGUMENTS
+CMAKE_CTEST_COMMAND
+CMAKE_CUDA_ARCHITECTURES
+CMAKE_CUDA_COMPILE_FEATURES
+CMAKE_CUDA_EXTENSIONS
+CMAKE_CUDA_HOST_COMPILER
+CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS
+CMAKE_CUDA_RUNTIME_LIBRARY
+CMAKE_CUDA_SEPARABLE_COMPILATION
+CMAKE_CUDA_STANDARD
+CMAKE_CUDA_STANDARD_REQUIRED
+CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES
+CMAKE_CURRENT_BINARY_DIR
+CMAKE_CURRENT_FUNCTION
+CMAKE_CURRENT_FUNCTION_LIST_DIR
+CMAKE_CURRENT_FUNCTION_LIST_FILE
+CMAKE_CURRENT_FUNCTION_LIST_LINE
+CMAKE_CURRENT_LIST_DIR
+CMAKE_CURRENT_LIST_FILE
+CMAKE_CURRENT_LIST_LINE
+CMAKE_CURRENT_SOURCE_DIR
+CMAKE_CXX_COMPILER_IMPORT_STD
+CMAKE_CXX_COMPILE_FEATURES
+CMAKE_CXX_EXTENSIONS
+CMAKE_CXX_MODULE_STD
+CMAKE_CXX_SCAN_FOR_MODULES
+CMAKE_CXX_STANDARD
+CMAKE_CXX_STANDARD_REQUIRED
+CMAKE_C_COMPILE_FEATURES
+CMAKE_C_EXTENSIONS
+CMAKE_C_STANDARD
+CMAKE_C_STANDARD_REQUIRED
+CMAKE_DEBUG_POSTFIX
+CMAKE_DEBUG_TARGET_PROPERTIES
+CMAKE_DEFAULT_BUILD_TYPE
+CMAKE_DEFAULT_CONFIGS
+CMAKE_DEPENDS_IN_PROJECT_ONLY
+CMAKE_DEPENDS_USE_COMPILER
+CMAKE_DIRECTORY_LABELS
+CMAKE_DISABLE_FIND_PACKAGE_
+CMAKE_DISABLE_PRECOMPILE_HEADERS
+CMAKE_DLL_NAME_WITH_SOVERSION
+CMAKE_DL_LIBS
+CMAKE_DOTNET_SDK
+CMAKE_DOTNET_TARGET_FRAMEWORK
+CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION
+CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES
+CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
+CMAKE_ECLIPSE_MAKE_ARGUMENTS
+CMAKE_ECLIPSE_RESOURCE_ENCODING
+CMAKE_ECLIPSE_VERSION
+CMAKE_EDIT_COMMAND
+CMAKE_ENABLE_EXPORTS
+CMAKE_ERROR_DEPRECATED
+CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
+CMAKE_EXECUTABLE_ENABLE_EXPORTS
+CMAKE_EXECUTABLE_SUFFIX
+CMAKE_EXECUTABLE_SUFFIX_
+CMAKE_EXECUTE_PROCESS_COMMAND_ECHO
+CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS_
+CMAKE_EXE_LINKER_FLAGS__INIT
+CMAKE_EXE_LINKER_FLAGS_INIT
+CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_FIND_PACKAGE_NAME
+CMAKE_EXPORT_NO_PACKAGE_REGISTRY
+CMAKE_EXPORT_PACKAGE_REGISTRY
+CMAKE_EXTRA_GENERATOR
+CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES
+CMAKE_FIND_APPBUNDLE
+CMAKE_FIND_DEBUG_MODE
+CMAKE_FIND_FRAMEWORK
+CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX
+CMAKE_FIND_LIBRARY_PREFIXES
+CMAKE_FIND_LIBRARY_SUFFIXES
+CMAKE_FIND_NO_INSTALL_PREFIX
+CMAKE_FIND_PACKAGE_NAME
+CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY
+CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY
+CMAKE_FIND_PACKAGE_PREFER_CONFIG
+CMAKE_FIND_PACKAGE_REDIRECTS_DIR
+CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS
+CMAKE_FIND_PACKAGE_SORT_DIRECTION
+CMAKE_FIND_PACKAGE_SORT_ORDER
+CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
+CMAKE_FIND_PACKAGE_WARN_NO_MODULE
+CMAKE_FIND_ROOT_PATH
+CMAKE_FIND_ROOT_PATH_MODE_INCLUDE
+CMAKE_FIND_ROOT_PATH_MODE_LIBRARY
+CMAKE_FIND_ROOT_PATH_MODE_PACKAGE
+CMAKE_FIND_ROOT_PATH_MODE_PROGRAM
+CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH
+CMAKE_FIND_USE_CMAKE_PATH
+CMAKE_FIND_USE_CMAKE_SYSTEM_PATH
+CMAKE_FIND_USE_INSTALL_PREFIX
+CMAKE_FIND_USE_PACKAGE_REGISTRY
+CMAKE_FIND_USE_PACKAGE_ROOT_PATH
+CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH
+CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY
+CMAKE_FOLDER
+CMAKE_FRAMEWORK
+CMAKE_FRAMEWORK_MULTI_CONFIG_POSTFIX_
+CMAKE_FRAMEWORK_PATH
+CMAKE_Fortran_FORMAT
+CMAKE_Fortran_MODDIR_DEFAULT
+CMAKE_Fortran_MODDIR_FLAG
+CMAKE_Fortran_MODOUT_FLAG
+CMAKE_Fortran_MODULE_DIRECTORY
+CMAKE_Fortran_PREPROCESS
+CMAKE_GENERATOR
+CMAKE_GENERATOR_INSTANCE
+CMAKE_GENERATOR_PLATFORM
+CMAKE_GENERATOR_TOOLSET
+CMAKE_GHS_NO_SOURCE_GROUP_FILE
+CMAKE_GLOBAL_AUTOGEN_TARGET
+CMAKE_GLOBAL_AUTOGEN_TARGET_NAME
+CMAKE_GLOBAL_AUTORCC_TARGET
+CMAKE_GLOBAL_AUTORCC_TARGET_NAME
+CMAKE_GNUtoMS
+CMAKE_HIP_ARCHITECTURES
+CMAKE_HIP_COMPILE_FEATURES
+CMAKE_HIP_EXTENSIONS
+CMAKE_HIP_PLATFORM
+CMAKE_HIP_STANDARD
+CMAKE_HIP_STANDARD_REQUIRED
+CMAKE_HOME_DIRECTORY
+CMAKE_HOST_APPLE
+CMAKE_HOST_BSD
+CMAKE_HOST_LINUX
+CMAKE_HOST_SOLARIS
+CMAKE_HOST_SYSTEM
+CMAKE_HOST_SYSTEM_NAME
+CMAKE_HOST_SYSTEM_PROCESSOR
+CMAKE_HOST_SYSTEM_VERSION
+CMAKE_HOST_UNIX
+CMAKE_HOST_WIN32
+CMAKE_IGNORE_PATH
+CMAKE_IGNORE_PREFIX_PATH
+CMAKE_IMPORT_LIBRARY_PREFIX
+CMAKE_IMPORT_LIBRARY_SUFFIX
+CMAKE_INCLUDE_CURRENT_DIR
+CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE
+CMAKE_INCLUDE_DIRECTORIES_BEFORE
+CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE
+CMAKE_INCLUDE_PATH
+CMAKE_INSTALL_DEFAULT_COMPONENT_NAME
+CMAKE_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS
+CMAKE_INSTALL_MESSAGE
+CMAKE_INSTALL_NAME_DIR
+CMAKE_INSTALL_PREFIX
+CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT
+CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH
+CMAKE_INSTALL_RPATH
+CMAKE_INSTALL_RPATH_USE_LINK_PATH
+CMAKE_INTERNAL_PLATFORM_ABI
+CMAKE_INTERPROCEDURAL_OPTIMIZATION
+CMAKE_INTERPROCEDURAL_OPTIMIZATION_
+CMAKE_IOS_INSTALL_COMBINED
+CMAKE_ISPC_HEADER_DIRECTORY
+CMAKE_ISPC_HEADER_SUFFIX
+CMAKE_ISPC_INSTRUCTION_SETS
+CMAKE_JOB_POOLS
+CMAKE_JOB_POOL_COMPILE
+CMAKE_JOB_POOL_LINK
+CMAKE_JOB_POOL_PRECOMPILE_HEADER
+CMAKE_KATE_FILES_MODE
+CMAKE_KATE_MAKE_ARGUMENTS
+CMAKE_LIBRARY_ARCHITECTURE
+CMAKE_LIBRARY_ARCHITECTURE_REGEX
+CMAKE_LIBRARY_OUTPUT_DIRECTORY
+CMAKE_LIBRARY_OUTPUT_DIRECTORY_
+CMAKE_LIBRARY_PATH
+CMAKE_LIBRARY_PATH_FLAG
+CMAKE_LINKER_TYPE
+CMAKE_LINK_DEF_FILE_FLAG
+CMAKE_LINK_DEPENDS_NO_SHARED
+CMAKE_LINK_DEPENDS_USE_LINKER
+CMAKE_LINK_DIRECTORIES_BEFORE
+CMAKE_LINK_GROUP_USING_
+CMAKE_LINK_GROUP_USING__SUPPORTED
+CMAKE_LINK_INTERFACE_LIBRARIES
+CMAKE_LINK_LIBRARIES_ONLY_TARGETS
+CMAKE_LINK_LIBRARY__ATTRIBUTES
+CMAKE_LINK_LIBRARY_FILE_FLAG
+CMAKE_LINK_LIBRARY_FLAG
+CMAKE_LINK_LIBRARY_SUFFIX
+CMAKE_LINK_LIBRARY_USING_
+CMAKE_LINK_LIBRARY_USING__SUPPORTED
+CMAKE_LINK_SEARCH_END_STATIC
+CMAKE_LINK_SEARCH_START_STATIC
+CMAKE_LINK_WHAT_YOU_USE
+CMAKE_LINK_WHAT_YOU_USE_CHECK
+CMAKE_MACOSX_BUNDLE
+CMAKE_MACOSX_RPATH
+CMAKE_MAJOR_VERSION
+CMAKE_MAKE_PROGRAM
+CMAKE_MAP_IMPORTED_CONFIG_
+CMAKE_MATCH_
+CMAKE_MATCH_COUNT
+CMAKE_MAXIMUM_RECURSION_DEPTH
+CMAKE_MESSAGE_CONTEXT
+CMAKE_MESSAGE_CONTEXT_SHOW
+CMAKE_MESSAGE_INDENT
+CMAKE_MESSAGE_LOG_LEVEL
+CMAKE_MFC_FLAG
+CMAKE_MINIMUM_REQUIRED_VERSION
+CMAKE_MINOR_VERSION
+CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS_
+CMAKE_MODULE_LINKER_FLAGS__INIT
+CMAKE_MODULE_LINKER_FLAGS_INIT
+CMAKE_MODULE_PATH
+CMAKE_MSVCIDE_RUN_PATH
+CMAKE_MSVC_DEBUG_INFORMATION_FORMAT
+CMAKE_MSVC_RUNTIME_LIBRARY
+CMAKE_NETRC
+CMAKE_NETRC_FILE
+CMAKE_NINJA_OUTPUT_PATH_PREFIX
+CMAKE_NOT_USING_CONFIG_FLAGS
+CMAKE_NO_BUILTIN_CHRPATH
+CMAKE_NO_SYSTEM_FROM_IMPORTED
+CMAKE_OBJCXX_EXTENSIONS
+CMAKE_OBJCXX_STANDARD
+CMAKE_OBJCXX_STANDARD_REQUIRED
+CMAKE_OBJC_EXTENSIONS
+CMAKE_OBJC_STANDARD
+CMAKE_OBJC_STANDARD_REQUIRED
+CMAKE_OBJECT_PATH_MAX
+CMAKE_OPTIMIZE_DEPENDENCIES
+CMAKE_OSX_ARCHITECTURES
+CMAKE_OSX_DEPLOYMENT_TARGET
+CMAKE_OSX_SYSROOT
+CMAKE_PARENT_LIST_FILE
+CMAKE_PATCH_VERSION
+CMAKE_PCH_INSTANTIATE_TEMPLATES
+CMAKE_PCH_WARN_INVALID
+CMAKE_PDB_OUTPUT_DIRECTORY
+CMAKE_PDB_OUTPUT_DIRECTORY_
+CMAKE_PLATFORM_NO_VERSIONED_SONAME
+CMAKE_POLICY_DEFAULT_CMP
+CMAKE_POLICY_WARNING_CMP
+CMAKE_POSITION_INDEPENDENT_CODE
+CMAKE_PREFIX_PATH
+CMAKE_PROGRAM_PATH
+CMAKE_PROJECT__INCLUDE
+CMAKE_PROJECT__INCLUDE_BEFORE
+CMAKE_PROJECT_DESCRIPTION
+CMAKE_PROJECT_HOMEPAGE_URL
+CMAKE_PROJECT_INCLUDE
+CMAKE_PROJECT_INCLUDE_BEFORE
+CMAKE_PROJECT_NAME
+CMAKE_PROJECT_TOP_LEVEL_INCLUDES
+CMAKE_PROJECT_VERSION
+CMAKE_PROJECT_VERSION_MAJOR
+CMAKE_PROJECT_VERSION_MINOR
+CMAKE_PROJECT_VERSION_PATCH
+CMAKE_PROJECT_VERSION_TWEAK
+CMAKE_RANLIB
+CMAKE_REQUIRE_FIND_PACKAGE_
+CMAKE_ROOT
+CMAKE_RULE_MESSAGES
+CMAKE_RUNTIME_OUTPUT_DIRECTORY
+CMAKE_RUNTIME_OUTPUT_DIRECTORY_
+CMAKE_SCRIPT_MODE_FILE
+CMAKE_SHARED_LIBRARY_ENABLE_EXPORTS
+CMAKE_SHARED_LIBRARY_PREFIX
+CMAKE_SHARED_LIBRARY_SUFFIX
+CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS_
+CMAKE_SHARED_LINKER_FLAGS__INIT
+CMAKE_SHARED_LINKER_FLAGS_INIT
+CMAKE_SHARED_MODULE_PREFIX
+CMAKE_SHARED_MODULE_SUFFIX
+CMAKE_SIZEOF_VOID_P
+CMAKE_SKIP_BUILD_RPATH
+CMAKE_SKIP_INSTALL_ALL_DEPENDENCY
+CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RULES
+CMAKE_SKIP_RPATH
+CMAKE_SKIP_TEST_ALL_DEPENDENCY
+CMAKE_SOURCE_DIR
+CMAKE_STAGING_PREFIX
+CMAKE_STATIC_LIBRARY_PREFIX
+CMAKE_STATIC_LIBRARY_SUFFIX
+CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS_
+CMAKE_STATIC_LINKER_FLAGS__INIT
+CMAKE_STATIC_LINKER_FLAGS_INIT
+CMAKE_SUBLIME_TEXT_2_ENV_SETTINGS
+CMAKE_SUBLIME_TEXT_2_EXCLUDE_BUILD_TREE
+CMAKE_SUPPRESS_REGENERATION
+CMAKE_SYSROOT
+CMAKE_SYSROOT_COMPILE
+CMAKE_SYSROOT_LINK
+CMAKE_SYSTEM
+CMAKE_SYSTEM_APPBUNDLE_PATH
+CMAKE_SYSTEM_FRAMEWORK_PATH
+CMAKE_SYSTEM_IGNORE_PATH
+CMAKE_SYSTEM_IGNORE_PREFIX_PATH
+CMAKE_SYSTEM_INCLUDE_PATH
+CMAKE_SYSTEM_LIBRARY_PATH
+CMAKE_SYSTEM_NAME
+CMAKE_SYSTEM_PREFIX_PATH
+CMAKE_SYSTEM_PROCESSOR
+CMAKE_SYSTEM_PROGRAM_PATH
+CMAKE_SYSTEM_VERSION
+CMAKE_Swift_COMPILATION_MODE
+CMAKE_Swift_LANGUAGE_VERSION
+CMAKE_Swift_MODULE_DIRECTORY
+CMAKE_Swift_NUM_THREADS
+CMAKE_TASKING_TOOLSET
+CMAKE_TEST_LAUNCHER
+CMAKE_TLS_CAINFO
+CMAKE_TLS_VERIFY
+CMAKE_TLS_VERSION
+CMAKE_TOOLCHAIN_FILE
+CMAKE_TRY_COMPILE_CONFIGURATION
+CMAKE_TRY_COMPILE_NO_PLATFORM_VARIABLES
+CMAKE_TRY_COMPILE_PLATFORM_VARIABLES
+CMAKE_TRY_COMPILE_TARGET_TYPE
+CMAKE_TWEAK_VERSION
+CMAKE_UNITY_BUILD
+CMAKE_UNITY_BUILD_BATCH_SIZE
+CMAKE_UNITY_BUILD_UNIQUE_ID
+CMAKE_USER_MAKE_RULES_OVERRIDE
+CMAKE_USER_MAKE_RULES_OVERRIDE_
+CMAKE_USE_RELATIVE_PATHS
+CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERIFY_INTERFACE_HEADER_SETS
+CMAKE_VERSION
+CMAKE_VISIBILITY_INLINES_HIDDEN
+CMAKE_VS_DEBUGGER_COMMAND
+CMAKE_VS_DEBUGGER_COMMAND_ARGUMENTS
+CMAKE_VS_DEBUGGER_ENVIRONMENT
+CMAKE_VS_DEBUGGER_WORKING_DIRECTORY
+CMAKE_VS_DEVENV_COMMAND
+CMAKE_VS_GLOBALS
+CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD
+CMAKE_VS_INCLUDE_PACKAGE_TO_DEFAULT_BUILD
+CMAKE_VS_INTEL_Fortran_PROJECT_VERSION
+CMAKE_VS_JUST_MY_CODE_DEBUGGING
+CMAKE_VS_MSBUILD_COMMAND
+CMAKE_VS_NO_COMPILE_BATCHING
+CMAKE_VS_NUGET_PACKAGE_RESTORE
+CMAKE_VS_NsightTegra_VERSION
+CMAKE_VS_PLATFORM_NAME
+CMAKE_VS_PLATFORM_NAME_DEFAULT
+CMAKE_VS_PLATFORM_TOOLSET
+CMAKE_VS_PLATFORM_TOOLSET_CUDA
+CMAKE_VS_PLATFORM_TOOLSET_CUDA_CUSTOM_DIR
+CMAKE_VS_PLATFORM_TOOLSET_FORTRAN
+CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE
+CMAKE_VS_PLATFORM_TOOLSET_VERSION
+CMAKE_VS_SDK_EXCLUDE_DIRECTORIES
+CMAKE_VS_SDK_EXECUTABLE_DIRECTORIES
+CMAKE_VS_SDK_INCLUDE_DIRECTORIES
+CMAKE_VS_SDK_LIBRARY_DIRECTORIES
+CMAKE_VS_SDK_LIBRARY_WINRT_DIRECTORIES
+CMAKE_VS_SDK_REFERENCE_DIRECTORIES
+CMAKE_VS_SDK_SOURCE_DIRECTORIES
+CMAKE_VS_TARGET_FRAMEWORK_IDENTIFIER
+CMAKE_VS_TARGET_FRAMEWORK_TARGETS_VERSION
+CMAKE_VS_TARGET_FRAMEWORK_VERSION
+CMAKE_VS_USE_DEBUG_LIBRARIES
+CMAKE_VS_VERSION_BUILD_NUMBER
+CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION
+CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
+CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM
+CMAKE_VS_WINRT_BY_DEFAULT
+CMAKE_WARN_DEPRECATED
+CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
+CMAKE_WATCOM_RUNTIME_LIBRARY
+CMAKE_WIN32_EXECUTABLE
+CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
+CMAKE_XCODE_ATTRIBUTE_
+CMAKE_XCODE_BUILD_SYSTEM
+CMAKE_XCODE_GENERATE_SCHEME
+CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY
+CMAKE_XCODE_LINK_BUILD_PHASE_MODE
+CMAKE_XCODE_PLATFORM_TOOLSET
+CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER
+CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
+CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING
+CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER
+CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS
+CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE
+CMAKE_XCODE_SCHEME_ENABLE_GPU_API_VALIDATION
+CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE
+CMAKE_XCODE_SCHEME_ENABLE_GPU_SHADER_VALIDATION
+CMAKE_XCODE_SCHEME_ENVIRONMENT
+CMAKE_XCODE_SCHEME_GUARD_MALLOC
+CMAKE_XCODE_SCHEME_LAUNCH_CONFIGURATION
+CMAKE_XCODE_SCHEME_LAUNCH_MODE
+CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP
+CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES
+CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE
+CMAKE_XCODE_SCHEME_MALLOC_STACK
+CMAKE_XCODE_SCHEME_THREAD_SANITIZER
+CMAKE_XCODE_SCHEME_THREAD_SANITIZER_STOP
+CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER
+CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP
+CMAKE_XCODE_SCHEME_WORKING_DIRECTORY
+CMAKE_XCODE_SCHEME_ZOMBIE_OBJECTS
+CMAKE_XCODE_XCCONFIG
+CPACK_ABSOLUTE_DESTINATION_FILES
+CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY
+CPACK_CUSTOM_INSTALL_VARIABLES
+CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
+CPACK_INCLUDE_TOPLEVEL_DIRECTORY
+CPACK_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS
+CPACK_PACKAGING_INSTALL_PREFIX
+CPACK_SET_DESTDIR
+CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
+CTEST_BINARY_DIRECTORY
+CTEST_BUILD_COMMAND
+CTEST_BUILD_NAME
+CTEST_BZR_COMMAND
+CTEST_BZR_UPDATE_OPTIONS
+CTEST_CHANGE_ID
+CTEST_CHECKOUT_COMMAND
+CTEST_CONFIGURATION_TYPE
+CTEST_CONFIGURE_COMMAND
+CTEST_COVERAGE_COMMAND
+CTEST_COVERAGE_EXTRA_FLAGS
+CTEST_CURL_OPTIONS
+CTEST_CUSTOM_COVERAGE_EXCLUDE
+CTEST_CUSTOM_ERROR_EXCEPTION
+CTEST_CUSTOM_ERROR_MATCH
+CTEST_CUSTOM_ERROR_POST_CONTEXT
+CTEST_CUSTOM_ERROR_PRE_CONTEXT
+CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE
+CTEST_CUSTOM_MAXIMUM_NUMBER_OF_ERRORS
+CTEST_CUSTOM_MAXIMUM_NUMBER_OF_WARNINGS
+CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE
+CTEST_CUSTOM_MEMCHECK_IGNORE
+CTEST_CUSTOM_POST_MEMCHECK
+CTEST_CUSTOM_POST_TEST
+CTEST_CUSTOM_PRE_MEMCHECK
+CTEST_CUSTOM_PRE_TEST
+CTEST_CUSTOM_TESTS_IGNORE
+CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION
+CTEST_CUSTOM_WARNING_EXCEPTION
+CTEST_CUSTOM_WARNING_MATCH
+CTEST_CVS_CHECKOUT
+CTEST_CVS_COMMAND
+CTEST_CVS_UPDATE_OPTIONS
+CTEST_DROP_LOCATION
+CTEST_DROP_METHOD
+CTEST_DROP_SITE
+CTEST_DROP_SITE_CDASH
+CTEST_DROP_SITE_PASSWORD
+CTEST_DROP_SITE_USER
+CTEST_EXTRA_COVERAGE_GLOB
+CTEST_GIT_COMMAND
+CTEST_GIT_INIT_SUBMODULES
+CTEST_GIT_UPDATE_CUSTOM
+CTEST_GIT_UPDATE_OPTIONS
+CTEST_HG_COMMAND
+CTEST_HG_UPDATE_OPTIONS
+CTEST_LABELS_FOR_SUBPROJECTS
+CTEST_MEMORYCHECK_COMMAND
+CTEST_MEMORYCHECK_COMMAND_OPTIONS
+CTEST_MEMORYCHECK_SANITIZER_OPTIONS
+CTEST_MEMORYCHECK_SUPPRESSIONS_FILE
+CTEST_MEMORYCHECK_TYPE
+CTEST_NIGHTLY_START_TIME
+CTEST_P4_CLIENT
+CTEST_P4_COMMAND
+CTEST_P4_OPTIONS
+CTEST_P4_UPDATE_OPTIONS
+CTEST_RESOURCE_SPEC_FILE
+CTEST_RUN_CURRENT_SCRIPT
+CTEST_SCP_COMMAND
+CTEST_SCRIPT_DIRECTORY
+CTEST_SITE
+CTEST_SOURCE_DIRECTORY
+CTEST_SUBMIT_INACTIVITY_TIMEOUT
+CTEST_SUBMIT_URL
+CTEST_SVN_COMMAND
+CTEST_SVN_OPTIONS
+CTEST_SVN_UPDATE_OPTIONS
+CTEST_TEST_LOAD
+CTEST_TEST_TIMEOUT
+CTEST_TLS_VERIFY
+CTEST_TLS_VERSION
+CTEST_TRIGGER_SITE
+CTEST_UPDATE_COMMAND
+CTEST_UPDATE_OPTIONS
+CTEST_UPDATE_VERSION_ONLY
+CTEST_UPDATE_VERSION_OVERRIDE
+CTEST_USE_LAUNCHERS
+CYGWIN
+ENV
+EXECUTABLE_OUTPUT_PATH
+GHSMULTI
+IOS
+LIBRARY_OUTPUT_PATH
+LINUX
+MINGW
+MSVC
+MSVC10
+MSVC11
+MSVC12
+MSVC14
+MSVC60
+MSVC70
+MSVC71
+MSVC80
+MSVC90
+MSVC_IDE
+MSVC_TOOLSET_VERSION
+MSVC_VERSION
+MSYS
+PROJECT_BINARY_DIR
+PROJECT_DESCRIPTION
+PROJECT_HOMEPAGE_URL
+PROJECT_IS_TOP_LEVEL
+PROJECT_NAME
+PROJECT_SOURCE_DIR
+PROJECT_VERSION
+PROJECT_VERSION_MAJOR
+PROJECT_VERSION_MINOR
+PROJECT_VERSION_PATCH
+PROJECT_VERSION_TWEAK
+UNIX
+WIN32
+WINCE
+WINDOWS_PHONE
+WINDOWS_STORE
+XCODE
+XCODE_VERSION
+
+-Pe-Keywords-User2- # cmake --help-module-list
+AddFileDependencies
+AndroidTestUtilities
+BundleUtilities
+CMakeAddFortranSubdirectory
+CMakeBackwardCompatibilityCXX
+CMakeDependentOption
+CMakeDetermineVSServicePack
+CMakeExpandImportedTargets
+CMakeFindDependencyMacro
+CMakeFindFrameworks
+CMakeFindPackageMode
+CMakeForceCompiler
+CMakeGraphVizOptions
+CMakePackageConfigHelpers
+CMakeParseArguments
+CMakePrintHelpers
+CMakePrintSystemInformation
+CMakePushCheckState
+CMakeVerifyManifest
+CPack
+CPackArchive
+CPackBundle
+CPackComponent
+CPackCygwin
+CPackDMG
+CPackDeb
+CPackFreeBSD
+CPackIFW
+CPackIFWConfigureFile
+CPackNSIS
+CPackNuGet
+CPackProductBuild
+CPackRPM
+CPackWIX
+CSharpUtilities
+CTest
+CTestCoverageCollectGCOV
+CTestScriptMode
+CTestUseLaunchers
+CheckCCompilerFlag
+CheckCSourceCompiles
+CheckCSourceRuns
+CheckCXXCompilerFlag
+CheckCXXSourceCompiles
+CheckCXXSourceRuns
+CheckCXXSymbolExists
+CheckCompilerFlag
+CheckFortranCompilerFlag
+CheckFortranFunctionExists
+CheckFortranSourceCompiles
+CheckFortranSourceRuns
+CheckFunctionExists
+CheckIPOSupported
+CheckIncludeFile
+CheckIncludeFileCXX
+CheckIncludeFiles
+CheckLanguage
+CheckLibraryExists
+CheckLinkerFlag
+CheckOBJCCompilerFlag
+CheckOBJCSourceCompiles
+CheckOBJCSourceRuns
+CheckOBJCXXCompilerFlag
+CheckOBJCXXSourceCompiles
+CheckOBJCXXSourceRuns
+CheckPIESupported
+CheckPrototypeDefinition
+CheckSourceCompiles
+CheckSourceRuns
+CheckStructHasMember
+CheckSymbolExists
+CheckTypeSize
+CheckVariableExists
+Dart
+DeployQt4
+Documentation
+ExternalData
+ExternalProject
+FeatureSummary
+FetchContent
+FindALSA
+FindASPELL
+FindAVIFile
+FindArmadillo
+FindBISON
+FindBLAS
+FindBZip2
+FindBacktrace
+FindBoost
+FindBullet
+FindCABLE
+FindCUDA
+FindCUDAToolkit
+FindCURL
+FindCVS
+FindCoin3D
+FindCups
+FindCurses
+FindCxxTest
+FindCygwin
+FindDCMTK
+FindDart
+FindDevIL
+FindDoxygen
+FindEXPAT
+FindEnvModules
+FindFLEX
+FindFLTK
+FindFLTK2
+FindFontconfig
+FindFreetype
+FindGCCXML
+FindGDAL
+FindGIF
+FindGLEW
+FindGLUT
+FindGSL
+FindGTK
+FindGTK2
+FindGTest
+FindGettext
+FindGit
+FindGnuTLS
+FindGnuplot
+FindHDF5
+FindHSPELL
+FindHTMLHelp
+FindHg
+FindICU
+FindITK
+FindIce
+FindIconv
+FindIcotool
+FindImageMagick
+FindIntl
+FindJNI
+FindJPEG
+FindJasper
+FindJava
+FindKDE3
+FindKDE4
+FindLAPACK
+FindLATEX
+FindLTTngUST
+FindLibArchive
+FindLibLZMA
+FindLibXml2
+FindLibXslt
+FindLibinput
+FindLua
+FindLua50
+FindLua51
+FindMFC
+FindMPEG
+FindMPEG2
+FindMPI
+FindMatlab
+FindMotif
+FindMsys
+FindODBC
+FindOpenACC
+FindOpenAL
+FindOpenCL
+FindOpenGL
+FindOpenMP
+FindOpenSP
+FindOpenSSL
+FindOpenSceneGraph
+FindOpenThreads
+FindPHP4
+FindPNG
+FindPackageHandleStandardArgs
+FindPackageMessage
+FindPatch
+FindPerl
+FindPerlLibs
+FindPhysFS
+FindPike
+FindPkgConfig
+FindPostgreSQL
+FindProducer
+FindProtobuf
+FindPython
+FindPython2
+FindPython3
+FindPythonInterp
+FindPythonLibs
+FindQt
+FindQt3
+FindQt4
+FindQuickTime
+FindRTI
+FindRuby
+FindSDL
+FindSDL_gfx
+FindSDL_image
+FindSDL_mixer
+FindSDL_net
+FindSDL_sound
+FindSDL_ttf
+FindSQLite3
+FindSWIG
+FindSelfPackers
+FindSquish
+FindSubversion
+FindTCL
+FindTIFF
+FindTclStub
+FindTclsh
+FindThreads
+FindUnixCommands
+FindVTK
+FindVulkan
+FindWget
+FindWish
+FindX11
+FindXCTest
+FindXMLRPC
+FindXalanC
+FindXercesC
+FindZLIB
+Findosg
+FindosgAnimation
+FindosgDB
+FindosgFX
+FindosgGA
+FindosgIntrospection
+FindosgManipulator
+FindosgParticle
+FindosgPresentation
+FindosgProducer
+FindosgQt
+FindosgShadow
+FindosgSim
+FindosgTerrain
+FindosgText
+FindosgUtil
+FindosgViewer
+FindosgVolume
+FindosgWidget
+Findosg_functions
+FindwxWidgets
+FindwxWindows
+FortranCInterface
+GNUInstallDirs
+GenerateExportHeader
+GetPrerequisites
+GoogleTest
+InstallRequiredSystemLibraries
+MacroAddFileDependencies
+ProcessorCount
+SelectLibraryConfigurations
+SquishTestScript
+TestBigEndian
+TestCXXAcceptsFlag
+TestForANSIForScope
+TestForANSIStreamHeaders
+TestForSSTREAM
+TestForSTDNamespace
+UseEcos
+UseJava
+UseJavaClassFilelist
+UseJavaSymlinks
+UsePkgConfig
+UseSWIG
+Use_wxWindows
+UsewxWidgets
+WriteBasicConfigVersionFile
+WriteCompilerDetectionHeader
+
+-Pe-Keywords-User3-
+
+-Pe-Keywords-User4-
+# Add your own symbols here if you like
diff --git a/Languages/Resources/keywords.cmake.r b/Languages/Resources/keywords.cmake.r
new file mode 100644
index 0000000..2444eb9
--- /dev/null
+++ b/Languages/Resources/keywords.cmake.r
@@ -0,0 +1,2 @@
+read 'KeyW' (0, "keywords.cmake")
+ "keywords.cmake";
diff --git a/Languages/Sources/CMake_Language.cpp b/Languages/Sources/CMake_Language.cpp
new file mode 100644
index 0000000..b7a934f
--- /dev/null
+++ b/Languages/Sources/CMake_Language.cpp
@@ -0,0 +1,165 @@
+/*
+ * Copyright 2024, Team Pe. All rights reserved.
+ *
+ * Same license as for most of Pe applies (BSD-style), as this is based on
+ * pretty old code that keeps getting re-hashed over and over.
+ *
+ * Author(s):
+ * Oscar Lesta
+ */
+
+#include "CLanguageAddOn.h"
+#include "HColorUtils.h"
+
+const char kLanguageName[] = "CMake";
+const char kLanguageExtensions[] = "cmake";
+const char kLanguageCommentStart[] = "#";
+const char kLanguageCommentEnd[] = "";
+const char kLanguageKeywordFile[] = "keywords.cmake";
+const int16 kInterfaceVersion = 2;
+
+enum {
+ START,
+ IDENTIFIER,
+ COMMENT,
+ STRING,
+ SYMBOL,
+ NUMBER
+};
+
+static inline bool
+isSymbol(char c)
+{
+ switch (c) {
+ case '$':
+ return true;
+ case ':':
+ return true;
+ case '(':
+ return true;
+ case ')':
+ return true;
+ case '{':
+ return true;
+ case '}':
+ return true;
+ default:
+ return false;
+ }
+}
+
+_EXPORT void
+ColorLine(CLanguageProxy& proxy, int32& state)
+{
+ int32 size = proxy.Size();
+
+ if (size <= 0)
+ return;
+
+ if (state == COMMENT)
+ proxy.SetColor(0, kColorComment1);
+ else
+ proxy.SetColor(0, kColorText);
+
+ const char* text = proxy.Text();
+
+ int32 i = 0, s = 0, kws = 0, esc = 0;
+ char c;
+
+ bool leave = false;
+
+ while (!leave)
+ {
+ c = (i++ < size) ? text[i - 1] : 0;
+
+ switch (state) {
+ case START:
+ s = i - 1;
+ proxy.SetColor(s, kColorText);
+
+ if (isalpha(c)) {
+ kws = proxy.Move(c, 1);
+ state = IDENTIFIER;
+ }
+ else if (c == '#')
+ state = COMMENT;
+ else if (c == '"')
+ state = STRING;
+ else if (isdigit(c))
+ state = NUMBER;
+ else if (isSymbol(c))
+ state = SYMBOL;
+ else if (c == '\n' || c == 0)
+ leave = true;
+ break;
+
+ case COMMENT:
+ proxy.SetColor(s, kColorComment1);
+ leave = true;
+ if (text[size - 1] == '\n')
+ state = START;
+ break;
+
+ case IDENTIFIER:
+ if (!isalnum(c) && c != '_') {
+ int kwc;
+
+ if (i > s + 1 && (kwc = proxy.IsKeyword(kws)) != 0) {
+ switch (kwc) {
+ case 1: proxy.SetColor(s, kColorKeyword1); break;
+ case 2: proxy.SetColor(s, kColorUserSet1); break;
+ case 3: proxy.SetColor(s, kColorUserSet2); break;
+ case 4: proxy.SetColor(s, kColorUserSet3); break;
+ case 5: proxy.SetColor(s, kColorUserSet4); break;
+ }
+ }
+ else {
+ // kColorIdentifierUser would be good, but gets over used.
+ proxy.SetColor(s, kColorText);
+ }
+ s = --i;
+ state = START;
+ }
+ else if (kws)
+ kws = proxy.Move(c, kws);
+ break;
+
+ case STRING:
+ if (c == '"' && !esc) {
+ proxy.SetColor(s, kColorString1);
+ state = START;
+ } else if (c == '\n' || c == 0) {
+ if (text[i - 2] == '\\' && text[i - 3] != '\\') {
+ proxy.SetColor(s, kColorString1);
+ } else {
+ proxy.SetColor(s, kColorText);
+ state = START;
+ }
+ leave = true;
+ }
+ else
+ esc = !esc && (c == '\\');
+ break;
+
+ case SYMBOL:
+ proxy.SetColor(s, kColorOperator1);
+ if (!isSymbol(text[i - 1])) {
+ i--;
+ state = START;
+ }
+ break;
+
+ case NUMBER:
+ proxy.SetColor(s, kColorNumber1);
+ if (!(isdigit(text[i - 1]))) {
+ i--;
+ state = START;
+ }
+ break;
+
+ default:
+ leave = true;
+ break;
+ }
+ }
+}
diff --git a/Languages/Sources/Jamfile b/Languages/Sources/Jamfile
index f67076d..ac3702b 100644
--- a/Languages/Sources/Jamfile
+++ b/Languages/Sources/Jamfile
@@ -25,6 +25,14 @@ PeLanguage AsmExt
;
#
+#
+PeLanguage CMakeExt
+ : CMake_Language.cpp
+ : be
+ : keywords.cmake.rsrc
+ ;
+#
+
#
PeLanguage CppExt
: Cpp_Language.cpp Cpp_Popup.cpp