early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,82 @@
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO googleapis/google-cloud-cpp
REF v1.41.0
SHA512 41bee9fce6d7bbb0cdd201f9902b1bb0b3c94e4e42719332021fdd7ba1e1b1d503cd7e480c6318da658595100d63223f8f11c3d7f5e4965c1c815ab703a9c224
HEAD_REF main
PATCHES
support_absl_cxx17.patch
)
vcpkg_add_to_path(PREPEND "${CURRENT_HOST_INSTALLED_DIR}/tools/grpc")
set(GOOGLE_CLOUD_CPP_ENABLE "${FEATURES}")
list(REMOVE_ITEM GOOGLE_CLOUD_CPP_ENABLE "core")
# This feature does not exist, but allows us to simplify the vcpkg.json file.
list(REMOVE_ITEM GOOGLE_CLOUD_CPP_ENABLE "grpc-common")
list(REMOVE_ITEM GOOGLE_CLOUD_CPP_ENABLE "googleapis")
vcpkg_cmake_configure(
SOURCE_PATH ${SOURCE_PATH}
DISABLE_PARALLEL_CONFIGURE
OPTIONS
"-DGOOGLE_CLOUD_CPP_ENABLE=${GOOGLE_CLOUD_CPP_ENABLE}"
-DGOOGLE_CLOUD_CPP_ENABLE_MACOS_OPENSSL_CHECK=OFF
-DGOOGLE_CLOUD_CPP_ENABLE_WERROR=OFF
-DGOOGLE_CLOUD_CPP_ENABLE_CCACHE=OFF
-DGOOGLE_CLOUD_CPP_ENABLE_EXAMPLES=OFF
-DBUILD_TESTING=OFF
)
vcpkg_cmake_install()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
foreach(feature IN LISTS FEATURES)
set(config_path "lib/cmake/google_cloud_cpp_${feature}")
# Most features get their own package in `google-cloud-cpp`.
# The exceptions are captured by this `if()` command, basically
# things like `core` and `experimental-storage-grpc` are skipped.
if(NOT IS_DIRECTORY "${CURRENT_PACKAGES_DIR}/${config_path}")
continue()
endif()
vcpkg_cmake_config_fixup(PACKAGE_NAME "google_cloud_cpp_${feature}"
CONFIG_PATH "${config_path}"
DO_NOT_DELETE_PARENT_CONFIG_PATH)
endforeach()
# These packages are automatically installed depending on what features are
# enabled.
foreach(suffix common googleapis grpc_utils rest_internal)
set(config_path "lib/cmake/google_cloud_cpp_${suffix}")
if(NOT IS_DIRECTORY "${CURRENT_PACKAGES_DIR}/${config_path}")
continue()
endif()
vcpkg_cmake_config_fixup(PACKAGE_NAME "google_cloud_cpp_${suffix}"
CONFIG_PATH "${config_path}"
DO_NOT_DELETE_PARENT_CONFIG_PATH)
endforeach()
# These packages are only for backwards compability. The google-cloud-cpp team
# is planning to remove them around 2022-02-15.
foreach(package
googleapis
bigtable_client
pubsub_client
spanner_client
storage_client)
set(config_path "lib/cmake/${package}")
if(NOT IS_DIRECTORY "${CURRENT_PACKAGES_DIR}/${config_path}")
continue()
endif()
vcpkg_cmake_config_fixup(PACKAGE_NAME "${package}"
CONFIG_PATH "${config_path}"
DO_NOT_DELETE_PARENT_CONFIG_PATH)
endforeach()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake"
"${CURRENT_PACKAGES_DIR}/debug/lib/cmake"
"${CURRENT_PACKAGES_DIR}/debug/share")
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
vcpkg_copy_pdbs()

View File

