• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
2 
3 if (-not (Test-Path cmake-$Env:CMAKE_VERSION-win64-x64)) {
4     Invoke-WebRequest `
5         -Uri http://github.com/Kitware/CMake/releases/download/v$Env:CMAKE_VERSION/cmake-$Env:CMAKE_VERSION-win64-x64.zip `
6         -OutFile cmake-$Env:CMAKE_VERSION-win64-x64.zip
7     Expand-Archive cmake-$Env:CMAKE_VERSION-win64-x64.zip -DestinationPath .
8 }
9 $Env:Path="$Env:CI_PROJECT_DIR\cmake-$Env:CMAKE_VERSION-win64-x64\bin;$Env:Path"
10 
11 if (-not (Test-Path 7za.exe)) {
12     Invoke-WebRequest `
13         -Uri https://www.7-zip.org/a/7z1900-extra.7z `
14         -OutFile 7z1900-extra.7z
15     cmake -E tar xf 7z1900-extra.7z 7za.exe
16 }
17 
18 if (-not (Test-Path libxml2-build/xmlconf)) {
19     Invoke-WebRequest `
20         -Uri https://www.w3.org/XML/Test/xmlts20080827.tar.gz `
21         -OutFile xmlts20080827.tar.gz ;
22     .\7za.exe x xmlts20080827.tar.gz -olibxml2-build
23 }
24 
25 cmake `
26     -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" `
27     -DCMAKE_INSTALL_PREFIX=libxml2-install `
28     -DLIBXML2_WITH_ICONV=OFF `
29     -DLIBXML2_WITH_LZMA=OFF `
30     -DLIBXML2_WITH_PYTHON=OFF `
31     -DLIBXML2_WITH_ZLIB=OFF `
32     -S . -B libxml2-build
33 cmake --build libxml2-build --config Debug --target install
34 cmake --build libxml2-build --config Release --target install
35 New-Item -ItemType Directory libxml2-install\share\libxml2
36 Copy-Item Copyright libxml2-install\share\libxml2
37 
38 cd libxml2-build
39 ctest -C Debug -VV
40 if ($LastExitCode -ne 0) {
41     throw "ctest failed"
42 }
43 ctest -C Release -VV
44 if ($LastExitCode -ne 0) {
45     throw "ctest failed"
46 }
47 cd ..
48 
49 .\7za.exe a libxml2-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z .\libxml2-install\*
50