[gimp/wip/Jehan/incremental-win-installer-improvements] build: move glib-networking modules into our custom glib prefix.




commit 4d3b45306e4c901b7d0fbd4667db2e229cee910a
Author: Jehan <jehan girinstud io>
Date:   Tue Jun 22 11:59:06 2021 +0200

    build: move glib-networking modules into our custom glib prefix.
    
    Since gio searches its modules based on the paths as advertized by the
    pkg-config, let's just move the pre-compiled modules (by MSYS2
    packages). We build the same version of glib2 with the same options, and
    only one additional patch. This should not be a problem to use the same
    libraries rather than rebuilding it.

 build/windows/gitlab-ci/build-deps-msys2.sh   | 10 ++++++++++
 build/windows/gitlab-ci/package-gimp-msys2.sh |  6 ++----
 2 files changed, 12 insertions(+), 4 deletions(-)
---
diff --git a/build/windows/gitlab-ci/build-deps-msys2.sh b/build/windows/gitlab-ci/build-deps-msys2.sh
index 58be76b90e..94eed4affd 100644
--- a/build/windows/gitlab-ci/build-deps-msys2.sh
+++ b/build/windows/gitlab-ci/build-deps-msys2.sh
@@ -9,11 +9,13 @@ if [[ "$MSYSTEM" == "MINGW32" ]]; then
     # it for this architecture.
     export BABL_OPTIONS="-Denable-vapi=false"
     export GEGL_OPTIONS="-Dvapigen=disabled"
+    export MSYS_PREFIX="/c/msys64/mingw32/"
 else
     export ARTIFACTS_SUFFIX="-w64"
     export MSYS2_ARCH="x86_64"
     export BABL_OPTIONS=""
     export GEGL_OPTIONS=""
+    export MSYS_PREFIX="/c/msys64/mingw64/"
 fi
 
 # Update everything
@@ -27,6 +29,7 @@ pacman --noconfirm -S --needed \
     \
     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 \
@@ -93,6 +96,13 @@ ninja
 ninja install
 cd ../..
 
+# glib-networking is needed. No need to rebuild it, since we build the
+# same version of glib with the same options, and just some additional
+# patches, so we assume MSYS2-built packages should be fine.
+mkdir -p ${GIMP_PREFIX}/lib/gio/modules/
+cp -fr ${MSYS_PREFIX}/lib/gio/modules/*.dll ${GIMP_PREFIX}/lib/gio/modules/
+# TODO: what about /mingw64/share/locale/*/LC_MESSAGES/glib-networking.mo ?
+
 ## babl and GEGL (follow master branch) ##
 
 git clone --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/babl.git _babl
diff --git a/build/windows/gitlab-ci/package-gimp-msys2.sh b/build/windows/gitlab-ci/package-gimp-msys2.sh
index 7900546ae9..c720a46abd 100644
--- a/build/windows/gitlab-ci/package-gimp-msys2.sh
+++ b/build/windows/gitlab-ci/package-gimp-msys2.sh
@@ -32,8 +32,6 @@ pacman --noconfirm -S --needed \
     mingw-w64-$MSYS2_ARCH-drmingw \
     mingw-w64-$MSYS2_ARCH-gexiv2 \
     mingw-w64-$MSYS2_ARCH-ghostscript \
-    mingw-w64-$MSYS2_ARCH-glib2 \
-    mingw-w64-$MSYS2_ARCH-glib-networking \
     mingw-w64-$MSYS2_ARCH-gobject-introspection \
     mingw-w64-$MSYS2_ARCH-gobject-introspection-runtime \
     mingw-w64-$MSYS2_ARCH-graphviz \
@@ -99,14 +97,14 @@ cp -fr ${GIMP_PREFIX}/lib/babl-0.1 ${GIMP_DISTRIB}/lib/
 cp -fr ${MSYS_PREFIX}/lib/girepository-1.0 ${GIMP_DISTRIB}/lib/
 cp -fr ${GIMP_PREFIX}/lib/girepository-1.0/* ${GIMP_DISTRIB}/lib/girepository-1.0/
 
-cp -fr ${MSYS_PREFIX}/lib/gio ${GIMP_DISTRIB}/lib/
+cp -fr ${GIMP_PREFIX}/lib/gio ${GIMP_DISTRIB}/lib/
 cp -fr ${MSYS_PREFIX}/lib/gdk-pixbuf-2.0 ${GIMP_DISTRIB}/lib/
 cp -fr ${MSYS_PREFIX}/lib/gtk-3.0 ${GIMP_DISTRIB}/lib/
 
 cp -fr ${MSYS_PREFIX}/lib/python3.8 ${GIMP_DISTRIB}/lib/
 
 cp -fr ${MSYS_PREFIX}/share/ghostscript ${GIMP_DISTRIB}/share/
-cp -fr ${MSYS_PREFIX}/share/glib-2.0 ${GIMP_DISTRIB}/share/
+cp -fr ${GIMP_PREFIX}/share/glib-2.0 ${GIMP_DISTRIB}/share/
 cp -fr ${MSYS_PREFIX}/share/libthai ${GIMP_DISTRIB}/share/
 cp -fr ${MSYS_PREFIX}/share/libwmf ${GIMP_DISTRIB}/share/
 cp -fr ${MSYS_PREFIX}/share/mypaint-data ${GIMP_DISTRIB}/share/


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