@@ -0,0 +1,32 @@
diff --git a//CMakeLists.txt b/CMakeLists.txt
index 4d03fee..42bb13c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -43,6 +43,14 @@ if (APPLE AND NOT DEFINED CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD 11)
endif ()
+find_package(absl CONFIG REQUIRED)
+
+# Use CMAKE_CXX_STANDARD=17 if ABSL_USE_CXX17 is set
+if (ABSL_USE_CXX17)
+ message(STATUS "Found absl uses CXX17, enable CXX17 feature.")
+ set(CMAKE_CXX_STANDARD 17)
+endif ()
+
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.0)
message(
diff --git a/google/cloud/internal/port_platform.h b/google/cloud/internal/port_platform.h
index f02cb7a..0ea8c9c 100644
--- a/google/cloud/internal/port_platform.h
+++ b/google/cloud/internal/port_platform.h
@@ -49,6 +49,8 @@
// Abort compilation if the compiler does not support C++11.
#if GOOGLE_CLOUD_CPP_CPP_VERSION < 201103L
# error "C++11 or newer is required"
+#elif defined(ABSL_USE_CXX17) && GOOGLE_CLOUD_CPP_CPP_VERSION < 201703L
+# error "Compiled to use Abseil with C++17 support, but using with C++ < C++17"
#endif // GOOGLE_CLOUD_CPP_CPP_VERSION < 201103L
// Abort the build if the version of the compiler is too old. With CMake we

View File

@@ -0,0 +1,994 @@
{
"name": "google-cloud-cpp",
"version": "1.41.0",
"description": "C++ Client Libraries for Google Cloud Platform APIs.",
"homepage": "https://github.com/googleapis/google-cloud-cpp",
"license": "Apache-2.0",
"supports": "!uwp",
"dependencies": [
"abseil",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"default-features": [
"bigquery",
"bigtable",
"iam",
"pubsub",
"spanner",
"storage"
],
"features": {
"accessapproval": {
"description": "Access Approval API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"accesscontextmanager": {
"description": "Access Context Manager API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"apigateway": {
"description": "API Gateway API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"apigeeconnect": {
"description": "Apigee Connect API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"appengine": {
"description": "App Engine Admin API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"artifactregistry": {
"description": "Artifact Registry API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"asset": {
"description": "Cloud Asset API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"assuredworkloads": {
"description": "Assured Workloads API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"automl": {
"description": "Cloud AutoML API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"bigquery": {
"description": "The Google Cloud BigQuery C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"bigtable": {
"description": "The Google Cloud Bigtable C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"billing": {
"description": "Cloud Billing Budget API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"binaryauthorization": {
"description": "Binary Authorization API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"channel": {
"description": "Cloud Channel API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"cloudbuild": {
"description": "Cloud Build API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"composer": {
"description": "Cloud Composer C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"contactcenterinsights": {
"description": "Contact Center AI Insights API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"container": {
"description": "Kubernetes Engine API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"containeranalysis": {
"description": "Container Analysis API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"datacatalog": {
"description": "Google Cloud Data Catalog API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"datamigration": {
"description": "Database Migration API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"dataproc": {
"description": "Cloud Dataproc API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"debugger": {
"description": "Stackdriver Debugger API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"dlp": {
"description": "Cloud Data Loss Prevention (DLP) API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"documentai": {
"description": "Cloud Document AI API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"eventarc": {
"description": "Eventarc API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"experimental-storage-grpc": {
"description": "The GCS+gRPC plugin",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common",
"storage"
]
}
]
},
"filestore": {
"description": "Cloud Filestore API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"functions": {
"description": "Cloud Functions API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"gameservices": {
"description": "Game Services API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"gkehub": {
"description": "GKE Hub C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"grpc-common": {
"description": "Dependencies used by all gRPC-based libraries",
"dependencies": [
"grpc",
{
"name": "grpc",
"host": true
},
"protobuf",
{
"name": "protobuf",
"host": true
}
]
},
"iam": {
"description": "The Google Cloud IAM C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"iap": {
"description": "Cloud Identity-Aware Proxy API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"ids": {
"description": "Cloud IDS API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"iot": {
"description": "Cloud IoT API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"kms": {
"description": "Cloud Key Management Service (KMS) API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"language": {
"description": "Cloud Natural Language API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"logging": {
"description": "Google Cloud Logging C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"managedidentities": {
"description": "Managed Service for Microsoft Active Directory API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"memcache": {
"description": "Cloud Memorystore for Memcached API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"monitoring": {
"description": "Cloud Monitoring API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"networkmanagement": {
"description": "Network Management API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"notebooks": {
"description": "Notebooks API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"orgpolicy": {
"description": "Organization Policy API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"oslogin": {
"description": "Cloud OS Login API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"policytroubleshooter": {
"description": "Policy Troubleshooter API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"privateca": {
"description": "Certificate Authority API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"profiler": {
"description": "Cloud Profiler API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"pubsub": {
"description": "The Google Cloud Bigtable C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"recommender": {
"description": "Recommender C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"redis": {
"description": "Google Cloud Memorystore for Redis API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"resourcemanager": {
"description": "Cloud Resource Manager API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"resourcesettings": {
"description": "Resource Settings API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"retail": {
"description": "Retail API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"scheduler": {
"description": "Cloud Scheduler API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"secretmanager": {
"description": "The Google Cloud Secret Manager C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"securitycenter": {
"description": "Security Command Center API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"servicecontrol": {
"description": "Service Control API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"servicedirectory": {
"description": "Service Directory API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"servicemanagement": {
"description": "Service Management API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"serviceusage": {
"description": "Service Usage API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"shell": {
"description": "Cloud Shell API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"spanner": {
"description": "The Google Cloud Spanner C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"speech": {
"description": "The Google Cloud Speech-to-Text C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"storage": {
"description": "The Google Cloud Storage C++ client library",
"dependencies": [
"crc32c",
{
"name": "curl",
"features": [
"ssl"
]
},
"nlohmann-json"
]
},
"storagetransfer": {
"description": "Storage Transfer API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"talent": {
"description": "Cloud Talent Solution API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"tasks": {
"description": "The Google Cloud Tasks C++ client library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"texttospeech": {
"description": "Cloud Text-to-Speech API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"tpu": {
"description": "Cloud TPU API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"trace": {
"description": "Stackdriver Trace API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"translate": {
"description": "Cloud Translation API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"videointelligence": {
"description": "Cloud Video Intelligence API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"vision": {
"description": "Cloud Vision API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"vmmigration": {
"description": "VM Migration API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"vpcaccess": {
"description": "Serverless VPC Access API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"webrisk": {
"description": "Web Risk API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"websecurityscanner": {
"description": "Web Security Scanner API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
},
"workflows": {
"description": "Workflow Executions API C++ Client Library",
"dependencies": [
{
"name": "google-cloud-cpp",
"default-features": false,
"features": [
"grpc-common"
]
}
]
}
}
}