From e8aa7d842e7143f8f4c540f1f055e2cb2dac11e5 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Wed, 11 Sep 2024 16:13:16 -0700 Subject: [PATCH 1/7] Update Visual Studio to 17.11.3. --- scripts/azure-pipelines/windows/deploy-visual-studio.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/azure-pipelines/windows/deploy-visual-studio.ps1 b/scripts/azure-pipelines/windows/deploy-visual-studio.ps1 index 7f9030682e1f75..1db35d0a863407 100644 --- a/scripts/azure-pipelines/windows/deploy-visual-studio.ps1 +++ b/scripts/azure-pipelines/windows/deploy-visual-studio.ps1 @@ -8,8 +8,8 @@ if (Test-Path "$PSScriptRoot/utility-prefix.ps1") { } # See https://learn.microsoft.com/en-us/visualstudio/releases/2022/release-history -# 17.8.12 -$VisualStudioBootstrapperUrl = 'https://download.visualstudio.microsoft.com/download/pr/a762cfe2-a734-454f-b7ed-26b22a4ea98d/d5e65f8ed2070bd56a564f88ce1f67eec82347170d4176b5d94c5713cbd4b9a5/vs_Enterprise.exe' +# 17.11.3 +$VisualStudioBootstrapperUrl = 'https://download.visualstudio.microsoft.com/download/pr/030a0062-e1e5-4a6c-9385-a6f146dbd9db/85d31bd580a0b36936164315bd423d22af90f90d180a540ef4245522e0bcd085/vs_Enterprise.exe' $Workloads = @( 'Microsoft.VisualStudio.Workload.NativeDesktop', 'Microsoft.VisualStudio.Workload.Universal', From d5dc53acf251bd2cd6cc9d2d4d39faf5fe24584a Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Wed, 11 Sep 2024 16:13:28 -0700 Subject: [PATCH 2/7] Update Azure-CLI to 2.64.0 --- scripts/azure-pipelines/windows/deploy-azure-cli.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/azure-pipelines/windows/deploy-azure-cli.ps1 b/scripts/azure-pipelines/windows/deploy-azure-cli.ps1 index 6ec6173b2be8af..ce10695f944b69 100644 --- a/scripts/azure-pipelines/windows/deploy-azure-cli.ps1 +++ b/scripts/azure-pipelines/windows/deploy-azure-cli.ps1 @@ -9,10 +9,10 @@ if (Test-Path "$PSScriptRoot/utility-prefix.ps1") { [string]$AzCliUrl if ([string]::IsNullOrEmpty($SasToken)) { - $AzCliUrl = 'https://azcliprod.blob.core.windows.net/msi/azure-cli-2.62.0-x64.msi' + $AzCliUrl = 'https://azcliprod.blob.core.windows.net/msi/azure-cli-2.64.0-x64.msi' } else { $SasToken = $SasToken.Replace('"', '') - $AzCliUrl = "https://vcpkgimageminting.blob.core.windows.net/assets/azure-cli-2.62.0-x64.msi?$SasToken" + $AzCliUrl = "https://vcpkgimageminting.blob.core.windows.net/assets/azure-cli-2.64.0-x64.msi?$SasToken" } DownloadAndInstall -Url $AzCliUrl -Name 'Azure CLI' -Args @('/quiet', '/norestart') From 0ddf00ca9c36f1d2d1ab58bbc5c957d31f145283 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Wed, 11 Sep 2024 18:25:47 -0700 Subject: [PATCH 3/7] Update pools. --- scripts/azure-pipelines/windows-unstable/azure-pipelines.yml | 2 +- scripts/azure-pipelines/windows/azure-pipelines.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/azure-pipelines/windows-unstable/azure-pipelines.yml b/scripts/azure-pipelines/windows-unstable/azure-pipelines.yml index e4336a61a657cf..dfdd430bddd122 100644 --- a/scripts/azure-pipelines/windows-unstable/azure-pipelines.yml +++ b/scripts/azure-pipelines/windows-unstable/azure-pipelines.yml @@ -6,7 +6,7 @@ jobs: - job: x64_windows pool: name: vcpkg-testing-msvc - demands: ImageVersionOverride -equals 2024.08.28 + demands: ImageVersionOverride -equals 2024.09.11 workspace: clean: resources timeoutInMinutes: 2880 # 2 days diff --git a/scripts/azure-pipelines/windows/azure-pipelines.yml b/scripts/azure-pipelines/windows/azure-pipelines.yml index a69c1cb38e05b2..605f6d5bfc7e66 100644 --- a/scripts/azure-pipelines/windows/azure-pipelines.yml +++ b/scripts/azure-pipelines/windows/azure-pipelines.yml @@ -20,7 +20,7 @@ jobs: condition: and(succeeded(), contains('^${{ replace(parameters.jobName, '_', '-') }}$', '${{ parameters.tripletPattern }}')) pool: name: PrWin-1ES - demands: ImageVersionOverride -equals 2024.08.28 + demands: ImageVersionOverride -equals 2024.09.11 workspace: clean: resources timeoutInMinutes: 2880 # 2 days From a26f2f6611f315fe79cb3cde2e634e871fe226ce Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Wed, 11 Sep 2024 18:24:50 -0700 Subject: [PATCH 4/7] Workaround Azure/azure-cli#28700 --- scripts/azure-pipelines/windows/create-image.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/azure-pipelines/windows/create-image.ps1 b/scripts/azure-pipelines/windows/create-image.ps1 index f195fe4954422c..dd70a98f0155e8 100644 --- a/scripts/azure-pipelines/windows/create-image.ps1 +++ b/scripts/azure-pipelines/windows/create-image.ps1 @@ -262,7 +262,7 @@ New-AzGalleryImageVersion ` -GalleryImageDefinitionName 'PrWinWus3-TrustedLaunch' ` -Name $GalleryImageVersion ` -Location $Location ` - -SourceImageId $VMCreated.ID ` + -SourceImageVMId $VMCreated.ID ` -ReplicaCount 1 ` -StorageAccountType 'Premium_LRS' ` -PublishingProfileExcludeFromLatest ` From 99c8b58a0c9259cc36a909749d17fb18509c8192 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Mon, 16 Sep 2024 15:41:26 -0700 Subject: [PATCH 5/7] [cpprestsdk] Add _SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING --- ports/cpprestsdk/portfile.cmake | 1 + ...ence-stdext-checked-array-iterators-warning.patch | 12 ++++++++++++ ports/cpprestsdk/vcpkg.json | 2 +- versions/baseline.json | 2 +- versions/c-/cpprestsdk.json | 5 +++++ 5 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 ports/cpprestsdk/silence-stdext-checked-array-iterators-warning.patch diff --git a/ports/cpprestsdk/portfile.cmake b/ports/cpprestsdk/portfile.cmake index 82552b28f76c69..7ed7db93b5a519 100644 --- a/ports/cpprestsdk/portfile.cmake +++ b/ports/cpprestsdk/portfile.cmake @@ -9,6 +9,7 @@ vcpkg_from_github( fix_narrowing.patch fix-uwp.patch fix-clang-dllimport.patch # workaround for https://github.com/microsoft/cpprestsdk/issues/1710 + silence-stdext-checked-array-iterators-warning.patch ) set(OPTIONS) diff --git a/ports/cpprestsdk/silence-stdext-checked-array-iterators-warning.patch b/ports/cpprestsdk/silence-stdext-checked-array-iterators-warning.patch new file mode 100644 index 00000000000000..aa633678455dec --- /dev/null +++ b/ports/cpprestsdk/silence-stdext-checked-array-iterators-warning.patch @@ -0,0 +1,12 @@ +diff --git a/Release/CMakeLists.txt b/Release/CMakeLists.txt +index 3d6df65..9ff6d66 100644 +--- a/Release/CMakeLists.txt ++++ b/Release/CMakeLists.txt +@@ -178,6 +178,7 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") + set(WARNINGS) + set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} /ignore:4264") + add_compile_options(/bigobj) ++ add_compile_options(/D_SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MP") + set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MP") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MP") diff --git a/ports/cpprestsdk/vcpkg.json b/ports/cpprestsdk/vcpkg.json index c322d6b6fc743a..5250a300913258 100644 --- a/ports/cpprestsdk/vcpkg.json +++ b/ports/cpprestsdk/vcpkg.json @@ -1,7 +1,7 @@ { "name": "cpprestsdk", "version": "2.10.19", - "port-version": 1, + "port-version": 2, "description": [ "C++11 JSON, REST, and OAuth library", "The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services." diff --git a/versions/baseline.json b/versions/baseline.json index c5ddb3765b898d..1c5c0675d85e54 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -1974,7 +1974,7 @@ }, "cpprestsdk": { "baseline": "2.10.19", - "port-version": 1 + "port-version": 2 }, "cppslippi": { "baseline": "1.4.3.16", diff --git a/versions/c-/cpprestsdk.json b/versions/c-/cpprestsdk.json index 9a28e7df4b2b58..4543565258f829 100644 --- a/versions/c-/cpprestsdk.json +++ b/versions/c-/cpprestsdk.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "fe8937b292f7e41d1a5d64a89a0176537a0911c0", + "version": "2.10.19", + "port-version": 2 + }, { "git-tree": "a10a640d968ca2ac8f1d0df0836e3d23a7fb2199", "version": "2.10.19", From 0ac82dfa59d6b26e15913c571c1418baad8e0ac8 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Mon, 16 Sep 2024 16:19:49 -0700 Subject: [PATCH 6/7] [nghttp3] Replay arm64 intrinsics fix from upstream. --- ports/nghttp3/portfile.cmake | 7 +++++++ ports/nghttp3/vcpkg.json | 1 + versions/baseline.json | 2 +- versions/n-/nghttp3.json | 5 +++++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ports/nghttp3/portfile.cmake b/ports/nghttp3/portfile.cmake index 513a6d66a0ea95..1792ece0754dc6 100644 --- a/ports/nghttp3/portfile.cmake +++ b/ports/nghttp3/portfile.cmake @@ -1,3 +1,9 @@ +vcpkg_download_distfile(MSVC_ARM64_INTRINSICS_FIX + URLS https://github.com/ngtcp2/nghttp3/commit/2c4a3816bbeab45e7c9092aecc915b54a3c88ccb.patch?full_index=1 + SHA512 ccdd14a71bfa51f3480252faf2a4664544e1e11f3c5b6be9bfe577d46f0fc6c22e22f86b721987d6d1ca17d96ba2e55e32b0d01a6c291ab9ba2fc2279275aeae + FILENAME nghttp3-msvc-arm64-intrinsicis-2c4a3816bbeab45e7c9092aecc915b54a3c88ccb.patch.patch +) + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ngtcp2/nghttp3 @@ -6,6 +12,7 @@ vcpkg_from_github( HEAD_REF main PATCHES fix-include-usage.patch + "${MSVC_ARM64_INTRINSICS_FIX}" ) vcpkg_from_github( diff --git a/ports/nghttp3/vcpkg.json b/ports/nghttp3/vcpkg.json index ba6f3abd1016eb..320945a576e070 100644 --- a/ports/nghttp3/vcpkg.json +++ b/ports/nghttp3/vcpkg.json @@ -1,6 +1,7 @@ { "name": "nghttp3", "version": "1.5.0", + "port-version": 1, "description": "Implementation of RFC 9114 HTTP/3 mapping over QUIC and RFC 9204 QPACK in C", "homepage": "https://github.com/ngtcp2/nghttp3", "license": "MIT", diff --git a/versions/baseline.json b/versions/baseline.json index 1c5c0675d85e54..c67577f596558e 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -6278,7 +6278,7 @@ }, "nghttp3": { "baseline": "1.5.0", - "port-version": 0 + "port-version": 1 }, "ngspice": { "baseline": "41", diff --git a/versions/n-/nghttp3.json b/versions/n-/nghttp3.json index fe0cedefc946df..1d4b2d984aca15 100644 --- a/versions/n-/nghttp3.json +++ b/versions/n-/nghttp3.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "266af41d2ae35c2d64ccee22c99a4fcc57f4fb3f", + "version": "1.5.0", + "port-version": 1 + }, { "git-tree": "35b52ed7827b7da3b3dd1aa78a41aad9c3c13d59", "version": "1.5.0", From 929b25b6e8a1fae134d54266957cea6689b465e6 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Mon, 16 Sep 2024 16:27:51 -0700 Subject: [PATCH 7/7] [ngtcp2] Fix __popcnt intrinsics on arm64. --- ports/ngtcp2/popcnt_intrinsic.patch | 13 +++++++++++++ ports/ngtcp2/portfile.cmake | 9 +++++---- ports/ngtcp2/vcpkg.json | 1 + versions/baseline.json | 2 +- versions/n-/ngtcp2.json | 5 +++++ 5 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 ports/ngtcp2/popcnt_intrinsic.patch diff --git a/ports/ngtcp2/popcnt_intrinsic.patch b/ports/ngtcp2/popcnt_intrinsic.patch new file mode 100644 index 00000000000000..3c6187912f68ae --- /dev/null +++ b/ports/ngtcp2/popcnt_intrinsic.patch @@ -0,0 +1,13 @@ +diff --git a/lib/ngtcp2_ringbuf.c b/lib/ngtcp2_ringbuf.c +index c381c23..73d9230 100644 +--- a/lib/ngtcp2_ringbuf.c ++++ b/lib/ngtcp2_ringbuf.c +@@ -32,7 +32,7 @@ + #include "ngtcp2_macro.h" + + #if defined(_MSC_VER) && !defined(__clang__) && \ +- (defined(_M_ARM) || defined(_M_ARM64)) ++ (defined(_M_ARM) || (defined(_M_ARM64) && _MSC_VER < 1941)) + static unsigned int __popcnt(unsigned int x) { + unsigned int c = 0; + for (; x; ++c) { diff --git a/ports/ngtcp2/portfile.cmake b/ports/ngtcp2/portfile.cmake index 03c8d3178ccf22..34cef5dc1206e1 100644 --- a/ports/ngtcp2/portfile.cmake +++ b/ports/ngtcp2/portfile.cmake @@ -5,7 +5,8 @@ vcpkg_from_github( SHA512 891a7339122f60b1796bb24d29ab75d0316717c2a64a45bade805242b70cb8713abc7642cdf0ec646ab9e80085d65117f0ea9b1e671d76bcd54038b0ea9bc868 HEAD_REF main PATCHES - openssl_required.patch + openssl_required.patch + popcnt_intrinsic.patch # https://github.com/ngtcp2/ngtcp2/pull/1351 ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ENABLE_STATIC_LIB) @@ -13,9 +14,9 @@ string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" ENABLE_SHARED_LIB) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - wolfssl ENABLE_WOLFSSL - gnutls ENABLE_GNUTLS - libressl ENABLE_OPENSSL + wolfssl ENABLE_WOLFSSL + gnutls ENABLE_GNUTLS + libressl ENABLE_OPENSSL ) vcpkg_cmake_configure( diff --git a/ports/ngtcp2/vcpkg.json b/ports/ngtcp2/vcpkg.json index 1233a5444b060f..619c85b0f3654e 100644 --- a/ports/ngtcp2/vcpkg.json +++ b/ports/ngtcp2/vcpkg.json @@ -1,6 +1,7 @@ { "name": "ngtcp2", "version": "1.7.0", + "port-version": 1, "description": "ngtcp2 project is an effort to implement RFC9000 QUIC protocol.", "homepage": "https://github.com/ngtcp2/ngtcp2", "license": "MIT", diff --git a/versions/baseline.json b/versions/baseline.json index c67577f596558e..3d7f0b167576a6 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -6286,7 +6286,7 @@ }, "ngtcp2": { "baseline": "1.7.0", - "port-version": 0 + "port-version": 1 }, "nifly": { "baseline": "1.0.0", diff --git a/versions/n-/ngtcp2.json b/versions/n-/ngtcp2.json index 27c7c7ad661de9..8bb91d9fda2400 100644 --- a/versions/n-/ngtcp2.json +++ b/versions/n-/ngtcp2.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "b0694dae4b89a7212beb478571821e45c3715335", + "version": "1.7.0", + "port-version": 1 + }, { "git-tree": "909f14f6bf7e0e65f72114fed6c3deb990755ba6", "version": "1.7.0",