cmake file examples

Signatures

file(READ <filename> <out-var> [...])
file(STRINGS <filename> <out-var> [...])
file(<HASH> <filename> <out-var>)
file(TIMESTAMP <filename> <out-var> [...])
file(GET_RUNTIME_DEPENDENCIES [...])
file({WRITE | APPEND} <filename> <content>...)
file({TOUCH | TOUCH_NOCREATE} <file>...)
file(GENERATE OUTPUT <output-file> [...])
file(CONFIGURE OUTPUT <output-file> CONTENT <content> [...])
file({GLOB | GLOB_RECURSE} <out-var> [...] <globbing-expr>...)
file(MAKE_DIRECTORY <directories>...)
file({REMOVE | REMOVE_RECURSE } <files>...)
file(RENAME <oldname> <newname> [...])
file(COPY_FILE <oldname> <newname> [...])
file({COPY | INSTALL} <file>... DESTINATION <dir> [...])
file(SIZE <filename> <out-var>)
file(READ_SYMLINK <linkname> <out-var>)
file(CREATE_LINK <original> <linkname> [...])
file(CHMOD <files>... <directories>... PERMISSIONS <permissions>... [...])
file(CHMOD_RECURSE <files>... <directories>... PERMISSIONS <permissions>... [...])
file(REAL_PATH <path> <out-var> [BASE_DIRECTORY <dir>] [EXPAND_TILDE])
file(RELATIVE_PATH <out-var> <directory> <file>)
file({TO_CMAKE_PATH | TO_NATIVE_PATH} <path> <out-var>)
file(DOWNLOAD <url> [<file>] [...])
file(UPLOAD <file> <url> [...])
file(LOCK <path> [...])
file(ARCHIVE_CREATE OUTPUT <archive> PATHS <paths>... [...])
file(ARCHIVE_EXTRACT INPUT <archive> [...])

Examples

performous/performous game/CMakeLists.txt :317

file(GET_RUNTIME_DEPENDENCIES
			RESOLVED_DEPENDENCIES_VAR deps_resolved
			UNRESOLVED_DEPENDENCIES_VAR deps_unresolved
			EXECUTABLES $<TARGET_FILE:performous>
			PRE_EXCLUDE_REGEXES "api-ms-*" "ext-ms-*"
			POST_EXCLUDE_REGEXES ".*system32/.*\\.dll"
			)

libsdl-org/SDL_shadercross CMakeLists.txt :459

file(GET_RUNTIME_DEPENDENCIES
						RESOLVED_DEPENDENCIES_VAR resolved
						UNRESOLVED_DEPENDENCIES_VAR unresolved
						DIRECTORIES  \"$<TARGET_FILE_DIR:spirv-cross-c-shared>\" \"${CMAKE_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR}\"
						LIBRARIES \"$<TARGET_FILE:spirv-cross-c-shared>\"
						POST_EXCLUDE_REGEXES \".*[sS][yY][sS][tT][eE][mM]32.*\" \".*[aA][pP][iI]-[mM][sS].*\" \".*[aA][pP][iI]-[eE][xX][tT].*\"
					)

Cisco-Talos/clamav libclamav/CMakeLists.txt :490

file(GET_RUNTIME_DEPENDENCIES
                LIBRARIES
                    $<TARGET_FILE:ClamAV::libclamav>
                RESOLVED_DEPENDENCIES_VAR _r_deps
                UNRESOLVED_DEPENDENCIES_VAR _u_deps
                DIRECTORIES
                    $<TARGET_FILE_DIR:OpenSSL::SSL>
                    $<TARGET_FILE_DIR:OpenSSL::Crypto>
                    $<TARGET_FILE_DIR:ZLIB::ZLIB>
                    $<TARGET_FILE_DIR:BZip2::BZip2>
                    $<TARGET_FILE_DIR:PCRE2::pcre2>
                    $<TARGET_FILE_DIR:LibXml2::LibXml2>
                    $<TARGET_FILE_DIR:JSONC::jsonc>
                POST_EXCLUDE_REGEXES
                    "[cC]:[\\/][wW][iI][nN][dD][oO][wW][sS]"
            )