mirror of https://github.com/microsoft/vcpkg.git
Patch Tuesday for July 2026 (#52938)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
parent
1542813f40
commit
bd93b56711
|
|
@ -1,111 +1,22 @@
|
||||||
diff --git a/Code/BuildSystem/CMake/ezUtilsCppFlags.cmake b/Code/BuildSystem/CMake/ezUtilsCppFlags.cmake
|
|
||||||
index 07ae85f..760d300 100644
|
|
||||||
--- a/Code/BuildSystem/CMake/ezUtilsCppFlags.cmake
|
|
||||||
+++ b/Code/BuildSystem/CMake/ezUtilsCppFlags.cmake
|
|
||||||
@@ -46,7 +46,6 @@ function(ez_set_build_flags_msvc TARGET_NAME)
|
|
||||||
|
|
||||||
# /WX: treat warnings as errors
|
|
||||||
if (NOT ${ARG_NO_WARNINGS_AS_ERRORS} AND NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
||||||
- target_compile_options(${TARGET_NAME} PRIVATE "/WX")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if ((CMAKE_SIZEOF_VOID_P EQUAL 4) AND EZ_CMAKE_ARCHITECTURE_X86)
|
|
||||||
@@ -168,7 +167,6 @@ function(ez_set_build_flags_clang TARGET_NAME)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT (CMAKE_CURRENT_SOURCE_DIR MATCHES "Code/ThirdParty"))
|
|
||||||
- target_compile_options(${TARGET_NAME} PRIVATE -Werror=inconsistent-missing-override -Werror=switch -Werror=uninitialized)
|
|
||||||
else()
|
|
||||||
# Ignore all warnings in third party code.
|
|
||||||
target_compile_options(${TARGET_NAME} PRIVATE -Wno-everything)
|
|
||||||
diff --git a/Code/Engine/Core/CMakeLists.txt b/Code/Engine/Core/CMakeLists.txt
|
|
||||||
index 291d494..54eb04d 100644
|
|
||||||
--- a/Code/Engine/Core/CMakeLists.txt
|
|
||||||
+++ b/Code/Engine/Core/CMakeLists.txt
|
|
||||||
@@ -8,7 +8,7 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
|
||||||
ez_create_target(LIBRARY ${PROJECT_NAME})
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME}
|
|
||||||
diff --git a/Code/Engine/Foundation/CMakeLists.txt b/Code/Engine/Foundation/CMakeLists.txt
|
diff --git a/Code/Engine/Foundation/CMakeLists.txt b/Code/Engine/Foundation/CMakeLists.txt
|
||||||
index 2cb3ece..695f510 100644
|
index 63db77f..7e87e0d 100644
|
||||||
--- a/Code/Engine/Foundation/CMakeLists.txt
|
--- a/Code/Engine/Foundation/CMakeLists.txt
|
||||||
+++ b/Code/Engine/Foundation/CMakeLists.txt
|
+++ b/Code/Engine/Foundation/CMakeLists.txt
|
||||||
@@ -14,7 +14,7 @@ if(EZ_CMAKE_PLATFORM_WINDOWS)
|
@@ -3,7 +3,7 @@ ez_cmake_init()
|
||||||
endif()
|
# Get the name of this folder as the project name
|
||||||
|
get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
||||||
|
|
||||||
if (MSVC)
|
-ez_create_target(LIBRARY ${PROJECT_NAME})
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
+ez_create_target(LIBRARY ${PROJECT_NAME} NO_WARNINGS_AS_ERRORS)
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (EZ_CMAKE_PLATFORM_LINUX)
|
|
||||||
diff --git a/Code/Engine/RendererDX11/CMakeLists.txt b/Code/Engine/RendererDX11/CMakeLists.txt
|
|
||||||
index adcfc2e..d53d3c1 100644
|
|
||||||
--- a/Code/Engine/RendererDX11/CMakeLists.txt
|
|
||||||
+++ b/Code/Engine/RendererDX11/CMakeLists.txt
|
|
||||||
@@ -11,7 +11,7 @@ ez_create_target(LIBRARY ${PROJECT_NAME})
|
|
||||||
ez_link_target_dx11(${PROJECT_NAME})
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
if(EZ_CMAKE_PLATFORM_WINDOWS)
|
||||||
target_link_libraries(${PROJECT_NAME}
|
target_link_libraries(${PROJECT_NAME}
|
||||||
diff --git a/Code/Engine/RendererFoundation/CMakeLists.txt b/Code/Engine/RendererFoundation/CMakeLists.txt
|
@@ -13,8 +13,6 @@ if(EZ_CMAKE_PLATFORM_WINDOWS)
|
||||||
index 5e6376f..073e97e 100644
|
)
|
||||||
--- a/Code/Engine/RendererFoundation/CMakeLists.txt
|
|
||||||
+++ b/Code/Engine/RendererFoundation/CMakeLists.txt
|
|
||||||
@@ -8,7 +8,7 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
|
||||||
ez_create_target(LIBRARY ${PROJECT_NAME})
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME}
|
-ez_enable_strict_warnings(${PROJECT_NAME})
|
||||||
diff --git a/Code/Engine/Texture/CMakeLists.txt b/Code/Engine/Texture/CMakeLists.txt
|
-
|
||||||
index a26558c..9bd433c 100644
|
if(EZ_CMAKE_COMPILER_CLANG)
|
||||||
--- a/Code/Engine/Texture/CMakeLists.txt
|
set_source_files_properties(ThirdParty/xxHash/xxHash.c PROPERTIES COMPILE_FLAGS "-Wno-unused-function")
|
||||||
+++ b/Code/Engine/Texture/CMakeLists.txt
|
|
||||||
@@ -6,7 +6,7 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
|
||||||
ez_create_target(LIBRARY ${PROJECT_NAME} EXCLUDE_FOLDER_FOR_UNITY DirectXTex)
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME}
|
|
||||||
diff --git a/Code/Engine/Texture/DirectXTex/Shaders/CompileShaders.cmd b/Code/Engine/Texture/DirectXTex/Shaders/CompileShaders.cmd
|
|
||||||
index d1d977c..a8bad33 100644
|
|
||||||
--- a/Code/Engine/Texture/DirectXTex/Shaders/CompileShaders.cmd
|
|
||||||
+++ b/Code/Engine/Texture/DirectXTex/Shaders/CompileShaders.cmd
|
|
||||||
@@ -5,7 +5,7 @@ rem Licensed under the MIT License.
|
|
||||||
setlocal
|
|
||||||
set error=0
|
|
||||||
|
|
||||||
-set FXCOPTS=/nologo /WX /Ges /Zi /Zpc /Qstrip_reflect /Qstrip_debug
|
|
||||||
+set FXCOPTS=/nologo /Ges /Zi /Zpc /Qstrip_reflect /Qstrip_debug
|
|
||||||
|
|
||||||
set PCFXC="%WindowsSdkVerBinPath%x86\fxc.exe"
|
|
||||||
if exist %PCFXC% goto continue
|
|
||||||
diff --git a/Code/Engine/Utilities/CMakeLists.txt b/Code/Engine/Utilities/CMakeLists.txt
|
|
||||||
index 4109c31..43cd139 100644
|
|
||||||
--- a/Code/Engine/Utilities/CMakeLists.txt
|
|
||||||
+++ b/Code/Engine/Utilities/CMakeLists.txt
|
|
||||||
@@ -8,7 +8,7 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
|
||||||
ez_create_target(LIBRARY ${PROJECT_NAME})
|
|
||||||
|
|
||||||
if(MSVC)
|
|
||||||
- target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX)
|
|
||||||
+ target_compile_options(${PROJECT_NAME} PRIVATE /W4)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
target_link_libraries(${PROJECT_NAME}
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
diff --git a/Code/EditorPlugins/Fmod/EditorPluginFmod/CMakeLists.txt b/Code/EditorPlugins/Fmod/EditorPluginFmod/CMakeLists.txt
|
||||||
|
index 9618c03a2ddce3c566107c32be9b645801812578..456be1610672832e1866e559ee0792a130acb285 100644
|
||||||
|
--- a/Code/EditorPlugins/Fmod/EditorPluginFmod/CMakeLists.txt
|
||||||
|
+++ b/Code/EditorPlugins/Fmod/EditorPluginFmod/CMakeLists.txt
|
||||||
|
@@ -1,12 +1,14 @@
|
||||||
|
ez_cmake_init()
|
||||||
|
|
||||||
|
+# Get the name of this folder as the project name
|
||||||
|
+get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
||||||
|
+# FMOD is in a sub-module, when it isn't checked out ez_requires_fmod() doesn't exist, so early out here when it's not needed anyway
|
||||||
|
+ez_apply_build_filter(${PROJECT_NAME})
|
||||||
|
+
|
||||||
|
ez_requires_editor()
|
||||||
|
|
||||||
|
ez_requires_fmod()
|
||||||
|
|
||||||
|
-# Get the name of this folder as the project name
|
||||||
|
-get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
||||||
|
-
|
||||||
|
ez_create_target(LIBRARY ${PROJECT_NAME})
|
||||||
|
|
||||||
|
ez_link_target_qt(TARGET ${PROJECT_NAME} COMPONENTS Core Gui Widgets)
|
||||||
|
diff --git a/Code/Engine/Foundation/Platform/Win/Features_Platform.h b/Code/Engine/Foundation/Platform/Win/Features_Platform.h
|
||||||
|
index 8465fe3465b7d148dec0354913e9c0ad195e4e0a..deecaafc0cc0418f546b90967ecc342ef660996d 100644
|
||||||
|
--- a/Code/Engine/Foundation/Platform/Win/Features_Platform.h
|
||||||
|
+++ b/Code/Engine/Foundation/Platform/Win/Features_Platform.h
|
||||||
|
@@ -87,7 +87,11 @@
|
||||||
|
# define EZ_SSE_LEVEL EZ_SSE_20
|
||||||
|
# endif
|
||||||
|
#elif EZ_ENABLED(EZ_PLATFORM_ARCH_ARM)
|
||||||
|
-# define EZ_SIMD_IMPLEMENTATION EZ_SIMD_IMPLEMENTATION_NEON
|
||||||
|
+# if EZ_ENABLED(EZ_COMPILER_MSVC_CLANG)
|
||||||
|
+# define EZ_SIMD_IMPLEMENTATION EZ_SIMD_IMPLEMENTATION_NEON
|
||||||
|
+# else
|
||||||
|
+# define EZ_SIMD_IMPLEMENTATION EZ_SIMD_IMPLEMENTATION_FPU
|
||||||
|
+# endif
|
||||||
|
#else
|
||||||
|
# error "Unknown architecture."
|
||||||
|
#endif
|
||||||
|
diff --git a/Code/EnginePlugins/FmodPlugin/CMakeLists.txt b/Code/EnginePlugins/FmodPlugin/CMakeLists.txt
|
||||||
|
index 18368a56c2b8efa06187068c94fd68195fc940a0..45c9ecddc212b918d9b81031f9acb417c20f2e5a 100644
|
||||||
|
--- a/Code/EnginePlugins/FmodPlugin/CMakeLists.txt
|
||||||
|
+++ b/Code/EnginePlugins/FmodPlugin/CMakeLists.txt
|
||||||
|
@@ -1,9 +1,11 @@
|
||||||
|
ez_cmake_init()
|
||||||
|
|
||||||
|
-ez_requires_fmod()
|
||||||
|
-
|
||||||
|
# Get the name of this folder as the project name
|
||||||
|
get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
||||||
|
+# FMOD is in a sub-module, when it isn't checked out ez_requires_fmod() doesn't exist, so early out here when it's not needed anyway
|
||||||
|
+ez_apply_build_filter(${PROJECT_NAME})
|
||||||
|
+
|
||||||
|
+ez_requires_fmod()
|
||||||
|
|
||||||
|
ez_create_target(LIBRARY ${PROJECT_NAME})
|
||||||
|
|
||||||
|
diff --git a/Code/Tools/Libs/ModelImporter2/CMakeLists.txt b/Code/Tools/Libs/ModelImporter2/CMakeLists.txt
|
||||||
|
index 82798c06fda044247684d53cc654697db2b18418..fdd6074980f79ffc3cce00a69a894898f609362c 100644
|
||||||
|
--- a/Code/Tools/Libs/ModelImporter2/CMakeLists.txt
|
||||||
|
+++ b/Code/Tools/Libs/ModelImporter2/CMakeLists.txt
|
||||||
|
@@ -1,9 +1,11 @@
|
||||||
|
ez_cmake_init()
|
||||||
|
|
||||||
|
-ez_requires_assimp()
|
||||||
|
-
|
||||||
|
# Get the name of this folder as the project name
|
||||||
|
get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME_WE)
|
||||||
|
+# AssImp is in a sub-module, when it isn't checked out ez_requires_assimp() doesn't exist, so early out here when it's not needed anyway
|
||||||
|
+ez_apply_build_filter(${PROJECT_NAME})
|
||||||
|
+
|
||||||
|
+ez_requires_assimp()
|
||||||
|
|
||||||
|
ez_create_target(LIBRARY ${PROJECT_NAME})
|
||||||
|
|
||||||
|
|
@ -1,184 +0,0 @@
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index a04be90..f853a0c 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -1,5 +1,9 @@
|
|
||||||
cmake_minimum_required(VERSION 3.19)
|
|
||||||
|
|
||||||
+if(CMAKE_BUILD_TYPE STREQUAL Release)
|
|
||||||
+ set(CMAKE_BUILD_TYPE "Shipping" CACHE STRING "Release overridden with Shipping" FORCE)
|
|
||||||
+endif()
|
|
||||||
+
|
|
||||||
if (${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
|
|
||||||
message(FATAL_ERROR "In-source builds are not supported. Please choose a different binary directory.")
|
|
||||||
return()
|
|
||||||
diff --git a/Code/Engine/CMakeLists.txt b/Code/Engine/CMakeLists.txt
|
|
||||||
index fb4bef4..ccda93d 100644
|
|
||||||
--- a/Code/Engine/CMakeLists.txt
|
|
||||||
+++ b/Code/Engine/CMakeLists.txt
|
|
||||||
@@ -20,5 +20,3 @@ execute_process(
|
|
||||||
OUTPUT_VARIABLE EZ_GIT_BRANCH_NAME
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
||||||
)
|
|
||||||
-
|
|
||||||
-configure_file("${CMAKE_CURRENT_LIST_DIR}/ezBuildInfo.h.in" "${CMAKE_CURRENT_LIST_DIR}/ezBuildInfo.h" NEWLINE_STYLE LF)
|
|
||||||
\ No newline at end of file
|
|
||||||
diff --git a/Code/Engine/Foundation/Basics/Assert.cpp b/Code/Engine/Foundation/Basics/Assert.cpp
|
|
||||||
index 7a55afc..778fadd 100644
|
|
||||||
--- a/Code/Engine/Foundation/Basics/Assert.cpp
|
|
||||||
+++ b/Code/Engine/Foundation/Basics/Assert.cpp
|
|
||||||
@@ -66,16 +66,6 @@ bool ezDefaultAssertHandler(const char* szSourceFile, ezUInt32 uiLine, const cha
|
|
||||||
|
|
||||||
#if EZ_ENABLED(EZ_PLATFORM_WINDOWS)
|
|
||||||
|
|
||||||
- // make sure the cursor is definitely shown, since the user must be able to click buttons
|
|
||||||
-# if EZ_ENABLED(EZ_PLATFORM_WINDOWS_UWP)
|
|
||||||
- // Todo: Use modern Windows API to show cursor in current window.
|
|
||||||
- // http://stackoverflow.com/questions/37956628/change-mouse-pointer-in-uwp-app
|
|
||||||
-# else
|
|
||||||
- ezInt32 iHideCursor = 1;
|
|
||||||
- while (ShowCursor(true) < 0)
|
|
||||||
- ++iHideCursor;
|
|
||||||
-# endif
|
|
||||||
-
|
|
||||||
# if EZ_ENABLED(EZ_COMPILE_FOR_DEBUG)
|
|
||||||
|
|
||||||
ezInt32 iRes = _CrtDbgReport(_CRT_ASSERT, szSourceFile, uiLine, nullptr, "'%s'\nFunction: %s\nMessage: %s", szExpression, szFunction, szAssertMsg);
|
|
||||||
@@ -83,24 +73,9 @@ bool ezDefaultAssertHandler(const char* szSourceFile, ezUInt32 uiLine, const cha
|
|
||||||
// currently we will ALWAYS trigger the breakpoint / crash (except for when the user presses 'ignore')
|
|
||||||
if (iRes == 0)
|
|
||||||
{
|
|
||||||
- // when the user ignores the assert, restore the cursor show/hide state to the previous count
|
|
||||||
-# if EZ_ENABLED(EZ_PLATFORM_WINDOWS_UWP)
|
|
||||||
- // Todo: Use modern Windows API to restore cursor.
|
|
||||||
-# else
|
|
||||||
- for (ezInt32 i = 0; i < iHideCursor; ++i)
|
|
||||||
- ShowCursor(false);
|
|
||||||
-# endif
|
|
||||||
-
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
-# else
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-# if EZ_ENABLED(EZ_PLATFORM_WINDOWS_DESKTOP)
|
|
||||||
- MessageBoxA(nullptr, szTemp, "Assertion", MB_ICONERROR);
|
|
||||||
-# endif
|
|
||||||
-
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
diff --git a/Code/Engine/Foundation/Logging/Implementation/Log.cpp b/Code/Engine/Foundation/Logging/Implementation/Log.cpp
|
|
||||||
index 1a0d2ed..afcde54 100644
|
|
||||||
--- a/Code/Engine/Foundation/Logging/Implementation/Log.cpp
|
|
||||||
+++ b/Code/Engine/Foundation/Logging/Implementation/Log.cpp
|
|
||||||
@@ -260,12 +260,7 @@ void ezLog::OsMessageBox(const ezFormatString& text)
|
|
||||||
title = ezApplication::GetApplicationInstance()->GetApplicationName();
|
|
||||||
}
|
|
||||||
|
|
||||||
-#if EZ_ENABLED(EZ_PLATFORM_WINDOWS_DESKTOP)
|
|
||||||
- MessageBoxW(nullptr, ezStringWChar(display).GetData(), ezStringWChar(title), MB_OK);
|
|
||||||
-#else
|
|
||||||
ezLog::Print(display);
|
|
||||||
- EZ_ASSERT_NOT_IMPLEMENTED;
|
|
||||||
-#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void ezLog::GenerateFormattedTimestamp(TimestampMode mode, ezStringBuilder& sTimestampOut)
|
|
||||||
diff --git a/Code/Engine/Foundation/Math/Implementation/Math_inl.h b/Code/Engine/Foundation/Math/Implementation/Math_inl.h
|
|
||||||
index 1a2962e..9b31f01 100644
|
|
||||||
--- a/Code/Engine/Foundation/Math/Implementation/Math_inl.h
|
|
||||||
+++ b/Code/Engine/Foundation/Math/Implementation/Math_inl.h
|
|
||||||
@@ -80,6 +80,7 @@ namespace ezMath
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if EZ_ENABLED(EZ_PLATFORM_64BIT)
|
|
||||||
EZ_ALWAYS_INLINE ezUInt32 FirstBitLow(ezUInt64 value)
|
|
||||||
{
|
|
||||||
EZ_ASSERT_DEBUG(value != 0, "FirstBitLow is undefined for 0");
|
|
||||||
@@ -95,6 +96,7 @@ namespace ezMath
|
|
||||||
return 0;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
EZ_ALWAYS_INLINE ezUInt32 FirstBitHigh(ezUInt32 value)
|
|
||||||
{
|
|
||||||
@@ -112,6 +114,7 @@ namespace ezMath
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if EZ_ENABLED(EZ_PLATFORM_64BIT)
|
|
||||||
EZ_ALWAYS_INLINE ezUInt32 FirstBitHigh(ezUInt64 value)
|
|
||||||
{
|
|
||||||
EZ_ASSERT_DEBUG(value != 0, "FirstBitHigh is undefined for 0");
|
|
||||||
@@ -127,6 +130,7 @@ namespace ezMath
|
|
||||||
return 0;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
EZ_ALWAYS_INLINE ezUInt32 CountTrailingZeros(ezUInt32 bitmask) { return (bitmask == 0) ? 32 : FirstBitLow(bitmask); }
|
|
||||||
|
|
||||||
diff --git a/Code/Engine/Foundation/Memory/Implementation/AllocatorBase_inl.h b/Code/Engine/Foundation/Memory/Implementation/AllocatorBase_inl.h
|
|
||||||
index fb839b3..21e2ec1 100644
|
|
||||||
--- a/Code/Engine/Foundation/Memory/Implementation/AllocatorBase_inl.h
|
|
||||||
+++ b/Code/Engine/Foundation/Memory/Implementation/AllocatorBase_inl.h
|
|
||||||
@@ -60,7 +60,11 @@ namespace ezInternal
|
|
||||||
template <typename T>
|
|
||||||
EZ_FORCE_INLINE T* CreateRawBuffer(ezAllocatorBase* pAllocator, size_t uiCount)
|
|
||||||
{
|
|
||||||
+#if EZ_ENABLED(EZ_PLATFORM_64BIT)
|
|
||||||
ezUInt64 safeAllocationSize = ezMath::SafeMultiply64(uiCount, sizeof(T));
|
|
||||||
+#else
|
|
||||||
+ ezUInt32 safeAllocationSize = ezMath::SafeMultiply32(uiCount, sizeof(T));
|
|
||||||
+#endif
|
|
||||||
return static_cast<T*>(pAllocator->Allocate(safeAllocationSize, EZ_ALIGNMENT_OF(T)));
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/Code/Engine/Foundation/System/Implementation/Win/StackTracer_win.h b/Code/Engine/Foundation/System/Implementation/Win/StackTracer_win.h
|
|
||||||
index 54939fb..15f928a 100644
|
|
||||||
--- a/Code/Engine/Foundation/System/Implementation/Win/StackTracer_win.h
|
|
||||||
+++ b/Code/Engine/Foundation/System/Implementation/Win/StackTracer_win.h
|
|
||||||
@@ -229,11 +229,23 @@ ezUInt32 ezStackTracer::GetStackTrace(ezArrayPtr<void*>& trace, void* pContext)
|
|
||||||
frame.AddrFrame.Offset = context.Rbp;
|
|
||||||
frame.AddrStack.Offset = context.Rsp;
|
|
||||||
machine_type = IMAGE_FILE_MACHINE_AMD64;
|
|
||||||
-#else
|
|
||||||
+#elif defined(_M_IX86)
|
|
||||||
frame.AddrPC.Offset = context.Eip;
|
|
||||||
frame.AddrFrame.Offset = context.Ebp;
|
|
||||||
frame.AddrStack.Offset = context.Esp;
|
|
||||||
machine_type = IMAGE_FILE_MACHINE_I386;
|
|
||||||
+#elif defined(_M_ARM64)
|
|
||||||
+ frame.AddrPC.Offset = context.Pc;
|
|
||||||
+ frame.AddrFrame.Offset = context.Fp;
|
|
||||||
+ frame.AddrStack.Offset = context.Sp;
|
|
||||||
+ machine_type = IMAGE_FILE_MACHINE_ARM64;
|
|
||||||
+#elif defined(_M_ARM)
|
|
||||||
+ frame.AddrPC.Offset = context.Pc;
|
|
||||||
+ frame.AddrFrame.Offset = context.R11;
|
|
||||||
+ frame.AddrStack.Offset = context.Sp;
|
|
||||||
+ machine_type = IMAGE_FILE_MACHINE_ARM;
|
|
||||||
+#else
|
|
||||||
+ #error Unknown architecture
|
|
||||||
#endif
|
|
||||||
for (ezInt32 i = 0; i < (ezInt32)trace.GetCount(); i++)
|
|
||||||
{
|
|
||||||
diff --git a/Code/Engine/ezBuildInfo.h b/Code/Engine/ezBuildInfo.h
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..9ba9484
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/Code/Engine/ezBuildInfo.h
|
|
||||||
@@ -0,0 +1,9 @@
|
|
||||||
+//
|
|
||||||
+// This file is auto-generated by CMake.
|
|
||||||
+//
|
|
||||||
+
|
|
||||||
+#pragma once
|
|
||||||
+
|
|
||||||
+#define EZ_GIT_COMMIT_HASH_SHORT
|
|
||||||
+#define EZ_GIT_COMMIT_HASH_LONG
|
|
||||||
+#define EZ_GIT_BRANCH_NAME ""
|
|
||||||
|
|
@ -3,13 +3,11 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||||
vcpkg_from_github(
|
vcpkg_from_github(
|
||||||
OUT_SOURCE_PATH SOURCE_PATH
|
OUT_SOURCE_PATH SOURCE_PATH
|
||||||
REPO ezEngine/ezEngine
|
REPO ezEngine/ezEngine
|
||||||
REF 1448308ab99bae0d8d2a292ad345ff3a757f3124 #21.10
|
REF "release-${VERSION}"
|
||||||
SHA512 20da87772366d1612795f534b31600123c0d04beba252d27d895c3c3cff7dae65952bd890629d79a7a691c2f3444601552c4b4eca99e8f8a99dc935ce2ebd284
|
SHA512 c27f8241969c5c257123b789a964e102331a98f1803e038fa0521794ebdc7500f733bd987e1c53111a6220bd403f4ceffdbc2eb183aec7a178a2ffaf9a129afe
|
||||||
|
HEAD_REF dev
|
||||||
PATCHES
|
PATCHES
|
||||||
ezfoundation-vcpkg.diff
|
ezengine-da345.patch # Backport of https://github.com/ezEngine/ezEngine/commit/da345c931aa000c80ee5904a19416fb4eed7b00d.diff?full_index=1
|
||||||
# when making changes to this patch, use vim rather than VS Code or other editors that will
|
|
||||||
# normalize line endings because upstream's line endings are inconsistent which makes the
|
|
||||||
# patch get much larger than necessary
|
|
||||||
disable-warnings-as-errors.diff
|
disable-warnings-as-errors.diff
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
@ -21,6 +19,8 @@ vcpkg_cmake_configure(
|
||||||
-DEZ_3RDPARTY_ZLIB_SUPPORT=OFF
|
-DEZ_3RDPARTY_ZLIB_SUPPORT=OFF
|
||||||
-DEZ_BUILD_FILTER=FoundationOnly
|
-DEZ_BUILD_FILTER=FoundationOnly
|
||||||
-DEZ_BUILD_UNITTESTS=OFF
|
-DEZ_BUILD_UNITTESTS=OFF
|
||||||
|
-DEZ_CMAKE_NO_BUILD_INFO=ON
|
||||||
|
-DEZ_COMPILE_ENGINE_AS_DLL=OFF
|
||||||
-DEZ_ENABLE_FOLDER_UNITY_FILES=OFF
|
-DEZ_ENABLE_FOLDER_UNITY_FILES=OFF
|
||||||
-DEZ_ENABLE_QT_SUPPORT=OFF
|
-DEZ_ENABLE_QT_SUPPORT=OFF
|
||||||
-DEZ_USE_PCH=OFF
|
-DEZ_USE_PCH=OFF
|
||||||
|
|
@ -28,6 +28,7 @@ vcpkg_cmake_configure(
|
||||||
-DEZ_OUTPUT_DIRECTORY_LIB=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Output/Lib
|
-DEZ_OUTPUT_DIRECTORY_LIB=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Output/Lib
|
||||||
-DEZ_OUTPUT_DIRECTORY_DLL=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Output/Bin
|
-DEZ_OUTPUT_DIRECTORY_DLL=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Output/Bin
|
||||||
OPTIONS_RELEASE
|
OPTIONS_RELEASE
|
||||||
|
-DCMAKE_BUILD_TYPE=Shipping
|
||||||
-DEZ_OUTPUT_DIRECTORY_LIB=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Output/Lib
|
-DEZ_OUTPUT_DIRECTORY_LIB=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Output/Lib
|
||||||
-DEZ_OUTPUT_DIRECTORY_DLL=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Output/Bin
|
-DEZ_OUTPUT_DIRECTORY_DLL=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Output/Bin
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,10 @@
|
||||||
{
|
{
|
||||||
"name": "ezfoundation",
|
"name": "ezfoundation",
|
||||||
"version": "21.10",
|
"version": "26.3",
|
||||||
"port-version": 1,
|
|
||||||
"description": "Foundation library out of ezEngine",
|
"description": "Foundation library out of ezEngine",
|
||||||
"homepage": "https://ezengine.net/",
|
"homepage": "https://ezengine.net/",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"supports": "windows | uwp",
|
"supports": "windows & !uwp",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
{
|
||||||
"name": "vcpkg-cmake",
|
"name": "vcpkg-cmake",
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
diff --git a/src/libmongoc/CMakeLists.txt b/src/libmongoc/CMakeLists.txt
|
||||||
|
index cd4c95b..5cefa2c 100644
|
||||||
|
--- a/src/libmongoc/CMakeLists.txt
|
||||||
|
+++ b/src/libmongoc/CMakeLists.txt
|
||||||
|
@@ -422,9 +422,12 @@ function (mongoc_get_accept_args ARG2 ARG3)
|
||||||
|
}
|
||||||
|
")
|
||||||
|
|
||||||
|
- TRY_COMPILE (RES ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
- ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c CMAKE_FLAGS
|
||||||
|
- "-Werror -DCMAKE_CXX_LINK_EXECUTABLE='echo not linking now...'" OUTPUT_VARIABLE LOG2)
|
||||||
|
+ TRY_COMPILE (RES
|
||||||
|
+ "${CMAKE_CURRENT_BINARY_DIR}"
|
||||||
|
+ SOURCES "${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c"
|
||||||
|
+ CMAKE_FLAGS "-DCOMPILE_DEFINITIONS=-Werror" "-DCMAKE_CXX_LINK_EXECUTABLE='echo not linking now...'"
|
||||||
|
+ OUTPUT_VARIABLE LOG2
|
||||||
|
+ )
|
||||||
|
|
||||||
|
if (RES)
|
||||||
|
message (
|
||||||
|
|
@ -11,6 +11,7 @@ vcpkg_from_github(
|
||||||
fix-include-directory.patch
|
fix-include-directory.patch
|
||||||
fix-mingw.patch
|
fix-mingw.patch
|
||||||
remove_abs_patch.cmake
|
remove_abs_patch.cmake
|
||||||
|
cmake-4.4.patch # https://github.com/mongodb/mongo-c-driver/commit/ea1b54791ec2f1aafb665f98af6cc9dd21116782
|
||||||
)
|
)
|
||||||
file(WRITE "${SOURCE_PATH}/VERSION_CURRENT" "${VERSION}")
|
file(WRITE "${SOURCE_PATH}/VERSION_CURRENT" "${VERSION}")
|
||||||
file(TOUCH "${SOURCE_PATH}/src/utf8proc-editable")
|
file(TOUCH "${SOURCE_PATH}/src/utf8proc-editable")
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "mongo-c-driver",
|
"name": "mongo-c-driver",
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
|
"port-version": 1,
|
||||||
"description": "Client library written in C for MongoDB.",
|
"description": "Client library written in C for MongoDB.",
|
||||||
"homepage": "https://github.com/mongodb/mongo-c-driver",
|
"homepage": "https://github.com/mongodb/mongo-c-driver",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
diff --git a/modules/videostab/src/cuda/global_motion.cu b/modules/videostab/src/cuda/global_motion.cu
|
||||||
|
index 7eca6ff..dbd3419 100644
|
||||||
|
--- a/modules/videostab/src/cuda/global_motion.cu
|
||||||
|
+++ b/modules/videostab/src/cuda/global_motion.cu
|
||||||
|
@@ -44,6 +44,7 @@
|
||||||
|
#include <thrust/device_ptr.h>
|
||||||
|
#include <thrust/remove.h>
|
||||||
|
#include <thrust/functional.h>
|
||||||
|
+#include <thrust/tuple.h>
|
||||||
|
#include "opencv2/core/cuda/common.hpp"
|
||||||
|
|
||||||
|
namespace cv { namespace cuda { namespace device { namespace globmotion {
|
||||||
|
|
@ -236,6 +236,7 @@ if("contrib" IN_LIST FEATURES)
|
||||||
0013-contrib-fix-ogre.patch
|
0013-contrib-fix-ogre.patch
|
||||||
0016-contrib-fix-freetype.patch
|
0016-contrib-fix-freetype.patch
|
||||||
0018-contrib-fix-tesseract.patch
|
0018-contrib-fix-tesseract.patch
|
||||||
|
0027-contrib-cuda-tuple.patch # https://github.com/opencv/opencv_contrib/commit/054007b78c8288ef2fd040e77dc0cf2e45f70c15
|
||||||
"${CONTRIB_CUDA_NAMESPACE_FIX}"
|
"${CONTRIB_CUDA_NAMESPACE_FIX}"
|
||||||
"${CONTRIB_CUDA_NOT1_FIX}"
|
"${CONTRIB_CUDA_NOT1_FIX}"
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "opencv4",
|
"name": "opencv4",
|
||||||
"version": "4.12.0",
|
"version": "4.12.0",
|
||||||
"port-version": 5,
|
"port-version": 6,
|
||||||
"description": "Open Source Computer Vision Library",
|
"description": "Open Source Computer Vision Library",
|
||||||
"homepage": "https://opencv.org/",
|
"homepage": "https://opencv.org/",
|
||||||
"documentation": "https://docs.opencv.org/4.12.0/",
|
"documentation": "https://docs.opencv.org/4.12.0/",
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
diff --git a/src/popsift/s_filtergrid.cu b/src/popsift/s_filtergrid.cu
|
||||||
|
index 9e35d8b..9ee93fd 100644
|
||||||
|
--- a/src/popsift/s_filtergrid.cu
|
||||||
|
+++ b/src/popsift/s_filtergrid.cu
|
||||||
|
@@ -17,10 +17,12 @@
|
||||||
|
#include <thrust/host_vector.h>
|
||||||
|
#include <thrust/iterator/constant_iterator.h>
|
||||||
|
#include <thrust/iterator/discard_iterator.h>
|
||||||
|
+#include <thrust/iterator/zip_iterator.h>
|
||||||
|
#include <thrust/sequence.h>
|
||||||
|
#include <thrust/sort.h>
|
||||||
|
#include <thrust/transform.h>
|
||||||
|
#include <thrust/transform_scan.h>
|
||||||
|
+#include <thrust/tuple.h>
|
||||||
|
#include <thrust/version.h>
|
||||||
|
|
||||||
|
namespace popsift
|
||||||
|
|
@ -6,6 +6,7 @@ vcpkg_from_github(
|
||||||
HEAD_REF develop
|
HEAD_REF develop
|
||||||
PATCHES
|
PATCHES
|
||||||
pr-183-add-zcpreprocessor-for-cuda-13-2.diff # https://github.com/alicevision/popsift/pull/183
|
pr-183-add-zcpreprocessor-for-cuda-13-2.diff # https://github.com/alicevision/popsift/pull/183
|
||||||
|
cuda-13.3-thrust-includes.patch # https://github.com/alicevision/popsift/pull/188
|
||||||
)
|
)
|
||||||
|
|
||||||
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
|
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "popsift",
|
"name": "popsift",
|
||||||
"version": "0.10.0",
|
"version": "0.10.0",
|
||||||
"port-version": 1,
|
"port-version": 2,
|
||||||
"description": "PopSift is an implementation of the SIFT algorithm in CUDA.",
|
"description": "PopSift is an implementation of the SIFT algorithm in CUDA.",
|
||||||
"homepage": "https://github.com/alicevision/popsift",
|
"homepage": "https://github.com/alicevision/popsift",
|
||||||
"documentation": "https://popsift.readthedocs.io/",
|
"documentation": "https://popsift.readthedocs.io/",
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
# syntax=docker/dockerfile:1.4
|
# syntax=docker/dockerfile:1.4
|
||||||
# DisableDockerDetector "Used to build the container deployed to Azure Container Registry"
|
# DisableDockerDetector "Used to build the container deployed to Azure Container Registry"
|
||||||
FROM ubuntu:noble-20260113
|
FROM ubuntu:noble-20260610
|
||||||
|
|
||||||
ADD https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb /packages-microsoft-prod.deb
|
ADD https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb /packages-microsoft-prod.deb
|
||||||
ADD https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.18+8/OpenJDK17U-jdk_x64_linux_hotspot_17.0.18_8.tar.gz /OpenJDK17U-jdk_x64_linux_hotspot_17.0.18_8.tar.gz
|
ADD https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.19+10/OpenJDK17U-jdk_x64_linux_hotspot_17.0.19_10.tar.gz /OpenJDK17U-jdk_x64_linux_hotspot_17.0.19_10.tar.gz
|
||||||
ADD https://dl.google.com/android/repository/commandlinetools-linux-14742923_latest.zip /commandlinetools-linux-14742923_latest.zip
|
ADD https://dl.google.com/android/repository/commandlinetools-linux-15859902_latest.zip /commandlinetools-linux-15859902_latest.zip
|
||||||
ADD https://dl.google.com/android/repository/build-tools_r36.1_linux.zip /build-tools_r36.1_linux.zip
|
ADD https://dl.google.com/android/repository/build-tools_r36.1_linux.zip /build-tools_r36.1_linux.zip
|
||||||
ADD https://dl.google.com/android/repository/platform-36_r01.zip /platform-36_r01.zip
|
ADD https://dl.google.com/android/repository/platform-36_r02.zip /platform-36_r02.zip
|
||||||
ADD https://dl.google.com/android/repository/platform-tools_r36.0.2-linux.zip /platform-tools_r36.0.2-linux.zip
|
ADD https://dl.google.com/android/repository/platform-tools_r37.0.0-linux.zip /platform-tools_r37.0.0-linux.zip
|
||||||
ADD https://dl.google.com/android/repository/android-ndk-r29-linux.zip /android-ndk-r29-linux.zip
|
ADD https://dl.google.com/android/repository/android-ndk-r29-linux.zip /android-ndk-r29-linux.zip
|
||||||
|
|
||||||
# Add apt packages
|
# Add apt packages
|
||||||
|
|
@ -70,27 +70,27 @@ apt-get -y dist-upgrade
|
||||||
apt-get -y --no-install-recommends install $APT_PACKAGES
|
apt-get -y --no-install-recommends install $APT_PACKAGES
|
||||||
|
|
||||||
# OpenJDK
|
# OpenJDK
|
||||||
tar xzf OpenJDK17U-jdk_x64_linux_hotspot_17.0.18_8.tar.gz
|
tar xzf OpenJDK17U-jdk_x64_linux_hotspot_17.0.19_10.tar.gz
|
||||||
rm OpenJDK17U-jdk_x64_linux_hotspot_17.0.18_8.tar.gz
|
rm OpenJDK17U-jdk_x64_linux_hotspot_17.0.19_10.tar.gz
|
||||||
|
|
||||||
# Android SDK
|
# Android SDK
|
||||||
unzip -q commandlinetools-linux-14742923_latest.zip -d android-sdk
|
unzip -q commandlinetools-linux-15859902_latest.zip -d android-sdk
|
||||||
rm commandlinetools-linux-14742923_latest.zip
|
rm commandlinetools-linux-15859902_latest.zip
|
||||||
|
|
||||||
unzip -q build-tools_r36.1_linux.zip -d android-sdk/build-tools
|
unzip -q build-tools_r36.1_linux.zip -d android-sdk/build-tools
|
||||||
mv android-sdk/build-tools/android-16 android-sdk/build-tools/36.1.0
|
mv android-sdk/build-tools/android-16 android-sdk/build-tools/36.1.0
|
||||||
rm build-tools_r36.1_linux.zip
|
rm build-tools_r36.1_linux.zip
|
||||||
|
|
||||||
unzip -q platform-36_r01.zip -d android-sdk/platforms
|
unzip -q platform-36_r02.zip -d android-sdk/platforms
|
||||||
rm platform-36_r01.zip
|
rm platform-36_r02.zip
|
||||||
find android-sdk/platforms -type d -exec chmod o+rx '{}' ';'
|
find android-sdk/platforms -type d -exec chmod o+rx '{}' ';'
|
||||||
find android-sdk/platforms -type f -exec chmod o+r '{}' ';'
|
find android-sdk/platforms -type f -exec chmod o+r '{}' ';'
|
||||||
|
|
||||||
unzip -q platform-tools_r36.0.2-linux.zip -d android-sdk
|
unzip -q platform-tools_r37.0.0-linux.zip -d android-sdk
|
||||||
rm platform-tools_r36.0.2-linux.zip
|
rm platform-tools_r37.0.0-linux.zip
|
||||||
|
|
||||||
# JRE for sdk setup
|
# JRE for sdk setup
|
||||||
export JAVA_HOME=/jdk-17.0.18+8
|
export JAVA_HOME=/jdk-17.0.19+10
|
||||||
yes | /android-sdk/cmdline-tools/bin/sdkmanager --sdk_root=/android-sdk --licenses
|
yes | /android-sdk/cmdline-tools/bin/sdkmanager --sdk_root=/android-sdk --licenses
|
||||||
|
|
||||||
# Android NDK
|
# Android NDK
|
||||||
|
|
@ -99,7 +99,7 @@ rm -f android-ndk-r29-linux.zip
|
||||||
|
|
||||||
END_OF_SCRIPT
|
END_OF_SCRIPT
|
||||||
|
|
||||||
ENV JAVA_HOME="/jdk-17.0.18+8"
|
ENV JAVA_HOME="/jdk-17.0.19+10"
|
||||||
|
|
||||||
ENV ANDROID_HOME="/android-sdk"
|
ENV ANDROID_HOME="/android-sdk"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ jobs:
|
||||||
- name: VCPKG_DOWNLOADS
|
- name: VCPKG_DOWNLOADS
|
||||||
value: /mnt/vcpkg-ci/downloads
|
value: /mnt/vcpkg-ci/downloads
|
||||||
- name: ANDROID_DOCKER_IMAGE
|
- name: ANDROID_DOCKER_IMAGE
|
||||||
value: 'vcpkgandroidwus.azurecr.io/vcpkg-android:2026-02-10'
|
value: 'vcpkgandroidwus.azurecr.io/vcpkg-android:2026-07-15'
|
||||||
- name: LINUX_DOCKER_IMAGE
|
- name: LINUX_DOCKER_IMAGE
|
||||||
value: ${{ parameters.linuxDockerImage }}
|
value: ${{ parameters.linuxDockerImage }}
|
||||||
steps:
|
steps:
|
||||||
|
|
@ -113,7 +113,7 @@ jobs:
|
||||||
displayName: 'Ensure Node.js is available'
|
displayName: 'Ensure Node.js is available'
|
||||||
condition: always()
|
condition: always()
|
||||||
inputs:
|
inputs:
|
||||||
version: '22.x'
|
version: '24.x'
|
||||||
- bash: |
|
- bash: |
|
||||||
cd scripts/azure-pipelines/owners-db && npm ci || true
|
cd scripts/azure-pipelines/owners-db && npm ci || true
|
||||||
if [ "$(Build.Reason)" = "PullRequest" ]; then
|
if [ "$(Build.Reason)" = "PullRequest" ]; then
|
||||||
|
|
|
||||||
|
|
@ -9,11 +9,11 @@ parameters:
|
||||||
- name: x64LinuxDockerImage
|
- name: x64LinuxDockerImage
|
||||||
displayName: 'Linux Docker Image to use for the x64 Linux build'
|
displayName: 'Linux Docker Image to use for the x64 Linux build'
|
||||||
type: string
|
type: string
|
||||||
default: 'vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-04-20'
|
default: 'vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-07-15'
|
||||||
- name: arm64LinuxDockerImage
|
- name: arm64LinuxDockerImage
|
||||||
displayName: 'Linux Docker Image to use for the arm64 Linux build'
|
displayName: 'Linux Docker Image to use for the arm64 Linux build'
|
||||||
type: string
|
type: string
|
||||||
default: 'vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-04-20'
|
default: 'vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-07-15'
|
||||||
- name: tripletPattern
|
- name: tripletPattern
|
||||||
displayName: 'Enable triplets which contain this substring (^ matches begin, $ matches end)'
|
displayName: 'Enable triplets which contain this substring (^ matches begin, $ matches end)'
|
||||||
type: string
|
type: string
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
FROM ubuntu:noble-20260410
|
FROM ubuntu:noble-20260610
|
||||||
|
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
ARG POWERSHELL_VERSION=7.6.0
|
ARG POWERSHELL_VERSION=7.6.3
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# syntax=docker/dockerfile:1.4
|
# syntax=docker/dockerfile:1.4
|
||||||
# DisableDockerDetector "Used to build the container deployed to Azure Container Registry"
|
# DisableDockerDetector "Used to build the container deployed to Azure Container Registry"
|
||||||
FROM ubuntu:noble-20260410
|
FROM ubuntu:noble-20260610
|
||||||
ADD provision-image.sh /provision-image.sh
|
ADD provision-image.sh /provision-image.sh
|
||||||
# The BUILD_DATE argument forces cache invalidation so we get updated apt dependencies
|
# The BUILD_DATE argument forces cache invalidation so we get updated apt dependencies
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
|
|
|
||||||
|
|
@ -113,7 +113,7 @@ jobs:
|
||||||
displayName: 'Ensure Node.js is available'
|
displayName: 'Ensure Node.js is available'
|
||||||
condition: always()
|
condition: always()
|
||||||
inputs:
|
inputs:
|
||||||
version: '22.x'
|
version: '24.x'
|
||||||
- bash: |
|
- bash: |
|
||||||
cd scripts/azure-pipelines/owners-db && npm ci || true
|
cd scripts/azure-pipelines/owners-db && npm ci || true
|
||||||
# Construct the blob base url using the secret SAS token set earlier
|
# Construct the blob base url using the secret SAS token set earlier
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ arm64)
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
POWERSHELL_VERSION=7.6.0
|
POWERSHELL_VERSION=7.6.3
|
||||||
|
|
||||||
# Apt dependencies; needed for add-apt-repository and curl downloads to work
|
# Apt dependencies; needed for add-apt-repository and curl downloads to work
|
||||||
apt-get -y update
|
apt-get -y update
|
||||||
|
|
@ -163,33 +163,35 @@ APT_PACKAGES="$APT_PACKAGES libbluetooth-dev"
|
||||||
APT_PACKAGES="$APT_PACKAGES libtirpc-dev"
|
APT_PACKAGES="$APT_PACKAGES libtirpc-dev"
|
||||||
|
|
||||||
## CUDA
|
## CUDA
|
||||||
# The intent is to install everything that does not require an actual GPU, driver, or GUI.
|
# The intent is to install the CUDA toolkit except drivers, GUI tools, and documentation.
|
||||||
# Intentionally omitted: cuda-demo-suite-13-2 cuda-documentation-13-2 cuda-driver-*
|
# On version updates, inspect the Package and Depends fields in both of these repository manifests:
|
||||||
# cuda-gdb-13-2 cuda-gdb-src-13-2 cuda-nsight-* cuda-nvdisasm
|
# https://developer.download.nvidia.com/compute/cuda/repos/ubuntu${NVIDIA_REPO_VERSION}/x86_64/Packages
|
||||||
# cuda-nvprof cuda-nvprune cuda-profiler-api* cuda-sandbox-*
|
# https://developer.download.nvidia.com/compute/cuda/repos/ubuntu${NVIDIA_REPO_VERSION}/sbsa/Packages
|
||||||
# cuda-visual-tools-13-2 nvidia-gds-13-2 cuda-nvvp-13-2
|
# NVIDIA changes package names and dependencies between releases. Confirm that:
|
||||||
# cuda-toolkit-13-2 cuda-tools-13-2 cuda-command-line-tools-13-2
|
# - cuda-compat-* and nvidia-gds-* remain omitted because they install or depend on driver components.
|
||||||
# cuda-runtime-13-2
|
# cuda-driver-dev-* is only the driver stub library and is intentionally included.
|
||||||
# All libraries for which there is a -dev suffix included here
|
# - cuda-nsight-*, cuda-visual-tools-*, and cuda-documentation-* remain omitted as GUI or documentation.
|
||||||
|
# - cuda-<version>, cuda-toolkit-*, and cuda-tools-* remain omitted because they pull in those exclusions.
|
||||||
|
# Runtime libraries are installed through their corresponding -dev packages and are not listed separately.
|
||||||
# cudnn9-jit-cuda-13 : cudnn9-jit appears to conflict with cudnn9-dev packages:
|
# cudnn9-jit-cuda-13 : cudnn9-jit appears to conflict with cudnn9-dev packages:
|
||||||
# root@c47a4cc2ea72:/# apt install cudnn9-jit-cuda-13
|
# root@c47a4cc2ea72:/# apt install cudnn9-jit-cuda-13
|
||||||
# The following additional packages will be installed:
|
# The following additional packages will be installed:
|
||||||
# cudnn9-jit-cuda-13-2 libcudnn9-jit-cuda-13 libcudnn9-jit-dev-cuda-13
|
# cudnn9-jit-cuda-13-3 libcudnn9-jit-cuda-13 libcudnn9-jit-dev-cuda-13
|
||||||
# The following packages will be REMOVED:
|
# The following packages will be REMOVED:
|
||||||
# cudnn9-cuda-13 cudnn9-cuda-13-2 libcudnn9-cuda-13 libcudnn9-dev-cuda-13 libcudnn9-static-cuda-13
|
# cudnn9-cuda-13 cudnn9-cuda-13-3 libcudnn9-cuda-13 libcudnn9-dev-cuda-13 libcudnn9-static-cuda-13
|
||||||
# The following NEW packages will be installed:
|
# The following NEW packages will be installed:
|
||||||
# cudnn9-jit-cuda-13 cudnn9-jit-cuda-13-2 libcudnn9-jit-cuda-13 libcudnn9-jit-dev-cuda-13
|
# cudnn9-jit-cuda-13 cudnn9-jit-cuda-13-3 libcudnn9-jit-cuda-13 libcudnn9-jit-dev-cuda-13
|
||||||
APT_PACKAGES="$APT_PACKAGES cuda-cccl-13-2 cuda-compat-13-2 cuda-compiler-13-2 cuda-crt-13-2 \
|
APT_PACKAGES="$APT_PACKAGES cccl-13-3 cuda-command-line-tools-13-3 cuda-compiler-13-3 cuda-crt-13-3 \
|
||||||
cuda-cudart-dev-13-2 cuda-cuobjdump-13-2 cuda-cupti-dev-13-2 cuda-cuxxfilt-13-2 \
|
cuda-cudart-dev-13-3 cuda-cuobjdump-13-3 cuda-cupti-dev-13-3 cuda-cuxxfilt-13-3 \
|
||||||
cuda-driver-dev-13-2 cuda-libraries-dev-13-2 cuda-minimal-build-13-2 cuda-nvcc-13-2 \
|
cuda-driver-dev-13-3 cuda-libraries-dev-13-3 cuda-minimal-build-13-3 cuda-nvcc-13-3 \
|
||||||
cuda-nvml-dev-13-2 cuda-nvrtc-dev-13-2 cuda-nvtx-13-2 libnvvm-13-2 \
|
cuda-nvml-dev-13-3 cuda-nvrtc-dev-13-3 cuda-nvtx-13-3 libnvvm-13-3 \
|
||||||
cuda-sanitizer-13-2 cuda-toolkit-13-2-config-common cudnn9-cuda-13 gds-tools-13-2 \
|
cuda-sanitizer-13-3 cuda-toolkit-13-3-config-common cudnn9-cuda-13 gds-tools-13-3 \
|
||||||
libcublas-13-2 libcudnn9-dev-cuda-13 libcufft-dev-13-2 libcurand-dev-13-2 libcusolver-dev-13-2 \
|
libcublas-13-3 libcudnn9-dev-cuda-13 libcufft-dev-13-3 libcurand-dev-13-3 libcusolver-dev-13-3 \
|
||||||
libcusparse-dev-13-2 libnccl-dev libnpp-dev-13-2 libnvfatbin-dev-13-2 libnvjitlink-dev-13-2 \
|
libcusparse-dev-13-3 libnccl-dev libnpp-dev-13-3 libnvfatbin-dev-13-3 libnvjitlink-dev-13-3 \
|
||||||
libnvjpeg-dev-13-2"
|
libnvjpeg-dev-13-3"
|
||||||
|
|
||||||
if [[ "$DEBIAN_ARCHITECTURE" == "amd64" ]]; then
|
if [[ "$DEBIAN_ARCHITECTURE" == "amd64" ]]; then
|
||||||
APT_PACKAGES="$APT_PACKAGES cuda-opencl-dev-13-2"
|
APT_PACKAGES="$APT_PACKAGES cuda-opencl-dev-13-3"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
## PowerShell + Azure
|
## PowerShell + Azure
|
||||||
|
|
|
||||||
|
|
@ -30,20 +30,20 @@ jobs:
|
||||||
az acr login --name vcpkgandroidwus
|
az acr login --name vcpkgandroidwus
|
||||||
# Note that this is marking the *previous* image as EOL, not the one we're building as it attaches
|
# Note that this is marking the *previous* image as EOL, not the one we're building as it attaches
|
||||||
# to the SHA to which the tag points, not the tag itself.
|
# to the SHA to which the tag points, not the tag itself.
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-android:2026-02-10 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-android:2026-02-10"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-android:2026-07-15 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-android:2026-07-15"
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-android:2026-02-10 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-android:2026-02-10 linux/amd64"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-android:2026-07-15 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-android:2026-07-15 linux/amd64"
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-04-20 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-linux:2026-01-20"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-07-15 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-linux:2026-07-15"
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-04-20 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-linux:2026-01-20 linux/amd64"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-07-15 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-linux:2026-07-15 linux/amd64"
|
||||||
# Note that this is an image for *targeting* arm64, it's still an amd64 image, hence linux/amd64
|
# Note that this is an image for *targeting* arm64, it's still an amd64 image, hence linux/amd64
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-04-20 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-arm64-linux:2026-03-18"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-07-15 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-arm64-linux:2026-07-15"
|
||||||
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-04-20 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-arm64-linux:2026-03-18 linux/amd64"
|
oras attach --artifact-type application/vnd.microsoft.artifact.lifecycle --annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$EndDate" vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-07-15 --platform linux/amd64 || echo "WARNING: Failed to attach lifecycle metadata to vcpkg-arm64-linux:2026-07-15 linux/amd64"
|
||||||
cd scripts/azure-pipelines/android
|
cd scripts/azure-pipelines/android
|
||||||
# to explain the ulimit thing, see https://github.com/docker/buildx/issues/379
|
# to explain the ulimit thing, see https://github.com/docker/buildx/issues/379
|
||||||
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-android:2026-02-10 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-android:2026-07-15 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
||||||
docker push vcpkgandroidwus.azurecr.io/vcpkg-android:2026-02-10
|
docker push vcpkgandroidwus.azurecr.io/vcpkg-android:2026-07-15
|
||||||
cd ../linux
|
cd ../linux
|
||||||
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-04-20 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-07-15 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
||||||
docker push vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-04-20
|
docker push vcpkgandroidwus.azurecr.io/vcpkg-linux:2026-07-15
|
||||||
cd ../linux-arm64
|
cd ../linux-arm64
|
||||||
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-04-20 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
docker buildx build . -t vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-07-15 --build-arg BUILD_DATE=$BuildDate --ulimit nofile=1024:1024
|
||||||
docker push vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-04-20
|
docker push vcpkgandroidwus.azurecr.io/vcpkg-arm64-linux:2026-07-15
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ jobs:
|
||||||
condition: and(succeeded(), contains('^${{ replace(parameters.jobName, '_', '-') }}$', '${{ parameters.tripletPattern }}'))
|
condition: and(succeeded(), contains('^${{ replace(parameters.jobName, '_', '-') }}$', '${{ parameters.tripletPattern }}'))
|
||||||
pool:
|
pool:
|
||||||
name: PrWin-WUS
|
name: PrWin-WUS
|
||||||
demands: ImageVersionOverride -equals 2026.06.10
|
demands: ImageVersionOverride -equals 2026.07.16
|
||||||
timeoutInMinutes: 2880 # 2 days
|
timeoutInMinutes: 2880 # 2 days
|
||||||
variables:
|
variables:
|
||||||
- name: WORKING_ROOT
|
- name: WORKING_ROOT
|
||||||
|
|
@ -93,7 +93,7 @@ jobs:
|
||||||
displayName: 'Ensure Node.js is available'
|
displayName: 'Ensure Node.js is available'
|
||||||
condition: always()
|
condition: always()
|
||||||
inputs:
|
inputs:
|
||||||
version: '22.x'
|
version: '24.x'
|
||||||
- task: PowerShell@2
|
- task: PowerShell@2
|
||||||
displayName: 'Build a file list for all packages'
|
displayName: 'Build a file list for all packages'
|
||||||
condition: always()
|
condition: always()
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,9 @@ create-image.ps1 creates an Azure Windows VM image, set up for vcpkg's CI system
|
||||||
This script assumes you have installed Azure tools into PowerShell by following the instructions
|
This script assumes you have installed Azure tools into PowerShell by following the instructions
|
||||||
at https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-3.6.1
|
at https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-3.6.1
|
||||||
or are running from Azure Cloud Shell.
|
or are running from Azure Cloud Shell.
|
||||||
|
|
||||||
|
The prototype-vm user-assigned managed identity in the vcpkg-image-minting resource group must have
|
||||||
|
Storage Blob Data Reader access to the vcpkgimageminting storage account.
|
||||||
#>
|
#>
|
||||||
|
|
||||||
$Location = 'westus3'
|
$Location = 'westus3'
|
||||||
|
|
@ -24,7 +27,7 @@ $WindowsServerSku = '2025-datacenter-azure-edition'
|
||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
|
|
||||||
$ProgressActivity = 'Creating Windows Image'
|
$ProgressActivity = 'Creating Windows Image'
|
||||||
$TotalProgress = 22
|
$TotalProgress = 17
|
||||||
$CurrentProgress = 1
|
$CurrentProgress = 1
|
||||||
|
|
||||||
# Assigning this to another variable helps when running the commands in this script manually for
|
# Assigning this to another variable helps when running the commands in this script manually for
|
||||||
|
|
@ -97,6 +100,9 @@ $Credential = New-Object System.Management.Automation.PSCredential ("AdminUser",
|
||||||
|
|
||||||
$VirtualNetwork = Get-AzVirtualNetwork -ResourceGroupName 'vcpkg-image-minting' -Name 'vcpkg-image-minting-wus3'
|
$VirtualNetwork = Get-AzVirtualNetwork -ResourceGroupName 'vcpkg-image-minting' -Name 'vcpkg-image-minting-wus3'
|
||||||
$Subnet = $VirtualNetwork.Subnets | Where-Object -Property 'Name' -EQ -Value 'image-minting' | Select-Object -First 1
|
$Subnet = $VirtualNetwork.Subnets | Where-Object -Property 'Name' -EQ -Value 'image-minting' | Select-Object -First 1
|
||||||
|
$PrototypeVmIdentity = Get-AzUserAssignedIdentity `
|
||||||
|
-ResourceGroupName 'vcpkg-image-minting' `
|
||||||
|
-Name 'prototype-vm'
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
Write-Progress `
|
Write-Progress `
|
||||||
|
|
@ -112,7 +118,12 @@ $Nic = New-AzNetworkInterface `
|
||||||
-Subnet $Subnet `
|
-Subnet $Subnet `
|
||||||
-EnableAcceleratedNetworking
|
-EnableAcceleratedNetworking
|
||||||
|
|
||||||
$VM = New-AzVMConfig -Name $ProtoVMName -VMSize $VMSize -SecurityType TrustedLaunch -IdentityType SystemAssigned
|
$VM = New-AzVMConfig `
|
||||||
|
-Name $ProtoVMName `
|
||||||
|
-VMSize $VMSize `
|
||||||
|
-SecurityType TrustedLaunch `
|
||||||
|
-IdentityType UserAssigned `
|
||||||
|
-IdentityId $PrototypeVmIdentity.Id
|
||||||
$VM = Set-AzVMOperatingSystem `
|
$VM = Set-AzVMOperatingSystem `
|
||||||
-VM $VM `
|
-VM $VM `
|
||||||
-Windows `
|
-Windows `
|
||||||
|
|
@ -138,25 +149,9 @@ New-AzVm `
|
||||||
$VMCreated = Get-AzVM -ResourceGroupName 'vcpkg-image-minting' -Name $ProtoVMName
|
$VMCreated = Get-AzVM -ResourceGroupName 'vcpkg-image-minting' -Name $ProtoVMName
|
||||||
$VMCreatedOsDisk = $VMCreated.StorageProfile.OsDisk.Name
|
$VMCreatedOsDisk = $VMCreated.StorageProfile.OsDisk.Name
|
||||||
|
|
||||||
####################################################################################################
|
|
||||||
Write-Progress `
|
|
||||||
-Activity $ProgressActivity `
|
|
||||||
-Status 'Minting token for vcpkg-image-minting storage account' `
|
|
||||||
-PercentComplete (100 / $TotalProgress * $CurrentProgress++)
|
|
||||||
|
|
||||||
$VcpkgImageMintingAccount = Get-AzStorageAccount -ResourceGroupName 'vcpkg-image-minting' -Name 'vcpkgimageminting'
|
|
||||||
|
|
||||||
$AssetStorageContext = New-AzStorageContext -StorageAccountName 'vcpkgimageminting' -UseConnectedAccount
|
|
||||||
$StartTime = Get-Date
|
|
||||||
$ExpiryTime = $StartTime.AddHours(4)
|
|
||||||
$AssetsSas = New-AzStorageContainerSASToken -Name 'assets' -Permission r -StartTime $StartTime -ExpiryTime $ExpiryTime -Context $AssetStorageContext
|
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
function Invoke-ScriptWithPrefix {
|
function Invoke-ScriptWithPrefix {
|
||||||
param(
|
param([string]$ScriptName)
|
||||||
[string]$ScriptName,
|
|
||||||
[switch]$SkipSas
|
|
||||||
)
|
|
||||||
|
|
||||||
Write-Progress `
|
Write-Progress `
|
||||||
-Activity $ProgressActivity `
|
-Activity $ProgressActivity `
|
||||||
|
|
@ -164,6 +159,7 @@ function Invoke-ScriptWithPrefix {
|
||||||
-PercentComplete (100 / $TotalProgress * $CurrentProgress++)
|
-PercentComplete (100 / $TotalProgress * $CurrentProgress++)
|
||||||
|
|
||||||
$UtilityPrefixContent = Get-Content -LiteralPath "$Root\utility-prefix.ps1" -Encoding ascii -Raw
|
$UtilityPrefixContent = Get-Content -LiteralPath "$Root\utility-prefix.ps1" -Encoding ascii -Raw
|
||||||
|
$UtilityPrefixContent += "`n`$UseManagedIdentity = `$true`n"
|
||||||
|
|
||||||
$tempScriptFilename = "$env:TEMP\temp-script.txt"
|
$tempScriptFilename = "$env:TEMP\temp-script.txt"
|
||||||
try {
|
try {
|
||||||
|
|
@ -173,20 +169,14 @@ if (Test-Path -LiteralPath "`$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "`$PSScriptRoot/utility-prefix.ps1"
|
. "`$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
"@
|
"@
|
||||||
$script = $script.Replace($replacement, $UtilityPrefixContent);
|
$script = $script.Replace($replacement, $UtilityPrefixContent)
|
||||||
Set-Content -LiteralPath $tempScriptFilename -Value $script -Encoding ascii
|
Set-Content -LiteralPath $tempScriptFilename -Value $script -Encoding ascii
|
||||||
|
|
||||||
$parameter = $null
|
|
||||||
if (-not $SkipSas) {
|
|
||||||
$parameter = @{SasToken = "`"$AssetsSas`"";}
|
|
||||||
}
|
|
||||||
|
|
||||||
$InvokeResult = Invoke-AzVMRunCommand `
|
$InvokeResult = Invoke-AzVMRunCommand `
|
||||||
-ResourceGroupName 'vcpkg-image-minting' `
|
-ResourceGroupName 'vcpkg-image-minting' `
|
||||||
-VMName $ProtoVMName `
|
-VMName $ProtoVMName `
|
||||||
-CommandId 'RunPowerShellScript' `
|
-CommandId 'RunPowerShellScript' `
|
||||||
-ScriptPath $tempScriptFilename `
|
-ScriptPath $tempScriptFilename
|
||||||
-Parameter $parameter
|
|
||||||
|
|
||||||
Write-Host "$ScriptName output: $($InvokeResult.value.Message)"
|
Write-Host "$ScriptName output: $($InvokeResult.value.Message)"
|
||||||
} finally {
|
} finally {
|
||||||
|
|
@ -194,11 +184,6 @@ if (Test-Path -LiteralPath "`$PSScriptRoot/utility-prefix.ps1") {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
####################################################################################################
|
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-tlssettings.ps1' -SkipSas
|
|
||||||
Write-Host 'Waiting 1 minute for VM to reboot...'
|
|
||||||
Start-Sleep -Seconds 60
|
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-sevenzip.ps1'
|
Invoke-ScriptWithPrefix -ScriptName 'deploy-sevenzip.ps1'
|
||||||
|
|
||||||
|
|
@ -223,9 +208,6 @@ Invoke-ScriptWithPrefix -ScriptName 'deploy-cuda.ps1'
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-cudnn.ps1'
|
Invoke-ScriptWithPrefix -ScriptName 'deploy-cudnn.ps1'
|
||||||
|
|
||||||
####################################################################################################
|
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-inteloneapi.ps1'
|
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-pwsh.ps1'
|
Invoke-ScriptWithPrefix -ScriptName 'deploy-pwsh.ps1'
|
||||||
|
|
||||||
|
|
@ -236,7 +218,7 @@ Invoke-ScriptWithPrefix -ScriptName 'deploy-azure-cli.ps1'
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-azcopy.ps1'
|
Invoke-ScriptWithPrefix -ScriptName 'deploy-azcopy.ps1'
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
Invoke-ScriptWithPrefix -ScriptName 'deploy-settings.txt' -SkipSas
|
Invoke-ScriptWithPrefix -ScriptName 'deploy-settings.txt'
|
||||||
Restart-AzVM -ResourceGroupName 'vcpkg-image-minting' -Name $ProtoVMName
|
Restart-AzVM -ResourceGroupName 'vcpkg-image-minting' -Name $ProtoVMName
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,13 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$AzCopyUrl = Get-AssetUrl `
|
$AzCopyUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_windows_amd64_10.32.6.zip' `
|
||||||
-InternetUrl 'https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_windows_amd64_10.32.4.zip' `
|
-BlobAssetName 'azcopy_windows_amd64_10.32.6.zip'
|
||||||
-BlobAssetName 'azcopy_windows_amd64_10.32.4.zip'
|
|
||||||
|
|
||||||
mkdir -Force "C:\AzCopy10"
|
mkdir -Force "C:\AzCopy10"
|
||||||
DownloadAndUnzip -Url $AzCopyUrl -Destination "C:\AzCopy10" -StripRootDirectory
|
DownloadAndUnzip -Url $AzCopyUrl -Destination "C:\AzCopy10" -StripRootDirectory
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,12 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$AzCliUrl = Get-AssetUrl `
|
$AzCliUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://azcliprod.blob.core.windows.net/msi/azure-cli-2.88.0-x64.msi' `
|
||||||
-InternetUrl 'https://azcliprod.blob.core.windows.net/msi/azure-cli-2.87.0-x64.msi' `
|
-BlobAssetName 'azure-cli-2.88.0-x64.msi'
|
||||||
-BlobAssetName 'azure-cli-2.87.0-x64.msi'
|
|
||||||
|
|
||||||
DownloadAndInstall -Url $AzCliUrl -Args @('/quiet', '/norestart')
|
DownloadAndInstall -Url $AzCliUrl -Args @('/quiet', '/norestart')
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,13 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$CMakeUrl = Get-AssetUrl `
|
$CMakeUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-windows-x86_64.msi' `
|
||||||
-InternetUrl 'https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-windows-x86_64.msi' `
|
-BlobAssetName 'cmake-4.4.0-windows-x86_64.msi'
|
||||||
-BlobAssetName 'cmake-4.3.3-windows-x86_64.msi'
|
|
||||||
|
|
||||||
DownloadAndInstall -Url $CMakeUrl -Args @('/quiet', '/norestart', 'ADD_CMAKE_TO_PATH=System')
|
DownloadAndInstall -Url $CMakeUrl -Args @('/quiet', '/norestart', 'ADD_CMAKE_TO_PATH=System')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,62 +1,68 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$CudaUrl = Get-AssetUrl `
|
$CudaUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://developer.download.nvidia.com/compute/cuda/13.3.1/local_installers/cuda_13.3.1_windows.exe' `
|
||||||
-InternetUrl 'https://developer.download.nvidia.com/compute/cuda/13.2.0/local_installers/cuda_13.2.0_windows.exe' `
|
-BlobAssetName 'cuda_13.3.1_windows.exe'
|
||||||
-BlobAssetName 'cuda_13.2.0_windows.exe'
|
|
||||||
|
|
||||||
# https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html
|
# https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html
|
||||||
# Intentionally omitted:
|
# On version updates, extract the package manifests from the installer with:
|
||||||
# ctadvisor_13.2
|
# 7z x cuda_<version>_windows.exe -o<output> -ir!*.nvi
|
||||||
# documentation_13.2
|
# Each manifest whose customInstallTree/treeNode has accessibility="selectable" names a valid package
|
||||||
# nsight_compute_13.2
|
# in its root <nvi name="..."> element. Compare those names with both lists below; NVIDIA changes the
|
||||||
# nsight_systems_13.2
|
# package names and composition between releases. Confirm every omission is still related to drivers,
|
||||||
# nsight_vse_13.2
|
# documentation, or Visual Studio.
|
||||||
# occupancy_calculator_13.2 (this is named like a tool but listed as 'documentation' in the installer)
|
#
|
||||||
# visual_studio_integration_13.2
|
# Intentionally omitted due to being Visual Studio / GUI features:
|
||||||
|
# ctadvisor_13.3
|
||||||
|
# nsight_compute_13.3
|
||||||
|
# nsight_systems_13.3
|
||||||
|
# nsight_vse_13.3
|
||||||
|
# visual_studio_integration_13.3
|
||||||
|
# Intentionally omitted due to being documentation:
|
||||||
|
# documentation_13.3
|
||||||
|
# occupancy_calculator_13.3 (this is named like a tool but listed as 'documentation' in the installer)
|
||||||
|
# (Drivers used to be omitted but as of CUDA 13 they no longer seem to be in the CUDA installer)
|
||||||
DownloadAndInstall -Url $CudaUrl -Args @(
|
DownloadAndInstall -Url $CudaUrl -Args @(
|
||||||
'-s',
|
'-s',
|
||||||
'crt_13.2',
|
'crt_13.3',
|
||||||
'cublas_13.2',
|
'cublas_13.3',
|
||||||
'cublas_dev_13.2',
|
'cublas_dev_13.3',
|
||||||
'cuda_profiler_api_13.2',
|
'cuda_profiler_api_13.3',
|
||||||
'cudart_13.2',
|
'cudart_13.3',
|
||||||
'cufft_13.2',
|
'cufft_13.3',
|
||||||
'cufft_dev_13.2',
|
'cufft_dev_13.3',
|
||||||
'cuobjdump_13.2',
|
'cuobjdump_13.3',
|
||||||
'cupti_13.2',
|
'cupti_13.3',
|
||||||
'curand_13.2',
|
'curand_13.3',
|
||||||
'curand_dev_13.2',
|
'curand_dev_13.3',
|
||||||
'cusolver_13.2',
|
'cusolver_13.3',
|
||||||
'cusolver_dev_13.2',
|
'cusolver_dev_13.3',
|
||||||
'cusparse_13.2',
|
'cusparse_13.3',
|
||||||
'cusparse_dev_13.2',
|
'cusparse_dev_13.3',
|
||||||
'cuxxfilt_13.2',
|
'cuxxfilt_13.3',
|
||||||
'npp_13.2',
|
'npp_13.3',
|
||||||
'npp_dev_13.2',
|
'npp_dev_13.3',
|
||||||
'nvcc_13.2',
|
'nvcc_13.3',
|
||||||
'nvdisasm_13.2',
|
'nvdisasm_13.3',
|
||||||
'nvfatbin_13.2',
|
'nvfatbin_13.3',
|
||||||
'nvjitlink_13.2',
|
'nvjitlink_13.3',
|
||||||
'nvjpeg_13.2',
|
'nvjpeg_13.3',
|
||||||
'nvjpeg_dev_13.2',
|
'nvjpeg_dev_13.3',
|
||||||
'nvml_dev_13.2',
|
'nvml_dev_13.3',
|
||||||
'nvprune_13.2',
|
'nvprune_13.3',
|
||||||
'nvptxcompiler_13.2',
|
'nvptxcompiler_13.3',
|
||||||
'nvrtc_13.2',
|
'nvrtc_13.3',
|
||||||
'nvrtc_dev_13.2',
|
'nvrtc_dev_13.3',
|
||||||
'nvtx_13.2',
|
'nvtx_13.3',
|
||||||
'nvvm_13.2',
|
'nvvm_13.3',
|
||||||
'opencl_13.2',
|
'opencl_13.3',
|
||||||
'sanitizer_13.2',
|
'sanitizer_13.3',
|
||||||
'thrust_13.2',
|
'thrust_13.3',
|
||||||
'tileiras_13.2',
|
'tileiras_13.3',
|
||||||
'-n'
|
'-n'
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,15 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$CudnnUrl = Get-AssetUrl `
|
$CudnnUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/windows-x86_64/cudnn-windows-x86_64-9.24.0.43_cuda13-archive.zip' `
|
||||||
-InternetUrl 'https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/windows-x86_64/cudnn-windows-x86_64-9.20.0.48_cuda13-archive.zip' `
|
-BlobAssetName 'cudnn-windows-x86_64-9.24.0.43_cuda13-archive.zip'
|
||||||
-BlobAssetName 'cudnn-windows-x86_64-9.20.0.48_cuda13-archive.zip'
|
|
||||||
|
|
||||||
[System.IO.DirectoryInfo]$CudnnInstallDir = "$env:ProgramFiles\NVIDIA GPU Computing Toolkit\CUDA\v13.2"
|
[System.IO.DirectoryInfo]$CudnnInstallDir = "$env:ProgramFiles\NVIDIA GPU Computing Toolkit\CUDA\v13.3"
|
||||||
|
|
||||||
DownloadAndUnzip -Url $CudnnUrl -Destination $CudnnInstallDir -StripRootDirectory
|
DownloadAndUnzip -Url $CudnnUrl -Destination $CudnnInstallDir -StripRootDirectory
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,13 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$GitUrl = Get-AssetUrl `
|
$GitUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.3/Git-2.55.0.3-64-bit.exe' `
|
||||||
-InternetUrl 'https://github.com/git-for-windows/git/releases/download/v2.54.0.windows.1/Git-2.54.0-64-bit.exe' `
|
-BlobAssetName 'Git-2.55.0.3-64-bit.exe'
|
||||||
-BlobAssetName 'Git-2.54.0-64-bit.exe'
|
|
||||||
|
|
||||||
$GitInfContent = @"
|
$GitInfContent = @"
|
||||||
[Setup]
|
[Setup]
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
|
||||||
# SPDX-License-Identifier: MIT
|
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
|
||||||
}
|
|
||||||
|
|
||||||
$LocalName = 'intel-oneapi-hpc-toolkit-2025.3.1.54_offline.exe'
|
|
||||||
$oneAPIBaseUrl = Get-AssetUrl `
|
|
||||||
-SasToken $SasToken `
|
|
||||||
-InternetUrl "https://registrationcenter-download.intel.com/akdlm/IRC_NAS/36f868e9-84b3-4b4f-90ef-ca84092cae6a/$LocalName" `
|
|
||||||
-BlobAssetName $LocalName
|
|
||||||
|
|
||||||
$oneAPIHPCComponents = 'intel.oneapi.win.ifort-compiler'
|
|
||||||
|
|
||||||
try {
|
|
||||||
$installer = Get-LocalOrDownloadedFile -Url $oneAPIBaseUrl -LocalName $LocalName
|
|
||||||
[string]$LocalPath = $installer.Path
|
|
||||||
|
|
||||||
[string]$extractionPath = Get-TempFilePath
|
|
||||||
Write-Host 'Extracting Intel oneAPI...to folder: ' $extractionPath
|
|
||||||
$proc = Start-Process -FilePath $LocalPath -ArgumentList @('-s ', '-x', '-f', $extractionPath) -Wait -PassThru
|
|
||||||
$exitCode = $proc.ExitCode
|
|
||||||
if ($exitCode -eq 0) {
|
|
||||||
Write-Host 'Extraction successful!'
|
|
||||||
} else {
|
|
||||||
Write-Error "Extraction failed! Exited with $exitCode."
|
|
||||||
throw
|
|
||||||
}
|
|
||||||
|
|
||||||
Write-Host 'Install Intel oneAPI...from folder: ' $extractionPath
|
|
||||||
$proc = Start-Process -FilePath "$extractionPath/bootstrapper.exe" -ArgumentList @('-s ', '--action install', "--components=$oneAPIHPCComponents" , '--eula=accept', '-p=NEED_VS2017_INTEGRATION=0', '-p=NEED_VS2019_INTEGRATION=0', '-p=NEED_VS2022_INTEGRATION=0', '--log-dir=.') -Wait -PassThru
|
|
||||||
$exitCode = $proc.ExitCode
|
|
||||||
if ($exitCode -eq 0) {
|
|
||||||
Write-Host 'Installation successful!'
|
|
||||||
} elseif ($exitCode -eq 3010) {
|
|
||||||
Write-Host 'Installation successful! Exited with 3010 (ERROR_SUCCESS_REBOOT_REQUIRED).'
|
|
||||||
} else {
|
|
||||||
Write-Error "Installation failed! Exited with $exitCode."
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($installer.Temporary) {
|
|
||||||
Remove-Item -LiteralPath $LocalPath -Force
|
|
||||||
}
|
|
||||||
} catch {
|
|
||||||
Write-Error "Installation failed! Exception: $($_.Exception.Message)"
|
|
||||||
}
|
|
||||||
|
|
@ -1,15 +1,12 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$LocalName = 'msmpisetup-10.1.12498.52.exe'
|
$LocalName = 'msmpisetup-10.1.12498.52.exe'
|
||||||
$MpiUrl = Get-AssetUrl `
|
$MpiUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
|
||||||
-InternetUrl 'https://download.microsoft.com/download/7/2/7/72731ebb-b63c-4170-ade7-836966263a8f/msmpisetup.exe' `
|
-InternetUrl 'https://download.microsoft.com/download/7/2/7/72731ebb-b63c-4170-ade7-836966263a8f/msmpisetup.exe' `
|
||||||
-BlobAssetName $LocalName
|
-BlobAssetName $LocalName
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,12 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$LocalName = 'ninja-win-1.13.2.zip'
|
$LocalName = 'ninja-win-1.13.2.zip'
|
||||||
$NinjaUrl = Get-AssetUrl `
|
$NinjaUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
|
||||||
-InternetUrl 'https://github.com/ninja-build/ninja/releases/download/v1.13.2/ninja-win.zip' `
|
-InternetUrl 'https://github.com/ninja-build/ninja/releases/download/v1.13.2/ninja-win.zip' `
|
||||||
-BlobAssetName $LocalName
|
-BlobAssetName $LocalName
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,12 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$PwshUrl = Get-AssetUrl `
|
$PwshUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/PowerShell-7.6.3-win-x64.msi' `
|
||||||
-InternetUrl 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/PowerShell-7.6.2-win-x64.msi' `
|
-BlobAssetName 'PowerShell-7.6.3-win-x64.msi'
|
||||||
-BlobAssetName 'PowerShell-7.6.2-win-x64.msi'
|
|
||||||
|
|
||||||
DownloadAndInstall -Url $PwshUrl -Args @('/quiet', '/norestart')
|
DownloadAndInstall -Url $PwshUrl -Args @('/quiet', '/norestart')
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,12 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
$SevenZipUrl = Get-AssetUrl `
|
$SevenZipUrl = Get-AssetUrl `
|
||||||
-SasToken $SasToken `
|
-InternetUrl 'https://github.com/ip7z/7zip/releases/download/26.02/7z2602-x64.exe' `
|
||||||
-InternetUrl 'https://github.com/ip7z/7zip/releases/download/26.01/7z2601-x64.exe' `
|
-BlobAssetName '7z2602-x64.exe'
|
||||||
-BlobAssetName '7z2601-x64.exe'
|
|
||||||
|
|
||||||
DownloadAndInstall -Url $SevenZipUrl -Args @('/S')
|
DownloadAndInstall -Url $SevenZipUrl -Args @('/S')
|
||||||
|
|
|
||||||
|
|
@ -1,738 +0,0 @@
|
||||||
#***************************************************************************************************************
|
|
||||||
# This script supports the TLS 1.2 everywhere project
|
|
||||||
# It does the following:
|
|
||||||
# * By default it disables TLS 1.O, TLS 1.1, SSLv2, SSLv3 and Enables TLS1.2
|
|
||||||
# * The CipherSuite order is set to the SDL approved version.
|
|
||||||
# * The FIPS MinEncryptionLevel is set to 3.
|
|
||||||
# * RC4 is disabled
|
|
||||||
# * A log with a transcript of all actions taken is generated
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
#************************************************ SCRIPT USAGE ************************************************
|
|
||||||
# .\TLSSettings.ps1
|
|
||||||
# -SetCipherOrder : Excellence/Min-Bar, default(Excellence), use B to set Min-Bar. (Min-Bar ordering prefers ciphers with smaller key sizes to improve performance over security)
|
|
||||||
# -RebootIfRequired : $true/$false, default($true), use $false to disable auto-reboot (Settings won't take effect until a reboot is completed)
|
|
||||||
# -EnableOlderTlsVersions : $true/$false, default($false), use $true to explicitly Enable TLS1.0, TLS1.1
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
#***************************TEAM CAN DETERMINE WHAT CIPHER SUITE ORDER IS CHOSEN ******************************
|
|
||||||
# Option B provides the min-bar configuration (small trade-off: performance over security)
|
|
||||||
# Syntax: .\TLSSettings.ps1 -SetCipherOrder B
|
|
||||||
# if no option is supplied, you will get the opportunity for excellence cipher order (small trade-off: security over performance)
|
|
||||||
# Syntax: .\TLSSettings.ps1
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
param (
|
|
||||||
[string]$SetCipherOrder = " ",
|
|
||||||
[bool]$RebootIfRequired = $true,
|
|
||||||
[bool]$EnableOlderTlsVersions = $false
|
|
||||||
)
|
|
||||||
|
|
||||||
#******************* FUNCTION THAT ACTUALLY UPDATES KEYS; WILL RETURN REBOOT FLAG IF CHANGES ***********************
|
|
||||||
Function Set-CryptoSetting {
|
|
||||||
param (
|
|
||||||
$regKeyName,
|
|
||||||
$value,
|
|
||||||
$valuedata,
|
|
||||||
$valuetype
|
|
||||||
)
|
|
||||||
|
|
||||||
$restart = $false
|
|
||||||
|
|
||||||
# Check for existence of registry key, and create if it does not exist
|
|
||||||
If (!(Test-Path -Path $regKeyName)) {
|
|
||||||
New-Item $regKeyName | Out-Null
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Get data of registry value, or null if it does not exist
|
|
||||||
$val = (Get-ItemProperty -Path $regKeyName -Name $value -ErrorAction SilentlyContinue).$value
|
|
||||||
|
|
||||||
|
|
||||||
If ($val -eq $null) {
|
|
||||||
# Value does not exist - create and set to desired value
|
|
||||||
New-ItemProperty -Path $regKeyName -Name $value -Value $valuedata -PropertyType $valuetype | Out-Null
|
|
||||||
$restart = $true
|
|
||||||
}
|
|
||||||
Else {
|
|
||||||
# Value does exist - if not equal to desired value, change it
|
|
||||||
If ($val -ne $valuedata) {
|
|
||||||
Set-ItemProperty -Path $regKeyName -Name $value -Value $valuedata
|
|
||||||
$restart = $true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
$restart
|
|
||||||
}
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
|
|
||||||
#******************* FUNCTION THAT DISABLES RC4 ***********************
|
|
||||||
Function DisableRC4 {
|
|
||||||
|
|
||||||
$restart = $false
|
|
||||||
$subkeys = Get-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL"
|
|
||||||
$ciphers = $subkeys.OpenSubKey("Ciphers", $true)
|
|
||||||
|
|
||||||
Write-Log -Message "----- Checking the status of RC4 -----" -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
$RC4 = $false
|
|
||||||
if ($ciphers.SubKeyCount -eq 0) {
|
|
||||||
$k1 = $ciphers.CreateSubKey("RC4 128/128")
|
|
||||||
$k1.SetValue("Enabled", 0, [Microsoft.Win32.RegistryValueKind]::DWord)
|
|
||||||
$restart = $true
|
|
||||||
$k2 = $ciphers.CreateSubKey("RC4 64/128")
|
|
||||||
$k2.SetValue("Enabled", 0, [Microsoft.Win32.RegistryValueKind]::DWord)
|
|
||||||
$k3 = $ciphers.CreateSubKey("RC4 56/128")
|
|
||||||
$k3.SetValue("Enabled", 0, [Microsoft.Win32.RegistryValueKind]::DWord)
|
|
||||||
$k4 = $ciphers.CreateSubKey("RC4 40/128")
|
|
||||||
$k4.SetValue("Enabled", 0, [Microsoft.Win32.RegistryValueKind]::DWord)
|
|
||||||
|
|
||||||
Write-Log -Message "RC4 was disabled " -Logfile $logLocation -Severity Information
|
|
||||||
$RC4 = $true
|
|
||||||
}
|
|
||||||
|
|
||||||
If ($RC4 -ne $true) {
|
|
||||||
Write-Log -Message "There was no change for RC4 " -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
|
|
||||||
$restart
|
|
||||||
}
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
#******************* FUNCTION CHECKS FOR PROBLEMATIC FIPS SETTING AND FIXES IT ***********************
|
|
||||||
Function Test-RegistryValueForFipsSettings {
|
|
||||||
|
|
||||||
$restart = $false
|
|
||||||
|
|
||||||
$fipsPath = @(
|
|
||||||
"HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp",
|
|
||||||
"HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services",
|
|
||||||
"HKLM:\System\CurrentControlSet\Control\Terminal Server\DefaultUserConfiguration"
|
|
||||||
)
|
|
||||||
|
|
||||||
$fipsValue = "MinEncryptionLevel"
|
|
||||||
|
|
||||||
|
|
||||||
foreach ($path in $fipsPath) {
|
|
||||||
|
|
||||||
Write-Log -Message "Checking to see if $($path)\$fipsValue exists" -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
$ErrorActionPreference = "stop"
|
|
||||||
Try {
|
|
||||||
|
|
||||||
$result = Get-ItemProperty -Path $path | Select-Object -ExpandProperty $fipsValue
|
|
||||||
if ($result -eq 4) {
|
|
||||||
set-itemproperty -Path $path -Name $fipsValue -value 3
|
|
||||||
Write-Log -Message "Regkey $($path)\$fipsValue was changed from value $result to a value of 3" -Logfile $logLocation -Severity Information
|
|
||||||
$restart = $true
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
Write-Log -Message "Regkey $($path)\$fipsValue left at value $result" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Catch [System.Management.Automation.ItemNotFoundException] {
|
|
||||||
|
|
||||||
Write-Log -Message "Reg path $path was not found" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
Catch [System.Management.Automation.PSArgumentException] {
|
|
||||||
|
|
||||||
Write-Log -Message "Regkey $($path)\$fipsValue was not found" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
Catch {
|
|
||||||
Write-Log -Message "Error of type $($Error[0].Exception.GetType().FullName) trying to get $($path)\$fipsValue" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
Finally {$ErrorActionPreference = "Continue"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$restart
|
|
||||||
}
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
#********************************** FUNCTION THAT CREATE LOG DIRECTORY IF IT DOES NOT EXIST *******************************
|
|
||||||
function CreateLogDirectory {
|
|
||||||
|
|
||||||
$TARGETDIR = "$env:HOMEDRIVE\Logs"
|
|
||||||
if ( -Not (Test-Path -Path $TARGETDIR ) ) {
|
|
||||||
New-Item -ItemType directory -Path $TARGETDIR | Out-Null
|
|
||||||
}
|
|
||||||
|
|
||||||
$TARGETDIR = $TARGETDIR + "\" + "TLSSettingsLogFile.csv"
|
|
||||||
|
|
||||||
return $TARGETDIR
|
|
||||||
}
|
|
||||||
#***************************************************************************************************************
|
|
||||||
|
|
||||||
|
|
||||||
#********************************** FUNCTION THAT LOGS WHAT THE SCRIPT IS DOING *******************************
|
|
||||||
function Write-Log {
|
|
||||||
[CmdletBinding()]
|
|
||||||
param(
|
|
||||||
[Parameter()]
|
|
||||||
[ValidateNotNullOrEmpty()]
|
|
||||||
[string]$Message,
|
|
||||||
|
|
||||||
[Parameter()]
|
|
||||||
[ValidateNotNullOrEmpty()]
|
|
||||||
[string]$LogFile,
|
|
||||||
|
|
||||||
[Parameter()]
|
|
||||||
[ValidateNotNullOrEmpty()]
|
|
||||||
[ValidateSet('Information', 'Warning', 'Error')]
|
|
||||||
[string]$Severity = 'Information'
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
[pscustomobject]@{
|
|
||||||
Time = (Get-Date -f g)
|
|
||||||
Message = $Message
|
|
||||||
Severity = $Severity
|
|
||||||
} | ConvertTo-Csv -NoTypeInformation | Select-Object -Skip 1 | Out-File -Append -FilePath $LogFile
|
|
||||||
}
|
|
||||||
|
|
||||||
#********************************TLS CipherSuite Settings *******************************************
|
|
||||||
|
|
||||||
# CipherSuites for windows OS < 10
|
|
||||||
function Get-BaseCipherSuitesOlderWindows()
|
|
||||||
{
|
|
||||||
param
|
|
||||||
(
|
|
||||||
[Parameter(Mandatory=$true, Position=0)][bool] $isExcellenceOrder
|
|
||||||
)
|
|
||||||
$cipherorder = @()
|
|
||||||
|
|
||||||
if ($isExcellenceOrder -eq $true)
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256"
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Add additional ciphers when EnableOlderTlsVersions flag is set to true
|
|
||||||
if ($EnableOlderTlsVersions)
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_CBC_SHA"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_CBC_SHA"
|
|
||||||
}
|
|
||||||
return $cipherorder
|
|
||||||
}
|
|
||||||
|
|
||||||
# Ciphersuites needed for backwards compatibility with Firefox, Chrome
|
|
||||||
# Server 2012 R2 doesn't support TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
|
|
||||||
# Both firefox and chrome negotiate ECDHE_RSA_AES_256_CBC_SHA1, Edge negotiates ECDHE_RSA_AES_256_CBC_SHA384
|
|
||||||
function Get-BrowserCompatCipherSuitesOlderWindows()
|
|
||||||
{
|
|
||||||
param
|
|
||||||
(
|
|
||||||
[Parameter(Mandatory=$true, Position=0)][bool] $isExcellenceOrder
|
|
||||||
)
|
|
||||||
$cipherorder = @()
|
|
||||||
|
|
||||||
if ($isExcellenceOrder -eq $true)
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384" # (uses SHA-1)
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256" # (uses SHA-1)
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256" # (uses SHA-1)
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384" # (uses SHA-1)
|
|
||||||
}
|
|
||||||
return $cipherorder
|
|
||||||
}
|
|
||||||
|
|
||||||
# Ciphersuites for OS versions windows 10 and above
|
|
||||||
function Get-BaseCipherSuitesWin10Above()
|
|
||||||
{
|
|
||||||
param
|
|
||||||
(
|
|
||||||
[Parameter(Mandatory=$true, Position=0)][bool] $isExcellenceOrder
|
|
||||||
)
|
|
||||||
|
|
||||||
$cipherorder = @()
|
|
||||||
|
|
||||||
if ($isExcellenceOrder -eq $true)
|
|
||||||
{
|
|
||||||
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
|
|
||||||
}
|
|
||||||
# Add additional ciphers when EnableOlderTlsVersions flag is set to true
|
|
||||||
if ($EnableOlderTlsVersions)
|
|
||||||
{
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_GCM_SHA384"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_GCM_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_CBC_SHA256"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_256_CBC_SHA"
|
|
||||||
$cipherorder += "TLS_RSA_WITH_AES_128_CBC_SHA"
|
|
||||||
}
|
|
||||||
|
|
||||||
return $cipherorder
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#******************************* TLS Version Settings ****************************************************
|
|
||||||
|
|
||||||
function Get-RegKeyPathForTls12()
|
|
||||||
{
|
|
||||||
$regKeyPath = @(
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server"
|
|
||||||
)
|
|
||||||
return $regKeyPath
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-RegKeyPathForTls11()
|
|
||||||
{
|
|
||||||
$regKeyPath = @(
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server"
|
|
||||||
)
|
|
||||||
return $regKeyPath
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-RegKeypathForTls10()
|
|
||||||
{
|
|
||||||
$regKeyPath = @(
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server"
|
|
||||||
)
|
|
||||||
return $regKeyPath
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-RegKeyPathForSsl30()
|
|
||||||
{
|
|
||||||
$regKeyPath = @(
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server"
|
|
||||||
)
|
|
||||||
return $regKeyPath
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-RegKeyPathForSsl20()
|
|
||||||
{
|
|
||||||
$regKeyPath = @(
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client",
|
|
||||||
"HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server"
|
|
||||||
)
|
|
||||||
return $regKeyPath
|
|
||||||
}
|
|
||||||
|
|
||||||
#Initialize reboot value to false
|
|
||||||
$reboot = $false
|
|
||||||
|
|
||||||
#*****************************Create the logfile if not does not exist***************************************
|
|
||||||
$logLocation = CreateLogDirectory
|
|
||||||
|
|
||||||
|
|
||||||
#Start writing to the logs
|
|
||||||
Write-Log -Message "========== Start of logging for a script execution ==========" -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
$registryPathGoodGuys = @()
|
|
||||||
$registryPathBadGuys = @()
|
|
||||||
|
|
||||||
# we enable TLS 1.2 and disable SSL 2.0, 3.0 in any case
|
|
||||||
$registryPathGoodGuys += Get-RegKeyPathForTls12
|
|
||||||
|
|
||||||
$registryPathBadGuys += Get-RegKeyPathForSsl20
|
|
||||||
$registryPathBadGuys += Get-RegKeyPathForSsl30
|
|
||||||
|
|
||||||
# add TLS 1.0/1.1 to good/bad depending on user's preference
|
|
||||||
# default is adding TLS 1.0/1.1 to bad
|
|
||||||
if ($EnableOlderTlsVersions)
|
|
||||||
{
|
|
||||||
$registryPathGoodGuys += Get-RegKeypathForTls10
|
|
||||||
$registryPathGoodGuys += Get-RegKeyPathForTls11
|
|
||||||
Write-Log -Message "Enabling TLS1.2, TLS1.1, TLS1.0. Disabling SSL3.0, SSL2.0" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$registryPathBadGuys += Get-RegKeypathForTls10
|
|
||||||
$registryPathBadGuys += Get-RegKeyPathForTls11
|
|
||||||
Write-Log -Message "Enabling TLS1.2. Disabling TLS1.1, TLS1.0, SSL3.0, SSL2.0" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Write-Log -Message "Check which registry keys exist already and which registry keys need to be created." -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
#******************* CREATE THE REGISTRY KEYS IF THEY DON'T EXIST********************************
|
|
||||||
# Check for existence of GoodGuy registry keys, and create if they do not exist
|
|
||||||
For ($i = 0; $i -lt $registryPathGoodGuys.Length; $i = $i + 1) {
|
|
||||||
|
|
||||||
Write-Log -Message "Checking for existing of key: $($registryPathGoodGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
If (!(Test-Path -Path $registryPathGoodGuys[$i])) {
|
|
||||||
New-Item $registryPathGoodGuys[$i] | Out-Null
|
|
||||||
Write-Log -Message "Creating key: $($registryPathGoodGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# Check for existence of BadGuy registry keys, and create if they do not exist
|
|
||||||
For ($i = 0; $i -lt $registryPathBadGuys.Length; $i = $i + 1) {
|
|
||||||
|
|
||||||
Write-Log -Message "Checking for existing of key: $($registryPathBadGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
If (!(Test-Path -Path $registryPathBadGuys[$i])) {
|
|
||||||
Write-Log -Message "Creating key: $($registryPathBadGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
New-Item $registryPathBadGuys[$i] | Out-Null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#******************* EXPLICITLY DISABLE SSLV2, SSLV3, TLS10 AND TLS11 ********************************
|
|
||||||
For ($i = 0; $i -lt $registryPathBadGuys.Length; $i = $i + 1) {
|
|
||||||
|
|
||||||
if ($registryPathBadGuys[$i].Contains("Client") -Or $registryPathBadGuys[$i].Contains("Server")) {
|
|
||||||
|
|
||||||
Write-Log -Message "Disabling this key: $($registryPathBadGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
$result = Set-CryptoSetting $registryPathBadGuys[$i].ToString() Enabled 0 DWord
|
|
||||||
$result = Set-CryptoSetting $registryPathBadGuys[$i].ToString() DisabledByDefault 1 DWord
|
|
||||||
$reboot = $reboot -or $result
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#********************************* EXPLICITLY Enable TLS12 ****************************************
|
|
||||||
For ($i = 0; $i -lt $registryPathGoodGuys.Length; $i = $i + 1) {
|
|
||||||
|
|
||||||
if ($registryPathGoodGuys[$i].Contains("Client") -Or $registryPathGoodGuys[$i].Contains("Server")) {
|
|
||||||
|
|
||||||
Write-Log -Message "Enabling this key: $($registryPathGoodGuys[$i]) " -Logfile $logLocation -Severity Information
|
|
||||||
$result = Set-CryptoSetting $registryPathGoodGuys[$i].ToString() Enabled 1 DWord
|
|
||||||
$result = Set-CryptoSetting $registryPathGoodGuys[$i].ToString() DisabledByDefault 0 DWord
|
|
||||||
$reboot = $reboot -or $result
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#************************************** Disable RC4 ************************************************
|
|
||||||
$result = DisableRC4
|
|
||||||
$reboot = $reboot -or $result
|
|
||||||
|
|
||||||
|
|
||||||
#************************************** Set Cipher Suite Order **************************************
|
|
||||||
Write-Log -Message "----- starting ciphersuite order calculation -----" -Logfile $logLocation -Severity Information
|
|
||||||
$configureExcellenceOrder = $true
|
|
||||||
if ($SetCipherOrder.ToUpper() -eq "B")
|
|
||||||
{
|
|
||||||
$configureExcellenceOrder = $false
|
|
||||||
Write-Host "The min bar cipher suite order was chosen."
|
|
||||||
Write-Log -Message "The min bar cipher suite order was chosen." -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Write-Host "The opportunity for excellence cipher suite order was chosen."
|
|
||||||
Write-Log -Message "The opportunity for excellence cipher suite order was chosen." -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
$cipherlist = @()
|
|
||||||
|
|
||||||
if ([Environment]::OSVersion.Version.Major -lt 10)
|
|
||||||
{
|
|
||||||
$cipherlist += Get-BaseCipherSuitesOlderWindows -isExcellenceOrder $configureExcellenceOrder
|
|
||||||
$cipherlist += Get-BrowserCompatCipherSuitesOlderWindows -isExcellenceOrder $configureExcellenceOrder
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$cipherlist += Get-BaseCipherSuitesWin10Above -isExcellenceOrder $configureExcellenceOrder
|
|
||||||
}
|
|
||||||
$cipherorder = [System.String]::Join(",", $cipherlist)
|
|
||||||
Write-Host "Appropriate ciphersuite order : $cipherorder"
|
|
||||||
Write-Log -Message "Appropriate ciphersuite order : $cipherorder" -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
$CipherSuiteRegKey = "HKLM:\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002"
|
|
||||||
|
|
||||||
if (!(Test-Path -Path $CipherSuiteRegKey))
|
|
||||||
{
|
|
||||||
New-Item $CipherSuiteRegKey | Out-Null
|
|
||||||
$reboot = $True
|
|
||||||
Write-Log -Message "Creating key: $($CipherSuiteRegKey) " -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
|
|
||||||
$val = (Get-Item -Path $CipherSuiteRegKey -ErrorAction SilentlyContinue).GetValue("Functions", $null)
|
|
||||||
Write-Log -Message "Previous cipher suite value: $val " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Log -Message "New cipher suite value : $cipherorder " -Logfile $logLocation -Severity Information
|
|
||||||
|
|
||||||
if ($val -ne $cipherorder)
|
|
||||||
{
|
|
||||||
Write-Log -Message "Cipher suite order needs to be updated. " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Host "The original cipher suite order needs to be updated", `n, $val
|
|
||||||
Set-ItemProperty -Path $CipherSuiteRegKey -Name Functions -Value $cipherorder
|
|
||||||
Write-Log -Message "Cipher suite value was updated. " -Logfile $logLocation -Severity Information
|
|
||||||
$reboot = $True
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Write-Log -Message "Cipher suite order does not need to be updated. " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Log -Message "Cipher suite value was not updated as there was no change. " -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
|
|
||||||
#****************************** CHECK THE FIPS SETTING WHICH IMPACTS RDP'S ALLOWED CIPHERS **************************
|
|
||||||
#Check for FipsSettings
|
|
||||||
Write-Log -Message "Checking to see if reg keys exist and if MinEncryptionLevel is set to 4" -Logfile $logLocation -Severity Information
|
|
||||||
$result = Test-RegistryValueForFipsSettings
|
|
||||||
$reboot = $reboot -or $result
|
|
||||||
|
|
||||||
|
|
||||||
#************************************** REBOOT **************************************
|
|
||||||
|
|
||||||
if ($RebootIfRequired)
|
|
||||||
{
|
|
||||||
Write-Log -Message "You set the RebootIfRequired flag to true. If changes are made, the system will reboot " -Logfile $logLocation -Severity Information
|
|
||||||
# If any settings were changed, reboot
|
|
||||||
If ($reboot)
|
|
||||||
{
|
|
||||||
Write-Log -Message "Rebooting now... " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Log -Message "Using this command: shutdown.exe /r /t 5 /c ""Crypto settings changed"" /f /d p:2:4 " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Host "Rebooting now..."
|
|
||||||
shutdown.exe /r /t 5 /c "Crypto settings changed" /f /d p:2:4
|
|
||||||
}
|
|
||||||
Else
|
|
||||||
{
|
|
||||||
Write-Host "Nothing get updated."
|
|
||||||
Write-Log -Message "Nothing get updated. " -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
|
|
||||||
Write-Log -Message "You set the RebootIfRequired flag to false. If changes are made, the system will NOT reboot " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Log -Message "No changes will take effect until a reboot has been completed. " -Logfile $logLocation -Severity Information
|
|
||||||
Write-Log -Message "Script does not include a reboot by design" -Logfile $logLocation -Severity Information
|
|
||||||
}
|
|
||||||
Write-Log -Message "========== End of logging for a script execution ==========" -Logfile $logLocation -Severity Information
|
|
||||||
# SIG # Begin signature block
|
|
||||||
# MIIjhgYJKoZIhvcNAQcCoIIjdzCCI3MCAQExDzANBglghkgBZQMEAgEFADB5Bgor
|
|
||||||
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
|
|
||||||
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAHtlEJwNffjnOP
|
|
||||||
# Sr2t1yq5EfE0ll4GozyZt3UXO9BXKKCCDYEwggX/MIID56ADAgECAhMzAAABh3IX
|
|
||||||
# chVZQMcJAAAAAAGHMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD
|
|
||||||
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
|
|
||||||
# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p
|
|
||||||
# bmcgUENBIDIwMTEwHhcNMjAwMzA0MTgzOTQ3WhcNMjEwMzAzMTgzOTQ3WjB0MQsw
|
|
||||||
# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u
|
|
||||||
# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy
|
|
||||||
# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
|
||||||
# AQDOt8kLc7P3T7MKIhouYHewMFmnq8Ayu7FOhZCQabVwBp2VS4WyB2Qe4TQBT8aB
|
|
||||||
# znANDEPjHKNdPT8Xz5cNali6XHefS8i/WXtF0vSsP8NEv6mBHuA2p1fw2wB/F0dH
|
|
||||||
# sJ3GfZ5c0sPJjklsiYqPw59xJ54kM91IOgiO2OUzjNAljPibjCWfH7UzQ1TPHc4d
|
|
||||||
# weils8GEIrbBRb7IWwiObL12jWT4Yh71NQgvJ9Fn6+UhD9x2uk3dLj84vwt1NuFQ
|
|
||||||
# itKJxIV0fVsRNR3abQVOLqpDugbr0SzNL6o8xzOHL5OXiGGwg6ekiXA1/2XXY7yV
|
|
||||||
# Fc39tledDtZjSjNbex1zzwSXAgMBAAGjggF+MIIBejAfBgNVHSUEGDAWBgorBgEE
|
|
||||||
# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUhov4ZyO96axkJdMjpzu2zVXOJcsw
|
|
||||||
# UAYDVR0RBEkwR6RFMEMxKTAnBgNVBAsTIE1pY3Jvc29mdCBPcGVyYXRpb25zIFB1
|
|
||||||
# ZXJ0byBSaWNvMRYwFAYDVQQFEw0yMzAwMTIrNDU4Mzg1MB8GA1UdIwQYMBaAFEhu
|
|
||||||
# ZOVQBdOCqhc3NyK1bajKdQKVMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly93d3cu
|
|
||||||
# bWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY0NvZFNpZ1BDQTIwMTFfMjAxMS0w
|
|
||||||
# Ny0wOC5jcmwwYQYIKwYBBQUHAQEEVTBTMFEGCCsGAQUFBzAChkVodHRwOi8vd3d3
|
|
||||||
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY0NvZFNpZ1BDQTIwMTFfMjAx
|
|
||||||
# MS0wNy0wOC5jcnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAgEAixmy
|
|
||||||
# S6E6vprWD9KFNIB9G5zyMuIjZAOuUJ1EK/Vlg6Fb3ZHXjjUwATKIcXbFuFC6Wr4K
|
|
||||||
# NrU4DY/sBVqmab5AC/je3bpUpjtxpEyqUqtPc30wEg/rO9vmKmqKoLPT37svc2NV
|
|
||||||
# BmGNl+85qO4fV/w7Cx7J0Bbqk19KcRNdjt6eKoTnTPHBHlVHQIHZpMxacbFOAkJr
|
|
||||||
# qAVkYZdz7ikNXTxV+GRb36tC4ByMNxE2DF7vFdvaiZP0CVZ5ByJ2gAhXMdK9+usx
|
|
||||||
# zVk913qKde1OAuWdv+rndqkAIm8fUlRnr4saSCg7cIbUwCCf116wUJ7EuJDg0vHe
|
|
||||||
# yhnCeHnBbyH3RZkHEi2ofmfgnFISJZDdMAeVZGVOh20Jp50XBzqokpPzeZ6zc1/g
|
|
||||||
# yILNyiVgE+RPkjnUQshd1f1PMgn3tns2Cz7bJiVUaqEO3n9qRFgy5JuLae6UweGf
|
|
||||||
# AeOo3dgLZxikKzYs3hDMaEtJq8IP71cX7QXe6lnMmXU/Hdfz2p897Zd+kU+vZvKI
|
|
||||||
# 3cwLfuVQgK2RZ2z+Kc3K3dRPz2rXycK5XCuRZmvGab/WbrZiC7wJQapgBodltMI5
|
|
||||||
# GMdFrBg9IeF7/rP4EqVQXeKtevTlZXjpuNhhjuR+2DMt/dWufjXpiW91bo3aH6Ea
|
|
||||||
# jOALXmoxgltCp1K7hrS6gmsvj94cLRf50QQ4U8Qwggd6MIIFYqADAgECAgphDpDS
|
|
||||||
# AAAAAAADMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQGEwJVUzETMBEGA1UECBMK
|
|
||||||
# V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0
|
|
||||||
# IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0
|
|
||||||
# ZSBBdXRob3JpdHkgMjAxMTAeFw0xMTA3MDgyMDU5MDlaFw0yNjA3MDgyMTA5MDla
|
|
||||||
# MH4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS
|
|
||||||
# ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMT
|
|
||||||
# H01pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBIDIwMTEwggIiMA0GCSqGSIb3DQEB
|
|
||||||
# AQUAA4ICDwAwggIKAoICAQCr8PpyEBwurdhuqoIQTTS68rZYIZ9CGypr6VpQqrgG
|
|
||||||
# OBoESbp/wwwe3TdrxhLYC/A4wpkGsMg51QEUMULTiQ15ZId+lGAkbK+eSZzpaF7S
|
|
||||||
# 35tTsgosw6/ZqSuuegmv15ZZymAaBelmdugyUiYSL+erCFDPs0S3XdjELgN1q2jz
|
|
||||||
# y23zOlyhFvRGuuA4ZKxuZDV4pqBjDy3TQJP4494HDdVceaVJKecNvqATd76UPe/7
|
|
||||||
# 4ytaEB9NViiienLgEjq3SV7Y7e1DkYPZe7J7hhvZPrGMXeiJT4Qa8qEvWeSQOy2u
|
|
||||||
# M1jFtz7+MtOzAz2xsq+SOH7SnYAs9U5WkSE1JcM5bmR/U7qcD60ZI4TL9LoDho33
|
|
||||||
# X/DQUr+MlIe8wCF0JV8YKLbMJyg4JZg5SjbPfLGSrhwjp6lm7GEfauEoSZ1fiOIl
|
|
||||||
# XdMhSz5SxLVXPyQD8NF6Wy/VI+NwXQ9RRnez+ADhvKwCgl/bwBWzvRvUVUvnOaEP
|
|
||||||
# 6SNJvBi4RHxF5MHDcnrgcuck379GmcXvwhxX24ON7E1JMKerjt/sW5+v/N2wZuLB
|
|
||||||
# l4F77dbtS+dJKacTKKanfWeA5opieF+yL4TXV5xcv3coKPHtbcMojyyPQDdPweGF
|
|
||||||
# RInECUzF1KVDL3SV9274eCBYLBNdYJWaPk8zhNqwiBfenk70lrC8RqBsmNLg1oiM
|
|
||||||
# CwIDAQABo4IB7TCCAekwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFEhuZOVQ
|
|
||||||
# BdOCqhc3NyK1bajKdQKVMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMAsGA1Ud
|
|
||||||
# DwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFHItOgIxkEO5FAVO
|
|
||||||
# 4eqnxzHRI4k0MFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwubWljcm9zb2Z0
|
|
||||||
# LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y
|
|
||||||
# Mi5jcmwwXgYIKwYBBQUHAQEEUjBQME4GCCsGAQUFBzAChkJodHRwOi8vd3d3Lm1p
|
|
||||||
# Y3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y
|
|
||||||
# Mi5jcnQwgZ8GA1UdIASBlzCBlDCBkQYJKwYBBAGCNy4DMIGDMD8GCCsGAQUFBwIB
|
|
||||||
# FjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2RvY3MvcHJpbWFyeWNw
|
|
||||||
# cy5odG0wQAYIKwYBBQUHAgIwNB4yIB0ATABlAGcAYQBsAF8AcABvAGwAaQBjAHkA
|
|
||||||
# XwBzAHQAYQB0AGUAbQBlAG4AdAAuIB0wDQYJKoZIhvcNAQELBQADggIBAGfyhqWY
|
|
||||||
# 4FR5Gi7T2HRnIpsLlhHhY5KZQpZ90nkMkMFlXy4sPvjDctFtg/6+P+gKyju/R6mj
|
|
||||||
# 82nbY78iNaWXXWWEkH2LRlBV2AySfNIaSxzzPEKLUtCw/WvjPgcuKZvmPRul1LUd
|
|
||||||
# d5Q54ulkyUQ9eHoj8xN9ppB0g430yyYCRirCihC7pKkFDJvtaPpoLpWgKj8qa1hJ
|
|
||||||
# Yx8JaW5amJbkg/TAj/NGK978O9C9Ne9uJa7lryft0N3zDq+ZKJeYTQ49C/IIidYf
|
|
||||||
# wzIY4vDFLc5bnrRJOQrGCsLGra7lstnbFYhRRVg4MnEnGn+x9Cf43iw6IGmYslmJ
|
|
||||||
# aG5vp7d0w0AFBqYBKig+gj8TTWYLwLNN9eGPfxxvFX1Fp3blQCplo8NdUmKGwx1j
|
|
||||||
# NpeG39rz+PIWoZon4c2ll9DuXWNB41sHnIc+BncG0QaxdR8UvmFhtfDcxhsEvt9B
|
|
||||||
# xw4o7t5lL+yX9qFcltgA1qFGvVnzl6UJS0gQmYAf0AApxbGbpT9Fdx41xtKiop96
|
|
||||||
# eiL6SJUfq/tHI4D1nvi/a7dLl+LrdXga7Oo3mXkYS//WsyNodeav+vyL6wuA6mk7
|
|
||||||
# r/ww7QRMjt/fdW1jkT3RnVZOT7+AVyKheBEyIXrvQQqxP/uozKRdwaGIm1dxVk5I
|
|
||||||
# RcBCyZt2WwqASGv9eZ/BvW1taslScxMNelDNMYIVWzCCFVcCAQEwgZUwfjELMAkG
|
|
||||||
# A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx
|
|
||||||
# HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEoMCYGA1UEAxMfTWljcm9z
|
|
||||||
# b2Z0IENvZGUgU2lnbmluZyBQQ0EgMjAxMQITMwAAAYdyF3IVWUDHCQAAAAABhzAN
|
|
||||||
# BglghkgBZQMEAgEFAKCBrjAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgor
|
|
||||||
# BgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgOQvu7NUq
|
|
||||||
# wmve+qCoalj/s9HX5Hz9/zYISdJyOFTC4FIwQgYKKwYBBAGCNwIBDDE0MDKgFIAS
|
|
||||||
# AE0AaQBjAHIAbwBzAG8AZgB0oRqAGGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbTAN
|
|
||||||
# BgkqhkiG9w0BAQEFAASCAQAHbtGz0AChe0qMPM3c7iU8BQCfJklePUlAlhwFSuCx
|
|
||||||
# careoloxao+ZtS+dQRlrxLu/ZSqtmJHNsyRoWzsHdOs65pwUYhV3svzaXd7pJwkc
|
|
||||||
# nbDXedLBbNuQrQrrL2xbGtzT3U+EwgpJ1TTEYwHgqkTFogIelGa2sjD5N+4Vvalq
|
|
||||||
# t+vxaYrWwkTtsm0qczLKGRUjJqCjARjviE1xsOvs4zwbpXx/bEs/6M7U9tR+w/DS
|
|
||||||
# nDY/5KAKYET0DCVDhmsMmzJi3xXdBr4sAz0484AAB0CIRVgPCgdgr8E0NQUESJzm
|
|
||||||
# xm3K4bMAgTMWRiGTL4MRYSuMIn09sbfYXP9hjXLvTV4YoYIS5TCCEuEGCisGAQQB
|
|
||||||
# gjcDAwExghLRMIISzQYJKoZIhvcNAQcCoIISvjCCEroCAQMxDzANBglghkgBZQME
|
|
||||||
# AgEFADCCAVEGCyqGSIb3DQEJEAEEoIIBQASCATwwggE4AgEBBgorBgEEAYRZCgMB
|
|
||||||
# MDEwDQYJYIZIAWUDBAIBBQAEIJBynrmlQmGS0UNGTk53HVKEc4aHvNdYrs5eCcHM
|
|
||||||
# puc5AgZfEgElnvMYEzIwMjAwNzI0MTgwNDM3Ljg3NlowBIACAfSggdCkgc0wgcox
|
|
||||||
# CzAJBgNVBAYTAlVTMQswCQYDVQQIEwJXQTEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG
|
|
||||||
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMS0wKwYDVQQLEyRNaWNyb3NvZnQg
|
|
||||||
# SXJlbGFuZCBPcGVyYXRpb25zIExpbWl0ZWQxJjAkBgNVBAsTHVRoYWxlcyBUU1Mg
|
|
||||||
# RVNOOkUwNDEtNEJFRS1GQTdFMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFt
|
|
||||||
# cCBzZXJ2aWNloIIOPDCCBPEwggPZoAMCAQICEzMAAAEHfjdomIdaN9YAAAAAAQcw
|
|
||||||
# DQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0
|
|
||||||
# b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh
|
|
||||||
# dGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwHhcN
|
|
||||||
# MTkxMDA4MTczODM1WhcNMjEwMTAzMTczODM1WjCByjELMAkGA1UEBhMCVVMxCzAJ
|
|
||||||
# BgNVBAgTAldBMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQg
|
|
||||||
# Q29ycG9yYXRpb24xLTArBgNVBAsTJE1pY3Jvc29mdCBJcmVsYW5kIE9wZXJhdGlv
|
|
||||||
# bnMgTGltaXRlZDEmMCQGA1UECxMdVGhhbGVzIFRTUyBFU046RTA0MS00QkVFLUZB
|
|
||||||
# N0UxJTAjBgNVBAMTHE1pY3Jvc29mdCBUaW1lLVN0YW1wIHNlcnZpY2UwggEiMA0G
|
|
||||||
# CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDUuqOUlbaeWirgwbCwhhNIOqTshpo+
|
|
||||||
# QdSYxAt9JnkeulQFeKrQ6rOSECXxwgOjL/TNMIXtkig1MaifFON6si/Ri+AsV8Gu
|
|
||||||
# rQp4fylJzLDMFdJcGSpV3CGRdpDb0au8kNQLmnZuxLxAL91R7//3mH2QDQI20w3G
|
|
||||||
# 06s+Xv8+js9wQksXAfclXX1TJoBIx1Pi1FGqCnY3KlW81+Plhz0T4yStm1MgnqH4
|
|
||||||
# RKYyPdcempCYC/BI04Ph2EJL+uQQfAfYdbf9vGqpKYjsuktnWr5uowD3H5At+x3l
|
|
||||||
# YH5rz4JCleKjeLpB/j74H7VZ0I5eTEbls9e2lEKaUzb9o0wjnjDc+t4BAgMBAAGj
|
|
||||||
# ggEbMIIBFzAdBgNVHQ4EFgQUNOHjlxlIJXMcP9n/0ogYdX8p6HcwHwYDVR0jBBgw
|
|
||||||
# FoAU1WM6XIoxkPNDe3xGG8UzaFqFbVUwVgYDVR0fBE8wTTBLoEmgR4ZFaHR0cDov
|
|
||||||
# L2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljVGltU3RhUENB
|
|
||||||
# XzIwMTAtMDctMDEuY3JsMFoGCCsGAQUFBwEBBE4wTDBKBggrBgEFBQcwAoY+aHR0
|
|
||||||
# cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNUaW1TdGFQQ0FfMjAx
|
|
||||||
# MC0wNy0wMS5jcnQwDAYDVR0TAQH/BAIwADATBgNVHSUEDDAKBggrBgEFBQcDCDAN
|
|
||||||
# BgkqhkiG9w0BAQsFAAOCAQEAGN3/7XWSzHGKjk444w+2q1D3k7Bh/ZahUvWHFJ6E
|
|
||||||
# UKU5vLzEGsdsgJSvWXHZDRrpf5rcUGQyjnlo1hAY1mDteNKFushS6bedxcxPHJje
|
|
||||||
# lVZ9N2/e5+/7zLu18YjnKw5bFu7dWqYBMI3J0FOr56XJOJ1KTtMiJhpxuib+FWy+
|
|
||||||
# pyhVVgHGTUHuUdbE09dY9WxuRsbpb4DdWAWNrPDB6VAOO50QfEj+0tW+zF6h3RhB
|
|
||||||
# TI0ilj0+AzgXE+6DyJ7/br6aVvCEvNRJzE6akJnMyn/kzmC32LxvRZWKEwWDR0Fn
|
|
||||||
# zeXj5ynSStZ6iifTBP7gqiDsidguxh+BFX7HxhN1eHf7jTCCBnEwggRZoAMCAQIC
|
|
||||||
# CmEJgSoAAAAAAAIwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYD
|
|
||||||
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
|
|
||||||
# b3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290IENlcnRp
|
|
||||||
# ZmljYXRlIEF1dGhvcml0eSAyMDEwMB4XDTEwMDcwMTIxMzY1NVoXDTI1MDcwMTIx
|
|
||||||
# NDY1NVowfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNV
|
|
||||||
# BAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQG
|
|
||||||
# A1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwggEiMA0GCSqGSIb3
|
|
||||||
# DQEBAQUAA4IBDwAwggEKAoIBAQCpHQ28dxGKOiDs/BOX9fp/aZRrdFQQ1aUKAIKF
|
|
||||||
# ++18aEssX8XD5WHCdrc+Zitb8BVTJwQxH0EbGpUdzgkTjnxhMFmxMEQP8WCIhFRD
|
|
||||||
# DNdNuDgIs0Ldk6zWczBXJoKjRQ3Q6vVHgc2/JGAyWGBG8lhHhjKEHnRhZ5FfgVSx
|
|
||||||
# z5NMksHEpl3RYRNuKMYa+YaAu99h/EbBJx0kZxJyGiGKr0tkiVBisV39dx898Fd1
|
|
||||||
# rL2KQk1AUdEPnAY+Z3/1ZsADlkR+79BL/W7lmsqxqPJ6Kgox8NpOBpG2iAg16Hgc
|
|
||||||
# sOmZzTznL0S6p/TcZL2kAcEgCZN4zfy8wMlEXV4WnAEFTyJNAgMBAAGjggHmMIIB
|
|
||||||
# 4jAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQU1WM6XIoxkPNDe3xGG8UzaFqF
|
|
||||||
# bVUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud
|
|
||||||
# EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU1fZWy4/oolxiaNE9lJBb186aGMQwVgYD
|
|
||||||
# VR0fBE8wTTBLoEmgR4ZFaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwv
|
|
||||||
# cHJvZHVjdHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYtMjMuY3JsMFoGCCsGAQUFBwEB
|
|
||||||
# BE4wTDBKBggrBgEFBQcwAoY+aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9j
|
|
||||||
# ZXJ0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcnQwgaAGA1UdIAEB/wSBlTCB
|
|
||||||
# kjCBjwYJKwYBBAGCNy4DMIGBMD0GCCsGAQUFBwIBFjFodHRwOi8vd3d3Lm1pY3Jv
|
|
||||||
# c29mdC5jb20vUEtJL2RvY3MvQ1BTL2RlZmF1bHQuaHRtMEAGCCsGAQUFBwICMDQe
|
|
||||||
# MiAdAEwAZQBnAGEAbABfAFAAbwBsAGkAYwB5AF8AUwB0AGEAdABlAG0AZQBuAHQA
|
|
||||||
# LiAdMA0GCSqGSIb3DQEBCwUAA4ICAQAH5ohRDeLG4Jg/gXEDPZ2joSFvs+umzPUx
|
|
||||||
# vs8F4qn++ldtGTCzwsVmyWrf9efweL3HqJ4l4/m87WtUVwgrUYJEEvu5U4zM9GAS
|
|
||||||
# inbMQEBBm9xcF/9c+V4XNZgkVkt070IQyK+/f8Z/8jd9Wj8c8pl5SpFSAK84Dxf1
|
|
||||||
# L3mBZdmptWvkx872ynoAb0swRCQiPM/tA6WWj1kpvLb9BOFwnzJKJ/1Vry/+tuWO
|
|
||||||
# M7tiX5rbV0Dp8c6ZZpCM/2pif93FSguRJuI57BlKcWOdeyFtw5yjojz6f32WapB4
|
|
||||||
# pm3S4Zz5Hfw42JT0xqUKloakvZ4argRCg7i1gJsiOCC1JeVk7Pf0v35jWSUPei45
|
|
||||||
# V3aicaoGig+JFrphpxHLmtgOR5qAxdDNp9DvfYPw4TtxCd9ddJgiCGHasFAeb73x
|
|
||||||
# 4QDf5zEHpJM692VHeOj4qEir995yfmFrb3epgcunCaw5u+zGy9iCtHLNHfS4hQEe
|
|
||||||
# gPsbiSpUObJb2sgNVZl6h3M7COaYLeqN4DMuEin1wC9UJyH3yKxO2ii4sanblrKn
|
|
||||||
# QqLJzxlBTeCG+SqaoxFmMNO7dDJL32N79ZmKLxvHIa9Zta7cRDyXUHHXodLFVeNp
|
|
||||||
# 3lfB0d4wwP3M5k37Db9dT+mdHhk4L7zPWAUu7w2gUDXa7wknHNWzfjUeCLraNtvT
|
|
||||||
# X4/edIhJEqGCAs4wggI3AgEBMIH4oYHQpIHNMIHKMQswCQYDVQQGEwJVUzELMAkG
|
|
||||||
# A1UECBMCV0ExEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBD
|
|
||||||
# b3Jwb3JhdGlvbjEtMCsGA1UECxMkTWljcm9zb2Z0IElyZWxhbmQgT3BlcmF0aW9u
|
|
||||||
# cyBMaW1pdGVkMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjpFMDQxLTRCRUUtRkE3
|
|
||||||
# RTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgc2VydmljZaIjCgEBMAcG
|
|
||||||
# BSsOAwIaAxUAwwu+tfgG3rC7RZrxuFO2CmZSfPiggYMwgYCkfjB8MQswCQYDVQQG
|
|
||||||
# EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG
|
|
||||||
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQg
|
|
||||||
# VGltZS1TdGFtcCBQQ0EgMjAxMDANBgkqhkiG9w0BAQUFAAIFAOLFEVUwIhgPMjAy
|
|
||||||
# MDA3MjQxNTUwNDVaGA8yMDIwMDcyNTE1NTA0NVowdzA9BgorBgEEAYRZCgQBMS8w
|
|
||||||
# LTAKAgUA4sURVQIBADAKAgEAAgIa9QIB/zAHAgEAAgIR9DAKAgUA4sZi1QIBADA2
|
|
||||||
# BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMCoAowCAIBAAIDB6EgoQowCAIB
|
|
||||||
# AAIDAYagMA0GCSqGSIb3DQEBBQUAA4GBADwvhE9bln801RR+oEXjtPJXTqtYMakR
|
|
||||||
# ymItUlO2HRorDqEv2SJR/V/kQjcsqS6ig54bOiKs0Il2fW/s/pi+x1ydJMpOyhM7
|
|
||||||
# zzqm3acQ9kbYHIDoPWVT/Rq2Oo33Dq380zXENcc0hpLAKF3Cu06SbbNbqu+A/wbI
|
|
||||||
# z5IClz6kU8kiMYIDDTCCAwkCAQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgT
|
|
||||||
# Cldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
|
|
||||||
# dCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENB
|
|
||||||
# IDIwMTACEzMAAAEHfjdomIdaN9YAAAAAAQcwDQYJYIZIAWUDBAIBBQCgggFKMBoG
|
|
||||||
# CSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQg6+NCew+c
|
|
||||||
# OhYIOzhUKofOF7MxtgOvSMWQCMCIWlTFNMgwgfoGCyqGSIb3DQEJEAIvMYHqMIHn
|
|
||||||
# MIHkMIG9BCBBYvCj4pFkwhumagATn0gLh9fdDNzImQkKNeOtRj/LHjCBmDCBgKR+
|
|
||||||
# MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS
|
|
||||||
# ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMT
|
|
||||||
# HU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwAhMzAAABB343aJiHWjfWAAAA
|
|
||||||
# AAEHMCIEIGIH6vLdbEFNnxTxBhtIN7CtmhcKy/9m6/xoAA3LHzXUMA0GCSqGSIb3
|
|
||||||
# DQEBCwUABIIBAKGg3zNulscnGBDlD6Q/U6yLQ5dN3gF9UrprgACiQ1gs/DexU7oC
|
|
||||||
# hjNZxBnH5RTA/7q9TFf2a1rBydHWVnqXuuQQJ0HuskdpXahxR4y1jboDdGwr7F08
|
|
||||||
# v/gmPeeUik28Je72QZp5m/R0O61/kMQaDpLO9iPH0Z9iMGfqJonFPDeY4VX8Da2n
|
|
||||||
# cPY7mrv6YAI+ydZ+mUdBp2yjas7+/N8MntcNtAO0HpWFXQTAmb77RrSssfeZphRA
|
|
||||||
# mBD+gLx5C3q4uSmuOqaQxUaF0y8FeuetHp0bw2sfce6GlMXJwzTpC6HvXnaVtMy0
|
|
||||||
# pgzd/KPHW7EgSvmRVKmvwiQGiZBoRG/Gcg8=
|
|
||||||
# SIG # End signature block
|
|
||||||
|
|
@ -1,15 +1,13 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
if (Test-Path -LiteralPath "$PSScriptRoot/utility-prefix.ps1") {
|
||||||
. "$PSScriptRoot/utility-prefix.ps1"
|
. "$PSScriptRoot/utility-prefix.ps1"
|
||||||
}
|
}
|
||||||
|
|
||||||
# See https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-history
|
# See https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-history
|
||||||
# 18.6.2
|
# 18.8.0
|
||||||
$VisualStudioBootstrapperUrl = 'https://download.visualstudio.microsoft.com/download/pr/471ad3d6-cb2b-4d53-8edf-a9eeade096a5/3cfa3f8fc957f406dc35be713959a85c10b23b9ed9a865626550e8cf676d96a8/vs_BuildTools.exe'
|
$VisualStudioBootstrapperUrl = 'https://download.visualstudio.microsoft.com/download/pr/e05c0bc8-d058-4b2b-937c-1c80073d7633/b62e8829c6a6c043aacf2ef657456213ab71099c7e46a610f95d6778bfc9beb0/vs_BuildTools.exe'
|
||||||
$Workloads = @(
|
$Workloads = @(
|
||||||
'Microsoft.VisualStudio.Workload.VCTools',
|
'Microsoft.VisualStudio.Workload.VCTools',
|
||||||
'Microsoft.VisualStudio.Workload.MSBuildTools',
|
'Microsoft.VisualStudio.Workload.MSBuildTools',
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@
|
||||||
# This script runs all the scripts we run on Azure machines to deploy prerequisites,
|
# This script runs all the scripts we run on Azure machines to deploy prerequisites,
|
||||||
# and assumes it is being run as an admin user.
|
# and assumes it is being run as an admin user.
|
||||||
|
|
||||||
. "$PSScriptRoot\deploy-tlssettings.ps1" -RebootIfRequired 0
|
|
||||||
. "$PSScriptRoot\deploy-sevenzip.ps1"
|
. "$PSScriptRoot\deploy-sevenzip.ps1"
|
||||||
. "$PSScriptRoot\deploy-visual-studio.ps1"
|
. "$PSScriptRoot\deploy-visual-studio.ps1"
|
||||||
. "$PSScriptRoot\deploy-git.ps1"
|
. "$PSScriptRoot\deploy-git.ps1"
|
||||||
|
|
@ -13,7 +12,6 @@
|
||||||
. "$PSScriptRoot\deploy-mpi.ps1"
|
. "$PSScriptRoot\deploy-mpi.ps1"
|
||||||
. "$PSScriptRoot\deploy-cuda.ps1"
|
. "$PSScriptRoot\deploy-cuda.ps1"
|
||||||
. "$PSScriptRoot\deploy-cudnn.ps1"
|
. "$PSScriptRoot\deploy-cudnn.ps1"
|
||||||
. "$PSScriptRoot\deploy-inteloneapi.ps1"
|
|
||||||
. "$PSScriptRoot\deploy-pwsh.ps1"
|
. "$PSScriptRoot\deploy-pwsh.ps1"
|
||||||
. "$PSScriptRoot\deploy-azure-cli.ps1"
|
. "$PSScriptRoot\deploy-azure-cli.ps1"
|
||||||
. "$PSScriptRoot\deploy-azcopy.ps1"
|
. "$PSScriptRoot\deploy-azcopy.ps1"
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,6 @@
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
#
|
#
|
||||||
|
|
||||||
param([string]$SasToken)
|
|
||||||
|
|
||||||
<#
|
<#
|
||||||
.SYNOPSIS
|
.SYNOPSIS
|
||||||
Prepares the virtual machine for imaging.
|
Prepares the virtual machine for imaging.
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
# Copyright (c) Microsoft Corporation.
|
# Copyright (c) Microsoft Corporation.
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
$UseManagedIdentity = $false
|
||||||
|
|
||||||
<#
|
<#
|
||||||
.SYNOPSIS
|
.SYNOPSIS
|
||||||
Gets a random file path in the temp directory.
|
Gets a random file path in the temp directory.
|
||||||
|
|
@ -30,11 +32,8 @@ Function Get-TempFilePath {
|
||||||
Gets the download URL for an image asset.
|
Gets the download URL for an image asset.
|
||||||
|
|
||||||
.DESCRIPTION
|
.DESCRIPTION
|
||||||
Get-AssetUrl returns the upstream URL when no SAS token is provided, or the
|
Get-AssetUrl returns the upstream URL unless UseManagedIdentity is specified,
|
||||||
vcpkgimageminting asset URL when a SAS token is available.
|
in which case it returns the corresponding vcpkgimageminting asset URL.
|
||||||
|
|
||||||
.PARAMETER SasToken
|
|
||||||
The optional SAS token for accessing vcpkgimageminting assets.
|
|
||||||
|
|
||||||
.PARAMETER InternetUrl
|
.PARAMETER InternetUrl
|
||||||
The upstream download URL.
|
The upstream download URL.
|
||||||
|
|
@ -45,17 +44,15 @@ The asset file name in the vcpkgimageminting blob container.
|
||||||
Function Get-AssetUrl {
|
Function Get-AssetUrl {
|
||||||
[CmdletBinding(PositionalBinding=$false)]
|
[CmdletBinding(PositionalBinding=$false)]
|
||||||
Param(
|
Param(
|
||||||
[String]$SasToken,
|
|
||||||
[Parameter(Mandatory)][uri]$InternetUrl,
|
[Parameter(Mandatory)][uri]$InternetUrl,
|
||||||
[Parameter(Mandatory)][String]$BlobAssetName
|
[Parameter(Mandatory)][String]$BlobAssetName
|
||||||
)
|
)
|
||||||
|
|
||||||
if ([string]::IsNullOrEmpty($SasToken)) {
|
if (-not $UseManagedIdentity) {
|
||||||
return $InternetUrl
|
return $InternetUrl
|
||||||
}
|
}
|
||||||
|
|
||||||
$SasToken = $SasToken.Replace('"', '').TrimStart('?')
|
return [uri]"https://vcpkgimageminting.blob.core.windows.net/assets/$([uri]::EscapeDataString($BlobAssetName))"
|
||||||
return [uri]"https://vcpkgimageminting.blob.core.windows.net/assets/$($BlobAssetName)?$($SasToken)"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
<#
|
<#
|
||||||
|
|
@ -84,11 +81,7 @@ Function Get-ContentSourceDescription {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($Url.Host -ieq 'vcpkgimageminting.blob.core.windows.net') {
|
if ($Url.Host -ieq 'vcpkgimageminting.blob.core.windows.net') {
|
||||||
if ($Url.Query -match '(^\?|&)sig=') {
|
return 'vcpkgimageminting using managed identity'
|
||||||
return 'vcpkgimageminting using SAS token'
|
|
||||||
}
|
|
||||||
|
|
||||||
return 'vcpkgimageminting'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 'the internet'
|
return 'the internet'
|
||||||
|
|
@ -127,9 +120,38 @@ Function Get-LocalOrDownloadedFile {
|
||||||
$tempPath = Get-TempFilePath
|
$tempPath = Get-TempFilePath
|
||||||
New-Item -ItemType Directory -Path $tempPath -Force | Out-Null
|
New-Item -ItemType Directory -Path $tempPath -Force | Out-Null
|
||||||
$downloadPath = Join-Path $tempPath $LocalName
|
$downloadPath = Join-Path $tempPath $LocalName
|
||||||
curl.exe --fail -L -o $downloadPath $Url
|
|
||||||
if (-Not $?) {
|
if ($Url.Host -ieq 'vcpkgimageminting.blob.core.windows.net') {
|
||||||
Write-Error 'Download failed!'
|
$tokenResponseJson = curl.exe `
|
||||||
|
--fail `
|
||||||
|
--silent `
|
||||||
|
--show-error `
|
||||||
|
--noproxy '*' `
|
||||||
|
--header 'Metadata: true' `
|
||||||
|
'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fstorage.azure.com%2F'
|
||||||
|
if ($LASTEXITCODE -ne 0) {
|
||||||
|
throw 'Failed to acquire an Azure Storage access token from IMDS.'
|
||||||
|
}
|
||||||
|
|
||||||
|
$storageAccessToken = ($tokenResponseJson | ConvertFrom-Json).access_token
|
||||||
|
if ([string]::IsNullOrWhiteSpace($storageAccessToken)) {
|
||||||
|
throw 'IMDS returned an empty Azure Storage access token.'
|
||||||
|
}
|
||||||
|
|
||||||
|
curl.exe `
|
||||||
|
--fail `
|
||||||
|
--location `
|
||||||
|
--show-error `
|
||||||
|
--header "Authorization: Bearer $storageAccessToken" `
|
||||||
|
--header 'x-ms-version: 2023-11-03' `
|
||||||
|
--output $downloadPath `
|
||||||
|
$Url
|
||||||
|
} else {
|
||||||
|
curl.exe --fail --location --show-error --output $downloadPath $Url
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($LASTEXITCODE -ne 0) {
|
||||||
|
throw "Failed to download $LocalName."
|
||||||
}
|
}
|
||||||
|
|
||||||
return [pscustomobject]@{
|
return [pscustomobject]@{
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,9 @@ function(vcpkg_find_fortran out_var)
|
||||||
macro(z_vcpkg_warn_ambiguous_system_variables)
|
macro(z_vcpkg_warn_ambiguous_system_variables)
|
||||||
# CMakeDetermineFortranCompiler is for project mode.
|
# CMakeDetermineFortranCompiler is for project mode.
|
||||||
endmacro()
|
endmacro()
|
||||||
include(CMakeDetermineFortranCompiler)
|
|
||||||
|
|
||||||
if(NOT CMAKE_Fortran_COMPILER AND "${VCPKG_CHAINLOAD_TOOLCHAIN_FILE}" STREQUAL "")
|
if(VCPKG_PROVIDED_FORTRAN)
|
||||||
# If a user uses their own VCPKG_CHAINLOAD_TOOLCHAIN_FILE, they _must_ figure out fortran on their own.
|
message(STATUS "Using MinGW gfortran; set VCPKG_PROVIDED_FORTRAN=OFF if supplying Fortran from your toolchain")
|
||||||
if(CMAKE_HOST_WIN32)
|
|
||||||
message(STATUS "No Fortran compiler found on the PATH. Using MinGW gfortran!")
|
|
||||||
# If no Fortran compiler is on the path we switch to use gfortan from MinGW within vcpkg
|
|
||||||
if("${VCPKG_TARGET_ARCHITECTURE}" STREQUAL "x86")
|
if("${VCPKG_TARGET_ARCHITECTURE}" STREQUAL "x86")
|
||||||
set(mingw_path mingw32)
|
set(mingw_path mingw32)
|
||||||
set(machine_flag -m32)
|
set(machine_flag -m32)
|
||||||
|
|
@ -61,7 +57,11 @@ function(vcpkg_find_fortran out_var)
|
||||||
set(VCPKG_LIBRARY_LINKAGE dynamic PARENT_SCOPE)
|
set(VCPKG_LIBRARY_LINKAGE dynamic PARENT_SCOPE)
|
||||||
message(STATUS "VCPKG_LIBRARY_LINKAGE linkage for ${PORT} using vcpkg's internal gfortran cannot be static due to linking against MinGW libraries. Forcing dynamic library linkage")
|
message(STATUS "VCPKG_LIBRARY_LINKAGE linkage for ${PORT} using vcpkg's internal gfortran cannot be static due to linking against MinGW libraries. Forcing dynamic library linkage")
|
||||||
endif()
|
endif()
|
||||||
|
elseif(CMAKE_HOST_WIN32)
|
||||||
|
message(STATUS "Deferring Fortran compiler selection to the triplet toolchain.")
|
||||||
else()
|
else()
|
||||||
|
include(CMakeDetermineFortranCompiler)
|
||||||
|
if(NOT CMAKE_Fortran_COMPILER)
|
||||||
message(FATAL_ERROR "Unable to find a Fortran compiler using 'CMakeDetermineFortranCompiler'. Please install one (e.g. gfortran) and make it available on the PATH!")
|
message(FATAL_ERROR "Unable to find a Fortran compiler using 'CMakeDetermineFortranCompiler'. Please install one (e.g. gfortran) and make it available on the PATH!")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -34,50 +34,50 @@
|
||||||
"name": "cmake",
|
"name": "cmake",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "4.3.3",
|
"version": "4.4.0",
|
||||||
"executable": "cmake-4.3.3-windows-x86_64/bin/cmake.exe",
|
"executable": "cmake-4.4.0-windows-x86_64/bin/cmake.exe",
|
||||||
"url": "https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-windows-x86_64.zip",
|
"url": "https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-windows-x86_64.zip",
|
||||||
"sha512": "0df613db23b315d81895e672e8460f2b35f4c2dd2eb9f07e10b13389a675edcb09836a458b90d8c0211b3a2d6da38183714410769935a580b86a6177df691f6a",
|
"sha512": "35479675dc414747b6eb176034fb707490a758a7fa24007018bfb9eddb71e0422aa5e97b1efdbfe94eaca19923ac2e0dc8a2f807f549ce31ffb0ca23f59e04d0",
|
||||||
"archive": "cmake-4.3.3-windows-x86_64.zip"
|
"archive": "cmake-4.4.0-windows-x86_64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "cmake",
|
"name": "cmake",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "4.3.3",
|
"version": "4.4.0",
|
||||||
"executable": "cmake-4.3.3-windows-arm64/bin/cmake.exe",
|
"executable": "cmake-4.4.0-windows-arm64/bin/cmake.exe",
|
||||||
"url": "https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-windows-arm64.zip",
|
"url": "https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-windows-arm64.zip",
|
||||||
"sha512": "0e65010142a7841c0dc055374c1e05672de64c9e58df3b6a1bfe9539e998d318b525ee748bb57093747d324dc546e659e16985080401312491c4a959a16c0885",
|
"sha512": "076cc3771190acda2b5ca5b7ae5ef6105a468e7d2f61a37c0925c871f456ce366767d3a52708e9862625fab13314ebc929c6b7f823fd878c31ebc4058f001b7b",
|
||||||
"archive": "cmake-4.3.3-windows-arm64.zip"
|
"archive": "cmake-4.4.0-windows-arm64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "cmake",
|
"name": "cmake",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"version": "4.3.3",
|
"version": "4.4.0",
|
||||||
"executable": "cmake-4.3.3-macos-universal/CMake.app/Contents/bin/cmake",
|
"executable": "cmake-4.4.0-macos-universal/CMake.app/Contents/bin/cmake",
|
||||||
"url": "https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-macos-universal.tar.gz",
|
"url": "https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-macos-universal.tar.gz",
|
||||||
"sha512": "7a0d5a9ed07104315ab537c1a09fb07e805a0d9b9f02d06752bc405162202270e7660b05f324bae5ed162e748002ac4f6b02b81f9fc5c4a4aedd7604ed58edd6",
|
"sha512": "5fa394cf38f5d90cefb40f9589d41a2794796a15cc33045e901f82cfcfe4fb0df46fb77979b69a52715819d65274fb070ef0099c320ba6fd8ccab60f19fd9cd2",
|
||||||
"archive": "cmake-4.3.3-macos-universal.tar.gz"
|
"archive": "cmake-4.4.0-macos-universal.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "cmake",
|
"name": "cmake",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "4.3.3",
|
"version": "4.4.0",
|
||||||
"executable": "cmake-4.3.3-linux-aarch64/bin/cmake",
|
"executable": "cmake-4.4.0-linux-aarch64/bin/cmake",
|
||||||
"url": "https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-linux-aarch64.tar.gz",
|
"url": "https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-linux-aarch64.tar.gz",
|
||||||
"sha512": "726847b985d05de30d2762cafcf08573e0f4c16c42ca66f119ebe6e6ab9b7decc3173905c49e8dbbcf14d42fdf13f8757b4a118ca82a27a25298575b7d26443a",
|
"sha512": "dd7d4d5808c62e248dcd4f294c0a6d02f806d59cb8a61d5ab1fc48403f589f4046269d94e713b36eec0bdf9b78e9b56556f3ae2bad946ef3b87e1c03677ce7b5",
|
||||||
"archive": "cmake-4.3.3-linux-aarch64.tar.gz"
|
"archive": "cmake-4.4.0-linux-aarch64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "cmake",
|
"name": "cmake",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "4.3.3",
|
"version": "4.4.0",
|
||||||
"executable": "cmake-4.3.3-linux-x86_64/bin/cmake",
|
"executable": "cmake-4.4.0-linux-x86_64/bin/cmake",
|
||||||
"url": "https://github.com/Kitware/CMake/releases/download/v4.3.3/cmake-4.3.3-linux-x86_64.tar.gz",
|
"url": "https://github.com/Kitware/CMake/releases/download/v4.4.0/cmake-4.4.0-linux-x86_64.tar.gz",
|
||||||
"sha512": "1bb70ffebb107d2e72298b11aa90505bda78b04e70ad46d40239986e493d62b5dd01d82c2178e2495b333e6a3d24e3585a27482bb3e5cb10c45ca41877c38e90",
|
"sha512": "3df4aaa128a438ed48dcac7065fd355ff538eed8f394491298d0db63a891d671da247c8fa262e4fa6bf99429d630abab317d5a0248168fe203d1ca4978dab4da",
|
||||||
"archive": "cmake-4.3.3-linux-x86_64.tar.gz"
|
"archive": "cmake-4.4.0-linux-x86_64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "git",
|
"name": "git",
|
||||||
|
|
@ -85,9 +85,9 @@
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "2.7.4",
|
"version": "2.7.4",
|
||||||
"executable": "clangarm64/bin/git.exe",
|
"executable": "clangarm64/bin/git.exe",
|
||||||
"url": "https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.2/PortableGit-2.55.0.2-arm64.7z.exe",
|
"url": "https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.3/PortableGit-2.55.0.3-arm64.7z.exe",
|
||||||
"sha512": "2624f3593031f258e075e4c7b8f3cc3ac0cdc5a7a6bd1dbc19b93862d7a34cca4d30205a6154690c440d3bb98601887247229d3bd3ae4d5e75b38623573acfda",
|
"sha512": "9067799a4ba50e78eaac7673c887756f241f6e4b396ce54cc1c92082f9eb07449e5f4861faa3da5209e59d5cb8c80e66bb2ba0e0b836aa0ca4b9ae62b5328f35",
|
||||||
"archive": "PortableGit-2.55.0.2-arm64.7z.exe"
|
"archive": "PortableGit-2.55.0.3-arm64.7z.exe"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "git",
|
"name": "git",
|
||||||
|
|
@ -95,9 +95,9 @@
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "2.7.4",
|
"version": "2.7.4",
|
||||||
"executable": "mingw64/bin/git.exe",
|
"executable": "mingw64/bin/git.exe",
|
||||||
"url": "https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.2/PortableGit-2.55.0.2-64-bit.7z.exe",
|
"url": "https://github.com/git-for-windows/git/releases/download/v2.55.0.windows.3/PortableGit-2.55.0.3-64-bit.7z.exe",
|
||||||
"sha512": "e41062cb9486996bf158f6ea320091be26ff462fdda1ddd5dd625effc99d1d5e3114389f0bac2ab13592d6c33753f0c08686ef4eae2599a6d447a91b81c8faaa",
|
"sha512": "b217b7eca2bd02815379d5452700bcf3ebd9bdd1987d622e477c18691df71990b5cb4e967bc0ab60f6efd16b0a45558fb2ab4cf09138c929920fa51df1a4c838",
|
||||||
"archive": "PortableGit-2.55.0.2-64-bit.7z.exe"
|
"archive": "PortableGit-2.55.0.3-64-bit.7z.exe"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "git",
|
"name": "git",
|
||||||
|
|
@ -122,9 +122,9 @@
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"version": "5.37",
|
"version": "5.37",
|
||||||
"executable": "google-cloud-sdk/bin/gsutil.cmd",
|
"executable": "google-cloud-sdk/bin/gsutil.cmd",
|
||||||
"url": "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-567.0.0-windows-x86_64-bundled-python.zip",
|
"url": "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-576.0.0-windows-x86_64-bundled-python.zip",
|
||||||
"sha512": "5829f8991bd1a5d07daf2e101425c4483a5c93c4526ab410b6f21e8b603f8e5ee6d899ccc9f48f6835c5f8786ed46d111bffc6488af11198dc255891f0726e52",
|
"sha512": "309d9d8048b2f647c19980f4d130f19eb4378fe47049bd135ba4f1e8080908041307fb55de02e6962df90ac09382c5ca5ebf2146fc05a9573de73b1401b6aeec",
|
||||||
"archive": "google-cloud-sdk-567.0.0-windows-x86_64-bundled-python.zip"
|
"archive": "google-cloud-sdk-576.0.0-windows-x86_64-bundled-python.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "gsutil",
|
"name": "gsutil",
|
||||||
|
|
@ -311,61 +311,61 @@
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh.exe",
|
"executable": "pwsh.exe",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/PowerShell-7.6.2-win-x64.zip",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/PowerShell-7.6.3-win-x64.zip",
|
||||||
"sha512": "7aa272c9814e95b5b29c4bd263d14a8650278ebb2544b26d78583d726582aa4b726185a7c918b67f8b6288a35fe928db97ed91251bd9c469105b0421913be4f9",
|
"sha512": "497136c7955e0bec5430799a0befae07d0bab54703046f80a5bc5ddfdd852f24b3a9e36743dfc5da9e44658aa9b8a62794349db5a5e0b2cc229c6413273b399d",
|
||||||
"archive": "PowerShell-7.6.2-win-x64.zip"
|
"archive": "PowerShell-7.6.3-win-x64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh.exe",
|
"executable": "pwsh.exe",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/PowerShell-7.6.2-win-arm64.zip",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/PowerShell-7.6.3-win-arm64.zip",
|
||||||
"sha512": "b5597894ae93ee05bf923570f77419f0626e1ef3632c13a40bf7f6161a2b45ea6cd3e1caa5347eec6e2bda71659afa0b1a3c7349bea17bdfdb716f0453d92de6",
|
"sha512": "a018256c0e6740f43da4a627ca0f7904af767d76f2272a4242ac78c96404e2632457d30a999cd64b723754ff9e6fdffe703c097da96e8eed085fc19044312227",
|
||||||
"archive": "PowerShell-7.6.2-win-arm64.zip"
|
"archive": "PowerShell-7.6.3-win-arm64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh",
|
"executable": "pwsh",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/powershell-7.6.2-linux-x64.tar.gz",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/powershell-7.6.3-linux-x64.tar.gz",
|
||||||
"sha512": "effb505a891664d7c885129be67dc829218a074569c36dc00dcb3706435c72075c63ed67a1c533c044944993eefe460500c447163cab9f5b43233cd4d9d51b95",
|
"sha512": "57811417969fe3dbc07d60f28e9aa326b1f048b025adf474a6f11f3afd34ff21ef8ba8a2a6848246ecc6d3e9ec1c536078cc6faf5cbc41e8d2062947e36387e6",
|
||||||
"archive": "powershell-7.6.2-linux-x64.tar.gz"
|
"archive": "powershell-7.6.3-linux-x64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh",
|
"executable": "pwsh",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/powershell-7.6.2-linux-arm64.tar.gz",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/powershell-7.6.3-linux-arm64.tar.gz",
|
||||||
"sha512": "97b6e78208e1dd428b7d0786cc90a647b0f4d4cf939be2454a33f6c710fe5954fd0643befd4cecb69adba78eaf8ad453595d7413a58415e510c4136bb6856210",
|
"sha512": "8226837e57592ccd6ed83dff760b74ee7e43c23bf54ec895ac0d9d0d82b6989261cfe27dd1ffa76fa5494244e4b9aba385a4e10655bad67badf6212e275e84f9",
|
||||||
"archive": "powershell-7.6.2-linux-arm64.tar.gz"
|
"archive": "powershell-7.6.3-linux-arm64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh",
|
"executable": "pwsh",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/powershell-7.6.2-osx-x64.tar.gz",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/powershell-7.6.3-osx-x64.tar.gz",
|
||||||
"sha512": "8e6091b13b9ca7f8dd660b73292b2731e3e6c6daa6e58a13c3ad6b3cb75dc39b1137f64e6af3bbee31f840ca6e2ca2346327d1efce9b165c9cccbcb2505d3809",
|
"sha512": "7225c973e7a924f8d07f8c20082f78dd4896639342a4b0b5ee22bc8363e71dbd9604a475c443b586cbd059f1881e643a323ee34baae99129b07cd5ba2eda95b6",
|
||||||
"archive": "powershell-7.6.2-osx-x64.tar.gz"
|
"archive": "powershell-7.6.3-osx-x64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "powershell-core",
|
"name": "powershell-core",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "7.6.2",
|
"version": "7.6.3",
|
||||||
"executable": "pwsh",
|
"executable": "pwsh",
|
||||||
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.2/powershell-7.6.2-osx-arm64.tar.gz",
|
"url": "https://github.com/PowerShell/PowerShell/releases/download/v7.6.3/powershell-7.6.3-osx-arm64.tar.gz",
|
||||||
"sha512": "8e0c2fec58d19a2876017bd29f56b7ef04a0c093b722e0c322b134fad90f249eb6ad047bfd917f3652fa30a6fcb7a39f980b8c9973e2b78317bba0abbe271c40",
|
"sha512": "d534d1ecff5e20d035b3099743e9cd176c8cd16457b8112a7596f6322317f480d049ad2fa0838f20df5db0f83fdc70cf4e8f786a1debc8f93759cedc8d9ef090",
|
||||||
"archive": "powershell-7.6.2-osx-arm64.tar.gz"
|
"archive": "powershell-7.6.3-osx-arm64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "node",
|
"name": "node",
|
||||||
|
|
@ -431,131 +431,131 @@
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet.exe",
|
"executable": "dotnet.exe",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-win-x64.zip",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-win-x64.zip",
|
||||||
"sha512": "38456e992c4df0ff0ac9fc5f28ff09a88543c0fc4e4deedffda9c4ebaf852c4519addacf28814ea77ea42ce2d37db812fae5ba1fe25f06364ca5a6027036387f",
|
"sha512": "7d170ed75fa9af34c00646621d92011dbd71943952e2787cd15df9be78e6452b55dadef34d7eff77b802e6af4959e071a55855ac649afeac70901c3a2a258716",
|
||||||
"archive": "dotnet-sdk-10.0.301-win-x64.zip"
|
"archive": "dotnet-sdk-10.0.302-win-x64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet.exe",
|
"executable": "dotnet.exe",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-win-arm64.zip",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-win-arm64.zip",
|
||||||
"sha512": "cd2aabcf089d76c6f904e2b77ed06b9f397e105f8a9b8fb425ce6b8ab01413a01d59a1c298c58c627db3e8d197280825d7c2cfc8b8345a149ed5b86457cf5c5b",
|
"sha512": "241abb2b345cff1b32d87a9e29da5e9d52f899f691e7b34661274477564c4717054c489814a9fd7a5526fc9e0d8174a0d951a4a845556eee53add526f71917e7",
|
||||||
"archive": "dotnet-sdk-10.0.301-win-arm64.zip"
|
"archive": "dotnet-sdk-10.0.302-win-arm64.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "x86",
|
"arch": "x86",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet.exe",
|
"executable": "dotnet.exe",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-win-x86.zip",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-win-x86.zip",
|
||||||
"sha512": "19e3f1d05c45e741d8284a304aacc7256b464d8729d0e0fb10bc4e2b8bd44abacab69d4dfff3aa9fb7724bb569e43cd98146cfbd31cd4932ddbfc54cbe8b8d02",
|
"sha512": "39400959121917bb3cc7811287a9dff6b6ab9cb5142b274fbd8ee89d95a1b6f01869bb273785ecc44d416afda7f9e92485b3b20049b600749f87902e0898ba8c",
|
||||||
"archive": "dotnet-sdk-10.0.301-win-x86.zip"
|
"archive": "dotnet-sdk-10.0.302-win-x86.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet",
|
"executable": "dotnet",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-linux-x64.tar.gz",
|
||||||
"sha512": "cfbeec3a3a1d3ad3e168e37a77c4cc26c23125acd84a86d014047da3ecffce4c368a9acac4d7c950a047fa3d98989ce8aea69f8e5842cb6d330e8911e1c335a7",
|
"sha512": "10069bec8783596484a610332f090d562802a41b9b40e3327a5a5688b572e10c296ae300f940d40461f23c157ed1b0843c2f8e6b3f20d8d8d9d83432d8143bac",
|
||||||
"archive": "dotnet-sdk-10.0.301-linux-x64.tar.gz"
|
"archive": "dotnet-sdk-10.0.302-linux-x64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet",
|
"executable": "dotnet",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-arm64.tar.gz",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-linux-arm64.tar.gz",
|
||||||
"sha512": "4ee438b363cb8468930d50b6bdc738a375e2f33b25bfd0c8dcb55853dda7f0fb187693e0f49dfc31556e68320b961a50dcf3b74c1f25abe3a5bd916db607db99",
|
"sha512": "9e409c14e00686d661c78fa4dd9ad0e4dcf695c328bd5ff777d05b4a9c34b42cf89b12573b92e9fb2f565dbe12016b4835f77c7d9a42b55a7494df21634cd5d6",
|
||||||
"archive": "dotnet-sdk-10.0.301-linux-arm64.tar.gz"
|
"archive": "dotnet-sdk-10.0.302-linux-arm64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "x64",
|
"arch": "x64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet",
|
"executable": "dotnet",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-osx-x64.tar.gz",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-osx-x64.tar.gz",
|
||||||
"sha512": "a0eb333dff6ed7895e6b2469d01d014bc3a74e8632b5704e4fab55247b29c1e17df0c52e857dedf55092ebe650c63da749d8b09af707bc28cc25a12796b4be12",
|
"sha512": "48d5861dc0d6c9c782c6d163d6b334ecac2ebd65a1ae59e9ce5b93dd080a31d7ecfc4e4d47e0e35b201ce63661218d641e154022266294a3a8b84593a019cfbc",
|
||||||
"archive": "dotnet-sdk-10.0.301-osx-x64.tar.gz"
|
"archive": "dotnet-sdk-10.0.302-osx-x64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dotnet",
|
"name": "dotnet",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.0.301",
|
"version": "10.0.302",
|
||||||
"executable": "dotnet",
|
"executable": "dotnet",
|
||||||
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-osx-arm64.tar.gz",
|
"url": "https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.302/dotnet-sdk-10.0.302-osx-arm64.tar.gz",
|
||||||
"sha512": "7978737378704435bcb46d1aabf4824f4bac4c72b559b0c5796fadcf15aa2ac7e18fd3e5c983c0bcb48c60793bd554bcfb0caa9972132cf899c97ccd7465d938",
|
"sha512": "b2286dec9177e8b5543ff2fe95c84db358b87ec2a36a0d34a29033d70279940fd1134af56c4299648f8950db2d6ce35237698cf2818d9abc670c2c1664c92ac0",
|
||||||
"archive": "dotnet-sdk-10.0.301-osx-arm64.tar.gz"
|
"archive": "dotnet-sdk-10.0.302-osx-arm64.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_linux_amd64_10.32.4/azcopy",
|
"executable": "azcopy_linux_amd64_10.32.6/azcopy",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_linux_amd64_10.32.4.tar.gz",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_linux_amd64_10.32.6.tar.gz",
|
||||||
"sha512": "7f5252083fb656d84fb45d5b773a4f5971417f2ef6210e11160233689b4dc9cac9c6e29ee83d96fbd001c2c497e0e686dc6dcbd962fd9cd70a1518456bb86e47",
|
"sha512": "cb80541481013f51980f9033d890befc405c1bd990d941390e51327e1889903cbba10edfe6466db40ccd81c85c1a981cd6d0700e682e7f0509342db08a42092c",
|
||||||
"archive": "azcopy_linux_amd64_10.32.4.tar.gz"
|
"archive": "azcopy_linux_amd64_10.32.6.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "linux",
|
"os": "linux",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_linux_arm64_10.32.4/azcopy",
|
"executable": "azcopy_linux_arm64_10.32.6/azcopy",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_linux_arm64_10.32.4.tar.gz",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_linux_arm64_10.32.6.tar.gz",
|
||||||
"sha512": "c8dea71f5a4063df073b6dbc600aa787ebb4f71d06a588a55a8f4281a1850fbe22a23024cac64d5fb3704a7ead6243c4d5737538bcdd59a1d1c0d60bc717a05b",
|
"sha512": "9756db20081e4738c8225cd730c2c045a4bca878e9acd082dae5a4510b0435963fa3f4566fa958f3421d479f1a1b79c26b891d857f7acca22fff804fa6efe52c",
|
||||||
"archive": "azcopy_linux_arm64_10.32.4.tar.gz"
|
"archive": "azcopy_linux_arm64_10.32.6.tar.gz"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_darwin_amd64_10.32.4/azcopy",
|
"executable": "azcopy_darwin_amd64_10.32.6/azcopy",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_darwin_amd64_10.32.4.zip",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_darwin_amd64_10.32.6.zip",
|
||||||
"sha512": "29a84d05edd6413bedc141fafe4b6d95c0eb2efce91e80bdca8ae2a85066954a20b2b67e571db34df9285ac63b515ca6fa3fbd7bce163efeb64881ba1bc7684a",
|
"sha512": "c68e34f3c148b45dde4ffac974b65df3d4e386279f350ae000f39e3b667530f72e3fc7d8e877c8515b5c8c758903eca1c4623ad336267238d41520e279459f5b",
|
||||||
"archive": "azcopy_darwin_amd64_10.32.4.zip"
|
"archive": "azcopy_darwin_amd64_10.32.6.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "osx",
|
"os": "osx",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_darwin_arm64_10.32.4/azcopy",
|
"executable": "azcopy_darwin_arm64_10.32.6/azcopy",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_darwin_arm64_10.32.4.zip",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_darwin_arm64_10.32.6.zip",
|
||||||
"sha512": "578179a7f935a5395206386e8fc34d35b72bc0b3633517719758868a2849adfc1d75d308aa3e7ca7ef2e24de079c8366c83908d6519aa0d90c2c79cd6a66fc11",
|
"sha512": "fbed2b9d27341459e849a3e8e25c759bf81c9b905bd847134ebb02f453abe6d1b050d4ddbd3d1634068c4d540fc79d2065e031178de5e83c66b013b70f9fbd12",
|
||||||
"archive": "azcopy_darwin_arm64_10.32.4.zip"
|
"archive": "azcopy_darwin_arm64_10.32.6.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "amd64",
|
"arch": "amd64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_windows_amd64_10.32.4/azcopy.exe",
|
"executable": "azcopy_windows_amd64_10.32.6/azcopy.exe",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_windows_amd64_10.32.4.zip",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_windows_amd64_10.32.6.zip",
|
||||||
"sha512": "b3e9a37566667c1200a32100637364c4d7a624b59aa8df80957ffcb871a2be8cf8b2a6cb6429abaf0f71d8da8b4cf0e4da2fcbba9747136b254039a13997acef",
|
"sha512": "80c06945808de90c7c0b42f2554c8ff7c2193a9f0693516ff572e2a61b80227b0ac1d782a58db82190baf7fe613da56f08f6c799f62c58f46e099edfa7f35af6",
|
||||||
"archive": "azcopy_windows_amd64_10.32.4.zip"
|
"archive": "azcopy_windows_amd64_10.32.6.zip"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "azcopy",
|
"name": "azcopy",
|
||||||
"os": "windows",
|
"os": "windows",
|
||||||
"arch": "arm64",
|
"arch": "arm64",
|
||||||
"version": "10.32.4",
|
"version": "10.32.6",
|
||||||
"executable": "azcopy_windows_arm64_10.32.4/azcopy.exe",
|
"executable": "azcopy_windows_arm64_10.32.6/azcopy.exe",
|
||||||
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.4/azcopy_windows_arm64_10.32.4.zip",
|
"url": "https://github.com/Azure/azure-storage-azcopy/releases/download/v10.32.6/azcopy_windows_arm64_10.32.6.zip",
|
||||||
"sha512": "7e31527bc2381b228ad6ecbbf20eb11e62741c443ad83fef88acb694110dbef07366d5091388b4a521118389fbf87a67b389e316bef80ca044134f8b4b610281",
|
"sha512": "de1a1520d44b30abf4a228778a84f57056c5017f9a56909dca705017c2e7e81c35b407ca5c1822d5eb88513e7741a562d56536f759913576cad43e153beb0e51",
|
||||||
"archive": "azcopy_windows_arm64_10.32.4.zip"
|
"archive": "azcopy_windows_arm64_10.32.6.zip"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,3 +2,4 @@ set(VCPKG_TARGET_ARCHITECTURE x64)
|
||||||
set(VCPKG_CRT_LINKAGE dynamic)
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||||
set(VCPKG_BUILD_TYPE release)
|
set(VCPKG_BUILD_TYPE release)
|
||||||
|
set(VCPKG_PROVIDED_FORTRAN ON)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
set(VCPKG_TARGET_ARCHITECTURE x64)
|
set(VCPKG_TARGET_ARCHITECTURE x64)
|
||||||
set(VCPKG_CRT_LINKAGE dynamic)
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
set(VCPKG_LIBRARY_LINKAGE static)
|
set(VCPKG_LIBRARY_LINKAGE static)
|
||||||
|
set(VCPKG_PROVIDED_FORTRAN ON)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
set(VCPKG_TARGET_ARCHITECTURE x64)
|
set(VCPKG_TARGET_ARCHITECTURE x64)
|
||||||
set(VCPKG_CRT_LINKAGE static)
|
set(VCPKG_CRT_LINKAGE static)
|
||||||
set(VCPKG_LIBRARY_LINKAGE static)
|
set(VCPKG_LIBRARY_LINKAGE static)
|
||||||
|
set(VCPKG_PROVIDED_FORTRAN ON)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
set(VCPKG_TARGET_ARCHITECTURE x64)
|
set(VCPKG_TARGET_ARCHITECTURE x64)
|
||||||
set(VCPKG_CRT_LINKAGE dynamic)
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||||
|
set(VCPKG_PROVIDED_FORTRAN ON)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
set(VCPKG_TARGET_ARCHITECTURE x86)
|
set(VCPKG_TARGET_ARCHITECTURE x86)
|
||||||
set(VCPKG_CRT_LINKAGE dynamic)
|
set(VCPKG_CRT_LINKAGE dynamic)
|
||||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||||
|
set(VCPKG_PROVIDED_FORTRAN ON)
|
||||||
|
|
|
||||||
|
|
@ -2917,8 +2917,8 @@
|
||||||
"port-version": 0
|
"port-version": 0
|
||||||
},
|
},
|
||||||
"ezfoundation": {
|
"ezfoundation": {
|
||||||
"baseline": "21.10",
|
"baseline": "26.3",
|
||||||
"port-version": 1
|
"port-version": 0
|
||||||
},
|
},
|
||||||
"f3d": {
|
"f3d": {
|
||||||
"baseline": "3.2.0",
|
"baseline": "3.2.0",
|
||||||
|
|
@ -6698,7 +6698,7 @@
|
||||||
},
|
},
|
||||||
"mongo-c-driver": {
|
"mongo-c-driver": {
|
||||||
"baseline": "2.3.1",
|
"baseline": "2.3.1",
|
||||||
"port-version": 0
|
"port-version": 1
|
||||||
},
|
},
|
||||||
"mongo-cxx-driver": {
|
"mongo-cxx-driver": {
|
||||||
"baseline": "4.4.0",
|
"baseline": "4.4.0",
|
||||||
|
|
@ -7422,7 +7422,7 @@
|
||||||
},
|
},
|
||||||
"opencv4": {
|
"opencv4": {
|
||||||
"baseline": "4.12.0",
|
"baseline": "4.12.0",
|
||||||
"port-version": 5
|
"port-version": 6
|
||||||
},
|
},
|
||||||
"openexr": {
|
"openexr": {
|
||||||
"baseline": "3.4.13",
|
"baseline": "3.4.13",
|
||||||
|
|
@ -7970,7 +7970,7 @@
|
||||||
},
|
},
|
||||||
"popsift": {
|
"popsift": {
|
||||||
"baseline": "0.10.0",
|
"baseline": "0.10.0",
|
||||||
"port-version": 1
|
"port-version": 2
|
||||||
},
|
},
|
||||||
"portable-file-dialogs": {
|
"portable-file-dialogs": {
|
||||||
"baseline": "0.1.0",
|
"baseline": "0.1.0",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "67a0b5df02046ff1862689ede1a713d46470da41",
|
||||||
|
"version": "26.3",
|
||||||
|
"port-version": 0
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "2d772ca62c751b0f5498a9857968b3366d3f5f67",
|
"git-tree": "2d772ca62c751b0f5498a9857968b3366d3f5f67",
|
||||||
"version": "21.10",
|
"version": "21.10",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "e1338692cf8462e5e974d24d097fe31870cc0f75",
|
||||||
|
"version": "2.3.1",
|
||||||
|
"port-version": 1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "0363b9a47c3f2549444cc8575ca5c9ff7df115f4",
|
"git-tree": "0363b9a47c3f2549444cc8575ca5c9ff7df115f4",
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "50e7bf04e4a0e069656151d374b49f54388bc88f",
|
||||||
|
"version": "4.12.0",
|
||||||
|
"port-version": 6
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "0e28cd8713d7b810bef28ed0d7859dd761215854",
|
"git-tree": "0e28cd8713d7b810bef28ed0d7859dd761215854",
|
||||||
"version": "4.12.0",
|
"version": "4.12.0",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "ea8a55ff6e54b29eaa89612cc30e845762b4b793",
|
||||||
|
"version": "0.10.0",
|
||||||
|
"port-version": 2
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "24ec78a1eca98f407158ac08a43b923a5417849a",
|
"git-tree": "24ec78a1eca98f407158ac08a43b923a5417849a",
|
||||||
"version": "0.10.0",
|
"version": "0.10.0",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue