- `toolchainRequirements` recipe entry
-
- DUB now supports a new entry in `dub.json` or `dub.sdl` to restrict the versions of
- DUB and of compilers supported by a package.
-
- dub.json:
- ---
- {
- "toolchainRequirements": {
- "dub": "~>1.10",
- "frontend": ">=2.068 <2.083"
- }
- }
- ---
-
- dub.sdl:
- ---
- toolchainRequirements dub="~>1.10" frontend=">=2.068|<2.083"
- ---
-
- Supported entries in `toolchainRequirements` are:
- $(UL
- $(LI dub)
- $(LI frontend)
- $(LI dmd)
- $(LI ldc)
- $(LI gdc)
- )
-
- Each can contain a
- $(LINK2 https://dub.pm/package-format-sdl.html#version-specs, version specification),
- where DMD-like versions are supported in addition to SemVer versions. For
- compilers, instead of a version specification, the keyword `no` can also be used
- to indicate that the compiler should not be used for this package.
-
- Example scenario:$(BR)
- Package that needs DUB>=1.12, and that will only build with LDC>=1.10:
-
- dub.json:
- ---
- {
- "toolchainRequirements": {
- "dub": ">=1.12",
- "dmd": "no",
- "gdc": "no",
- "ldc": ">=1.10"
- }
- }
- ---
-
- dub.sdl:
- ---
- toolchainRequirements dub=">=1.12" dmd="no" gdc="no" ldc=">=1.10"
- ---