diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 87d835b0..a8e8ad49 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -311,6 +311,11 @@ pages: only: - master@GNOME/libxml2 +downstream-lxml: + image: registry.gitlab.gnome.org/gnome/libxml2 + script: + - sh .gitlab-ci/downstream-lxml.sh + downstream-nokogiri: # owner: @flavorjones image: ghcr.io/sparklemotion/nokogiri-test:upstream-libxml diff --git a/.gitlab-ci/Dockerfile b/.gitlab-ci/Dockerfile index 56372f41..c2b49992 100644 --- a/.gitlab-ci/Dockerfile +++ b/.gitlab-ci/Dockerfile @@ -42,3 +42,7 @@ RUN apt-get remove -y libxml2-dev # PHP RUN apt-get install -y --no-install-recommends \ bison re2c libsqlite3-dev + +# lxml +RUN apt-get install -y --no-install-recommends \ + cython3 diff --git a/.gitlab-ci/downstream-lxml.sh b/.gitlab-ci/downstream-lxml.sh new file mode 100644 index 00000000..176dc6df --- /dev/null +++ b/.gitlab-ci/downstream-lxml.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +set -e + +srcdir=$(pwd) + +mkdir -p install +installdir="$srcdir/install" +export PKG_CONFIG_PATH="$installdir/lib/pkgconfig" + +sh autogen.sh "--prefix=$installdir" --with-http --with-zlib --without-python +make -j$(nproc) +make install + +git clone --depth 1 https://gitlab.gnome.org/GNOME/libxslt.git +cd libxslt +sh autogen.sh \ + "--prefix=$installdir" \ + "--with-libxml-prefix=$installdir" \ + --without-python +make -j$(nproc) +make install +cd .. + +git clone --depth 1 https://github.com/lxml/lxml.git +cd lxml +make +LD_LIBRARY_PATH="$installdir/lib" make test