diff --git a/examples/complex_fixups/README.md b/examples/complex_fixups/README.md index 0551595f..814e9228 100644 --- a/examples/complex_fixups/README.md +++ b/examples/complex_fixups/README.md @@ -8,42 +8,42 @@ generate a BUCK file of build rules for them. This will require a Rust installation (stable, but probably fairly recent), and Buck to actually make use of the generated files. -You can learn more about Buck at [buck.build](https://buck.build). The -[getting started](https://buck.build/setup/getting_started.html) page should +You can learn more about Buck at [buck.build](https://buck2.build). The +[getting started](https://buck2.build/docs/about/getting_started/) page should help with getting it installed. ## Buck and its Configuration The `.buckconfig` file both configures Buck and tells it where the top of the -"cell" is (current working tree). This only contains some very minimal Rust -configuration; most notable is overriding the default to Rust 2018. - -(`.buck-java11` won't generally be needed.) +"cell" is (current working tree). ## Reindeer configuration The files and directories Reindeer cares about are under `third-party/`: -- reindeer.toml - Reindeer's configuration. The directory containing this file +- `reindeer.toml` - Reindeer's configuration. The directory containing this + file is also the base for any relative paths mentioned in the file. -- Cargo.toml - You edit this to specify which packages you want to import, along +- `Cargo.toml` - You edit this to specify which packages you want to import, + along with other settings like features, patches and so on, using the full syntax Cargo allows -- Cargo.lock - The resolved dependencies -- BUCK - The generated Buck build rules (once generated) -- .gitignore - This is used to ignore various inconvenient files in vendored +- `Cargo.lock` - The resolved dependencies +- `BUCK` - The generated Buck build rules (once generated) +- `.gitignore` - This is used to ignore various inconvenient files in vendored code. Reindeer itself will look at this to edit them out of the vendored checksum.json files so that Cargo doesn't get upset. In addition to these files, there are a few significant directories: -- vendor/ - where all the vendored code goes -- fixups/ - fixups tell Reindeer how to handle packages with build scripts and +- `vendor/` - where all the vendored code goes +- `fixups/` - fixups tell Reindeer how to handle packages with build scripts + and other special cases; most packages won't need anything here -- macros/ - Buck macros which map from the rules Reindeer generates to the +- `macros/` - Buck macros which map from the rules Reindeer generates to the actual build environment. This directory is not hard-coded and could be anywhere. The macros included here are quite minimal. -- top/ - Cargo needs a dummy package for the Cargo.toml (it doesn't allow a +- `top/` - Cargo needs a dummy package for the Cargo.toml (it doesn't allow a package which is _all_ dependencies) ## Project