aboutsummaryrefslogtreecommitdiff
path: root/ports/googleapis
diff options
context:
space:
mode:
Diffstat (limited to 'ports/googleapis')
-rw-r--r--ports/googleapis/CONTROL5
-rw-r--r--ports/googleapis/portfile.cmake32
-rw-r--r--ports/googleapis/usage6
3 files changed, 43 insertions, 0 deletions
diff --git a/ports/googleapis/CONTROL b/ports/googleapis/CONTROL
new file mode 100644
index 000000000..ac633e51b
--- /dev/null
+++ b/ports/googleapis/CONTROL
@@ -0,0 +1,5 @@
+Source: googleapis
+Version: 0.1.5
+Build-Depends: grpc, protobuf
+Description: C++ Proto Libraries for Google APIs.
+Homepage: https://github.com/googleapis/cpp-cmakefiles
diff --git a/ports/googleapis/portfile.cmake b/ports/googleapis/portfile.cmake
new file mode 100644
index 000000000..978d7a4b8
--- /dev/null
+++ b/ports/googleapis/portfile.cmake
@@ -0,0 +1,32 @@
+include(vcpkg_common_functions)
+
+if (VCPKG_TARGET_IS_UWP)
+ message(FATAL_ERROR "Package `googleapis` doesn't support UWP")
+endif()
+
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO googleapis/cpp-cmakefiles
+ REF v0.1.5
+ SHA512 7c940cd60490c64b67b608b10dc85f8be33b370737e0d2a6c73015fc5b9b921b07aceef672f6cdef86878d766e4f2c89af28869e06677ca1ddbbf11fe8b5f963
+ HEAD_REF master
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake(ADD_BIN_TO_PATH)
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake TARGET_PATH share)
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/googleapis RENAME copyright)
+
+vcpkg_copy_pdbs()
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
diff --git a/ports/googleapis/usage b/ports/googleapis/usage
new file mode 100644
index 000000000..00ca628e5
--- /dev/null
+++ b/ports/googleapis/usage
@@ -0,0 +1,6 @@
+The package googleapis is compatible with built-in CMake targets:
+
+ find_package(googleapis CONFIG REQUIRED)
+
+ # Then link against the proto libraries that you want to use, for example:
+ target_link_libraries(main PRIVATE googleapis-c++::bigtable_protos gRPC::grpc gRPC::grpc++)