[gimp/gimp-2-10] build: add GitLab CI .gitlab-ci.yml file



commit 3755f9c9f14a78e6fc2270901a05ab77e3d00a60
Author: Michael Schumacher <schumaml gmx de>
Date:   Fri Sep 6 20:01:16 2019 +0200

    build: add GitLab CI .gitlab-ci.yml file

 .gitlab-ci.yml | 194 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 194 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000..57e495d28c
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,194 @@
+image: archlinux/base:latest
+
+stages:
+  - babl
+  - gegl
+  - gimp
+
+variables:
+  INSTALL_DIR: "_install"
+  INSTALL_PREFIX: "${CI_PROJECT_DIR}/${INSTALL_DIR}"
+  PACMAN_CACHE:   "${CI_PROJECT_DIR}/_pacman_cache"
+
+cache:
+  paths:
+  - _pacman_cache
+
+.babl-base:
+  stage: babl
+  artifacts:
+    paths:
+    - "${INSTALL_DIR}"
+  variables:
+    GIT_DEPTH: "5"
+  before_script:
+    - export PKG_CONFIG_PATH="${INSTALL_PREFIX}/lib/pkgconfig"
+    - export LD_LIBRARY_PATH="${INSTALL_PREFIX}/lib:${LD_LIBRARY_PATH}"
+    - export XDG_DATA_DIRS="${INSTALL_PREFIX}/share:/usr/local/share:/usr/share"
+    - pacman -Syu --noconfirm --needed --cachedir "${PACMAN_CACHE}"
+        git
+        base-devel
+        gobject-introspection
+        meson
+        lcms2
+    - git clone --depth="${GIT_DEPTH}" https://gitlab.gnome.org/GNOME/babl.git _babl
+
+babl-git:
+  extends: .babl-base
+  script:
+    - cd _babl
+    - meson -Dprefix="${INSTALL_PREFIX}" _build
+    - ninja -C _build
+    - ninja -C _build install
+
+# babl-min:
+#   extends: .babl-base
+#   script:
+#     - BABL_MIN_VERSION="$(grep babl meson.build | grep version
+#         | grep -o '[0-9]*\.[0-9]*\.[0-9]*' | sed 's/\./_/g')"
+#     - cd _babl
+#     - git fetch --no-tags origin "refs/tags/BABL_${BABL_MIN_VERSION}:refs/tags/MIN_VERSION"
+#     - git checkout MIN_VERSION
+#     - meson -Dprefix="${INSTALL_PREFIX}" _build
+#     - ninja -C _build
+#     - ninja -C _build install
+
+.gegl-base:
+  stage: gegl
+  artifacts:
+    paths:
+    - "${INSTALL_DIR}"
+  variables:
+    GIT_DEPTH: "5"
+  before_script:
+    - export PKG_CONFIG_PATH="${INSTALL_PREFIX}/lib/pkgconfig"
+    - export LD_LIBRARY_PATH="${INSTALL_PREFIX}/lib:${LD_LIBRARY_PATH}"
+    - export XDG_DATA_DIRS="${INSTALL_PREFIX}/share:/usr/local/share:/usr/share"
+    - pacman -Syu --noconfirm --needed --cachedir "${PACMAN_CACHE}"
+        git
+        base-devel
+        meson
+        lcms2
+        base-devel
+        ffmpeg
+        gobject-introspection
+        graphviz
+        jasper
+        json-glib
+        lcms2
+        libgexiv2
+        libraw
+        librsvg
+        libspiro
+        libtiff
+        luajit
+        openexr
+        python
+        sdl2
+        suitesparse
+    - git clone --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/gegl.git _gegl
+
+gegl-git:
+  extends: .gegl-base
+  script:
+    - cd _gegl
+    - meson --prefix="${INSTALL_PREFIX}" _build
+    - ninja -C _build
+    - ninja -C _build install
+
+# gegl-min:
+#   extends: .gegl-base
+#   script:
+#     - GEGL_MIN_VERSION="$(grep gegl meson.build | grep version
+#         | grep -o '[0-9]*\.[0-9]*\.[0-9]*' | sed 's/\./_/g')"
+#     - cd _gegl
+#     - git fetch --no-tags origin "refs/tags/GEGL_${GEGL_MIN_VERSION}:refs/tags/MIN_VERSION"
+#     - git checkout MIN_VERSION
+#     - meson -Dprefix="${INSTALL_PREFIX}" _build
+#     - ninja -C _build
+#     - ninja -C _build install
+
+.gimp-base:
+  stage: gimp
+  artifacts:
+    paths:
+    - "${INSTALL_DIR}"
+  variables:
+    GIT_DEPTH: "5"
+  before_script:
+    - export PKG_CONFIG_PATH="${INSTALL_PREFIX}/lib/pkgconfig:${INSTALL_PREFIX}/share/pkgconfig"
+    - export LD_LIBRARY_PATH="${INSTALL_PREFIX}/lib:${LD_LIBRARY_PATH}"
+    - export XDG_DATA_DIRS="${INSTALL_PREFIX}/share:/usr/local/share:/usr/share"
+    - pacman -Syu --noconfirm --needed --cachedir "${PACMAN_CACHE}"
+        git
+        base-devel
+        appstream-glib
+        at-spi2-core
+        at-spi2-atk
+        dbus-glib
+        desktop-file-utils
+        ffmpeg
+        glib-networking
+        gobject-introspection
+        gtk2
+        hicolor-icon-theme
+        jasper
+        lcms2
+        libexif
+        libgudev
+        libheif
+        libmng
+        libmypaint
+        librsvg
+        libwebp
+        libwmf
+        libxmu
+        libxpm
+        mypaint-brushes1
+        openexr
+        poppler-data
+        pygtk
+        alsa-lib
+        ghostscript
+        poppler-glib
+        gtk-doc
+        intltool
+        iso-codes
+        xorg-server-xvfb
+
+.gimp-autotools:
+  extends: .gimp-base
+  script:
+    - mkdir _build
+    - cd _build
+    - LIBMYPAINT_CFLAGS="-I/usr/include/libmypaint-1.3 -I/usr/include/json-c"
+      LIBMYPAINT_LIBS="-lmypaint-1.3 -ljson-c"
+      ../autogen.sh
+        --prefix="${INSTALL_PREFIX}"
+        --enable-debug
+    - make -j "$(nproc)"
+    # - make check
+  artifacts:
+    name: "app-tests-logs-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
+    when: on_failure
+    expire_in: 1 week
+    paths:
+      - _build/app/tests/
+
+build-git-autotools:
+  extends: .gimp-autotools
+  dependencies:
+    - babl-git
+    - gegl-git
+
+# build-min-autotools:
+#   extends: .gimp-autotools
+#   dependencies:
+#     - babl-git
+#     - gegl-git
+
+# build-min-meson:
+#   extends: .gimp-meson
+#   dependencies:
+#     - babl-min
+#     - gegl-min


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