include(vcpkg_common_functions) set(VCPKG_POLICY_EMPTY_PACKAGE enabled) if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64" AND NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") return() elseif(CMAKE_HOST_WIN32 AND VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") return() endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/build REF boost-1.68.0 SHA512 ede4ea6bba966bfdc590ea21b8787f090c690db851fd6eb19644f089de8828b6cec504a7f4be203d57017de2a0288f0e12772e50d9017287221520dca1676a79 HEAD_REF master ) vcpkg_download_distfile(ARCHIVE URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.68.0/LICENSE_1_0.txt" FILENAME "boost_LICENSE_1_0.txt" SHA512 d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 ) vcpkg_download_distfile(BOOSTCPP_ARCHIVE URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.68.0/boostcpp.jam" FILENAME "boost-1.68.0-boostcpp.jam" SHA512 4d887b05b4873e651fd9bc20f04fc072c7d801fd50445c989517cd39c3a8aa132ed46c407fb0efb35825fc0fc1035393d5ac0da5922be2c120cf2bfff952b3bc ) file(INSTALL ${ARCHIVE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-build RENAME copyright) file(INSTALL ${BOOSTCPP_ARCHIVE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/boost-build RENAME boostcpp.jam) # This fixes the lib path to use desktop libs instead of uwp -- TODO: improve this with better "host" compilation string(REPLACE "\\store\\;" "\\;" LIB "$ENV{LIB}") set(ENV{LIB} "${LIB}") file(COPY ${SOURCE_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/tools/boost-build ) file(READ "${CURRENT_PACKAGES_DIR}/tools/boost-build/src/tools/msvc.jam" _contents) string(REPLACE " /ZW /EHsc " "" _contents "${_contents}") string(REPLACE "-nologo" "" _contents "${_contents}") string(REPLACE "/nologo" "" _contents "${_contents}") string(REPLACE "/Zm800" "" _contents "${_contents}") string(REPLACE "_WIN32_WINNT=0x0602" "" _contents "${_contents}") file(WRITE "${CURRENT_PACKAGES_DIR}/tools/boost-build/src/tools/msvc.jam" "${_contents}") message(STATUS "Bootstrapping...") if(CMAKE_HOST_WIN32) vcpkg_execute_required_process( COMMAND "${CURRENT_PACKAGES_DIR}/tools/boost-build/bootstrap.bat" msvc WORKING_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/boost-build LOGNAME bootstrap-${TARGET_TRIPLET} ) else() vcpkg_execute_required_process( COMMAND "${CURRENT_PACKAGES_DIR}/tools/boost-build/bootstrap.sh" WORKING_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/boost-build LOGNAME bootstrap-${TARGET_TRIPLET} ) endif()