Fiat-Crypto 项目教程
1. 项目的目录结构及介绍
Fiat-Crypto 项目的目录结构如下:
fiat-crypto/
├── AUTHORS
├── CONTRIBUTORS
├── COPYRIGHT
├── LICENSE-APACHE
├── LICENSE-BSD-1
├── LICENSE-MIT
├── Makefile
├── Makefile.coq
├── Makefile.coq.local
├── Makefile.examples
├── Makefile.js-html
├── Makefile.standalone
├── README.md
├── boringssl_notes.md
├── crypto-defects.md
├── folkwisdom.md
├── primes.txt
├── fiat-amd64/
├── fiat-bedrock2/
│ └── src/
├── fiat-c/
│ └── src/
├── fiat-go/
├── fiat-html/
├── fiat-java/
│ └── src/
├── fiat-json/
│ └── src/
├── fiat-rust/
├── fiat-zig/
├── inversion/
├── output-tests/
├── rewriter/
├── rupicola/
└── src/
├── ExtractionOcaml/
└── ExtractionHaskell/
目录结构介绍
- fiat-amd64/: 包含 AMD64 架构的代码生成器。
- fiat-bedrock2/: 包含 Bedrock2 语言的代码生成器。
- fiat-c/: 包含生成的 C 语言代码。
- fiat-go/: 包含生成的 Go 语言代码。
- fiat-html/: 包含生成的 HTML 文档。
- fiat-java/: 包含生成的 Java 代码。
- fiat-json/: 包含生成的 JSON 代码。
- fiat-rust/: 包含生成的 Rust 代码。
- fiat-zig/: 包含生成的 Zig 代码。
- inversion/: 包含反演相关的代码。
- output-tests/: 包含生成的代码的测试文件。
- rewriter/: 包含重写器相关的代码。
- rupicola/: 包含 Rupicola 相关的代码。
- src/: 包含主要的源代码文件,包括 OCaml 和 Haskell 的提取代码。
2. 项目的启动文件介绍
Fiat-Crypto 项目的启动文件主要是 Makefile
和 Makefile.coq
。这些文件用于配置和启动项目的构建过程。
Makefile
Makefile
是项目的主要构建文件,包含了项目的构建目标和依赖关系。通过运行 make
命令,可以启动项目的构建过程。
Makefile.coq
Makefile.coq
是专门用于 Coq 项目的构建文件,包含了 Coq 项目的构建目标和依赖关系。通过运行 make -f Makefile.coq
命令,可以启动 Coq 项目的构建过程。
3. 项目的配置文件介绍
Fiat-Crypto 项目的配置文件主要包括 Makefile
和 Makefile.coq
。这些文件用于配置项目的构建过程。
Makefile
Makefile
包含了项目的构建目标和依赖关系。通过修改 Makefile
,可以配置项目的构建选项,例如指定依赖库的路径、设置编译器选项等。
Makefile.coq
Makefile.coq
是专门用于 Coq 项目的构建文件,包含了 Coq 项目的构建目标和依赖关系。通过修改 Makefile.coq
,可以配置 Coq 项目的构建选项,例如指定 Coq 版本、设置编译器选项等。
通过以上配置文件,可以灵活地配置和启动 Fiat-Crypto 项目的构建过程。