Skip to content
Snippets Groups Projects
Select Git revision
  • 71c854a7a5b680d3e133079dc450d60c5394669c
  • branch/default default protected
  • branch/OpenVMS
  • wild/930a3464a4bab23e2c2b67b07c9803886c65d641
  • wild/ae4cd162620c1a65830400c95d75d6aac024111f
  • wild/1d0c89cbdd5533687e03be224b89cfe9540192a2
  • wild/d81b7981070cffaa125f3034d6d64251895c8d8d
  • wild/7525f7aa39923d7a3964e0a6b3a07d8cfe5b7d1f
8 results

.gitlab-ci.yml

Blame
  • .gitlab-ci.yml 9.35 KiB
    .test:
      # Reuse libxml2 image
      image: registry.gitlab.gnome.org/gnome/libxml2
      script:
        - |
          git clone --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git
          cd libxml2
          sh autogen.sh $CONFIG
          make -j$(nproc)
          cd ..
          sh autogen.sh $CONFIG --with-libxml-src=libxml2
          # Don't run make in "doc" directory
          for target in libxslt libexslt xsltproc python tests/plugins; do
              make -j$(nproc) -C $target V=1 CFLAGS="$CFLAGS -Werror"
          done
          make -j$(nproc) -C tests/fuzz V=1 CFLAGS="$CFLAGS -Werror" testTargets
          make -s -C tests tests | tee test.log
          make -s -C xsltproc tests | tee -a test.log
          ! grep -qv '^## Running' test.log
          make -s -C python tests
    
    gcc:
      extends: .test
      variables:
        CFLAGS: "-O2 -std=c89 -D_POSIX_C_SOURCE=200112L"
    
    gcc:python3:
      extends: .test
      only:
        - schedules
      variables:
        CONFIG: "--with-python=/usr/bin/python3"
        CFLAGS: "-O2"
    
    clang:asan:
      extends: .test
      variables:
        CONFIG: "--without-python"
        CC: clang
        CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=address,undefined -fno-sanitize-recover=all -Wimplicit-int-conversion -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 --without-crypto"
        CC: clang
        CFLAGS: "-O2 -g -fno-omit-frame-pointer -fsanitize=memory -Wimplicit-int-conversion -Wno-error=cast-align"
    
    .cmake:linux:
      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
        - mkdir -p libxml2-install/share/libxml2
        - cp libxml2-source/Copyright libxml2-install/share/libxml2
        - 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:
        - cmake -DBUILD_SHARED_LIBS=$BUILD_SHARED_LIBS -DCMAKE_INSTALL_PREFIX=libxslt-install -DCMAKE_BUILD_TYPE=RelWithDebInfo -S . -B libxslt-build
        - cmake --build libxslt-build --target install
        - mkdir -p libxslt-install/share/libxslt
        - cp Copyright libxslt-install/share/libxslt
      after_script: