libucl icon indicating copy to clipboard operation
libucl copied to clipboard

vcpkg port?

Open davidchisnall opened this issue 4 years ago • 2 comments

It would be great to have libucl support in vcpkg.

davidchisnall avatar Aug 04 '21 12:08 davidchisnall

I have this as an overlay port:

portfile.cmake:

vcpkg_from_github(
    OUT_SOURCE_PATH SOURCE_PATH
    REPO vstakhov/libucl
    REF 95df30cf3e35788c08be537a1623499c98415674
    SHA512 8c61061d3fa02283f700ac6a5ddb035348c67ec4e45d30a47da945a39adffda5f3bc8db6fae35544185983e3204efd7bdef55b145d2a387a04d06aecca461ea3
    HEAD_REF master
)

vcpkg_configure_cmake(
    SOURCE_PATH ${SOURCE_PATH}
    PREFER_NINJA
)

vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH share/ucl TARGET_PATH share/ucl)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libucl RENAME copyright)

vcpkg.json:

{
        "name": "libucl",
        "version-string": "0.8.2",
        "description": "Library for manipulating the Universal Configuration Language"
}

With this, I am able to build and incorporate libucl into my project. This doesn't handle any of the optional bits (libcurl / libfetch integration, lua / python bindings).

I am happy to submit this to vcpkg if you like, or you're welcome to use them as the starting point for a richer integration.

davidchisnall avatar Aug 23 '21 11:08 davidchisnall

Thank you very much for this work, David. I would suggest you to submit this as a starting point and then probably gather feedback from users (if any) for further improvements. I don't use vcpkg, so I cannot properly test it I'm afraid.

vstakhov avatar Aug 25 '21 11:08 vstakhov