1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 12:25:09 +03:00
libxml2/.gitlab-ci.yml
Nick Wellnhofer 669bd34993 xpointer: Remove support for XPointer locations
The latest spec for what it essentially an XPath extension seems to be
this working draft from 2002:

    https://www.w3.org/TR/xptr-xpointer/

The xpointer() scheme is listed as "being reviewed" in the XPointer
registry since at least 2006. libxml2 seems to be the only modern
software that tries to implement this spec, but the code has many bugs
and quality issues.

If you configure --with-legacy, old symbols are retained for ABI
compatibility.
2024-06-12 18:20:01 +02:00

301 lines
6.1 KiB
YAML

.test:
image: registry.gitlab.gnome.org/gnome/libxml2
variables:
BASE_CONFIG: "--with-legacy"
before_script:
- rm -rf libxml2-build
- mkdir libxml2-build
- ln -s /tests/xmlconf libxml2-build
script:
- sh .gitlab-ci/test.sh
gcc:
extends: .test
variables:
CFLAGS: "-O2"
gcc:c89:
extends: .test
variables:
CONFIG: "--without-python"
CFLAGS: "-O2 -std=c89 -D_XOPEN_SOURCE=600"
gcc:minimum:
extends: .test
variables:
BASE_CONFIG: "--with-minimum"
CFLAGS: "-O2"
gcc:medium:
extends: .test
variables:
BASE_CONFIG: "--with-minimum"
CONFIG: "--with-threads --with-tree --with-xpath --with-output --with-html"
CFLAGS: "-O2"
gcc:legacy:
extends: .test
only:
- schedules
variables:
BASE_CONFIG: "--with-legacy"
CFLAGS: "-O2"
gcc:static:
extends: .test
variables:
CONFIG: "--disable-shared --without-python --without-modules"
CFLAGS: "-O2"
clang:asan:
extends: .test
tags:
- asan
variables:
CONFIG: "--without-python"
CC: clang
CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined,integer -fno-sanitize-recover=all"
UBSAN_OPTIONS: "print_stacktrace=1"
ASAN_SYMBOLIZER_PATH: "$CI_PROJECT_DIR/.gitlab-ci/llvm-symbolizer"
clang:msan:
extends: .test
# only:
# - schedules
variables:
CONFIG: "--without-python --without-zlib --without-lzma"
CC: clang
CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=memory"
MSAN_SYMBOLIZER_PATH: "$CI_PROJECT_DIR/.gitlab-ci/llvm-symbolizer"
.mingw:
tags:
- win32-ps
variables:
BASE_CONFIG: "--with-legacy"
# Disabled for now, see #658
CONFIG: "--without-python"
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'
cache:
key: "$MSYSTEM"
paths:
- libxml2-build/xmlconf/
mingw:w64-x86_64:shared:
extends: .mingw
variables:
CFLAGS: "-O2"
MSYSTEM: MINGW64
mingw:w64-i686:shared:
extends: .mingw
only:
- schedules
variables:
CFLAGS: "-O2"
MSYSTEM: MINGW32
# Disabled, GCC missing?
.mingw:msys:shared:
extends: .mingw
variables:
CFLAGS: "-O2"
MSYSTEM: MSYS
.cmake:linux:
image: registry.gitlab.gnome.org/gnome/libxml2
before_script:
- rm -rf libxml2-build
- mkdir libxml2-build
- ln -s /tests/xmlconf libxml2-build
script:
- sh .gitlab-ci/test_cmake.sh
artifacts:
paths:
- libxml2-$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'
cache:
key: "$MSYSTEM"
paths:
- libxml2-build/xmlconf/
artifacts:
paths:
- libxml2-$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:
# MSVC warns when casting `const char **` to `void *` which is wrong.
# Disable warning C4090.
CFLAGS: /WX /wd4090
CMAKE_VERSION: 3.19.4
script:
- .gitlab-ci/Test-Msvc
cache:
key: "msvc"
paths:
- cmake-$Env:CMAKE_VERSION-win64-x64/
- libxml2-build/xmlconf/
- 7za.exe
artifacts:
paths:
- libxml2-$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
only:
- schedules
variables:
BUILD_SHARED_LIBS: "ON"
SUFFIX: shared
cmake:msvc:v141:x86:static:
extends: .cmake:msvc:v141:x86
variables:
BUILD_SHARED_LIBS: "OFF"
SUFFIX: static
meson:
image: registry.gitlab.gnome.org/gnome/libxml2
script:
- sh .gitlab-ci/test_meson.sh
cmake:linux:gcc:shared:
extends: .cmake:linux
variables:
BUILD_SHARED_LIBS: "ON"
CC: gcc
SUFFIX: linux-gcc-shared
pages:
script:
- mkdir -p public
- cp -r doc/devhelp doc/xmllint.html doc/xmlcatalog.html public
artifacts:
paths:
- public
exclude:
- public/devhelp/Makefile*
- public/devhelp/*.xsl
only:
- master@GNOME/libxml2