aboutsummaryrefslogtreecommitdiff
path: root/ports/bond
diff options
context:
space:
mode:
Diffstat (limited to 'ports/bond')
-rw-r--r--ports/bond/CONTROL9
-rw-r--r--ports/bond/portfile.cmake10
-rw-r--r--ports/bond/vcpkg.json22
3 files changed, 27 insertions, 14 deletions
diff --git a/ports/bond/CONTROL b/ports/bond/CONTROL
deleted file mode 100644
index 64673d992..000000000
--- a/ports/bond/CONTROL
+++ /dev/null
@@ -1,9 +0,0 @@
-Source: bond
-Version: 9.0.3
-Description: Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services.
-Homepage: https://github.com/Microsoft/bond
-Build-Depends: rapidjson, boost-config, boost-utility, boost-assign, boost-locale
-
-Feature: bond-over-grpc
-Description: Bond-over-gRPC provides code generation from Bond IDL service definitions to send Bond objects via gRPC.
-Build-Depends: grpc
diff --git a/ports/bond/portfile.cmake b/ports/bond/portfile.cmake
index f4b9cdd94..6a56a4534 100644
--- a/ports/bond/portfile.cmake
+++ b/ports/bond/portfile.cmake
@@ -21,13 +21,13 @@ if (VCPKG_TARGET_IS_WINDOWS)
# Clear the generator to prevent it from updating
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/tools/)
# Extract the precompiled gbc
- vcpkg_extract_source_archive(${GBC_ARCHIVE} ${CURRENT_BUILDTREES_DIR}/tools/)
- set(FETCHED_GBC_PATH ${CURRENT_BUILDTREES_DIR}/tools/gbc-${BOND_VER}-amd64.exe)
+ vcpkg_extract_source_archive(extracted_tool_dir ARCHIVE "${GBC_ARCHIVE}" NO_REMOVE_ONE_LEVEL)
+ file(RENAME "${extracted_tool_dir}" "${CURRENT_BUILDTREES_DIR}/tools")
- if (NOT EXISTS "${FETCHED_GBC_PATH}")
- message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exists, but it doesn't.")
+ set(FETCHED_GBC_PATH "${CURRENT_BUILDTREES_DIR}/tools/gbc-${BOND_VER}-amd64.exe")
+ if(NOT EXISTS "${FETCHED_GBC_PATH}")
+ message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exist, but it doesn't.")
endif()
-
else()
# According to the readme on https://github.com/microsoft/bond/
# The build needs a version of the Haskel Tool stack that is newer than some distros ship with.
diff --git a/ports/bond/vcpkg.json b/ports/bond/vcpkg.json
new file mode 100644
index 000000000..524cc9d0f
--- /dev/null
+++ b/ports/bond/vcpkg.json
@@ -0,0 +1,22 @@
+{
+ "name": "bond",
+ "version-string": "9.0.3",
+ "port-version": 1,
+ "description": "Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services.",
+ "homepage": "https://github.com/Microsoft/bond",
+ "dependencies": [
+ "boost-assign",
+ "boost-config",
+ "boost-locale",
+ "boost-utility",
+ "rapidjson"
+ ],
+ "features": {
+ "bond-over-grpc": {
+ "description": "Bond-over-gRPC provides code generation from Bond IDL service definitions to send Bond objects via gRPC.",
+ "dependencies": [
+ "grpc"
+ ]
+ }
+ }
+}