|
| 1 | +-- Form B inline descriptor for the Embedded Template Library (ETL), a |
| 2 | +-- header-only collection of fixed-capacity containers and utilities for |
| 3 | +-- resource-constrained systems. |
| 4 | +-- |
| 5 | +-- The upstream CMake target is INTERFACE-only and exposes `include/`, so a |
| 6 | +-- small C anchor gives mcpp a buildable library target while consumers use |
| 7 | +-- headers such as `<etl/vector.h>`. |
| 8 | +-- |
| 9 | +-- ETL supports older language modes, but this package is built by mcpp, whose |
| 10 | +-- supported C++ standard starts at C++20. The package therefore uses C++23 |
| 11 | +-- for its anchor and remains compatible with C++20 consumers. |
| 12 | +package = { |
| 13 | + spec = "1", |
| 14 | + namespace = "compat", |
| 15 | + name = "etl", |
| 16 | + description = "Embedded Template Library — fixed-capacity containers and utilities (header-only)", |
| 17 | + licenses = {"MIT"}, |
| 18 | + repo = "https://github.com/ETLCPP/etl", |
| 19 | + type = "package", |
| 20 | + |
| 21 | + xpm = { |
| 22 | + linux = { |
| 23 | + ["20.49.0"] = { |
| 24 | + url = "https://github.com/ETLCPP/etl/archive/refs/tags/20.49.0.tar.gz", |
| 25 | + sha256 = "b3e7a5544795ec8f4a1b2ab46f6e88fdb78be5a07738f008ce11dd37ed14b6e4", |
| 26 | + }, |
| 27 | + }, |
| 28 | + macosx = { |
| 29 | + ["20.49.0"] = { |
| 30 | + url = "https://github.com/ETLCPP/etl/archive/refs/tags/20.49.0.tar.gz", |
| 31 | + sha256 = "b3e7a5544795ec8f4a1b2ab46f6e88fdb78be5a07738f008ce11dd37ed14b6e4", |
| 32 | + }, |
| 33 | + }, |
| 34 | + windows = { |
| 35 | + ["20.49.0"] = { |
| 36 | + url = "https://github.com/ETLCPP/etl/archive/refs/tags/20.49.0.tar.gz", |
| 37 | + sha256 = "b3e7a5544795ec8f4a1b2ab46f6e88fdb78be5a07738f008ce11dd37ed14b6e4", |
| 38 | + }, |
| 39 | + }, |
| 40 | + }, |
| 41 | + |
| 42 | + mcpp = { |
| 43 | + language = "c++23", |
| 44 | + import_std = false, |
| 45 | + c_standard = "c11", |
| 46 | + include_dirs = { "*/include" }, |
| 47 | + generated_files = { |
| 48 | + ["mcpp_generated/etl_anchor.c"] = [==[ |
| 49 | +int mcpp_compat_etl_headers_anchor(void) { return 0; } |
| 50 | +]==], |
| 51 | + }, |
| 52 | + sources = { "mcpp_generated/etl_anchor.c" }, |
| 53 | + targets = { ["etl"] = { kind = "lib" } }, |
| 54 | + deps = {}, |
| 55 | + }, |
| 56 | +} |
0 commit comments