You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1.2 KiB

AddDependentPackage

Use AddDependentPackage when you have multiple packages that are required to all be from the system, OR bundled. This is useful in cases where e.g. versions must absolutely match.

Versioning

Versioning must be handled by the package itself.

Examples

Vulkan

cpmfile.json

{
    "vulkan-headers": {
        "repo": "KhronosGroup/Vulkan-Headers",
        "package": "VulkanHeaders",
        "version": "1.4.317",
        "hash": "26e0ad8fa34ab65a91ca62ddc54cc4410d209a94f64f2817dcdb8061dc621539a4262eab6387e9b9aa421db3dbf2cf8e2a4b041b696d0d03746bae1f25191272",
        "git_version": "1.4.342",
        "tag": "v%VERSION%"
    },
    "vulkan-utility-libraries": {
        "repo": "KhronosGroup/Vulkan-Utility-Libraries",
        "package": "VulkanUtilityLibraries",
        "hash": "8147370f964fd82c315d6bb89adeda30186098427bf3efaa641d36282d42a263f31e96e4586bfd7ae0410ff015379c19aa4512ba160630444d3d8553afd1ec14",
        "git_version": "1.4.342",
        "tag": "v%VERSION%"
    }
}

CMakeLists.txt:

AddDependentPackages(vulkan-headers vulkan-utility-libraries)

If Vulkan Headers are installed, but NOT Vulkan Utility Libraries, then CPMUtil will throw an error.