Skip to content

Commit 33f5b01

Browse files
authored
Bump vcpkg to latest version (#106)
Bump vcpkg to the latest version. Add support for building win-arm64 native libraries and add them to the Nuget Package. Bump version to 2.0.4 and the Nuget to 2.0.4-alpha-1.
1 parent 6fd0a14 commit 33f5b01

File tree

6 files changed

+101
-13
lines changed

6 files changed

+101
-13
lines changed

LibZipSharp.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
22
<PropertyGroup>
3-
<_LibZipSharpAssemblyVersion>2.0.3</_LibZipSharpAssemblyVersion>
3+
<_LibZipSharpAssemblyVersion>2.0.4</_LibZipSharpAssemblyVersion>
44
<!--
55
Nuget Version. You can append things like -alpha-1 etc to this value.
66
But always leave the $(_LibZipSharpAssemblyVersion) value at the start.
77
-->
8-
<_LibZipSharpNugetVersion>$(_LibZipSharpAssemblyVersion)</_LibZipSharpNugetVersion>
8+
<_LibZipSharpNugetVersion>$(_LibZipSharpAssemblyVersion)-alpha-1</_LibZipSharpNugetVersion>
99
<_NativeBuildDir>$(MSBuildThisFileDirectory)lzsbuild</_NativeBuildDir>
1010
<_ExternalDir>$(MSBuildThisFileDirectory)external</_ExternalDir>
1111
<_MonoPosixNugetVersion>7.0.0-final.1.21369.2</_MonoPosixNugetVersion>

LibZipSharp/Xamarin.LibZipSharp.targets

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
<_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-x64\native\libZipSharpNative.*">
77
<Link>lib64\%(FileName)%(Extension)</Link>
88
</_LibZipNativeLibs>
9+
<_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-arm64\native\libZipSharpNative.*">
10+
<Link>%(FileName)%(Extension)</Link>
11+
</_LibZipNativeLibs>
912
<_LibZipNativeLibs Include="$(MSBuildThisFileDirectory)..\runtimes\win-x86\native\libZipSharpNative.*">
1013
<Link>%(FileName)%(Extension)</Link>
1114
</_LibZipNativeLibs>

LibZipSharp/libZipSharp.csproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@
5454
<None Include="$(_NativeBuildDir)\lib\Darwin\libZipSharpNative.dylib" PackagePath="runtimes\osx\native\libZipSharpNative.dylib" Pack="true" />
5555
<None Include="$(_NativeBuildDir)\lib\win64\libZipSharpNative.dll" PackagePath="runtimes\win-x64\native\libZipSharpNative.dll" Pack="true" />
5656
<None Include="$(_NativeBuildDir)\lib\win64\libZipSharpNative.pdb" PackagePath="runtimes\win-x64\native\libZipSharpNative.pdb" Pack="true" />
57+
<None Include="$(_NativeBuildDir)\lib\winarm64\libZipSharpNative.dll" PackagePath="runtimes\win-arm64\native\libZipSharpNative.dll" Pack="true" />
58+
<None Include="$(_NativeBuildDir)\lib\winarm64\libZipSharpNative.pdb" PackagePath="runtimes\win-arm64\native\libZipSharpNative.pdb" Pack="true" />
5759
<None Include="$(_NativeBuildDir)\lib\win32\libZipSharpNative.dll" PackagePath="runtimes\win-x86\native\libZipSharpNative.dll" Pack="true" />
5860
<None Include="$(_NativeBuildDir)\lib\win32\libZipSharpNative.pdb" PackagePath="runtimes\win-x86\native\libZipSharpNative.pdb" Pack="true" />
5961
<None Include="$(_NativeBuildDir)\lib\Linux\libZipSharpNative.so" PackagePath="runtimes\linux-x64\native\libZipSharpNative.so" Pack="true" />

azure-pipelines.yml

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ stages:
1919
pool:
2020
name: AzurePipelines-EO
2121
demands:
22-
- ImageOverride -equals AzurePipelinesWindows2019compliant
22+
- ImageOverride -equals AzurePipelinesWindows2022compliant
2323
steps:
2424
- script: |
2525
echo "Hello"
@@ -42,6 +42,13 @@ stages:
4242
archiveType: 7z
4343
replaceExistingArchive: true
4444
archiveFile: $(Build.ArtifactStagingDirectory)\libzip-windows-x64.7z
45+
- task: ArchiveFiles@2
46+
inputs:
47+
rootFolderOrFile: lzsbuild\lib\winarm64\RelWithDebInfo\
48+
includeRootFolder: false
49+
archiveType: 7z
50+
replaceExistingArchive: true
51+
archiveFile: $(Build.ArtifactStagingDirectory)\libzip-windows-arm-x64.7z
4552
- task: PublishBuildArtifacts@1
4653
displayName: upload artifacts
4754
inputs:
@@ -107,6 +114,11 @@ stages:
107114
inputs:
108115
archiveFilePatterns: $(Build.ArtifactStagingDirectory)/native/libzip-windows-x64.7z
109116
destinationFolder: lzsbuild/lib/win64
117+
- task: ExtractFiles@1
118+
displayName: Extract 64 bit ARM Windows native
119+
inputs:
120+
archiveFilePatterns: $(Build.ArtifactStagingDirectory)/native/libzip-windows-arm-x64.7z
121+
destinationFolder: lzsbuild/lib/winarm64
110122
- task: ExtractFiles@1
111123
displayName: Extract 32 bit Windows native
112124
inputs:
@@ -158,7 +170,9 @@ stages:
158170
- job: testlinux
159171
displayName: 'Test Linux'
160172
pool:
161-
vmImage: ubuntu-18.04
173+
name: AzurePipelines-EO
174+
demands:
175+
- ImageOverride -equals AzurePipelinesUbuntu18.04compliant
162176
steps:
163177
- task: DownloadBuildArtifacts@0
164178
displayName: download artifacts
@@ -185,7 +199,7 @@ stages:
185199
- job: testmacos
186200
displayName: 'Test MacOS'
187201
pool:
188-
vmImage: macOS-latest
202+
vmImage: internal-macos-11
189203
steps:
190204
- template: yaml-templates/use-dot-net.yaml
191205
parameters:
@@ -215,7 +229,9 @@ stages:
215229
- job: testwindows
216230
displayName: 'Test Windows'
217231
pool:
218-
vmImage: windows-latest
232+
name: AzurePipelines-EO
233+
demands:
234+
- ImageOverride -equals AzurePipelinesWindows2022compliant
219235
steps:
220236
- template: yaml-templates/use-dot-net.yaml
221237
parameters:

build_windows.bat

Lines changed: 73 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,31 @@ set BUILD_DIR_ROOT=%CD%\lzsbuild
44
set DEPS_BUILD_DIR_ROOT=%BUILD_DIR_ROOT%\deps
55
set DEPS_BUILD_DIR_ROOT_32=%DEPS_BUILD_DIR_ROOT%\win32
66
set DEPS_BUILD_DIR_ROOT_64=%DEPS_BUILD_DIR_ROOT%\win64
7+
set DEPS_BUILD_DIR_ROOT_ARM64=%DEPS_BUILD_DIR_ROOT%\winarm64
78

89
set LIB_BUILD_DIR_ROOT=%BUILD_DIR_ROOT%\lib
910
set LIB_BUILD_DIR_ROOT_32=%LIB_BUILD_DIR_ROOT%\win32
1011
set LIB_BUILD_DIR_ROOT_64=%LIB_BUILD_DIR_ROOT%\win64
12+
set LIB_BUILD_DIR_ROOT_ARM64=%LIB_BUILD_DIR_ROOT%\winarm64
1113

1214
set ARTIFACTS_DIR_ROOT=%CD%\artifacts
1315
set ARTIFACTS_DIR_ROOT_64=%ARTIFACTS_DIR_ROOT%\win64
1416
set ARTIFACTS_DIR_ROOT_32=%ARTIFACTS_DIR_ROOT%\win32
17+
set ARTIFACTS_DIR_ROOT_ARM64=%ARTIFACTS_DIR_ROOT%\winarm64
1518

1619
set CONFIG=RelWithDebInfo
17-
set COMMON_CMAKE_PARAMS=-DCMAKE_BUILD_TYPE=%CONFIG% -G "Visual Studio 16 2019"
20+
set COMMON_CMAKE_PARAMS=-DCMAKE_BUILD_TYPE=%CONFIG% -G "Visual Studio 17 2022"
1821

1922
echo Common cmake params: %COMMON_CMAKE_PARAMS%
2023
echo 32-bit dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_32%
2124
echo 64-bit dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_64%
25+
echo 64-bit arm dependencies artifacts dir: %ARTIFACTS_DIR_ROOT_ARM64%
2226
echo 32-bit dependencies build root: %DEPS_BUILD_DIR_ROOT_32%
2327
echo 64-bit dependencies build root: %DEPS_BUILD_DIR_ROOT_64%
28+
echo 64-bit arm dependencies build root: %DEPS_BUILD_DIR_ROOT_ARM64%
2429
echo 32-bit library build root: %LIB_BUILD_DIR_ROOT_32%
2530
echo 64-bit library build root: %LIB_BUILD_DIR_ROOT_64%
31+
echo 64-bit arm library build root: %LIB_BUILD_DIR_ROOT_ARM64%
2632

2733
pushd .
2834
cd external\vcpkg
@@ -31,12 +37,19 @@ popd
3137
external\vcpkg\vcpkg.exe integrate install
3238
if %errorlevel% neq 0 exit /b %errorlevel%
3339

34-
external\vcpkg\vcpkg.exe install liblzma:x64-windows-static liblzma:x86-windows-static
40+
external\vcpkg\vcpkg.exe install liblzma:x64-windows-static liblzma:x86-windows-static liblzma:arm-windows-static
3541
if %errorlevel% neq 0 exit /b %errorlevel%
3642

3743
REM 64-bit deps
3844
mkdir "%DEPS_BUILD_DIR_ROOT_64%"
39-
cmake %COMMON_CMAKE_PARAMS% -B "%DEPS_BUILD_DIR_ROOT_64%" -DVCPKG_TARGET_TRIPLET=x64-windows-static -DBUILD_DEPENDENCIES=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_64%" -A x64 .
45+
cmake %COMMON_CMAKE_PARAMS% ^
46+
-B "%DEPS_BUILD_DIR_ROOT_64%" ^
47+
-DVCPKG_TARGET_TRIPLET=x64-windows-static ^
48+
-DBUILD_DEPENDENCIES=ON ^
49+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_64%" ^
50+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_64%" ^
51+
-A x64 .
52+
4053
if %errorlevel% neq 0 exit /b %errorlevel%
4154

4255
cmake --build "%DEPS_BUILD_DIR_ROOT_64%" -v --config %CONFIG%
@@ -45,9 +58,34 @@ if %errorlevel% neq 0 exit /b %errorlevel%
4558
cmake --install "%DEPS_BUILD_DIR_ROOT_64%" --config %CONFIG%
4659
if %errorlevel% neq 0 exit /b %errorlevel%
4760

61+
REM 64-bit arm deps
62+
mkdir "%DEPS_BUILD_DIR_ROOT_ARM64%"
63+
cmake %COMMON_CMAKE_PARAMS% ^
64+
-B "%DEPS_BUILD_DIR_ROOT_ARM64%" ^
65+
-DVCPKG_TARGET_TRIPLET=arm-windows-static ^
66+
-DBUILD_DEPENDENCIES=ON ^
67+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" ^
68+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" ^
69+
-A arm64 .
70+
71+
if %errorlevel% neq 0 exit /b %errorlevel%
72+
73+
cmake --build "%DEPS_BUILD_DIR_ROOT_ARM64%" -v --config %CONFIG%
74+
if %errorlevel% neq 0 exit /b %errorlevel%
75+
76+
cmake --install "%DEPS_BUILD_DIR_ROOT_ARM64%" --config %CONFIG%
77+
if %errorlevel% neq 0 exit /b %errorlevel%
78+
4879
REM 32-bit deps
4980
mkdir "%DEPS_BUILD_DIR_ROOT_32%"
50-
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 .
81+
cmake %COMMON_CMAKE_PARAMS% ^
82+
-B "%DEPS_BUILD_DIR_ROOT_32%" ^
83+
-DVCPKG_TARGET_TRIPLET=x86-windows-static ^
84+
-DBUILD_DEPENDENCIES=ON ^
85+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_32%" ^
86+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_32%" ^
87+
-A Win32 .
88+
5189
if %errorlevel% neq 0 exit /b %errorlevel%
5290

5391
cmake --build "%DEPS_BUILD_DIR_ROOT_32%" --config %CONFIG% -v
@@ -59,15 +97,44 @@ if %errorlevel% neq 0 exit /b %errorlevel%
5997

6098
REM 64-bit library
6199
mkdir "%LIB_BUILD_DIR_ROOT_64%"
62-
cmake %COMMON_CMAKE_PARAMS% -B "%LIB_BUILD_DIR_ROOT_64%" -DVCPKG_TARGET_TRIPLET=x64-windows-static -DBUILD_LIBZIP=ON "-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_64%" "-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_64%" -A x64 .
100+
cmake %COMMON_CMAKE_PARAMS% ^
101+
-B "%LIB_BUILD_DIR_ROOT_64%" ^
102+
-DVCPKG_TARGET_TRIPLET=x64-windows-static ^
103+
-DBUILD_LIBZIP=ON ^
104+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_64%" ^
105+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_64%" ^
106+
-A x64 .
107+
63108
if %errorlevel% neq 0 exit /b %errorlevel%
64109

65110
cmake --build "%LIB_BUILD_DIR_ROOT_64%" --config %CONFIG% -v
66111
if %errorlevel% neq 0 exit /b %errorlevel%
67112

113+
REM 64-bit arm library
114+
mkdir "%LIB_BUILD_DIR_ROOT_ARM64%"
115+
cmake %COMMON_CMAKE_PARAMS% ^
116+
-B "%LIB_BUILD_DIR_ROOT_ARM64%" ^
117+
-DVCPKG_TARGET_TRIPLET=arm-windows-static ^
118+
-DBUILD_LIBZIP=ON ^
119+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_ARM64%" ^
120+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_ARM64%" ^
121+
-A arm64 .
122+
123+
if %errorlevel% neq 0 exit /b %errorlevel%
124+
125+
cmake --build "%LIB_BUILD_DIR_ROOT_ARM64%" --config %CONFIG% -v
126+
if %errorlevel% neq 0 exit /b %errorlevel%
127+
68128
REM 32-bit library
69129
mkdir "%LIB_BUILD_DIR_ROOT_32%"
70-
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 .
130+
cmake %COMMON_CMAKE_PARAMS% ^
131+
-B "%LIB_BUILD_DIR_ROOT_32%" ^
132+
-DVCPKG_TARGET_TRIPLET=x86-windows-static ^
133+
-DBUILD_LIBZIP=ON ^
134+
"-DARTIFACTS_ROOT_DIR=%ARTIFACTS_DIR_ROOT_32%" ^
135+
"-DCMAKE_INSTALL_PREFIX=%ARTIFACTS_DIR_ROOT_32%" ^
136+
-A Win32 .
137+
71138
if %errorlevel% neq 0 exit /b %errorlevel%
72139

73140
cmake --build "%LIB_BUILD_DIR_ROOT_32%" --config %CONFIG% -v

external/vcpkg

Submodule vcpkg updated 9112 files

0 commit comments

Comments
 (0)