aboutsummaryrefslogtreecommitdiff
path: root/scripts/boost
diff options
context:
space:
mode:
authorautoantwort <41973254+autoantwort@users.noreply.github.com>2021-07-07 21:31:06 +0200
committerGitHub <noreply@github.com>2021-07-07 12:31:06 -0700
commit761c81d43335a5d5ccc2ec8ad90bd7e2cbba734e (patch)
treefafc3ca4a857223a779e39343977b72bbff0c654 /scripts/boost
parenta1225b69e037b2f3a8dbf4a40bc4d3c957e1f865 (diff)
downloadvcpkg-761c81d43335a5d5ccc2ec8ad90bd7e2cbba734e.tar.gz
vcpkg-761c81d43335a5d5ccc2ec8ad90bd7e2cbba734e.zip
[boost] update to 1.76.0 (#17335)
* [boost] update generator script for boost 1.76 * [boost] update ports to 1.76.0 (run generator) * [boost] fix windows build? * [quantlib] update and fix mac build * [symengine] update and fix build * [avro-cpp] update to latest master and fix windows build * [folly] update to 2021.05.31.00 * [fbthrift, fizz, wangle] update to v2021.05.31.00 and fix build * [proxygen] update to version 2021.05.31.00 * [fizz, proxygen, fbthrift] fix sodium target * [proxygen] also works on macOS * [quantlib] use fix from upstream to fix mac build * [symengine] minimize patch file and fix deprecation warning * [folly,proxygen,wangle,fizz,fbthrift] update to 2021.06.14.00 * [fbthrift] remove unnecessary dependency rsocket I couldn't find any information that this dependency exists. The term is used in the code, but not in the context of a dependency * [fizz,fbthrift] fix zlib dependency * [fbthrift] pass required flex executable to cmake configure * add version files * [boost] generate-ports.ps1: Apply code review * [boost] changes from new version of generate-ports script * update version files * [boost] generate-ports.ps1: Apply code review
Diffstat (limited to 'scripts/boost')
-rw-r--r--scripts/boost/generate-ports.ps198
-rw-r--r--scripts/boost/post-source-stubs/json.cmake1
-rw-r--r--scripts/boost/post-source-stubs/math.cmake6
3 files changed, 50 insertions, 55 deletions
diff --git a/scripts/boost/generate-ports.ps1 b/scripts/boost/generate-ports.ps1
index f863d8811..38e7b2671 100644
--- a/scripts/boost/generate-ports.ps1
+++ b/scripts/boost/generate-ports.ps1
@@ -1,7 +1,7 @@
[CmdletBinding()]
param (
$libraries = @(),
- $version = "1.75.0",
+ $version = "1.76.0",
$portsDir = $null
)
@@ -27,12 +27,6 @@ else
# Clear this array when moving to a new boost version
$port_versions = @{
#e.g. "asio" = 1;
- "asio" = 1;
- "python" = 3;
- "context" = 3;
- "concept-check" = 2;
- "regex" = 2;
- "json" = 1;
}
$per_port_data = @{
@@ -84,9 +78,9 @@ function TransformReference()
[string]$library
)
- if ($per_port_data[$library].supports)
+ if ($per_port_data.Contains($library) -and $per_port_data[$library].Contains('supports'))
{
- @{name="boost-$library"; platform=$per_port_data[$library].supports}
+ @{name="boost-$library"; platform=$per_port_data[$library]['supports']}
}
else
{
@@ -107,22 +101,17 @@ function Generate()
New-Item -ItemType "Directory" "$portsDir/boost-$PortName" -erroraction SilentlyContinue | out-null
$controlLines = @{
name="boost-$PortName"; `
- "version-string"=$version; `
+ "version"=$version; `
dependencies=$Depends; `
homepage="https://github.com/boostorg/$Name"; `
description="Boost $Name module" `
}
- if ($port_versions[$PortName])
+ if ($port_versions.Contains($PortName))
{
$controlLines["port-version"] = $port_versions[$PortName]
}
- elseif ($NeedsBuild)
- {
- # This can be removed on next update; this is used to track the host dependencies change
- $controlLines["port-version"] = 1
- }
- if ($per_port_data[$PortName])
+ if ($per_port_data.Contains($PortName))
{
$controlLines += $per_port_data[$PortName]
}
@@ -150,8 +139,8 @@ function Generate()
" SHA512 $Hash"
" HEAD_REF master"
)
- $patches = Get-ChildItem $portsDir/boost-$PortName/*.patch
- if ($patches.Count -eq 0)
+ [Array]$patches = Get-Item -Path "$portsDir/boost-$PortName/*.patch"
+ if ($null -eq $patches -or $patches.Count -eq 0)
{
}
elseif ($patches.Count -eq 1)
@@ -227,7 +216,10 @@ function Generate()
}
$portfileLines += @("")
- $($portfileLines -join "`r`n") | out-file -enc ascii "$portsDir/boost-$PortName/portfile.cmake" -NoNewline
+ Set-Content -LiteralPath "$portsDir/boost-$PortName/portfile.cmake" `
+ -Value "$($portfileLines -join "`r`n")" `
+ -Encoding UTF8 `
+ -NoNewline
}
if (!(Test-Path "$scriptsDir/boost"))
@@ -318,27 +310,19 @@ foreach ($library in $libraries)
pushd $unpacked
try
{
- if ($IsWindows)
- {
- $groups = $(
- findstr /si /C:"include <boost/" include/*
- findstr /si /C:"include <boost/" src/*
- ) | % { $_ -replace "^[^:]*:","" }
- }
- else
- {
- $groups = $(
- grep -irhs "include <boost/" include src
- )
- }
+ $groups = Get-ChildItem -Recurse -Path include,src -File `
+ | ? { $_ -is [System.IO.FileInfo] } `
+ | % { Get-Content -LiteralPath $_ } `
+ | ? { $_ -match 'include [<"]boost/' }
- $groups = $groups |
- % { $_ `
+ $groups = $groups | % {
+ $_ `
-replace "boost/numeric/conversion/","boost/numeric_conversion/" `
-replace "boost/functional/hash.hpp","boost/container_hash/hash.hpp" `
-replace "boost/detail/([^/]+)/","boost/`$1/" `
- -replace " *# *include *<boost/([a-zA-Z0-9\._]*)(/|>).*", "`$1" `
- -replace "/|\.hp?p?| ","" } | group | % name | % {
+ -replace " *# *include *[<`"]boost/([a-zA-Z0-9\._]*)[/>`"].*", "`$1" `
+ -replace "/|\.hp?p?| ",""
+ } | group | % name | % {
# mappings
Write-Verbose "${library}: $_"
if ($_ -match "aligned_storage") { "type_traits" }
@@ -346,9 +330,9 @@ foreach ($library in $libraries)
elseif ($_ -eq "type") { "core" }
elseif ($_ -match "concept|concept_archetype") { "concept_check" }
elseif ($_ -match "unordered_") { "unordered" }
- elseif ($_ -match "cstdint|integer_fwd|integer_traits") { "integer" }
+ elseif ($_ -match "integer_fwd|integer_traits") { "integer" }
elseif ($_ -match "call_traits|operators|current_function|cstdlib|next_prior|compressed_pair") { "utility" }
- elseif ($_ -match "^version|^workaround") { "config" }
+ elseif ($_ -match "^version|^workaround|^config|cstdint|cxx11_char_types|limits") { "config" }
elseif ($_ -match "enable_shared_from_this|shared_ptr|make_shared|make_unique|intrusive_ptr|scoped_ptr|pointer_cast|pointer_to_other|weak_ptr|shared_array|scoped_array") { "smart_ptr" }
elseif ($_ -match "iterator_adaptors|generator_iterator|pointee") { "iterator" }
elseif ($_ -eq "regex_fwd") { "regex" }
@@ -358,7 +342,6 @@ foreach ($library in $libraries)
elseif ($_ -eq "circular_buffer_fwd") { "circular_buffer" }
elseif ($_ -eq "archive") { "serialization" }
elseif ($_ -match "none|none_t") { "optional" }
- elseif ($_ -eq "limits") { "compatibility" }
elseif ($_ -match "cstdfloat|math_fwd") { "math" }
elseif ($_ -eq "cast") { "conversion"; "numeric_conversion" } # DEPRECATED header file, includes <boost/polymorphic_cast.hpp> and <boost/numeric/conversion/cast.hpp>
elseif ($_ -match "polymorphic_cast|implicit_cast") { "conversion" }
@@ -373,7 +356,9 @@ foreach ($library in $libraries)
elseif ($_ -eq "numeric" -and $library -notmatch "numeric_conversion|interval|odeint|ublas") { "numeric_conversion"; "interval"; "odeint"; "ublas" }
elseif ($_ -eq "io_fwd") { "io" }
else { $_ }
- } | group | % name | ? { $_ -ne $library }
+ } | group | % name | ? {
+ $_ -ne $library
+ }
#"`nFor ${library}:"
" [known] " + $($groups | ? { $libraries_found -contains $_ })
@@ -467,23 +452,26 @@ if ($libraries_in_boost_port.length -gt 1) {
$boostDependsList = $libraries_in_boost_port | ? { $_ -notmatch "boost-mpi" }
@{
- name="boost";
- "version-string"=$version;
- "port-version"= $port_versions.boost ? $port_versions.boost : 0;
- homepage="https://boost.org";
- description="Peer-reviewed portable C++ source libraries";
- dependencies=$boostDependsList;
- features=@(
+ name = "boost";
+ "version" = $version;
+ "port-version" = $port_versions.Contains('boost') ? $port_versions['boost'] : 0;
+ homepage = "https://boost.org";
+ description = "Peer-reviewed portable C++ source libraries";
+ dependencies = $boostDependsList;
+ features = @(
@{
- name="mpi";
- description="Build with MPI support";
- dependencies=@("boost-mpi");
+ name = "mpi";
+ description = "Build with MPI support";
+ dependencies = @("boost-mpi");
}
);
- } | ConvertTo-Json -Depth 10 -Compress | out-file -enc ascii $portsDir/boost/vcpkg.json
+ } `
+ | ConvertTo-Json -Depth 10 -Compress `
+ | Out-File -Encoding UTF8 -FilePath "$portsDir/boost/vcpkg.json"
& $vcpkg format-manifest "$portsDir/boost/vcpkg.json"
- "set(VCPKG_POLICY_EMPTY_PACKAGE enabled)`n" | out-file -enc ascii $portsDir/boost/portfile.cmake
+ Set-Content -LiteralPath "$portsDir/boost/portfile.cmake" `
+ -Value "set(VCPKG_POLICY_EMPTY_PACKAGE enabled)`n" `
+ -Encoding UTF8 `
+ -NoNewline
}
-
-return
diff --git a/scripts/boost/post-source-stubs/json.cmake b/scripts/boost/post-source-stubs/json.cmake
index 698c7060a..bdc751886 100644
--- a/scripts/boost/post-source-stubs/json.cmake
+++ b/scripts/boost/post-source-stubs/json.cmake
@@ -3,5 +3,6 @@ vcpkg_replace_string("${SOURCE_PATH}/build/Jamfile" "import ../../config/checks/
vcpkg_replace_string("${SOURCE_PATH}/build/Jamfile" "\n <library>/boost//container/<warnings-as-errors>off" "")
vcpkg_replace_string("${SOURCE_PATH}/Jamfile" "import ../config/checks/config" "import build/config/checks/config")
+vcpkg_replace_string("${SOURCE_PATH}/Jamfile" "..//check_basic_alignas" "..//..//..//check_basic_alignas")
file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config")
diff --git a/scripts/boost/post-source-stubs/math.cmake b/scripts/boost/post-source-stubs/math.cmake
new file mode 100644
index 000000000..fcbdd5814
--- /dev/null
+++ b/scripts/boost/post-source-stubs/math.cmake
@@ -0,0 +1,6 @@
+vcpkg_replace_string("${SOURCE_PATH}/build/Jamfile.v2" "import ../../config/checks/config" "import config/checks/config")
+vcpkg_replace_string("${SOURCE_PATH}/build/Jamfile.v2" "check-target-builds ../config//has_gcc_visibility" "check-target-builds ../has_gcc_visibility.cpp")
+
+file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config")
+file(COPY "${SOURCE_PATH}/config/has_gcc_visibility.cpp" DESTINATION "${SOURCE_PATH}/build/config")
+file(COPY "${SOURCE_PATH}/config/has_gcc_visibility.cpp" DESTINATION "${SOURCE_PATH}/")