mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-06 13:19:00 +08:00
75 lines
2.9 KiB
CMake
75 lines
2.9 KiB
CMake
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
|
|
|
if(CMAKE_HOST_WIN32 AND VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "MinGW")
|
|
return()
|
|
endif()
|
|
|
|
set(BOOST_VERSION 1.75.0)
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO boostorg/build
|
|
REF boost-${BOOST_VERSION}
|
|
SHA512 dc5784cdcc908591a8c8814dac32849fb00b5f5b2d48de963d51a0571fd9f5a0419d6bb569f3375bf8fbfae28d680db4ce869604667b717023e76869836534f4
|
|
HEAD_REF master
|
|
PATCHES
|
|
fix_options.patch
|
|
)
|
|
|
|
vcpkg_download_distfile(ARCHIVE
|
|
URLS "https://raw.githubusercontent.com/boostorg/boost/boost-${BOOST_VERSION}/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-${BOOST_VERSION}/boostcpp.jam"
|
|
FILENAME "boost-${BOOST_VERSION}-boostcpp.jam"
|
|
SHA512 8cf929fa4a602342c859a6bbd5f9dda783ac29431d951bcf6cae4cb14377c1b3aed90bacd902b0f7d1807591cf5e1a244cf8fc3c6cc6e0a4056db145b58f51df
|
|
)
|
|
|
|
# https://github.com/boostorg/boost/pull/206
|
|
# do not add version suffix for android
|
|
file(READ "${BOOSTCPP_ARCHIVE}" _contents)
|
|
string(REPLACE "aix &&" "aix android &&" _contents "${_contents}")
|
|
file(WRITE "${SOURCE_PATH}/boostcpp.jam" "${_contents}")
|
|
|
|
file(INSTALL ${ARCHIVE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-build RENAME copyright)
|
|
|
|
# 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 "<define>_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)
|
|
if(VCPKG_TARGET_IS_MINGW)
|
|
set(TOOLSET mingw)
|
|
else()
|
|
set(TOOLSET msvc)
|
|
endif()
|
|
vcpkg_execute_required_process(
|
|
COMMAND "${CURRENT_PACKAGES_DIR}/tools/boost-build/bootstrap.bat" ${TOOLSET}
|
|
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()
|