campo-sirio/libraries/libxslt/.gitlab-ci.yml
Alessandro Bonazzi 8c43d5cf2f Patch level : 12.00
Files correlati     : cg0.exe cg0700a.msk cg0700b.msk cg3.exe cg4.exe

Bug                 :

Commento:
Merge 1.0 libraries
2025-04-06 00:42:21 +02:00

265 lines
6.9 KiB
YAML

.test:
# Reuse libxml2 image
image: registry.gitlab.gnome.org/gnome/libxml2
script:
- sh .gitlab-ci/test.sh
gcc:
extends: .test
variables:
CFLAGS: "-O2 -std=c89 -D_POSIX_C_SOURCE=200112L"
gcc:python3:
extends: .test
variables:
CONFIG: "--without-crypto --without-debug --without-debugger --without-plugins"
CFLAGS: "-O2"
PYTHON: "/usr/bin/python3"
gcc:static:
extends: .test
variables:
CONFIG: "--disable-shared --without-python"
CFLAGS: "-O2"
clang:asan:
extends: .test
tags:
- asan
variables:
CONFIG: "--without-python"
CC: clang
CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined,unsigned-integer-overflow,implicit-conversion -fno-sanitize-recover=all -Wno-error=cast-align"
UBSAN_OPTIONS: "print_stacktrace=1"
ASAN_SYMBOLIZER_PATH: "$CI_PROJECT_DIR/.gitlab-ci/llvm-symbolizer"
clang:msan:
extends: .test
variables:
CONFIG: "--without-python --without-zlib --without-lzma --without-crypto"
CC: clang
CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=memory -Wno-error=cast-align"
MSAN_SYMBOLIZER_PATH: "$CI_PROJECT_DIR/.gitlab-ci/llvm-symbolizer"
.mingw:
tags:
- win32-ps
variables:
CONFIG: "--without-crypto"
CHERE_INVOKING: "yes"
before_script:
- $Env:Path="C:\msys64\usr\bin;$Env:Path"
- bash -lc 'sh .gitlab-ci/setup_mingw.sh autotools'
script:
- bash -lc 'sh .gitlab-ci/test.sh'
mingw:w64-x86_64:shared:
extends: .mingw
variables:
CFLAGS: "-O2"
MSYSTEM: MINGW64
# Disabled, GCC missing?
.mingw:msys:shared:
extends: .mingw
variables:
CFLAGS: "-O2"
MSYSTEM: MSYS
.cmake:linux:
image: registry.gitlab.gnome.org/gnome/libxml2
script:
- sh .gitlab-ci/test_cmake.sh
artifacts:
paths:
- libxslt-$CI_COMMIT_SHORT_SHA-$SUFFIX.tar.gz
expire_in: 1 day
cmake:linux:gcc:shared:
extends: .cmake:linux
variables:
BUILD_SHARED_LIBS: "ON"
CC: gcc
SUFFIX: linux-gcc-shared
cmake:linux:gcc:static:
extends: .cmake:linux
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
CC: gcc
SUFFIX: linux-gcc-static
cmake:linux:clang:shared:
extends: .cmake:linux
only:
- schedules
variables:
BUILD_SHARED_LIBS: "ON"
CC: clang
SUFFIX: linux-clang-shared
cmake:linux:clang:static:
extends: .cmake:linux
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
CC: clang
SUFFIX: linux-clang-static
.cmake:mingw:
tags:
- win32-ps
variables:
CHERE_INVOKING: "yes"
before_script:
- $Env:Path="C:\msys64\usr\bin;$Env:Path"
- bash -lc 'sh .gitlab-ci/setup_mingw.sh cmake ninja'
script:
- bash -lc 'sh .gitlab-ci/test_cmake.sh -G Ninja'
artifacts:
paths:
- libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:SUFFIX.tar.gz
expire_in: 1 day
cmake:mingw:w64-i686:shared:
extends: .cmake:mingw
only:
- schedules
variables:
BUILD_SHARED_LIBS: "ON"
MSYSTEM: MINGW32
SUFFIX: mingw-w64-i686-shared
cmake:mingw:w64-i686:static:
extends: .cmake:mingw
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
MSYSTEM: MINGW32
SUFFIX: mingw-w64-i686-static
cmake:mingw:w64-x86_64:shared:
extends: .cmake:mingw
variables:
BUILD_SHARED_LIBS: "ON"
MSYSTEM: MINGW64
SUFFIX: mingw-w64-x86_64-shared
cmake:mingw:w64-x86_64:static:
extends: .cmake:mingw
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
MSYSTEM: MINGW64
SUFFIX: mingw-w64-x86_64-static
.cmake:msvc:
tags:
- win32-ps
variables:
CMAKE_VERSION: 3.19.4
before_script:
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12"
- if (-not (Test-Path cmake-$Env:CMAKE_VERSION-win64-x64)) {
Invoke-WebRequest -Uri http://github.com/Kitware/CMake/releases/download/v$Env:CMAKE_VERSION/cmake-$Env:CMAKE_VERSION-win64-x64.zip -OutFile cmake-$Env:CMAKE_VERSION-win64-x64.zip ;
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"
- 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
- 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 Release --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:
- cmake -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" -DCMAKE_INSTALL_PREFIX=libxslt-install -DLIBXSLT_WITH_PYTHON=OFF -S . -B libxslt-build
- cmake --build libxslt-build --config Debug --target install
- cmake --build libxslt-build --config Release --target install
- New-Item -ItemType Directory libxslt-install\share\libxslt
- Copy-Item Copyright libxslt-install\share\libxslt
- cd libxslt-build
- ctest -C Debug -VV
- ctest -C Release -VV
after_script:
- .\7za.exe a libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z .\libxslt-install\*
cache:
key: "msvc"
paths:
- cmake-$Env:CMAKE_VERSION-win64-x64/
- 7za.exe
artifacts:
paths:
- libxslt-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z
expire_in: 1 day
.cmake:msvc:v141:
extends: .cmake:msvc
variables:
CMAKE_GENERATOR: Visual Studio 15 2017
CMAKE_GENERATOR_TOOLSET: v141
.cmake:msvc:v141:x64:
extends: .cmake:msvc:v141
variables:
CMAKE_GENERATOR_PLATFORM: x64
cmake:msvc:v141:x64:shared:
extends: .cmake:msvc:v141:x64
variables:
BUILD_SHARED_LIBS: "ON"
SUFFIX: shared
cmake:msvc:v141:x64:static:
extends: .cmake:msvc:v141:x64
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
SUFFIX: static
.cmake:msvc:v141:x86:
extends: .cmake:msvc:v141
only:
- schedules
variables:
CMAKE_GENERATOR_PLATFORM: Win32
cmake:msvc:v141:x86:shared:
extends: .cmake:msvc:v141:x86
variables:
BUILD_SHARED_LIBS: "ON"
SUFFIX: shared
cmake:msvc:v141:x86:static:
extends: .cmake:msvc:v141:x86
only:
- schedules
variables:
BUILD_SHARED_LIBS: "OFF"
SUFFIX: static
pages:
script:
- mkdir -p public/EXSLT
- cp -r doc/devhelp doc/tutorial doc/tutorial2 doc/xsltproc.html public
- cp -r doc/EXSLT/devhelp public/EXSLT
artifacts:
paths:
- public
exclude:
- public/devhelp/Makefile*
- public/devhelp/*.xsl
- public/EXSLT/devhelp/Makefile*
- public/EXSLT/devhelp/*.xsl
only:
- master@GNOME/libxslt