[libgweather/pgriffis/libsoup-ci: 2/4] ci: Build against both libsoup2 and libsoup3




commit b6dd96135067db0c2a5146444ae808ea5de2f7e8
Author: Patrick Griffis <pgriffis igalia com>
Date:   Tue Sep 21 10:59:03 2021 -0500

    ci: Build against both libsoup2 and libsoup3

 .ci/check-abi  | 113 ---------------------------------------------------------
 .gitlab-ci.yml |  81 ++++++++++++++++++++++++++++++++++++-----
 2 files changed, 72 insertions(+), 122 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e6387602..248bdba5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,17 +1,80 @@
 variables:
-    LAST_ABI_BREAK: f1f0bdd9ab47ff8ddba17e2125802c928226da64
+  LAST_ABI_BREAK: f1f0bdd9ab47ff8ddba17e2125802c928226da64
+  COMMON_DEPS:
+    glibc-langpack-fr
+    redhat-rpm-config
+    meson
+    libxml2-devel
+    vala
+    gettext
+    itstool
+    gtk3-devel
+    geocode-glib-devel
+    gobject-introspection-devel
+    libsoup-devel
+    libabigail
+    git
+    python3-gobject
+    pylint
+  SOUP3_DEPS: # Includes deps for geocode-glib
+    gcc-c++
+    gtk-doc
+    json-glib-devel
+    gnutls-devel
+    libnghttp2-devel
+    sqlite-devel
+    libpsl-devel
 
-build-fedora:
+.build:
   image: fedora:latest
+  script:
+    - meson _build -Dsoup2=${SOUP2_ENABLED}
+    - ninja -C _build install
+    - ninja -C _build test
+    - curl https://gitlab.freedesktop.org/hadess/check-abi/-/raw/main/contrib/check-abi-fedora.sh | bash
+    - check-abi --new-parameters="-Dsoup2=${SOUP2_ENABLED}" ${LAST_ABI_BREAK} $(git rev-parse HEAD)
+  artifacts:
+    name: "libgweather-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
+    when: on_failure
+    paths:
+      - "**/meson-logs/*"
+
+build-fedora-soup2:
+  extends: .build
+  variables:
+    SOUP2_ENABLED: 'true'
   before_script:
     # Undo delangification present in the Fedora Docker images
     - rm -f /etc/rpm/macros.image-language-conf
     - dnf reinstall -y glib2 glibc || dnf update -y glib2 glibc
-    # Add French locale support for tests
-    - dnf install -y glibc-langpack-fr
-    - dnf install -y redhat-rpm-config meson libxml2-devel vala gettext itstool gtk3-devel 
geocode-glib-devel gobject-introspection-devel libsoup-devel libabigail git python3-gobject pylint
-  script:
-    - meson _build
+    - dnf install -y $COMMON_DEPS
+
+build-fedora-soup3:
+  extends: .build
+  variables:
+    SOUP2_ENABLED: 'false'
+  before_script:
+    # Undo delangification present in the Fedora Docker images
+    - rm -f /etc/rpm/macros.image-language-conf
+    - dnf reinstall -y glib2 glibc || dnf update -y glib2 glibc
+    - dnf install -y $COMMON_DEPS $SOUP3_DEPS
+    # Tasks specific to soup3
+    - git clone https://gitlab.gnome.org/GNOME/glib.git && pushd glib
+    - git checkout 2.70.0
+    - meson _build --prefix=/usr
     - ninja -C _build install
-    - ninja -C _build test
-    - ./.ci/check-abi ${LAST_ABI_BREAK} $(git rev-parse HEAD)
+    - popd
+    - git clone https://gitlab.gnome.org/GNOME/glib-networking.git && pushd glib-networking
+    - git checkout 2.70.0
+    - meson _build --prefix=/usr
+    - ninja -C _build install
+    - popd
+    - git clone --depth=1 https://gitlab.gnome.org/GNOME/libsoup.git && pushd libsoup
+    - meson _build --prefix=/usr -Dtls_check=false
+    - ninja -C _build install
+    - popd
+    - git clone https://gitlab.gnome.org/GNOME/geocode-glib.git && pushd geocode-glib
+    - meson _build --prefix=/usr -Dsoup2=false
+    - ninja -C _build install
+    - popd
+


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]