From 002309f772911d3dfacd686a22c17ca53ff6a161 Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 13:54:47 +0000 Subject: [PATCH 1/9] Bump vcpkg to latest version --- external/vcpkg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/vcpkg b/external/vcpkg index ec6fe06e..18e6e885 160000 --- a/external/vcpkg +++ b/external/vcpkg @@ -1 +1 @@ -Subproject commit ec6fe06e8da05a8157dc8581fa96b36b571c1bd5 +Subproject commit 18e6e8855d2da137fada2387b6d137583c02b77c From dc45df1607c17eaf1793b2d460c9ba357e081d67 Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 14:15:56 +0000 Subject: [PATCH 2/9] Update the Project Type and try arm-windows --- build_windows.bat | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/build_windows.bat b/build_windows.bat index 7b990532..5aad7060 100644 --- a/build_windows.bat +++ b/build_windows.bat @@ -4,25 +4,31 @@ set BUILD_DIR_ROOT=%CD%\lzsbuild set DEPS_BUILD_DIR_ROOT=%BUILD_DIR_ROOT%\deps set DEPS_BUILD_DIR_ROOT_32=%DEPS_BUILD_DIR_ROOT%\win32 set DEPS_BUILD_DIR_ROOT_64=%DEPS_BUILD_DIR_ROOT%\win64 +set DEPS_BUILD_DIR_ROOT_ARM64=%DEPS_BUILD_DIR_ROOT%\winarm64 set LIB_BUILD_DIR_ROOT=%BUILD_DIR_ROOT%\lib set LIB_BUILD_DIR_ROOT_32=%LIB_BUILD_DIR_ROOT%\win32 set LIB_BUILD_DIR_ROOT_64=%LIB_BUILD_DIR_ROOT%\win64 +set LIB_BUILD_DIR_ROOT_ARM64=%LIB_BUILD_DIR_ROOT%\winarm64 set ARTIFACTS_DIR_ROOT=%CD%\artifacts set ARTIFACTS_DIR_ROOT_64=%ARTIFACTS_DIR_ROOT%\win64 set ARTIFACTS_DIR_ROOT_32=%ARTIFACTS_DIR_ROOT%\win32 +set ARTIFACTS_DIR_ROOT_ARM64=%ARTIFACTS_DIR_ROOT%\winarm64 set CONFIG=RelWithDebInfo -set COMMON_CMAKE_PARAMS=-DCMAKE_BUILD_TYPE=%CONFIG% -G "Visual Studio 16 2019" +set COMMON_CMAKE_PARAMS=-DCMAKE_BUILD_TYPE=%CONFIG% -G "Visual Studio 17 2022" echo Common cmake params: %COMMON_CMAKE_PARAMS% echo 32-bit dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_32% echo 64-bit dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_64% +echo 64-bit arm dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_ARM64% echo 32-bit dependencies build root: %DEPS_BUILD_DIR_ROOT_32% echo 64-bit dependencies build root: %DEPS_BUILD_DIR_ROOT_64% +echo 64-bit arm dependencies build root: %DEPS_BUILD_DIR_ROOT_ARM64% echo 32-bit library build root: %LIB_BUILD_DIR_ROOT_32% echo 64-bit library build root: %LIB_BUILD_DIR_ROOT_64% +echo 64-bit arm library build root: %LIB_BUILD_DIR_ROOT_ARM64% pushd . cd external\vcpkg @@ -31,7 +37,7 @@ popd external\vcpkg\vcpkg.exe integrate install if %errorlevel% neq 0 exit /b %errorlevel% -external\vcpkg\vcpkg.exe install liblzma:x64-windows-static liblzma:x86-windows-static +external\vcpkg\vcpkg.exe install liblzma:x64-windows-static liblzma:x86-windows-static liblzma:arm-windows-static if %errorlevel% neq 0 exit /b %errorlevel% REM 64-bit deps @@ -45,6 +51,17 @@ if %errorlevel% neq 0 exit /b %errorlevel% cmake --install "%DEPS_BUILD_DIR_ROOT_64%" --config %CONFIG% if %errorlevel% neq 0 exit /b %errorlevel% +REM 64-bit arm deps +mkdir "%DEPS_BUILD_DIR_ROOT_ARM64%" +cmake %COMMON_CMAKE_PARAMS% -B "%DEPS_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_DEPENDENCIES=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm . +if %errorlevel% neq 0 exit /b %errorlevel% + +cmake --build "%DEPS_BUILD_DIR_ROOT_ARM64%" -v --config %CONFIG% +if %errorlevel% neq 0 exit /b %errorlevel% + +cmake --install "%DEPS_BUILD_DIR_ROOT_ARM64%" --config %CONFIG% +if %errorlevel% neq 0 exit /b %errorlevel% + REM 32-bit deps mkdir "%DEPS_BUILD_DIR_ROOT_32%" cmake %COMMON_CMAKE_PARAMS% -B "%DEPS_BUILD_DIR_ROOT_32%" -DVCPKG_TARGET_TRIPLET=x86-windows-static -DBUILD_DEPENDENCIES=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_32%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_32%" -A Win32 . @@ -65,6 +82,14 @@ if %errorlevel% neq 0 exit /b %errorlevel% cmake --build "%LIB_BUILD_DIR_ROOT_64%" --config %CONFIG% -v if %errorlevel% neq 0 exit /b %errorlevel% +REM 64-bit arm library +mkdir "%LIB_BUILD_DIR_ROOT_ARM64%" +cmake %COMMON_CMAKE_PARAMS% -B "%LIB_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_LIBZIP=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm . +if %errorlevel% neq 0 exit /b %errorlevel% + +cmake --build "%LIB_BUILD_DIR_ROOT_ARM64%" --config %CONFIG% -v +if %errorlevel% neq 0 exit /b %errorlevel% + REM 32-bit library mkdir "%LIB_BUILD_DIR_ROOT_32%" cmake %COMMON_CMAKE_PARAMS% -B "%LIB_BUILD_DIR_ROOT_32%" -DVCPKG_TARGET_TRIPLET=x86-windows-static -DBUILD_LIBZIP=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_32%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_32%" -A Win32 . From 1b2448e99fccc00ec66a256047153e2ea7b6ed34 Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 14:28:13 +0000 Subject: [PATCH 3/9] Fix the arm64 build --- build_windows.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build_windows.bat b/build_windows.bat index 5aad7060..40d8a23a 100644 --- a/build_windows.bat +++ b/build_windows.bat @@ -53,7 +53,7 @@ if %errorlevel% neq 0 exit /b %errorlevel% REM 64-bit arm deps mkdir "%DEPS_BUILD_DIR_ROOT_ARM64%" -cmake %COMMON_CMAKE_PARAMS% -B "%DEPS_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_DEPENDENCIES=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm . +cmake %COMMON_CMAKE_PARAMS% -B "%DEPS_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_DEPENDENCIES=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm64 . if %errorlevel% neq 0 exit /b %errorlevel% cmake --build "%DEPS_BUILD_DIR_ROOT_ARM64%" -v --config %CONFIG% @@ -84,7 +84,7 @@ if %errorlevel% neq 0 exit /b %errorlevel% REM 64-bit arm library mkdir "%LIB_BUILD_DIR_ROOT_ARM64%" -cmake %COMMON_CMAKE_PARAMS% -B "%LIB_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_LIBZIP=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm . +cmake %COMMON_CMAKE_PARAMS% -B "%LIB_BUILD_DIR_ROOT_ARM64%" -DVCPKG_TARGET_TRIPLET=arm-windows-static -DBUILD_LIBZIP=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" -A arm64 . if %errorlevel% neq 0 exit /b %errorlevel% cmake --build "%LIB_BUILD_DIR_ROOT_ARM64%" --config %CONFIG% -v From 7a4e4206d9cd7e2b6d419afaa79440f8f5a7964a Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 14:33:07 +0000 Subject: [PATCH 4/9] Add to Nuget Package --- LibZipSharp.props | 2 +- LibZipSharp/Xamarin.LibZipSharp.targets | 3 +++ LibZipSharp/libZipSharp.csproj | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/LibZipSharp.props b/LibZipSharp.props index be6aa96d..4892bd22 100644 --- a/LibZipSharp.props +++ b/LibZipSharp.props @@ -1,6 +1,6 @@ - <_LibZipSharpAssemblyVersion>2.0.3 + <_LibZipSharpAssemblyVersion>2.0.4-alpha-1 - <_LibZipSharpNugetVersion>$(_LibZipSharpAssemblyVersion) + <_LibZipSharpNugetVersion>$(_LibZipSharpAssemblyVersion)-alpha-1 <_NativeBuildDir>$(MSBuildThisFileDirectory)lzsbuild <_ExternalDir>$(MSBuildThisFileDirectory)external <_MonoPosixNugetVersion>7.0.0-final.1.21369.2 From c8a3fd66bd7433f0fb463b175e02f49f6a8978af Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 15:54:41 +0000 Subject: [PATCH 8/9] Fix RID to be win-arm64 --- LibZipSharp/Xamarin.LibZipSharp.targets | 2 +- LibZipSharp/libZipSharp.csproj | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/LibZipSharp/Xamarin.LibZipSharp.targets b/LibZipSharp/Xamarin.LibZipSharp.targets index e1e7ebb8..533120ff 100644 --- a/LibZipSharp/Xamarin.LibZipSharp.targets +++ b/LibZipSharp/Xamarin.LibZipSharp.targets @@ -6,7 +6,7 @@ <_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-x64\native\libZipSharpNative.*"> lib64\%(FileName)%(Extension) - <_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-arm-x64\native\libZipSharpNative.*"> + <_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-arm64\native\libZipSharpNative.*"> %(FileName)%(Extension) <_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-x86\native\libZipSharpNative.*"> diff --git a/LibZipSharp/libZipSharp.csproj b/LibZipSharp/libZipSharp.csproj index 751af94f..009ebcfc 100644 --- a/LibZipSharp/libZipSharp.csproj +++ b/LibZipSharp/libZipSharp.csproj @@ -54,8 +54,8 @@ - - + + From 9242197313459f125fa7868d1ee02829927cc313 Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 16 Feb 2022 16:48:15 +0000 Subject: [PATCH 9/9] use EC Pool --- azure-pipelines.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 0df5a3a0..47fcfc3c 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -19,7 +19,7 @@ stages: pool: name: AzurePipelines-EO demands: - - ImageOverride -equals AzurePipelinesWindows2019compliant + - ImageOverride -equals AzurePipelinesWindows2022compliant steps: - script: | echo "Hello" @@ -170,7 +170,9 @@ stages: - job: testlinux displayName: 'Test Linux' pool: - vmImage: ubuntu-18.04 + name: AzurePipelines-EO + demands: + - ImageOverride -equals AzurePipelinesUbuntu18.04compliant steps: - task: DownloadBuildArtifacts@0 displayName: download artifacts @@ -197,7 +199,7 @@ stages: - job: testmacos displayName: 'Test MacOS' pool: - vmImage: macOS-latest + vmImage: internal-macos-11 steps: - template: yaml-templates/use-dot-net.yaml parameters: @@ -227,7 +229,9 @@ stages: - job: testwindows displayName: 'Test Windows' pool: - vmImage: windows-latest + name: AzurePipelines-EO + demands: + - ImageOverride -equals AzurePipelinesWindows2022compliant steps: - template: yaml-templates/use-dot-net.yaml parameters: