filkrus

Filmanipulationskommando.

file(WRITE filename "message to write"... )file(APPEND filename "message to write"... )file(READ filename variable )file(<MD5|SHA1|SHA224|SHA256|SHA384|SHA512> filename variable)file(STRINGS filename variable )file(GLOB variable ...)file(GLOB_RECURSE variable ...)file(RENAME <oldname> <newname>)file(REMOVE )file(REMOVE_RECURSE )file(MAKE_DIRECTORY )file(RELATIVE_PATH variable directory file)file(TO_CMAKE_PATH path result)file(TO_NATIVE_PATH path result)file(DOWNLOAD url file )file(UPLOAD filename url )file(TIMESTAMP filename variable )file(GENERATE OUTPUT output_file <INPUT input_file|CONTENT input_content> )

Skriv vil skrive en besked i en fil kaldet ‘filnavn’. Den overskriver filen, hvis den allerede findes, og opretter filen, hvis den ikke findes. (Hvis filen er et build-input, skal du kun bruge configure_file toupdate filen, når dens indhold ændres.)

tilføj vil skrive en besked i en fil, der er den samme som skriv, bortset fra at den vil tilføj den til slutningen af filen

Læs vil læse indholdet af en fil og gemme den i variablen.Det starter ved den givne forskydning og læses op til numBytes. Hvis der er angivet en SEKSKANTARGUMENT, konverteres de binære data til en sekskantet repræsentation, og dette gemmes i variablen.

MD5, SHA1, SHA224, SHA256, SHA384OG SHA512 beregner acryptografisk hash af indholdet af en fil.

strenge analyserer en liste over ASCII-strenge fra en fil og gemmer den i en variabel. Binære data i filen ignoreres. Carriage return (CR) tegn ignoreres. Det fungerer også for Intel sekskant og MotorolaS-Optag filer, som automatisk konverteres til binært formatnår du læser dem. Deaktiver dette ved hjælp af NO_HEKS_CONVERSION.

LIMIT_COUNT indstiller det maksimale antal strenge, der skal returneres. Limit_inputsætter det maksimale antal bytes, der skal læses fra inputfilen.LIMIT_OUTPUT angiver det maksimale antal bytes, der skal gemmes i outputvariable. LENGTH_MINIMUM indstiller den mindste længde af en streng tilreturn. Kortere strenge ignoreres. LENGTH_MAKSIMUM angiver den maksimale længde af en streng, der skal returneres. Længere strenge er opdelt i strengeikke længere end den maksimale længde. NYLINE_CONSUME tillader nye linjer at blive inkluderet i strenge i stedet for at afslutte dem.

REGEKS angiver et regulært udtryk, som en streng skal matche til bereturned. Typisk brug

file(STRINGS myfile.txt myfile)

gemmer en liste i variablen” myfile”, hvor hvert element er en linjefra inputfilen.

GLOB genererer en liste over alle filer, der matcher globbingekspressionerne og gemmer den i variablen. Globbing udtryk ersvarende til regulære udtryk, men meget enklere. Hvis relativ flag isspecified for et udtryk, vil resultaterne blive returneret som arelativ sti til den givne sti. (Vi anbefaler ikke at bruge GLOB tilindsamle en liste over kildefiler fra dit kildetræ. Hvis noCMakeLists.når en kilde tilføjes eller fjernes, kan det genererede byggesystem ikke vide, hvornår man skal bede CMake om at regenerere.)

eksempler på globbing udtryk omfatter:

*.cxx - match all files with extension cxx*.vt? - match all files with extension vta,...,vtzf.txt - match files f3.txt, f4.txt, f5.txt

GLOB_RECURSE vil generere en liste svarende til den almindelige GLOB, undtagendet vil krydse alle undermapper i den matchede mappe ogmatch filerne. Undermapper, der er symlinks er kun traversedif FØLG_SYMLINKS er givet eller CMake politik CMP0009 er ikke indstillet til ny.Se CMake-help-policy CMP0009 for mere information.

eksempler på rekursiv globbing inkluderer:

/dir/*.py - match all python files in /dir and subdirectories

MAKE_DIRECTORY vil oprette de givne mapper, også hvis deres parentdirecovers ikke eksisterer endnu

Omdøb flytter en fil eller mappe i et filsystem, erstatter thedestination atomically.

fjern fjerner de givne filer, også i undermapper

REMOVE_RECURSE fjerner de givne filer og mapper, ogsåikke-tomme mapper

RELATIVE_PATH bestemmer relativ sti fra mappe til den givne fil.

TO_CMAKE_PATH vil konvertere sti til en CMake stil sti med unik /.Indgangen kan være en enkelt sti eller en systemsti som “$ENV{PATH}”.Bemærk de dobbelte citater omkring ENV call to_cmake_path tager kun et argument. Denne kommando konverterer også de oprindelige listeafgrænsere til en liste over stier som PATH-miljøvariablen.

to_native_path fungerer ligesom TO_CMAKE_PATH, men vil konvertere fra acmake stil sti til den oprindelige sti stil for vinduer og / foruniks.

Hent vil hente den givne URL til den givne fil. Hvis LOG var isspecified en log af overførslen vil blive sat i var. Hvis STATUS var erspecificeret status for operationen vil blive sat i var. Statusis vendte tilbage i en liste over længde 2. Det første element er den numeriskereturneringsværdi for operationen, og det andet element er en strengværdi for fejlen. En 0 numerisk fejl betyder ingen fejl ioperation. Hvis TIMEOUT tid er angivet, vil operationen timeoutefter tid sekunder skal tiden angives som et heltal. TheINACTIVITY_TIMEOUT angiver et heltal antal sekunder afinaktivitet, hvorefter operationen skal afslutte. Ifventet_hash ALGO=værdi er angivet, vil operationen kontrollere, at den hentede fils faktiske hash svarer til den forventede værdi, hvoralgo er en af MD5, SHA1, SHA224, SHA256, SHA384 eller SHA512. Hvis det ikke stemmer overens, fejler operationen med en fejl. (“Forventet_md5sum “er kort hånd for”FORVENTET_HASH MD5=sum”.) Hvis VIS_FREMSKRIDT er specificeret, vil fremdriftsoplysninger blive udskrevet som statusmeddelelserindtil operationen er afsluttet. For https URL ‘ er skal CMake byggesmed OpenSSL. TLS / SSL-certifikater er ikke markeret som standard. SetTLS_VERIFY til ON for at kontrollere certifikater og / eller bruge FORVENTET_HASH toverify hentet indhold. Indstil TLS_CAINFO til at angive en customCertificate Authority-fil. Hvis enten TLS option ikke er givet Cmakevil kontrollere variabler cmake_tls_verify og cmake_tls_cainfo, henholdsvis.

UPLOAD vil uploade den givne fil til den givne URL. Hvis LOG var isspecified en log af upload vil blive sat i var. Hvis STATUS var erspecificeret status for operationen vil blive sat i var. Statusis vendte tilbage i en liste over længde 2. Det første element er den numeriskereturneringsværdi for operationen, og det andet element er en strengværdi for fejlen. En 0 numerisk fejl betyder ingen fejl ioperation. Hvis TIMEOUT tid er angivet, vil operationen timeoutefter tid sekunder skal tiden angives som et heltal. TheINACTIVITY_TIMEOUT angiver et heltal antal sekunder afinaktivitet, hvorefter operationen skal afslutte. Hvis fremdriftsoplysninger er angivet, udskrives statusmeddelelser, indtil handlingen er afsluttet.

tidsstempel vil skrive en streng repræsentation af ændringen timeof filnavn til variabel.

skulle kommandoen ikke være i stand til at få en tidsstempelvariabel vil blive sat til den tomme streng “”.

se dokumentation af string tidsstempel underkommando for moredetails.

kommandoen file() giver også kopier og installer signaturer:

file(<COPY|INSTALL> files... DESTINATION <dir> ] )

KOPISIGNATUREN kopierer filer, mapper og symlinks til adestination-mappen. Relative inputstier evalueres med hensyn til den aktuelle kildekatalog, og en relativ destination evalueres med hensyn til den aktuelle build-mappe. Copyingpresserves input fil tidsstempler, og optimerer ud en fil, hvis den eksistererpå destinationen med samme tidsstempel. Kopiering bevarer inputpermissions medmindre udtrykkelige tilladelser eller NO_SOURCE_PERMISSIONS aregiven (standard er USE_SOURCE_PERMISSIONS). Se kommandoen installer (mappe)for dokumentation af tilladelser, mønster, REGEKS og Udelukkelsesmuligheder.

INSTALLATIONSSIGNATUREN adskiller sig lidt fra Kopi: den udskriver statusmeddelelser, og NO_SOURCE_PERMISSIONS er standard. Installationsscriptsgenereret af kommandoen install() brug denne signatur (med nogle dokumenterede muligheder til intern brug).

generer vil skrive en<output_file> med indhold fra en<input_file > eller fra<input_content >. Udgangen er genereretbetinget baseret på indholdet af <tilstand>. Filen er skrevet på CMake generere-tid og input kan indeholde generatorekspressioner. <betingelsen>, < output_file>og < input_file> kan ogsåindeholde generatorudtryk. <betingelsen > skal evalueres tilenten ‘ 0 ‘eller ‘ 1’. <output_file > skal evalueres til et unikt navnblandt alle konfigurationer og blandt alle påkaldelser af fil(generer).

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.