image: salamandar/archlinux-gimp:latest stages: - dependencies - gimp variables: GIT_DEPTH: "1" INSTALL_DIR: "_install" INSTALL_PREFIX: "${CI_PROJECT_DIR}/${INSTALL_DIR}" PACMAN_CACHE: "${CI_PROJECT_DIR}/_pacman_cache" deps-git: stage: dependencies cache: paths: - _pacman_cache artifacts: expire_in: 1 week when: always paths: - "${INSTALL_DIR}" - _babl/_build - _gegl/_build 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 - git clone --depth="${GIT_DEPTH}" https://gitlab.gnome.org/GNOME/babl.git _babl script: - cd _babl - meson -Dprefix="${INSTALL_PREFIX}" _build - ninja -C _build - ninja -C _build install - cd ../_gegl - meson --prefix="${INSTALL_PREFIX}" _build - ninja -C _build - ninja -C _build install .gimp-base: stage: gimp dependencies: - deps-git artifacts: expire_in: 1 week when: always name: "app-build-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}" paths: - _build #- "${INSTALL_DIR}" 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 gtk3 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 - ../autogen.sh --prefix="${INSTALL_PREFIX}" --enable-debug --with-python=force --with-javascript=force --with-lua=force - make -j "$(nproc)" # - make check gimp-meson: extends: .gimp-base script: - meson _build --prefix="${INSTALL_PREFIX}" -Dpython=always -Djavascript=always -Dlua=always - ninja -C _build # - ninja test deps-x86_64-w64-mingw32: image: fedora:30 stage: dependencies variables: XDG_CACHE_HOME: "$CI_PROJECT_DIR/.cache/" XDG_DATA_HOME: "$CI_PROJECT_DIR/.local/share/" cache: paths: - .cache/crossroad/ - dnf_cache before_script: - dnf install --assumeyes --setopt=cachedir=`pwd`/dnf_cache --verbose automake autoconf meson cmake gettext git gcc gcc-c++ gperf intltool libtool libxslt make python2 mingw64-gcc mingw64-gcc-c++ mingw64-binutils cpio rpm python3-docutils python3-pip python3-setuptools shared-mime-info which libmount-devel gdk-pixbuf2 gdk-pixbuf2-devel glib2-devel #- pip3 install wheel #- pip3 install crossroad - git clone git://git.tuxfamily.org/gitroot/crossroad/crossroad.git - cd crossroad - ./setup.py install --prefix=`pwd`/../.local - cd .. - gdk-pixbuf-query-loaders-64 > /usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders.cache script: - export PATH="`pwd`/.local/bin:$PATH" - crossroad w64 gimp --run="build/windows/crossbuild-gitlab-ci.sh" artifacts: name: "${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}" when: always expire_in: 1 week paths: - .local/ - _deps/ gimp-x86_64-w64-mingw32-meson: image: fedora:30 stage: gimp dependencies: - deps-x86_64-w64-mingw32 variables: XDG_CACHE_HOME: "$CI_PROJECT_DIR/.cache/" XDG_DATA_HOME: "$CI_PROJECT_DIR/.local/share/" cache: paths: - .cache/crossroad/ - dnf_cache before_script: - dnf install --assumeyes --setopt=cachedir=`pwd`/dnf_cache --verbose automake autoconf meson cmake gettext gcc gcc-c++ gperf intltool libtool libxslt make python2 mingw64-gcc mingw64-gcc-c++ mingw64-binutils cpio rpm shared-mime-info which libmount-devel gdk-pixbuf2 gdk-pixbuf2-devel glib2-devel script: - export PATH="`pwd`/.local/bin:$PATH" - mkdir _build && cd _build - echo 'crossroad meson .. -Dwmf=disabled -Dgtk-doc=false -Dpython=always -Dlua=always -Djavascript=always && ninja install' | crossroad w64 gimp --run="-" artifacts: name: "${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}" when: always expire_in: 1 week paths: - _build/ #- "${CROSSROAD_PREFIX}"