Skip to content
Snippets Groups Projects
Commit ed739e3d0bd0 authored by Nick Wellnhofer's avatar Nick Wellnhofer
Browse files

gitlab-ci: Consolidate CMake test scripts

parent ee4f953bd1a1
No related branches found
No related tags found
No related merge requests found
...@@ -49,8 +49,7 @@ ...@@ -49,8 +49,7 @@
CONFIG: "--without-crypto" CONFIG: "--without-crypto"
CHERE_INVOKING: "yes" CHERE_INVOKING: "yes"
before_script: before_script:
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12" - $Env:Path="C:\msys64\usr\bin;$Env:Path"
- $Env:Path="C:\msys64\$Env:MINGW_PATH\bin;C:\msys64\usr\bin;$Env:Path"
- bash -lc 'sh .gitlab-ci/setup_mingw.sh autotools' - bash -lc 'sh .gitlab-ci/setup_mingw.sh autotools'
script: script:
- bash -lc 'sh .gitlab-ci/test.sh' - bash -lc 'sh .gitlab-ci/test.sh'
...@@ -60,7 +59,6 @@ ...@@ -60,7 +59,6 @@
variables: variables:
CFLAGS: "-O2" CFLAGS: "-O2"
MSYSTEM: MINGW64 MSYSTEM: MINGW64
MINGW_PATH: mingw64
# Disabled, GCC missing? # Disabled, GCC missing?
.mingw:msys:shared: .mingw:msys:shared:
...@@ -68,7 +66,6 @@ ...@@ -68,7 +66,6 @@
variables: variables:
CFLAGS: "-O2" CFLAGS: "-O2"
MSYSTEM: MSYS MSYSTEM: MSYS
MINGW_PATH: usr
.cmake:linux: .cmake:linux:
image: registry.gitlab.gnome.org/gnome/libxml2 image: registry.gitlab.gnome.org/gnome/libxml2
...@@ -72,11 +69,4 @@ ...@@ -72,11 +69,4 @@
.cmake:linux: .cmake:linux:
image: registry.gitlab.gnome.org/gnome/libxml2 image: registry.gitlab.gnome.org/gnome/libxml2
before_script:
- git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git libxml2-source
- cmake -DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS -DCMAKE_INSTALL_PREFIX=libxml2-install -DCMAKE_BUILD_TYPE=RelWithDebInfo -DLIBXML2_WITH_TESTS=OFF -S libxml2-source -B libxml2-build
- cmake --build libxml2-build --target install
- export CMAKE_PREFIX_PATH=$CI_PROJECT_DIR/libxml2-install:$CMAKE_PREFIX_PATH
- export PATH=$CI_PROJECT_DIR/libxml2-install/bin:$PATH
- export LD_LIBRARY_PATH=$CI_PROJECT_DIR/libxml2-install/bin:$LD_LIBRARY_PATH
script: script:
...@@ -82,10 +72,4 @@ ...@@ -82,10 +72,4 @@
script: script:
- cmake -DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS -DCMAKE_INSTALL_PREFIX=libxslt-install -DCMAKE_C_FLAGS='-Werror' -DCMAKE_BUILD_TYPE=RelWithDebInfo -S . -B libxslt-build - sh .gitlab-ci/test_cmake.sh
- cmake --build libxslt-build --target install
- mkdir -p libxslt-install/share/libxslt
- cp Copyright libxslt-install/share/libxslt
after_script:
- cd libxslt-install
- tar -czf ../libxslt-$CI_COMMIT_SHORT_SHA-$CC-$SUFFIX.tar.gz *
artifacts: artifacts:
paths: paths:
...@@ -90,7 +74,7 @@ ...@@ -90,7 +74,7 @@
artifacts: artifacts:
paths: paths:
- libxslt-$CI_COMMIT_SHORT_SHA-$CC-$SUFFIX.tar.gz - libxslt-$CI_COMMIT_SHORT_SHA-$SUFFIX.tar.gz
expire_in: 1 day expire_in: 1 day
cmake:linux:gcc:shared: cmake:linux:gcc:shared:
extends: .cmake:linux extends: .cmake:linux
...@@ -93,9 +77,7 @@ ...@@ -93,9 +77,7 @@
expire_in: 1 day expire_in: 1 day
cmake:linux:gcc:shared: cmake:linux:gcc:shared:
extends: .cmake:linux extends: .cmake:linux
only:
- schedules
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
CC: gcc CC: gcc
...@@ -99,7 +81,7 @@ ...@@ -99,7 +81,7 @@
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
CC: gcc CC: gcc
SUFFIX: shared SUFFIX: linux-gcc-shared
cmake:linux:gcc:static: cmake:linux:gcc:static:
extends: .cmake:linux extends: .cmake:linux
...@@ -108,7 +90,7 @@ ...@@ -108,7 +90,7 @@
variables: variables:
BUILD_SHARED_LIBS: "OFF" BUILD_SHARED_LIBS: "OFF"
CC: gcc CC: gcc
SUFFIX: static SUFFIX: linux-gcc-static
cmake:linux:clang:shared: cmake:linux:clang:shared:
extends: .cmake:linux extends: .cmake:linux
...@@ -117,7 +99,7 @@ ...@@ -117,7 +99,7 @@
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
CC: clang CC: clang
SUFFIX: shared SUFFIX: linux-clang-shared
cmake:linux:clang:static: cmake:linux:clang:static:
extends: .cmake:linux extends: .cmake:linux
...@@ -126,7 +108,7 @@ ...@@ -126,7 +108,7 @@
variables: variables:
BUILD_SHARED_LIBS: "OFF" BUILD_SHARED_LIBS: "OFF"
CC: clang CC: clang
SUFFIX: static SUFFIX: linux-clang-static
.cmake:mingw: .cmake:mingw:
tags: tags:
...@@ -134,6 +116,5 @@ ...@@ -134,6 +116,5 @@
variables: variables:
CHERE_INVOKING: "yes" CHERE_INVOKING: "yes"
before_script: before_script:
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12" - $Env:Path="C:\msys64\usr\bin;$Env:Path"
- $Env:Path="C:\msys64\$Env:MINGW_PATH\bin;C:\msys64\usr\bin;$Env:Path"
- bash -lc 'sh .gitlab-ci/setup_mingw.sh cmake ninja' - bash -lc 'sh .gitlab-ci/setup_mingw.sh cmake ninja'
...@@ -139,8 +120,2 @@ ...@@ -139,8 +120,2 @@
- bash -lc 'sh .gitlab-ci/setup_mingw.sh cmake ninja' - bash -lc 'sh .gitlab-ci/setup_mingw.sh cmake ninja'
- .gitlab-ci/Install-7-Zip
- git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git libxml2-source
- cmake -G Ninja -DBUILD_SHARED_LIBS=$Env:BUILD_SHARED_LIBS -DCMAKE_INSTALL_PREFIX=libxml2-install -DLIBXML2_WITH_TESTS=OFF -S libxml2-source -B libxml2-build
- cmake --build libxml2-build --config RelWithDebInfo --target install
- $Env:CMAKE_PREFIX_PATH="$Env:CI_PROJECT_DIR\libxml2-install;$Env:CMAKE_PREFIX_PATH"
- $Env:Path="$Env:CI_PROJECT_DIR\libxml2-install\bin;$Env:Path"
script: script:
...@@ -146,9 +121,4 @@ ...@@ -146,9 +121,4 @@
script: script:
- cmake -G Ninja -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" -DCMAKE_INSTALL_PREFIX=libxslt-install -DCMAKE_C_FLAGS='-Werror' -DCMAKE_BUILD_TYPE=RelWithDebInfo -S . -B libxslt-build - bash -lc 'sh .gitlab-ci/test_cmake.sh -G Ninja'
- cmake --build libxslt-build --target install
- New-Item -ItemType Directory libxslt-install\share\libxslt
- Copy-Item Copyright libxslt-install\share\libxslt
after_script:
- .\7za.exe a libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:MSYSTEM-$Env:SUFFIX.7z .\libxslt-install\*
artifacts: artifacts:
paths: paths:
...@@ -153,6 +123,6 @@ ...@@ -153,6 +123,6 @@
artifacts: artifacts:
paths: paths:
- libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:MSYSTEM-$Env:SUFFIX.7z - libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:SUFFIX.tar.gz
expire_in: 1 day expire_in: 1 day
cmake:mingw:w64-i686:shared: cmake:mingw:w64-i686:shared:
...@@ -162,8 +132,7 @@ ...@@ -162,8 +132,7 @@
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
MSYSTEM: MINGW32 MSYSTEM: MINGW32
MINGW_PATH: mingw32 SUFFIX: mingw-w64-i686-shared
SUFFIX: shared
cmake:mingw:w64-i686:static: cmake:mingw:w64-i686:static:
extends: .cmake:mingw extends: .cmake:mingw
...@@ -172,11 +141,10 @@ ...@@ -172,11 +141,10 @@
variables: variables:
BUILD_SHARED_LIBS: "OFF" BUILD_SHARED_LIBS: "OFF"
MSYSTEM: MINGW32 MSYSTEM: MINGW32
MINGW_PATH: mingw32 SUFFIX: mingw-w64-i686-static
SUFFIX: static
cmake:mingw:w64-x86_64:shared: cmake:mingw:w64-x86_64:shared:
extends: .cmake:mingw extends: .cmake:mingw
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
MSYSTEM: MINGW64 MSYSTEM: MINGW64
...@@ -177,11 +145,10 @@ ...@@ -177,11 +145,10 @@
cmake:mingw:w64-x86_64:shared: cmake:mingw:w64-x86_64:shared:
extends: .cmake:mingw extends: .cmake:mingw
variables: variables:
BUILD_SHARED_LIBS: "ON" BUILD_SHARED_LIBS: "ON"
MSYSTEM: MINGW64 MSYSTEM: MINGW64
MINGW_PATH: mingw64 SUFFIX: mingw-w64-x86_64-shared
SUFFIX: shared
cmake:mingw:w64-x86_64:static: cmake:mingw:w64-x86_64:static:
extends: .cmake:mingw extends: .cmake:mingw
...@@ -190,8 +157,7 @@ ...@@ -190,8 +157,7 @@
variables: variables:
BUILD_SHARED_LIBS: "OFF" BUILD_SHARED_LIBS: "OFF"
MSYSTEM: MINGW64 MSYSTEM: MINGW64
MINGW_PATH: mingw64 SUFFIX: mingw-w64-x86_64-static
SUFFIX: static
.cmake:msvc: .cmake:msvc:
tags: tags:
...@@ -205,7 +171,10 @@ ...@@ -205,7 +171,10 @@
Expand-Archive cmake-$Env:CMAKE_VERSION-win64-x64.zip -DestinationPath . Expand-Archive cmake-$Env:CMAKE_VERSION-win64-x64.zip -DestinationPath .
} }
- $Env:Path="$Env:CI_PROJECT_DIR\cmake-$Env:CMAKE_VERSION-win64-x64\bin;$Env:Path" - $Env:Path="$Env:CI_PROJECT_DIR\cmake-$Env:CMAKE_VERSION-win64-x64\bin;$Env:Path"
- .gitlab-ci/Install-7-Zip - if (-not (Test-Path 7za.exe)) {
Invoke-WebRequest -Uri https://www.7-zip.org/a/7z1900-extra.7z -OutFile 7z1900-extra.7z ;
cmake -E tar xf 7z1900-extra.7z 7za.exe
}
- git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git libxml2-source - git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git libxml2-source
- cmake -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" -DCMAKE_INSTALL_PREFIX=libxml2-install -DLIBXML2_WITH_ICONV=OFF -DLIBXML2_WITH_LZMA=OFF -DLIBXML2_WITH_PYTHON=OFF -DLIBXML2_WITH_ZLIB=OFF -S libxml2-source -B libxml2-build - cmake -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" -DCMAKE_INSTALL_PREFIX=libxml2-install -DLIBXML2_WITH_ICONV=OFF -DLIBXML2_WITH_LZMA=OFF -DLIBXML2_WITH_PYTHON=OFF -DLIBXML2_WITH_ZLIB=OFF -S libxml2-source -B libxml2-build
- cmake --build libxml2-build --config Debug --target install - cmake --build libxml2-build --config Debug --target install
...@@ -227,6 +196,7 @@ ...@@ -227,6 +196,7 @@
key: "msvc" key: "msvc"
paths: paths:
- cmake-$Env:CMAKE_VERSION-win64-x64/ - cmake-$Env:CMAKE_VERSION-win64-x64/
- 7za.exe
artifacts: artifacts:
paths: paths:
- libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z - libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z
......
if (-not (Get-Command "7za.exe" -ErrorAction SilentlyContinue)) {
Invoke-WebRequest -Uri https://www.7-zip.org/a/7z2201.msi -OutFile 7z2201.msi
msiexec /i $Installer7Zip /qb
}
#!/bin/sh
set -e
git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git libxml2-source
cmake "$@" \
-DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS \
-DCMAKE_INSTALL_PREFIX=libxml2-install \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DLIBXML2_WITH_TESTS=OFF \
-S libxml2-source -B libxml2-build
cmake --build libxml2-build --target install
export CMAKE_PREFIX_PATH="$CI_PROJECT_DIR/libxml2-install;$CMAKE_PREFIX_PATH"
export PATH="$CI_PROJECT_DIR/libxml2-install/bin:$PATH"
export LD_LIBRARY_PATH="$CI_PROJECT_DIR/libxml2-install/lib:$LD_LIBRARY_PATH"
cmake "$@" \
-DBUILD_SHARED_LIBS="$BUILD_SHARED_LIBS" \
-DCMAKE_INSTALL_PREFIX=libxslt-install \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_C_FLAGS='-Werror' \
-S . -B libxslt-build
cmake --build libxslt-build --target install
mkdir -p libxslt-install/share/libxslt
cp Copyright libxslt-install/share/libxslt
(cd libxslt-install &&
tar -czf ../libxslt-$CI_COMMIT_SHORT_SHA-$SUFFIX.tar.gz *)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment