.test:
  # The image was generated with the following Dockerfile. It is also used
  # for libxslt, that's why we need git and libgcrypt-dev.
  #
  # FROM ubuntu:20.04
  # ENV DEBIAN_FRONTEND=noninteractive
  # RUN apt-get update && \
  #     apt-get upgrade -y && \
  #     apt-get install -y --no-install-recommends \
  #         curl git ca-certificates \
  #         autoconf automake libtool pkg-config \
  #         make gcc clang llvm \
  #         zlib1g-dev liblzma-dev libgcrypt-dev \
  #         python-dev python3-dev \
  #         cmake
  # WORKDIR /tests
  # RUN curl https://www.w3.org/XML/Test/xmlts20080827.tar.gz |tar xz
  image: registry.gitlab.gnome.org/gnome/libxml2
  variables:
    BASE_CONFIG: "--with-ftp --with-legacy --with-xptr-locs"
  script:
    - |
      rm -rf build
      mkdir build
      cd build
      ln -s /tests/xmlconf
      sh ../autogen.sh $BASE_CONFIG $CONFIG
      make -j$(nproc) V=1 CFLAGS="$CFLAGS -Werror"
      make CFLAGS="$CFLAGS -Werror" check

gcc:
  extends: .test
  variables:
    CFLAGS: "-O2 -std=c89 -D_XOPEN_SOURCE=700"

gcc:minimum:
  extends: .test
  variables:
    BASE_CONFIG: "--with-minimum"
    CFLAGS: "-O2"

gcc:python3:
  extends: .test
  variables:
    CFLAGS: "-O2"
    PYTHON: "/usr/bin/python3"

gcc:static:
  extends: .test
  variables:
    CONFIG: "--disable-shared --without-python"
    CFLAGS: "-O2"

clang:asan:
  extends: .test
  variables:
    CONFIG: "--without-python"
    CC: clang
    CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined,integer -fno-sanitize-recover=all -Wno-error=cast-align"
    # LeakSanitizer requires SYS_CAP_PTRACE
    ASAN_OPTIONS: "detect_leaks=0"
    UBSAN_OPTIONS: "print_stacktrace=1"

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 -Wno-error=cast-align"

.cmake:linux:
  image: registry.gitlab.gnome.org/gnome/libxml2
  script:
    - cmake -DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS -DCMAKE_INSTALL_PREFIX=libxml2-install -DCMAKE_BUILD_TYPE=RelWithDebInfo -DLIBXML2_XMLCONF_WORKING_DIR=/tests -S . -B libxml2-build
    - cmake --build libxml2-build --target install
    - mkdir -p libxml2-install/share/libxml2
    - cp Copyright libxml2-install/share/libxml2
    - cd libxml2-build
    - ctest -VV
  after_script:
    - cd libxml2-install
    - tar -czf ../libxml2-$CI_COMMIT_SHORT_SHA-$CC-$SUFFIX.tar.gz *
  artifacts:
    paths:
      - libxml2-$CI_COMMIT_SHORT_SHA-$CC-$SUFFIX.tar.gz
    expire_in: 1 day

cmake:linux:gcc:shared:
  extends: .cmake:linux
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "ON"
    CC: gcc
    SUFFIX: shared

cmake:linux:gcc:static:
  extends: .cmake:linux
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "OFF"
    CC: gcc
    SUFFIX: static

cmake:linux:clang:shared:
  extends: .cmake:linux
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "ON"
    CC: clang
    SUFFIX: shared

cmake:linux:clang:static:
  extends: .cmake:linux
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "OFF"
    CC: clang
    SUFFIX: static

.cmake:mingw:
  tags:
    - win32-ps
  before_script:
    - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12"
    - $Env:Path="C:\msys64\$Env:MINGW_PATH\bin;C:\msys64\usr\bin;$Env:Path"
    - pacman --noconfirm -Syu
    - pacman --noconfirm -S
        $Env:MINGW_PACKAGE_PREFIX-cmake
        $Env:MINGW_PACKAGE_PREFIX-libiconv
        $Env:MINGW_PACKAGE_PREFIX-ninja
        $Env:MINGW_PACKAGE_PREFIX-python
        $Env:MINGW_PACKAGE_PREFIX-python2
        $Env:MINGW_PACKAGE_PREFIX-xz
        $Env:MINGW_PACKAGE_PREFIX-zlib
    - 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
      }
    - if (-not (Test-Path libxml2-build/xmlconf)) {
        Invoke-WebRequest -Uri https://www.w3.org/XML/Test/xmlts20080827.tar.gz -OutFile xmlts20080827.tar.gz ;
        .\7za.exe x xmlts20080827.tar.gz -olibxml2-build
      }
  script:
    - cmake -G Ninja -DBUILD_SHARED_LIBS="$Env:BUILD_SHARED_LIBS" -DCMAKE_INSTALL_PREFIX=libxml2-install -DCMAKE_BUILD_TYPE=RelWithDebInfo -S . -B libxml2-build
    - cmake --build libxml2-build --target install
    - New-Item -ItemType Directory libxml2-install\share\libxml2
    - Copy-Item Copyright libxml2-install\share\libxml2
    - cd libxml2-build
    - ctest -VV
  after_script:
    - .\7za.exe a libxml2-$Env:CI_COMMIT_SHORT_SHA-$Env:MINGW_PACKAGE_PREFIX-$Env:SUFFIX.7z .\libxml2-install\*
  cache:
    key: "$MINGW_PACKAGE_PREFIX"
    paths:
      - libxml2-build/xmlconf/
      - 7za.exe
  artifacts:
    paths:
      - libxml2-$Env:CI_COMMIT_SHORT_SHA-$Env:MINGW_PACKAGE_PREFIX-$Env:SUFFIX.7z
    expire_in: 1 day

cmake:mingw:w64-i686:shared:
  extends: .cmake:mingw
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "ON"
    MINGW_PACKAGE_PREFIX: mingw-w64-i686
    MINGW_PATH: mingw32
    SUFFIX: shared

cmake:mingw:w64-i686:static:
  extends: .cmake:mingw
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "OFF"
    MINGW_PACKAGE_PREFIX: mingw-w64-i686
    MINGW_PATH: mingw32
    SUFFIX: static

cmake:mingw:w64-x86_64:shared:
  extends: .cmake:mingw
  variables:
    BUILD_SHARED_LIBS: "ON"
    MINGW_PACKAGE_PREFIX: mingw-w64-x86_64
    MINGW_PATH: mingw64
    SUFFIX: shared

cmake:mingw:w64-x86_64:static:
  extends: .cmake:mingw
  only:
    - schedules
  variables:
    BUILD_SHARED_LIBS: "OFF"
    MINGW_PACKAGE_PREFIX: mingw-w64-x86_64
    MINGW_PATH: mingw64
    SUFFIX: 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
      }
    - if (-not (Test-Path libxml2-build/xmlconf)) {
        Invoke-WebRequest -Uri https://www.w3.org/XML/Test/xmlts20080827.tar.gz -OutFile xmlts20080827.tar.gz ;
        .\7za.exe x xmlts20080827.tar.gz -olibxml2-build
      }
  script:
    - 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 . -B libxml2-build
    - cmake --build libxml2-build --config Debug --target install
    - cmake --build libxml2-build --config Release --target install
    - New-Item -ItemType Directory libxml2-install\share\libxml2
    - Copy-Item Copyright libxml2-install\share\libxml2
    - cd libxml2-build
    - ctest -C Debug -VV
    - ctest -C Release -VV
  after_script:
    - .\7za.exe a libxml2-$Env:CI_COMMIT_SHORT_SHA-$Env:CMAKE_GENERATOR_TOOLSET-$Env:CMAKE_GENERATOR_PLATFORM-$Env:SUFFIX.7z .\libxml2-install\*
  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

pages:
  script:
    - mkdir -p public
    - cp -r doc/devhelp doc/tutorial doc/xmllint.html doc/xmlcatalog.html public
    - mkdir -p public/examples
    - cp doc/examples/*.html doc/examples/*.c public/examples
  artifacts:
    paths:
      - public
    exclude:
      - public/devhelp/Makefile*
      - public/devhelp/*.xsl
  only:
    - master@GNOME/libxml2
