cps-org / cps-config

A drop in replacement for pkg-config/pkgconf using cps files
MIT License
15 stars 7 forks source link

dylib requires in same cps file not working #64

Open tylerjw opened 2 months ago

tylerjw commented 2 months ago

I will eventually migrate my work of writing cps files for ubuntu into some integration tests here.

Here is a cps file I wrote from the below pc file.

prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib/x86_64-linux-gnu
includedir=${prefix}/include/nss

Name: NSS
Description: Mozilla Network Security Services
Version: 3.68.2
Requires: nspr
Libs: -L${libdir} -lnss3 -lnssutil3 -lsmime3 -lssl3
Cflags: -I${includedir}

Here is the cps file I've written for this:

{
    "name": "NSS",
    "cps_version": "0.10.0",
    "version": "3.68.2",
    "description": "Mozilla Network Security Services",
    "default_components": ["nss3"],
    "components": {
        "nss3": {
            "type": "dylib",
            "includes": {"*": ["@prefix@/include/nss"]},
            "location": "@prefix@/lib/x86_64-linux-gnu/libnss3.so",
            "requres": [":nssutil3", ":smime3", ":ssl3"]
        },
        "nssutil3": {
            "type": "dylib",
            "location": "@prefix@/lib/x86_64-linux-gnu/libnssutil3.so",
        },
        "smime3": {
            "type": "dylib",
            "location": "@prefix@/lib/x86_64-linux-gnu/libsmime3.so",
        },
        "ssl3": {
            "type": "dylib",
            "location": "@prefix@/lib/x86_64-linux-gnu/libssl3.so",
        },
    }
}

Right now there is a problem with the requires is followed in archive types but not dylib types.