#!/bin/bash set -e if [[ "$MSYSTEM" == "MINGW32" ]]; then export ARTIFACTS_SUFFIX="-w32" export MSYS2_ARCH="i686" export MSYS2_ARCH_FOLDER="mingw32" elif [[ "$MSYSTEM" == "MINGW64" ]]; then export ARTIFACTS_SUFFIX="-w64" export MSYS2_ARCH="x86_64" export MSYS2_ARCH_FOLDER="mingw64" else # [[ "$MSYSTEM" == "CLANGARM64" ]]; export ARTIFACTS_SUFFIX="-arm64" export MSYS2_ARCH="clang-aarch64" export MSYS2_ARCH_FOLDER="clangarm64" fi # Update everything pacman --noconfirm -Suy # Install the required packages pacman --noconfirm -S --needed \ base-devel \ mingw-w64-$MSYS2_ARCH-toolchain \ mingw-w64-$MSYS2_ARCH-autotools \ mingw-w64-$MSYS2_ARCH-meson \ \ mingw-w64-$MSYS2_ARCH-cairo \ mingw-w64-$MSYS2_ARCH-crt-git \ mingw-w64-$MSYS2_ARCH-glib-networking \ mingw-w64-$MSYS2_ARCH-gobject-introspection \ mingw-w64-$MSYS2_ARCH-json-glib \ mingw-w64-$MSYS2_ARCH-lcms2 \ mingw-w64-$MSYS2_ARCH-lensfun \ mingw-w64-$MSYS2_ARCH-libspiro \ mingw-w64-$MSYS2_ARCH-maxflow \ mingw-w64-$MSYS2_ARCH-openexr \ mingw-w64-$MSYS2_ARCH-pango \ mingw-w64-$MSYS2_ARCH-suitesparse \ mingw-w64-$MSYS2_ARCH-vala export GIT_DEPTH=1 export PIKA_PREFIX="`realpath ./_install`${ARTIFACTS_SUFFIX}" export PATH="$PIKA_PREFIX/bin:$PATH" export PKG_CONFIG_PATH="${PIKA_PREFIX}/lib/pkgconfig:$PKG_CONFIG_PATH" export PKG_CONFIG_PATH="${PIKA_PREFIX}/share/pkgconfig:$PKG_CONFIG_PATH" export LD_LIBRARY_PATH="${PIKA_PREFIX}/lib:${LD_LIBRARY_PATH}" export ACLOCAL_FLAGS="-I/c/msys64/${MSYS2_ARCH_FOLDER}/share/aclocal" export XDG_DATA_DIRS="${PIKA_PREFIX}/share:/${MSYS2_ARCH_FOLDER}/share/" ## babl and GEGL (follow master branch) ## git clone --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/babl.git _babl git clone --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/gegl.git _gegl mkdir _babl/_build cd _babl/_build meson setup -Dprefix="${PIKA_PREFIX}" -Dwith-docs=false \ ${BABL_OPTIONS} .. ninja ninja install mkdir ../../_gegl/_build cd ../../_gegl/_build meson setup -Dprefix="${PIKA_PREFIX}" -Ddocs=false \ -Dcairo=enabled -Dumfpack=enabled \ -Dopenexr=enabled -Dworkshop=true .. ninja ninja install cd ../..