mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-18 22:03:53 +00:00
build: use msys2 packages as source for the Windows CI.
This is a new feature I implemented in the crossroad cross-compilation tool. Msys2 repository has more packages and they are more up-to-date compared to Fedora and Suse cross-built packages (the 2 other available sources for pre-built Windows packages). This allows to simplify a lot the dependency preparation for the Windows CI, and speed things up.
This commit is contained in:
parent
b948ff932d
commit
8398c83c23
|
@ -213,7 +213,7 @@ deps-win64:
|
|||
glib2-devel
|
||||
#- pip3 install wheel
|
||||
#- pip3 install crossroad
|
||||
- git clone git://git.tuxfamily.org/gitroot/crossroad/crossroad.git
|
||||
- git clone --depth=${GIT_DEPTH} git://git.tuxfamily.org/gitroot/crossroad/crossroad.git
|
||||
- cd crossroad
|
||||
- ./setup.py install --prefix=`pwd`/../.local
|
||||
- cd ..
|
||||
|
@ -270,7 +270,7 @@ gimp-win64:
|
|||
- export PATH="`pwd`/.local/bin:$PATH"
|
||||
- mkdir _build && cd _build
|
||||
- echo 'crossroad meson ..
|
||||
-Dwmf=disabled -Dgtk-doc=false
|
||||
-Dgtk-doc=false
|
||||
-Dpython=always -Dlua=always
|
||||
-Djavascript=always && ninja install &&
|
||||
cp ../build/windows/crossbuild-gitlab-ci/gimp-wrapper.cmd $CROSSROAD_PREFIX/bin/ &&
|
||||
|
@ -329,7 +329,7 @@ deps-win32:
|
|||
glib2-devel
|
||||
#- pip3 install wheel
|
||||
#- pip3 install crossroad
|
||||
- git clone git://git.tuxfamily.org/gitroot/crossroad/crossroad.git
|
||||
- git clone --depth=${GIT_DEPTH} git://git.tuxfamily.org/gitroot/crossroad/crossroad.git
|
||||
- cd crossroad
|
||||
- ./setup.py install --prefix=`pwd`/../.local
|
||||
- cd ..
|
||||
|
|
|
@ -1,100 +1,25 @@
|
|||
crossroad source msys2
|
||||
mkdir _deps && cd _deps
|
||||
|
||||
# babl
|
||||
|
||||
crossroad install lcms2 && \
|
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/babl.git && cd babl && \
|
||||
crossroad meson _build/ -Denable-gir=false -Dwith-lcms=false && \
|
||||
crossroad meson _build/ -Denable-gir=false && \
|
||||
ninja -C _build install || exit 1
|
||||
cd ..
|
||||
|
||||
# GEGL
|
||||
|
||||
crossroad install cairo json-glib && \
|
||||
crossroad install json-glib && \
|
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/gegl.git && cd gegl && \
|
||||
crossroad meson _build/ -Dintrospection=false -Dsdl2=disabled && \
|
||||
ninja -C _build install || exit 1
|
||||
cd ..
|
||||
|
||||
# gexiv2
|
||||
|
||||
crossroad install exiv2 && \
|
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/gexiv2.git && cd gexiv2 && \
|
||||
crossroad meson _build/ -Dintrospection=false -Dvapi=false && \
|
||||
ninja -C _build install || exit 1
|
||||
cd ..
|
||||
|
||||
# appstream-glib
|
||||
|
||||
crossroad install libsoup libarchive gdk-pixbuf && \
|
||||
git clone --depth 1 https://github.com/hughsie/appstream-glib.git && cd appstream-glib && \
|
||||
crossroad meson _build/ -Dintrospection=false -Drpm=false -Dbuilder=false \
|
||||
-Dstemmer=false -Dman=false -Ddep11=false && \
|
||||
ninja -C _build install || exit 1
|
||||
cd ..
|
||||
|
||||
# json-c
|
||||
|
||||
# XXX: warnings promotion to errors disabled because of some
|
||||
# -Wstrict-prototypes warnings happening on Mingw-w64.
|
||||
# The DISABLE_WERROR option can be removed once json-c removes this
|
||||
# warning for Windows: https://github.com/json-c/json-c/pull/581
|
||||
# Or when patches are published for all Mingw-w64 headers. See ML patch
|
||||
# and followup emails: https://sourceforge.net/p/mingw-w64/mailman/message/36981783/
|
||||
git clone --depth 1 https://github.com/json-c/json-c.git && \
|
||||
mkdir json-c/_build && cd json-c/_build && \
|
||||
CFLAGS="-Wno-expansion-to-defined" crossroad cmake -DDISABLE_WERROR=ON .. && make install || exit 1
|
||||
cd ../..
|
||||
|
||||
# libmypaint
|
||||
|
||||
git clone --depth 1 --branch libmypaint-v1.5.x https://github.com/mypaint/libmypaint.git && \
|
||||
mkdir libmypaint/_build && cd libmypaint/_build && \
|
||||
crossroad ../configure --enable-introspection=no && make install || exit 1
|
||||
cd ../..
|
||||
|
||||
# mypaint-brushes
|
||||
|
||||
git clone --depth 1 --branch v1.3.x https://github.com/mypaint/mypaint-brushes.git
|
||||
mkdir mypaint-brushes/_build && cd mypaint-brushes/_build
|
||||
crossroad ../configure && make install || exit 1
|
||||
cd ../..
|
||||
|
||||
# poppler-data
|
||||
|
||||
git clone --depth 1 https://anongit.freedesktop.org/git/poppler/poppler-data.git && \
|
||||
mkdir poppler-data/_build && cd poppler-data/_build && \
|
||||
crossroad cmake .. && make install || exit 1
|
||||
cd ../..
|
||||
|
||||
# Glib (available in crossroad but bumped Pango needs higher version)
|
||||
|
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/glib.git && cd glib && \
|
||||
crossroad meson _build && ninja -C _build install || exit 1
|
||||
crossroad mask glib
|
||||
cd ..
|
||||
|
||||
# Fix a bug in Mingw-w64 headers when building with strict
|
||||
# C90-compliance.
|
||||
# See my commit fb232993 in mingw-w64-mingw-w64 repository.
|
||||
sed -i 's%^//\(.*\)$%/*\1 */%' $CROSSROAD_PREFIX/include/stdlib.h
|
||||
|
||||
# Pango (available in crossroad but too old)
|
||||
|
||||
crossroad install harfbuzz && \
|
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/pango.git && cd pango && \
|
||||
crossroad meson _build -Dintrospection=false && \
|
||||
ninja -C _build install || exit 1
|
||||
crossroad mask pango
|
||||
cd ..
|
||||
|
||||
# DrMingw
|
||||
|
||||
git clone --depth 1 https://github.com/jrfonseca/drmingw.git && \
|
||||
mkdir drmingw/_build && cd drmingw/_build && \
|
||||
crossroad cmake .. -DPYTHON_EXECUTABLE=`which python3` && make install || exit 1
|
||||
cd ../..
|
||||
|
||||
# preparing GIMP
|
||||
|
||||
crossroad install atk gtk3 libtiff xz-libs librsvg2 poppler-glib dbus-glib
|
||||
crossroad install gexiv2 appstream-glib json-c \
|
||||
libmypaint mypaint-brushes \
|
||||
poppler-data poppler glib2 \
|
||||
libwmf drmingw
|
||||
|
|
Loading…
Reference in a new issue