build-cpp / cmkr

Modern build system based on CMake and TOML.
https://cmkr.build
MIT License
431 stars 27 forks source link

Implement `cmkr vendor` #13

Open mrexodia opened 3 years ago

mrexodia commented 3 years ago

The idea would be to automate https://github.com/MoAlyousef/cmkr/tree/7fdafa41894e5509d03756e3017978ac393e5e13/third_party by declaring it in your cmake.toml:

[project]
name = "vendoring_example"

[vendor]
filesystem = { folder = "third_party/filesystem", url = "https://github.com/gulrak/filesystem/archive/refs/tags/v1.5.4.zip" }
ordered-map = { folder = "third_party/filesystem", url = "https://github.com/Tessil/ordered-map/archive/refs/tags/v1.0.0.tar.gz" }
...

Then you can run cmkr vendor (likely a wrapper around a cmake script) to download all the files