aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Warrington <chwarr@microsoft.com>2017-02-08 19:35:04 -0800
committerChristopher Warrington <chwarr@microsoft.com>2017-02-08 19:38:10 -0800
commitbef39cd24f44314936d416d577a1650411d84e24 (patch)
tree88619473c50759801a975773aebce71971329f3b
parent6af35363b8c9c768fe6c298605b1647a522229b2 (diff)
downloadvcpkg-bef39cd24f44314936d416d577a1650411d84e24.tar.gz
vcpkg-bef39cd24f44314936d416d577a1650411d84e24.zip
Fetch a pre-compiled gbc from GitHub
The BOND_GBC_PATH environment variable is no longer consulted, and the Haskell toolchain will _not_ be used even if it exists. At the moment, the downloaded gbc is amd64 only.
-rw-r--r--ports/bond/portfile.cmake28
1 files changed, 16 insertions, 12 deletions
diff --git a/ports/bond/portfile.cmake b/ports/bond/portfile.cmake
index 0225a263f..ca9ff156b 100644
--- a/ports/bond/portfile.cmake
+++ b/ports/bond/portfile.cmake
@@ -5,14 +5,28 @@ endif()
include(vcpkg_common_functions)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/bond-5.2.0)
+
vcpkg_download_distfile(ARCHIVE
URLS "https://github.com/Microsoft/bond/archive/5.2.0.zip"
FILENAME "bond-5.2.0.zip"
SHA512 bc533d9e7431d0690b555aa4a42ca947f8025fc388f698c40cfeacf4286892ac5fd86d93df187009d4791e3eae240eb60886947cfe600838c6058274eb4d625c
- )
+)
+vcpkg_download_distfile(GBC_ARCHIVE
+ URLS "https://github.com/Microsoft/bond/releases/download/5.2.0/gbc-5.2.0-amd64.zip"
+ FILENAME "gbc-5.2.0-amd64.zip"
+ SHA512 9413c0035939788724e08ac858bfc3b2ccefbba74ed737b22eca35ec0da576aa2bf8403e606d2ac20b3fbc827933c289630266824613e04b1921b66fef00e132
+)
vcpkg_extract_source_archive(${ARCHIVE})
+# Extract the precompiled gbc
+vcpkg_extract_source_archive(${GBC_ARCHIVE} ${CURRENT_BUILDTREES_DIR}/tools/)
+set(FETCHED_GBC_PATH ${CURRENT_BUILDTREES_DIR}/tools/gbc-5.2.0-amd64.exe)
+
+if (NOT EXISTS ${FETCHED_GBC_PATH})
+ message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exists, but it doesn't.")
+endif()
+
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
PATCHES
@@ -24,21 +38,11 @@ vcpkg_apply_patches(
${CMAKE_CURRENT_LIST_DIR}/0002_omit_rapidjson.patch
)
-# To build Bond, you'll either need to have the Haskell toolchain installed
-# or set the environment variable BOND_GBC_PATH to point to a directory that
-# contains a pre-compiled version of gbc.exe.
-#
-# You can get a pre-compiled version of gbc from the Bond.Compiler NuGet
-# package <http://www.nuget.org/packages/Bond.Compiler/>.
-#
-# For instructions on installing the Haskell toolchain and getting it to
-# work with Bond, see the Bond README
-# <https://github.com/Microsoft/bond/blob/master/README.md#windows>
-
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
OPTIONS
-DBOND_LIBRARIES_ONLY=TRUE
+ -DBOND_GBC_PATH=${FETCHED_GBC_PATH}
)
vcpkg_install_cmake()