[cppgraphqlgen] Expose clientgen/schemagen features

Disabling both of these allows building a version of the library which
does not depend on boost, which can be nice for production deployments.

The default behaviour is unchanged.
This commit is contained in:
Cosmo Petrich 2024-11-21 08:37:49 +11:00
parent 8349779185
commit 29c0ffbcc4
4 changed files with 37 additions and 7 deletions

View File

@ -17,7 +17,9 @@ vcpkg_from_github(
vcpkg_check_features(
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
clientgen GRAPHQL_BUILD_CLIENTGEN
rapidjson GRAPHQL_USE_RAPIDJSON
schemagen GRAPHQL_BUILD_SCHEMAGEN
)
vcpkg_cmake_configure(
@ -40,9 +42,19 @@ vcpkg_cmake_install()
vcpkg_cmake_config_fixup()
vcpkg_copy_tools(
TOOL_NAMES schemagen clientgen
SEARCH_DIR ${CURRENT_PACKAGES_DIR}/tools/cppgraphqlgen)
set(tools "")
if ("clientgen" IN_LIST FEATURES)
list(APPEND tools clientgen)
endif()
if ("schemagen" IN_LIST FEATURES)
list(APPEND tools schemagen)
endif()
list(LENGTH tools num_tools)
if (num_tools GREATER 0)
vcpkg_copy_tools(
TOOL_NAMES ${tools}
SEARCH_DIR ${CURRENT_PACKAGES_DIR}/tools/cppgraphqlgen)
endif()
vcpkg_copy_pdbs()

View File

@ -1,12 +1,11 @@
{
"name": "cppgraphqlgen",
"version": "4.5.7",
"port-version": 1,
"port-version": 2,
"description": "C++ GraphQL schema service generator",
"homepage": "https://github.com/microsoft/cppgraphqlgen",
"license": "MIT",
"dependencies": [
"boost-program-options",
"pegtl",
{
"name": "vcpkg-cmake",
@ -18,14 +17,28 @@
}
],
"default-features": [
"rapidjson"
"clientgen",
"rapidjson",
"schemagen"
],
"features": {
"clientgen": {
"description": "Build the clientgen CLI tool.",
"dependencies": [
"boost-program-options"
]
},
"rapidjson": {
"description": "Build the graphqljson library with RapidJSON.",
"dependencies": [
"rapidjson"
]
},
"schemagen": {
"description": "Build the schemagen CLI tool.",
"dependencies": [
"boost-program-options"
]
}
}
}

View File

@ -1966,7 +1966,7 @@
},
"cppgraphqlgen": {
"baseline": "4.5.7",
"port-version": 1
"port-version": 2
},
"cppitertools": {
"baseline": "2.1",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a7cbb853116994c618ead340b1c78e1dbf0137b3",
"version": "4.5.7",
"port-version": 2
},
{
"git-tree": "6fa915d7e50edceda898664f00c7860694433fab",
"version": "4.5.7",