[gtk-osx: 1/3] Stable moduleset updates



commit b12ff65f63e7026541a0bed1243da05bfe5bf343
Author: Alex Samorukov <samm os2 kiev ua>
Date:   Mon Jun 4 15:14:23 2018 +0200

    Stable moduleset updates
    
    gnumake 4.2.1 added to bootstrap to fix webkit parallel build
    gettext-tools, gettext-runtime: upstream patches added
    libxslt: 1.1.32
    gtk-doc: 1.28
    freetype: 2.9.1
    fontconfig: 2.13.0
    gnutls: 3.5.18, glib added as dependency
    libwebp: 1.0.0
    webkit: unbreak parallel builds
    fix broken repository links
    python: 2.7.15
    pygobject: 2.28.7
    python-six: 1.11.0 (added)
    shared-mime-info: 1.9
    GIMP and GIMP-only dependencies removed to move them to separate repository
    gtk+: 2.24.32, new upstream patches
    cairomm: 1.15.5
    cairo: 1.16.0
    
    fixes:
    
    iso-codes: update checkout dir

 modulesets-stable/bootstrap.modules             |  14 +-
 modulesets-stable/gtk-osx-bootstrap.modules     |  25 +-
 modulesets-stable/gtk-osx-gimp.modules          | 290 +++++++++++++++++++++
 modulesets-stable/gtk-osx-gtkmm.modules         |   8 +-
 modulesets-stable/gtk-osx-network.modules       |  20 +-
 modulesets-stable/gtk-osx-python.modules        |  29 ++-
 modulesets-stable/gtk-osx-random.modules        |  63 +----
 modulesets-stable/gtk-osx-themes.modules        |   4 +-
 modulesets-stable/gtk-osx-unsupported.modules   |   2 +-
 modulesets-stable/gtk-osx.modules               |  19 +-
 patches/aalib-osx.patch                         | 106 ++++++++
 patches/ghostscript-lib.patch                   |  15 ++
 patches/gimp-gimpui.c.patch                     |  33 +++
 patches/gtk-gimp-dnd-bug767091.patch            | 107 ++++++++
 patches/libsoup-python.patch                    |   9 +
 patches/pngcrush-install.patch                  |  14 +
 patches/pygobject-gdesktopappinfo-missing.patch | 329 ++++++++++++++++++++++++
 patches/python-ldflags.patch                    |  27 ++
 patches/x265-cmake.patch                        |   5 +
 19 files changed, 1020 insertions(+), 99 deletions(-)
---
diff --git a/modulesets-stable/bootstrap.modules b/modulesets-stable/bootstrap.modules
index 09795a7..e0567aa 100644
--- a/modulesets-stable/bootstrap.modules
+++ b/modulesets-stable/bootstrap.modules
@@ -39,6 +39,14 @@
     <branch repo="tukaani.org" module="xz/xz-5.2.3.tar.bz2" version="5.2.3"/>
   </autotools>
 
+  <!-- gnu make 4.xx, needed to unbreak parallel builds for the webkit -->
+  <autotools id="gnumake" autogen-sh="configure"
+             autogenargs="--disable-dependency-tracking">
+    <branch repo="ftp.gnu.org"
+            module="make/make-4.2.1.tar.bz2" version="4.2.1" 
hash="sha256:d6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589">
+    </branch>
+  </autotools>
+
   <autotools id="apr">
     <branch repo="apache.org" module="apr/apr-1.5.2.tar.bz2" version="1.5.2"/>
   </autotools>
@@ -54,7 +62,10 @@
   <autotools id="gettext-tools" autogen-sh="configure"
              autogenargs="--without-emacs --disable-java --disable-native-java --disable-libasprintf 
--disable-csharp --with-included-glib">
     <branch repo="ftp.gnu.org" source-subdir="gettext-tools"
-            module="gettext/gettext-0.19.8.tar.xz" version="0.19.8"/>
+            module="gettext/gettext-0.19.8.tar.xz" version="0.19.8">
+      <!-- upstream bug: https://savannah.gnu.org/bugs/index.php?49560 -->
+      <patch file="https://savannah.gnu.org/bugs/download.php?file_id=38908"; strip="1"/>
+    </branch>
   </autotools>
 
   <!-- cmakes ./configure is picky about invalid flags so we manually set it -->
@@ -235,6 +246,7 @@
       <dep package="gtk-osx-docbook"/>
       <dep package="gnome-common"/>
       <dep package="intltool"/>
+      <dep package="gnumake"/>
     </dependencies>
   </metamodule>
 
diff --git a/modulesets-stable/gtk-osx-bootstrap.modules b/modulesets-stable/gtk-osx-bootstrap.modules
index 467e504..dde2180 100644
--- a/modulesets-stable/gtk-osx-bootstrap.modules
+++ b/modulesets-stable/gtk-osx-bootstrap.modules
@@ -33,7 +33,7 @@
       version="7.0">
     </branch>
   </autotools>
-  
+
   <autotools id="libpng" autogenargs="--enable-shared" autogen-sh="configure">
     <branch version="1.6.34" module="libpng/libpng-1.6.34.tar.xz"
             hash="sha256:2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6"
@@ -77,7 +77,8 @@
   </autotools>
 
   <autotools id="libxslt" autogen-sh="configure">
-    <branch version="1.1.29" module="libxslt-1.1.29.tar.gz"
+    <branch version="1.1.32" module="libxslt-1.1.32.tar.gz"
+      hash="sha256:526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460"
            repo="xmlsoft.org"/>
     <dependencies>
       <dep package="libxml2"/>
@@ -117,8 +118,8 @@
   </autotools>
 
   <autotools id="gtk-doc" autogen-sh="configure">
-    <branch version="1.27" module="gtk-doc/1.27/gtk-doc-1.27.tar.xz"
-            hash="sha256:e26bd3f7080c749b1cb66c46c6bf8239e2f320a949964fb9c6d56e1b0c6d9a6f"/>
+    <branch version="1.28" module="gtk-doc/1.28/gtk-doc-1.28.tar.xz"
+            hash="sha256:911e29e302252c96128965ee1f4067d5431a88e00ad1023a8bc1d6b922af5715"/>
     <dependencies>
       <dep package="libxml2"/>
       <dep package="itstool"/>
@@ -158,7 +159,7 @@
   <autotools id="freetype-no-harfbuzz" autogen-sh="configure"
              skip-autogen="never"
              autogenargs="--without-bzip2 --without-harfbuzz">
-    <branch module="freetype/freetype-2.7.1.tar.gz" version="2.7.1"
+    <branch module="freetype/freetype-2.9.1.tar.gz" version="2.9.1"
             repo="sourceforge">
       <!--patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/freetype-2.5.3-ccexe_cflags.patch"; 
strip="1"/-->
     </branch>
@@ -169,7 +170,7 @@
 
   <autotools id="freetype" autogen-sh="configure" skip-autogen="never"
             autogenargs="--without-bzip2">
-    <branch module="freetype/freetype-2.7.1.tar.gz" version="2.7.1"
+    <branch module="freetype/freetype-2.9.1.tar.gz" version="2.9.1"
             repo="sourceforge">
     </branch>
     <dependencies>
@@ -179,9 +180,10 @@
   </autotools>
 
   <autotools id="fontconfig" autogen-sh="autoreconf"
-             autogenargs="--disable-docs">
-    <branch repo="fontconfig" version="2.12.1"
-            module="fontconfig-2.12.1.tar.bz2"/>
+             autogenargs="--disable-docs 
'--with-add-fonts=/System/Library/Fonts,/Library/Fonts,~/Library/Fonts'">
+    <branch repo="fontconfig" version="2.13.0" module="fontconfig-2.13.0.tar.bz2">
+      <patch file="https://bugs.freedesktop.org/attachment.cgi?id=137886"; strip="1" />
+    </branch>
     <dependencies>
       <dep package="freetype"/>
     </dependencies>
@@ -196,7 +198,10 @@
   <autotools id="gettext-runtime" autogen-sh="configure"
             autogenargs="--without-emacs --disable-java --disable-native-java --disable-libasprintf 
--disable-csharp">
     <branch repo="ftp.gnu.org" source-subdir="gettext-runtime"
-            module="gettext/gettext-0.19.8.tar.xz" version="0.19.8"/>
+            module="gettext/gettext-0.19.8.tar.xz" version="0.19.8">
+      <!-- upstream bug: https://savannah.gnu.org/bugs/index.php?49560 -->
+      <patch file="https://savannah.gnu.org/bugs/download.php?file_id=38908"; strip="1"/>
+    </branch>
   </autotools>
 
   <metamodule id="meta-gtk-osx-bootstrap">
diff --git a/modulesets-stable/gtk-osx-gimp.modules b/modulesets-stable/gtk-osx-gimp.modules
new file mode 100644
index 0000000..2d99498
--- /dev/null
+++ b/modulesets-stable/gtk-osx-gimp.modules
@@ -0,0 +1,290 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE moduleset SYSTEM "moduleset.dtd">
+<?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
+<moduleset>
+  <repository type="tarball" name="ftp.gnome.org" default="yes"
+              href="http://ftp.gnome.org/pub/GNOME/sources/"/>
+  <repository type="tarball" name="gimp"
+              href="https://download.gimp.org/pub/"/>
+  <repository type="git" name="git.gnome.org"
+              href="https://gitlab.gnome.org/GNOME"/>
+  <repository type="tarball" name="ftp.gtk.org"
+              href="https://ftp.gtk.org/pub/"/>
+  <repository type="tarball" name="poppler.freedesktop.org"
+              href="https://poppler.freedesktop.org/"/>
+  <repository type="tarball" name="bitbucket-tarball"
+              href="https://bitbucket.org/"/>
+  <repository type="tarball" name="github-tarball"
+              href="https://github.com/"/>
+  <repository type="tarball" name="sourceforge"
+              href="http://downloads.sourceforge.net/sourceforge/"/>
+  <repository type="tarball" name="savannah"
+              href="http://download.savannah.nongnu.org/releases/"/>
+  <repository type="tarball" name="www.exiv2.org"
+              href="http://www.exiv2.org/builds/"/>
+
+
+  <autotools id="gimp-help-git" autogenargs="--without-gimp"
+    autogen-sh="autogen.sh">
+    <branch module="gimp-help" revision="master" repo="git.gnome.org" />
+    <dependencies>
+      <dep package="pngcrush" />
+    </dependencies>
+  </autotools>
+
+  <!-- librsvg build requires rust compiler to be installed,
+   see https://rustup.rs -->
+  <autotools id="librsvg-244" autogenargs="--disable-Bsymbolic">
+    <branch repo="ftp.gnome.org" module="librsvg/2.44/librsvg-2.44.7.tar.xz" version="2.44.7"
+           hash="sha256:aafd1c651b293bc09305ec9ae558e4fbcd4b9be6e7e27a003d48324af993b23e"/>
+    <dependencies>
+      <dep package="libcroco"/>
+      <dep package="meta-gtk-osx-freetype"/>
+    </dependencies>
+    <after>
+<!-- Circular dependency if we depend on meta-gtk-osx or meta-gtk-osx-gtk3 -->
+      <dep package="gtk+"/>
+      <dep package="gtk+-3.0"/>
+      <dep package="gtk+-3.14"/>
+    </after>
+  </autotools>
+
+  <autotools id="pngcrush" autogen-sh="true" autogen-template="%(autogen-sh)s">
+    <branch module="pmt/pngcrush-1.8.13.tar.xz" version="1.8.13"
+      hash="sha256:8fc18bcbcc65146769241e20f9e21e443b0f4538d581250dce89b1e969a30705"
+      repo="sourceforge">
+     <!-- implement "make install" command to make jhbuild happy -->
+     <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/pngcrush-install.patch";
+             strip="0"/>
+    </branch>
+  </autotools>
+
+  <autotools id="gimp"  autogen-sh="autoreconf"
+             autogenargs="--without-x --enable-binreloc">
+    <branch module="gimp/v2.10/gimp-2.10.6.tar.bz2" version="2.10.6"
+            hash="sha256:4ec8071f828e918384cf7bc7d1219210467c84655123f802bc55a8bf2415101f" repo="gimp">
+           <!-- osx focus issue, fixed in the master, needs to be removed on 2.10.7+ -->
+        <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gimp-gimpui.c.patch"; 
strip="0"/>
+    </branch>
+    <after>
+      <dep package="meta-gtk-osx-bootstrap"/>
+      <dep package="meta-gtk-osx-core"/>
+      <deb package="webkit">
+    </after>
+    <dependencies>
+      <dep package="lcms"/>
+        <dep package="glib-networking"/>
+      <dep package="poppler"/>
+      <dep package="poppler-data"/>
+
+      <dep package="fontconfig"/>
+      <dep package="gegl"/>
+      <dep package="libmypaint"/>
+      <dep package="mypaint-brushes"/>
+      <dep package="libheif"/>
+      <dep package="aalib"/>
+      <dep package="libwebp"/>
+      <dep package="shared-mime-info"/>
+      <dep package="iso-codes"/>
+      <dep package="librsvg-244"/>
+      <dep package="gexiv2"/>
+      <dep package="libwmf"/>
+      <dep package="openexr"/>
+      <dep package="libmng"/>
+      <dep package="ghostscript"/>
+      <dep package="python"/>
+      <dep package="meta-gtk-osx-python"/>
+    </dependencies>
+  </autotools>
+  <autotools id="gegl" autogen-sh="configure" autogenargs="--disable-docs">
+    <branch repo="ftp.gtk.org" version="0.4.10"
+            hash="sha256:1c419659bde1aa8bb7845231a7132bd7dcdaa4ed724adf676b07478b41f0c5d3"
+            module="gegl/0.4/gegl-0.4.10.tar.bz2"/>
+    <dependencies>
+      <dep package="babl"/>
+      <dep package="json-glib"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id='json-glib' autogen-sh="configure">
+    <branch   module="json-glib/1.2/json-glib-1.2.8.tar.xz" version="1.2.8"
+             hash="sha256:fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"/>
+  </autotools>
+
+  <autotools id="babl" >
+    <branch repo="ftp.gtk.org" version="0.1.58"
+            module="babl/0.1/babl-0.1.58.tar.bz2" 
hash="sha256:79c9ae576019b8459896014c8822471bb383414c9f99a1b2055e25b4538ced55">
+    </branch>
+  </autotools>
+
+  <cmake id="poppler"
+         cmakeargs='-DENABLE_QT5:BOOL=OFF -DWITH_NSS3:BOOL=OFF'>
+
+  <branch module="poppler-0.66.0.tar.xz" version="0.66.0"
+            repo="poppler.freedesktop.org"
+            hash="sha256:2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7"/>
+    <after>
+      <dep package="meta-gtk-osx-bootstrap"/>
+      <dep package="meta-gtk-osx-core"/>
+    </after>
+  <dependencies>
+    <dep package="openjpeg"/>
+  </dependencies>
+  </cmake>
+  <cmake id="poppler-data">
+
+  <branch module="poppler-data-0.4.9.tar.gz" version="0.4.9"
+            repo="poppler.freedesktop.org"/>
+    <after>
+      <dep package="poppler"/>
+    </after>
+  </cmake>
+
+  <cmake id="x265">
+    <branch checkoutdir="x265_2.8" module="multicoreware/x265/downloads/x265_2.8.tar.gz" version="2.8"
+      hash="sha256:6e59f9afc0c2b87a46f98e33b5159d56ffb3558a49d8e3d79cb7fdc6b7aaa863"
+      repo="bitbucket-tarball">
+      <!-- no cmake files in the root folder -->
+    <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/x265-cmake.patch";
+             strip="0"/>
+    </branch>
+  </cmake>
+
+  <autotools id="libde265"
+            autogen-sh="configure">
+    <branch module="strukturag/libde265/releases/download/v1.0.3/libde265-1.0.3.tar.gz" version="1.2.0"
+      hash="sha256:e4206185a7c67d3b797d6537df8dcaa6e5fd5a5f93bd14e65a755c33cd645f7a"
+      repo="github-tarball"/>
+  </autotools>
+
+  <autotools id="libheif"
+            autogen-sh="configure">
+    <branch module="strukturag/libheif/releases/download/v1.2.0/libheif-1.2.0.tar.gz" version="1.2.0"
+      hash="sha256:2e7d40f81d1bbe6089b1e0f27800b97cf6a195e093ef86199edfb6e59e2fa8fa"
+      repo="github-tarball"/>
+    <dependencies>
+      <dep package="libde265"/>
+      <dep package="x265"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="aalib"
+            autogen-sh="configure" autogenargs="--without-x --with-curses-driver=no">
+    <branch module="aa-project/aalib-1.4rc5.tar.gz" version="1.4.0"
+      hash="sha256:fbddda9230cf6ee2a4f5706b4b11e2190ae45f5eda1f0409dc4f99b35e0a70ee"
+      repo="sourceforge" checkoutdir="aalib-1.4.0">
+      <!--
+      # Fix malloc/stdlib issue on macOS
+      # Fix underquoted definition of AM_PATH_AALIB in aalib.m4
+      -->
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/aalib-osx.patch";
+             strip="1"/>
+    </branch>
+  </autotools>
+
+  <autotools id="libwmf"
+            autogen-sh="configure" autogenargs="--with-freetype=$JHBUILD_PREFIX">
+    <branch module="wvware/libwmf/0.2.8.4/libwmf-0.2.8.4.tar.gz" version="0.2.8.4"
+      hash="sha256:5b345c69220545d003ad52bfd035d5d6f4f075e65204114a9e875e84895a7cf8"
+      repo="sourceforge">
+    </branch>
+    <dependencies>
+      <dep package="libpng"/>
+    </dependencies>
+    <after>
+      <dep package="gdk-pixbuf"/>
+    </after>
+  </autotools>
+
+  <autotools id="openexr"
+       autogen-sh="configure">
+    <branch module="openexr/openexr/releases/download/v2.2.1/openexr-2.2.1.tar.gz" version="2.2.1"
+      hash="sha256:8f9a5af6131583404261931d9a5c83de0a425cb4b8b25ddab2b169fbf113aecd"
+      repo="github-tarball">
+    </branch>
+    <dependencies>
+      <dep package="ilmbase"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="ilmbase"
+       autogen-sh="configure">
+    <branch module="openexr/ilmbase-2.2.1.tar.gz" version="2.2.1"
+      hash="sha256:cac206e63be68136ef556c2b555df659f45098c159ce24804e9d5e9e0286609e"
+      repo="savannah">
+    </branch>
+  </autotools>
+
+  <cmake id="libmng"
+    cmakeargs="-DMNG_INSTALL_LIB_DIR=$JHBUILD_PREFIX/lib -DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=true 
-DCMAKE_MACOSX_RPATH=true . -DCMAKE_INSTALL_NAME_DIR=$JHBUILD_PREFIX/lib"
+    hash="sha256:4a462fdd48d4bc82c1d7a21106c8a18b62f8cc0042454323058e6da0dbb57dd3">
+    <branch module="project/libmng/libmng-devel/2.0.3/libmng-2.0.3.tar.xz" version="2.0.3"
+           repo="sourceforge"/>
+  <dependencies>
+        <dep package="libjpeg"/>
+        <dep package="lcms"/>
+  </dependencies>
+  </cmake>
+  <!-- open-source library to encode and decode JPEG 2000 -->
+  <cmake id="openjpeg">
+    <branch module="uclouvain/openjpeg/archive/v2.3.0.tar.gz" version="2.3.0"
+           repo="github-tarball" checkoutdir="openjpeg-2.3.0"/>
+  </cmake>
+
+  <autotools id='libmypaint' autogen-sh="configure">
+
+  <dependencies>
+  <dep package="gegl"/>
+  <dep package="json-c"/>
+  </dependencies>
+  <branch hash="sha256:6a07d9d57fea60f68d218a953ce91b168975a003db24de6ac01ad69dcc94a671" 
module="mypaint/libmypaint/releases/download/v1.3.0/libmypaint-1.3.0.tar.xz" version="1.3.0"
+    repo="github-tarball" checkoutdir="libmypaint-1.3.0"/>
+  </autotools>
+
+  <autotools id='mypaint-brushes'
+    autogen-template="pushd %(srcdir)s &amp;&amp; ./%(autogen-sh)s &amp;&amp; popd &amp;&amp; 
%(srcdir)s/configure --prefix=%(prefix)s %(autogenargs)s">
+  <dependencies>
+  <dep package="libmypaint"/>
+  </dependencies>
+
+  <branch module="Jehan/mypaint-brushes/archive/v1.3.0.tar.gz" version="1.3.0"
+    repo="github-tarball" checkoutdir="mypaint-brushes-1.3.0"/>
+  </autotools>
+
+    <autotools id='json-c' autogen-sh="configure">
+  <branch module="json-c/json-c/archive/json-c-0.13.1-20180305.tar.gz" version="0.13.1"
+    repo="github-tarball" checkoutdir="json-c"/>
+  </autotools>
+
+  <autotools id="gexiv2">
+    <branch repo="ftp.gnome.org" version="0.10.8"
+            module="gexiv2/0.10/gexiv2-0.10.8.tar.xz" 
hash="sha256:81c528fd1e5e03577acd80fb77798223945f043fd1d4e06920c71202eea90801">
+            <patch file="https://bug791941.bugzilla-attachments.gnome.org/attachment.cgi?id=367961";
+                   strip="1"/>
+    </branch>
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="exiv2"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="exiv2">
+    <branch repo="www.exiv2.org" checkoutdir="exiv2-trunk"
+      version="0.26" module="exiv2-0.26-trunk.tar.gz"
+      hash="sha256:c75e3c4a0811bf700d92c82319373b7a825a2331c12b8b37d41eb58e4f18eafb"/>
+  </autotools>
+
+  <autotools id="ghostscript" makeargs="all so"
+  makeinstallargs="install install-so">
+    <branch repo="github-tarball"
+      version="9.23" 
module="ArtifexSoftware/ghostpdl-downloads/releases/download/gs923/ghostscript-9.23.tar.xz"
+      hash="sha256:1fcedc27d4d6081105cdf35606cb3f809523423a6cf9e3c23cead3525d6ae8d9">
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/ghostscript-lib.patch";
+             strip="0"/>
+    </branch>
+    <dependencies>
+          <dep package="lcms"/>
+    </dependencies>
+  </autotools>
+
+</moduleset>
diff --git a/modulesets-stable/gtk-osx-gtkmm.modules b/modulesets-stable/gtk-osx-gtkmm.modules
index 22439a3..5cd9b74 100644
--- a/modulesets-stable/gtk-osx-gtkmm.modules
+++ b/modulesets-stable/gtk-osx-gtkmm.modules
@@ -2,9 +2,9 @@
 <!DOCTYPE moduleset SYSTEM "moduleset.dtd">
 <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
 <moduleset>
-  <repository type="tarball" name="ftp.gnome.org" default="yes" 
+  <repository type="tarball" name="ftp.gnome.org" default="yes"
               href="http://ftp.gnome.org/pub/GNOME/sources/"/>
-  <repository type="tarball" name="doxygen" 
+  <repository type="tarball" name="doxygen"
               href="http://ftp.stack.nl/pub/users/dimitri/"/>
   <repository type="tarball" name="cairographics"
               href="http://cairographics.org/releases/"/>
@@ -26,8 +26,8 @@
   </autotools>
 
   <autotools id="cairomm" autogen-sh="configure">
-    <branch module="cairomm-1.12.2.tar.gz" version="1.12.2"
-           hash="sha1:621546f32221a2ddc079167a13ce5b5409bed704"
+    <branch module="cairomm-1.15.5.tar.gz" version="1.15.5"
+           hash="sha1:f95ae92551ea4d0a9214e45834ae9806dfee9e3d"
             repo="cairographics">
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/cairomm-Bug-100894-Cairomm-compile-failure-if-no-cairo-ft.patch";
 strip="1"/>
     </branch>
diff --git a/modulesets-stable/gtk-osx-network.modules b/modulesets-stable/gtk-osx-network.modules
index d96759d..7bcb28b 100644
--- a/modulesets-stable/gtk-osx-network.modules
+++ b/modulesets-stable/gtk-osx-network.modules
@@ -71,9 +71,9 @@
 
   <!-- Building with p11-kit support breaks g-ir-scanner, for some weird reason. -->
   <autotools id="gnutls" autogen-sh="configure"
-             autogenargs="--disable-doc --without-p11-kit">
-    <branch repo="gnutls" version="3.5.9"
-            module="gcrypt/gnutls/v3.5/gnutls-3.5.9.tar.xz"/>
+             autogenargs="--disable-gtk-doc-html --without-p11-kit">
+    <branch repo="gnutls" version="3.5.18"
+            module="gcrypt/gnutls/v3.5/gnutls-3.5.18.tar.xz"/>
     <dependencies>
       <dep package="libunistring"/>
       <dep package="libnettle"/>
@@ -94,13 +94,16 @@
             version="2.50.0"/>
     <dependencies>
       <dep package="gnutls"/>
+      <dep package="glib"/>
     </dependencies>
   </autotools>
 
   <autotools id="libsoup" autogen-sh="configure"
              autogenargs="set_more_warnings=no">
-    <branch module="libsoup/2.57/libsoup-2.57.1.tar.xz" version="2.57.1"
-            hash="sha256:ca1ca037e89e8bc7b782559f3ec5d89c9d0b836f505b2f95e008ed517fd6658f"/>
+    <branch module="libsoup/2.62/libsoup-2.62.2.tar.xz" version="2.62.2"
+            hash="sha256:9e536fe3da60b25d2c63addb84a9d5072d00b0d8b8cbeabc629a6bcd63f879b6">
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/libsoup-python.patch"; 
strip="0"/>
+    </branch>
     <dependencies>
       <dep package="glib"/>
       <dep package="glib-networking"/>
@@ -109,8 +112,8 @@
     </dependencies>
   </autotools>
 
-  <autotools id="libwebp" autogen-sh="configure">
-    <branch repo="webm" module="webp/libwebp-0.6.0.tar.gz" version="0.6.0"/>
+  <autotools id="libwebp" autogen-sh="configure"  autogenargs="--enable-libwebpmux --enable-libwebpdecoder">
+    <branch repo="webm" module="webp/libwebp-1.0.0.tar.gz" version="1.0.0"/>
   </autotools>
 
   <autotools id="icu55" autogen-sh="source/configure"
@@ -135,8 +138,7 @@
    to your skip-list.
   -->
   <autotools id="webkit" autogen-sh="autoreconf"
-             autogenargs="--enable-quartz-target --with-gtk=2.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-stdlib=libc++'"
-             makeargs="-j1">
+             autogenargs="--enable-quartz-target --with-gtk=2.0 --disable-webkit2 
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio 
CXXFLAGS='-stdlib=libc++'">
 
     <branch repo="webkit.org" module="webkitgtk-2.4.11.tar.xz" version="2.4.11">
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/webkit-140167-disable-netscape-api.patch"; 
strip="1"/>
diff --git a/modulesets-stable/gtk-osx-python.modules b/modulesets-stable/gtk-osx-python.modules
index 29f8c83..412253c 100644
--- a/modulesets-stable/gtk-osx-python.modules
+++ b/modulesets-stable/gtk-osx-python.modules
@@ -12,7 +12,7 @@
   <repository type="tarball" name="oracle"
              href="http://download.oracle.com/"/>
   <repository type="tarball" name="pymodules"
-              href="http://pypi.python.org/packages/"/>
+              href="https://pypi.python.org/packages/"/>
   <repository type="tarball" name="github-tarball"
               href="https://github.com"/>
 
@@ -77,16 +77,16 @@
   </autotools>
 
   <autotools id="python" autogenargs="--enable-shared"
-            autogen-sh="configure" supports-non-srcdir-builds="no">
+            supports-non-srcdir-builds="no">
     <branch repo="python"
-           module="2.7.14/Python-2.7.14.tar.xz" version="2.7.14"
-           hash="sha256:71ffb26e09e78650e424929b2b457b9c912ac216576e6bd9e7d204ed03296a66">
-      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/python2-linkflags.patch"; 
strip="1"/>"/>
+           module="2.7.15/Python-2.7.15.tar.xz" version="2.7.15"
+           hash="sha256:22d9b1ac5b26135ad2b8c2901a9413537e08749a753356ee913c84dbd2df5574">
+  <!-- related to https://bugs.python.org/issue11445 -->
+  <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/python-ldflags.patch"; strip="1"/>
     </branch>
     <dependencies>
       <dep package="gettext-runtime"/>
       <dep package='readline'/>
-      <dep package="openssl"/> <!-- For hashlib -->
     </dependencies>
     <after>
       <dep package="berkeleydb"/>
@@ -141,8 +141,12 @@
   <autotools id="pygobject" autogen-sh="configure"
             autogenargs="--disable-introspection"
             supports-non-srcdir-builds="no">
-    <branch version="2.28.6" module="pygobject/2.28/pygobject-2.28.6.tar.bz2"
-            hash="sha256:e4bfe017fa845940184c82a4d8949db3414cb29dfc84815fb763697dc85bdcee"/>
+    <branch version="2.28.7" module="pygobject/2.28/pygobject-2.28.7.tar.xz"
+            hash="sha256:bb9d25a3442ca7511385a7c01b057492095c263784ef31231ffe589d83a96a5a">
+      <!-- remove all references to the missing gdestktopappinfo -->
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/pygobject-gdesktopappinfo-missing.patch";
+                     strip="1"/>
+    </branch>
     <dependencies>
       <dep package="meta-gtk-osx-core"/>
     </dependencies>
@@ -203,4 +207,13 @@
     </dependencies>
   </autotools>
 
+  <distutils id="python-six">
+    <branch 
module="/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz" 
repo="pymodules" version="1.11.0"
+            checkoutdir="six"/>
+    <dependencies>
+      <dep package="libxml2"/>
+      <dep package="libxslt"/>
+    </dependencies>
+  </distutils>
+
 </moduleset>
diff --git a/modulesets-stable/gtk-osx-random.modules b/modulesets-stable/gtk-osx-random.modules
index 7803809..60868dc 100644
--- a/modulesets-stable/gtk-osx-random.modules
+++ b/modulesets-stable/gtk-osx-random.modules
@@ -4,14 +4,12 @@
 <moduleset>
   <repository type="tarball" name="ftp.gnome.org" default="yes"
               href="http://ftp.gnome.org/pub/GNOME/sources/"/>
+
   <repository type="tarball" name="ftp.gtk.org"
-              href="ftp://ftp.gtk.org/pub/"/>
+              href="https://ftp.gtk.org/pub/"/>
   <repository type="tarball" name="hadess"
               href="http://freedesktop.org/~hadess/"/>
-  <repository type="tarball" name="gimp"
-              href="ftp://ftp.gimp.org/pub/"/>
-  <repository type="tarball" name="poppler.freedesktop.org"
-              href="http://poppler.freedesktop.org/"/>
+
   <repository type="tarball" name="sourceforge"
               href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type="git" name="github.com" href="git://github.com/"/>
@@ -34,13 +32,12 @@
 
   <metamodule id="meta-gtk-osx-random">
     <dependencies>
-      <dep package="poppler"/>
-      <dep package="gimp"/>
       <dep package="devhelp"/>
       <dep package="shared-mime-info"/>
       <dep package="gossip"/>
       <dep package="vala"/>
       <dep package="glade3"/>
+      <dep package="librsvg"/>
     </dependencies>
   </metamodule>
 
@@ -173,7 +170,7 @@ Libglade itself is deprecated. This is the last release. -->
   <autotools id="shared-mime-info"  autogen-sh="configure"
              autogenargs="--disable-default-make-check"
              supports-non-srcdir-builds="no" >
-    <branch module="shared-mime-info-1.7.tar.xz" version="1.7"
+    <branch module="shared-mime-info-1.9.tar.xz" version="1.9"
             repo="hadess">
     </branch>
     <dependencies>
@@ -191,56 +188,6 @@ Libglade itself is deprecated. This is the last release. -->
     </dependencies>
   </autotools>
 
-  <autotools id="gimp"  autogen-sh="autoreconf"
-             autogenargs="--disable-python --without-x --without-dbus
-                         --without-gnomevfs --without-wmf --enable-binreloc "
-            makeargs='LDFLAGS="-framework Carbon"'>
-    <branch module="gimp/v2.8/gimp-2.8.20.tar.bz2" version="2.8.20"
-            md5sum="d405640c426b234d6efc36fb4f5bae57" repo="gimp">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/Bug-555525-plug-ins-twain-tw_mac.c.patch"; 
strip="1" />
-    </branch>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-core"/>
-    </after>
-    <dependencies>
-      <dep package="lcms"/>
-      <dep package="fontconfig"/>
-      <dep package="gegl"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id='json-glib' autogen-sh="configure">
-    <branch   module="json-glib/1.2/json-glib-1.2.8.tar.xz" version="1.2.8"
-             hash="sha256:fd55a9037d39e7a10f0db64309f5f0265fa32ec962bf85066087b83a2807f40a"/>
-  </autotools>
-
-  <autotools id="babl" >
-    <branch repo="ftp.gtk.org" version="0.1.24"
-            module="babl/0.1/babl-0.1.24.tar.bz2">
-      <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/Bug-673403-replace-values_h.patch"; strip="1"/>
-    </branch>
-  </autotools>
-
-  <autotools id="gegl" autogen-sh="configure" autogenargs="--disable-docs">
-    <branch repo="ftp.gtk.org" version="0.3.14"
-            module="gegl/0.3/gegl-0.3.14.tar.bz2"/>
-    <dependencies>
-      <dep package="babl"/>
-      <dep package="json-glib"/>
-    </dependencies>
-  </autotools>
-
-  <autotools id="poppler"  autogen-sh="configure"
-           autogenargs="--disable-qt --disable-qt4 --without-x --disable-gtk-test --enable-xpdf-headers">
-    <branch module="poppler-0.53.0.tar.gz" version="0.53.0"
-            repo="poppler.freedesktop.org"/>
-    <after>
-      <dep package="meta-gtk-osx-bootstrap"/>
-      <dep package="meta-gtk-osx-core"/>
-    </after>
-  </autotools>
-
 <!-- SQLite3 is provided by MacOSX in /usr/lib/libsqlite.3.dylib -->
   <autotools id="sqlite" autogenargs="--disable-tcl --enable-threadsafe"
             autogen-sh="configure">
diff --git a/modulesets-stable/gtk-osx-themes.modules b/modulesets-stable/gtk-osx-themes.modules
index 141f495..31ad980 100644
--- a/modulesets-stable/gtk-osx-themes.modules
+++ b/modulesets-stable/gtk-osx-themes.modules
@@ -2,11 +2,11 @@
 <!DOCTYPE moduleset SYSTEM "moduleset.dtd">
 <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
 <moduleset>
-  <repository type="tarball" name="ftp.gnome.org" default="yes" 
+  <repository type="tarball" name="ftp.gnome.org" default="yes"
               href="http://ftp.gnome.org/pub/GNOME/sources/"/>
   <repository type="git" name="git.gnome.org"
               href="https://gitlab.gnome.org/GNOME"/>
-  <repository type="tarball" name="sourceforge" 
+  <repository type="tarball" name="sourceforge"
              href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type="tarball" name="tango.freedesktop.org"
               href="http://tango.freedesktop.org/releases/"/>
diff --git a/modulesets-stable/gtk-osx-unsupported.modules b/modulesets-stable/gtk-osx-unsupported.modules
index 98bf2b7..67667fe 100644
--- a/modulesets-stable/gtk-osx-unsupported.modules
+++ b/modulesets-stable/gtk-osx-unsupported.modules
@@ -31,7 +31,7 @@
 
   <!-- Iso-codes >= 3.68 requires Python3, a dependency too far. -->
   <autotools id="iso-codes" autogen-sh="configure">
-    <branch module="iso-codes-3.67/iso-codes-3.67.tar.bz2" version="3.67"
+    <branch checkoutdir="iso-codes-iso-codes-3.67-080f941e075fef791b22feae659e8a510f57fe2c" 
module="iso-codes-3.67/iso-codes-3.67.tar.bz2" version="3.67"
            repo="iso-codes"/>
   </autotools>
 
diff --git a/modulesets-stable/gtk-osx.modules b/modulesets-stable/gtk-osx.modules
index 6f9df9b..7f4edd0 100644
--- a/modulesets-stable/gtk-osx.modules
+++ b/modulesets-stable/gtk-osx.modules
@@ -7,7 +7,7 @@
   <repository type="tarball" name="sourceforge"
               href="http://downloads.sourceforge.net/sourceforge/"/>
   <repository type="tarball" name="cairographics"
-              href="http://cairographics.org/releases/"/>
+              href="https://www.cairographics.org/releases/"/>
   <repository type="tarball" name="ftp.gnu.org"
               href="https://ftp.gnu.org/gnu/"/>
   <repository type="tarball" name="sourceware.org"
@@ -53,6 +53,7 @@
   <include href="gtk-osx-random.modules"/>
   <include href="gtk-osx-themes.modules"/>
   <include href="gtk-osx-unsupported.modules"/>
+  <include href="gtk-osx-gimp.modules"/>
 
   <metamodule id="meta-gtk-osx-core">
     <dependencies>
@@ -170,12 +171,18 @@
 
   <autotools id="gtk+" autogen-sh="autoreconf"
              autogenargs="--with-gdktarget=quartz --enable-quartz-relocation --disable-introspection">
-    <branch module="gtk+/2.24/gtk+-2.24.31.tar.xz" version="2.24.31"
-            hash="sha256:68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658">
+    <branch module="gtk+/2.24/gtk+-2.24.32.tar.xz" version="2.24.32"
+            hash="sha256:b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e">
       <!--patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0004-Bug-571582-GtkSelection-implementation-for-quartz.patch";
 strip="1"/-->
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch";
 strip="1"/>
       <patch 
file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch";
 strip="1"/>
       <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gtk+-2-m4-creation.patch"; 
strip="1"/>
+      <!-- upstream bug https://bugzilla.gnome.org/show_bug.cgi?id=767091 -->
+      <patch file="https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/gtk-gimp-dnd-bug767091.patch"; 
strip="1"/>
+      <!-- upstream bug: https://gitlab.gnome.org/GNOME/gtk/issues/529 -->
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk/uploads/f0c19446b9cd1df467c4cc9050516d4b/0001-Bug-743717-Crashes-on-clipboard-operation-influence-.patch";
 strip="1"/>
+      <!-- upstream bug: https://gitlab.gnome.org/GNOME/gtk/issues/580 -->
+      <patch 
file="https://gitlab.gnome.org/GNOME/gtk/uploads/2a194d81de8e8346a81816870264b3bf/gdkimage.patch"; strip="1"/>
    </branch>
     <dependencies>
       <dep package="glib"/>
@@ -193,7 +200,7 @@
     <branch repo="freedesktop" version="1.19.1"
             module="xorg/individual/util/util-macros-1.19.1.tar.bz2"/>
   </autotools>
-  
+
   <autotools id="libepoxy" autogen-sh="configure">
     <branch repo="github-tarball" version="1.4.1"
             module="anholt/libepoxy/releases/download/1.4.2/libepoxy-1.4.2.tar.xz"/>
@@ -267,9 +274,9 @@
        dependency. -->
   <autotools id="cairo"  autogen-sh="configure"
              autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
-    <branch module="cairo-1.14.12.tar.xz"  version="1.14.12"
+    <branch module="cairo-1.16.0.tar.xz"  version="1.16.0"
             repo="cairographics"
-            hash="sha1:490025a0ba0622a853010f49fb6343f29fb70b9b">
+            hash="sha1:00e81842ae5e81bb0343108884eb5205be0eac14">
     </branch>
     <dependencies>
       <dep package="pixman"/>
diff --git a/patches/aalib-osx.patch b/patches/aalib-osx.patch
new file mode 100644
index 0000000..44559d0
--- /dev/null
+++ b/patches/aalib-osx.patch
@@ -0,0 +1,106 @@
+diff --git a/src/aaedit.c b/src/aaedit.c
+index 09534d2..2ea52f9 100644
+--- a/src/aaedit.c
++++ b/src/aaedit.c
+@@ -1,6 +1,6 @@
+ #include <string.h>
+ #include <ctype.h>
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "aalib.h"
+ #include "aaint.h"
+ static void aa_editdisplay(struct aa_edit *e)
+ 
+diff --git a/src/aakbdreg.c b/src/aakbdreg.c
+index def65fe..f4f8efb 100644
+--- a/src/aakbdreg.c
++++ b/src/aakbdreg.c
+@@ -1,4 +1,4 @@
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "config.h"
+ #include "aalib.h"
+ #include "aaint.h"
+diff --git a/src/aalib.c b/src/aalib.c
+index 11fecc8..e3063b4 100644
+--- a/src/aalib.c
++++ b/src/aalib.c
+@@ -1,6 +1,6 @@
+ #include <stdio.h>
+ #include <string.h>
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "aalib.h"
+ #include "aaint.h"
+ 
+diff --git a/src/aamoureg.c b/src/aamoureg.c
+index 0380828..bb55fe3 100644
+--- a/src/aamoureg.c
++++ b/src/aamoureg.c
+@@ -1,4 +1,4 @@
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "config.h"
+ #include "aalib.h"
+ #include "aaint.h"
+diff --git a/src/aarec.c b/src/aarec.c
+index 70f4ebc..ee43e8a 100644
+--- a/src/aarec.c
++++ b/src/aarec.c
+@@ -1,5 +1,5 @@
+ #include <string.h>
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "aalib.h"
+ #include "aaint.h"
+ aa_linkedlist *aa_kbdrecommended = NULL, *aa_mouserecommended = NULL,
+diff --git a/src/aaregist.c b/src/aaregist.c
+index 54abec0..765155e 100644
+--- a/src/aaregist.c
++++ b/src/aaregist.c
+@@ -1,4 +1,4 @@
+-#include <malloc.h>
++#include <stdlib.h>
+ #include "config.h"
+ #include "aalib.h"
+ #include "aaint.h"
+diff --git a/src/aax.c b/src/aax.c
+index adcbd82..36e3294 100644
+--- a/src/aax.c
++++ b/src/aax.c
+@@ -1,4 +1,3 @@
+-#include <malloc.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+diff --git a/src/aaxkbd.c b/src/aaxkbd.c
+index 30d5903..da2248d 100644
+--- a/src/aaxkbd.c
++++ b/src/aaxkbd.c
+@@ -1,4 +1,3 @@
+-#include <malloc.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+diff --git a/src/aaxmouse.c b/src/aaxmouse.c
+index 9935b03..7e725ad 100644
+--- a/src/aaxmouse.c
++++ b/src/aaxmouse.c
+@@ -1,4 +1,3 @@
+-#include <malloc.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+diff --git a/aalib.m4 b/aalib.m4
+index c40b8db..991fbda 100644
+--- a/aalib.m4
++++ b/aalib.m4
+@@ -9,7 +9,7 @@
+ dnl AM_PATH_AALIB([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+ dnl Test for AALIB, and define AALIB_CFLAGS and AALIB_LIBS
+ dnl
+-AC_DEFUN(AM_PATH_AALIB,
++AC_DEFUN([AM_PATH_AALIB],
+ [dnl 
+ dnl Get the cflags and libraries from the aalib-config script
+ dnl
diff --git a/patches/ghostscript-lib.patch b/patches/ghostscript-lib.patch
new file mode 100644
index 0000000..ff13277
--- /dev/null
+++ b/patches/ghostscript-lib.patch
@@ -0,0 +1,15 @@
+--- configure.ac       2018-03-21 09:48:06.000000000 +0100
++++ configure.ac       2018-06-19 18:27:24.000000000 +0200
+@@ -2363,9 +2363,9 @@
+       SO_LIB_EXT=".so"
+     ;;
+     Darwin*)
+-      GS_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(GS_SONAME_MAJOR_MINOR)"
+-      PCL_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(PCL_SONAME_MAJOR_MINOR)"
+-      XPS_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(XPS_SONAME_MAJOR_MINOR)"
++      GS_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(prefix)/lib/\$(GS_SONAME_MAJOR_MINOR)"
++      PCL_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(prefix)/lib/\$(PCL_SONAME_MAJOR_MINOR)"
++      XPS_DYNAMIC_LDFLAGS="-dynamiclib -install_name \$(prefix)/lib/\$(XPS_SONAME_MAJOR_MINOR)"
+       DYNAMIC_LIBS=""
+       SO_LIB_EXT=".dylib"
+     ;;
diff --git a/patches/gimp-gimpui.c.patch b/patches/gimp-gimpui.c.patch
new file mode 100644
index 0000000..f8bf36b
--- /dev/null
+++ b/patches/gimp-gimpui.c.patch
@@ -0,0 +1,33 @@
+--- libgimp/gimpui.c   2018-08-19 09:47:18.000000000 -0700
++++ libgimp/gimpui.c   2018-08-21 04:41:38.000000000 -0700
+@@ -80,6 +80,9 @@
+                                                  gint           x,
+                                                  gint           y,
+                                                  PangoLayout   *layout);
++#ifdef GDK_WINDOWING_QUARTZ
++static void      osx_focus_window                (void);
++#endif
+
+
+ static gboolean gimp_ui_initialized = FALSE;
+@@ -182,7 +185,7 @@
+   gimp_dialogs_show_help_button (gimp_show_help_button ());
+
+ #ifdef GDK_WINDOWING_QUARTZ
+-  [NSApp activateIgnoringOtherApps:YES];
++  g_idle_add ((GSourceFunc) osx_focus_window, NULL);
+ #endif
+
+   gimp_ui_fix_pixbuf_style ();
+@@ -492,3 +495,11 @@
+   if (area)
+     gdk_gc_set_clip_rectangle (gc, NULL);
+ }
++
++#ifdef GDK_WINDOWING_QUARTZ
++static void
++osx_focus_window (void)
++{
++  [NSApp activateIgnoringOtherApps:YES];
++}
++#endif
diff --git a/patches/gtk-gimp-dnd-bug767091.patch b/patches/gtk-gimp-dnd-bug767091.patch
new file mode 100644
index 0000000..88b1253
--- /dev/null
+++ b/patches/gtk-gimp-dnd-bug767091.patch
@@ -0,0 +1,107 @@
+From 54d6a8e505b9c0df8ad13337b60c61ee9acf779f Mon Sep 17 00:00:00 2001
+From: Kristian Rietveld <kris loopnest org>
+Date: Sun, 7 Aug 2016 16:44:24 +0200
+Subject: [PATCH] Bug 767091 - Gimp Crashes dragging pattern to overlay layer
+
+The problem was caused by the fact that 'draggingUpdated' was sometimes
+called after 'performDragOperation:'. This seems to be timing dependent.
+Because the context was released in 'performDragOperation', updating the
+context from 'draggingUpdated' led to a crash.
+
+It also turns out that 'draggingEnded' is called on every window which
+received 'draggingEntered' earlier, once the drag has been completed.
+We use this to designate 'draggingEnded' as the place to release the
+context from now on.
+
+To solve this bug, we remove the calls to release the context from
+'draggingExited' and 'performDragOperation'. Instead, we have
+'draggingEnded' release the context on the first call (it is called
+multiple times if multiple windows has been touched during the drag).
+The hard assert is removed from update_context_from_dragging_info() and
+soft asserts are added to 'draggingUpdated' and 'performDragOperation'
+to aid with eventual future debugging.
+---
+ gdk/quartz/GdkQuartzWindow.c | 27 ++++++++++++++++-----------
+ 1 file changed, 16 insertions(+), 11 deletions(-)
+
+diff --git a/gdk/quartz/GdkQuartzWindow.c b/gdk/quartz/GdkQuartzWindow.c
+index dabf051..7e5f05c 100644
+--- a/gdk/quartz/GdkQuartzWindow.c
++++ b/gdk/quartz/GdkQuartzWindow.c
+@@ -501,8 +501,6 @@ drag_action_to_drag_operation (GdkDragAction action)
+ static void
+ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+ {
+-  g_assert (current_context != NULL);
+-
+   GDK_DRAG_CONTEXT_PRIVATE (current_context)->dragging_info = sender;
+   current_context->suggested_action = drag_operation_to_drag_action ([sender draggingSourceOperationMask]);
+   current_context->actions = current_context->suggested_action;
+@@ -529,14 +527,22 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+   return NSDragOperationNone;
+ }
+ 
++/* draggingEnded is typically called when the drag completes and is called
++ * on all views for which draggingEntered has been called. We simply
++ * handle the first call to draggingEnded to obtain the necessary
++ * information and free the object and directly return for subsequent
++ * calls.
++ */
+ - (void)draggingEnded:(id <NSDraggingInfo>)sender
+ {
++  if (!current_context)
++    return;
++
+   /* leave a note for the source about what action was taken */
+-  if (_gdk_quartz_drag_source_context && current_context)
++  if (_gdk_quartz_drag_source_context)
+    _gdk_quartz_drag_source_context->action = current_context->action;
+ 
+-  if (current_context)
+-    g_object_unref (current_context);
++  g_object_unref (current_context);
+   current_context = NULL;
+ }
+ 
+@@ -551,9 +557,6 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+   event.dnd.time = GDK_CURRENT_TIME;
+ 
+   (*_gdk_event_func) (&event, _gdk_event_data);
+-  
+-  g_object_unref (current_context);
+-  current_context = NULL;
+ }
+ 
+ - (NSDragOperation)draggingUpdated:(id <NSDraggingInfo>)sender
+@@ -563,6 +566,9 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+   GdkEvent event;
+   int gx, gy;
+ 
++  g_return_val_if_fail (current_context != NULL,
++                        NSDragOperationNone);
++
+   update_context_from_dragging_info (sender);
+   _gdk_quartz_window_nspoint_to_gdk_xy (screen_point, &gx, &gy);
+ 
+@@ -588,6 +594,8 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+   GdkEvent event;
+   int gy, gx;
+ 
++  g_return_val_if_fail (current_context != NULL, NO);
++
+   update_context_from_dragging_info (sender);
+   _gdk_quartz_window_nspoint_to_gdk_xy (screen_point, &gx, &gy);
+ 
+@@ -603,9 +611,6 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender)
+ 
+   g_object_unref (event.dnd.window);
+ 
+-  g_object_unref (current_context);
+-  current_context = NULL;
+-
+   return YES;
+ }
+ 
+-- 
+2.7.2
+
diff --git a/patches/libsoup-python.patch b/patches/libsoup-python.patch
new file mode 100644
index 0000000..c4d77bf
--- /dev/null
+++ b/patches/libsoup-python.patch
@@ -0,0 +1,9 @@
+Remove build dependency on Python3
+--- libsoup/tld-parser.py.orig 2018-06-23 14:15:29.000000000 +0200
++++ libsoup/tld-parser.py      2018-06-23 14:15:43.000000000 +0200
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python3
++#!/usr/bin/env python
+
+ # Generate tld rules
+ # Copyright (C) 2012 Red Hat, Inc.
diff --git a/patches/pngcrush-install.patch b/patches/pngcrush-install.patch
new file mode 100644
index 0000000..99f9e1d
--- /dev/null
+++ b/patches/pngcrush-install.patch
@@ -0,0 +1,14 @@
+--- Makefile.orig      2018-06-24 12:26:14.000000000 +0200
++++ Makefile   2018-06-24 12:26:31.000000000 +0200
+@@ -84,6 +84,10 @@
+
+ # dependencies --------------------------------------------------------------
+
++install: $(EXES)
++      mkdir -p $(DESTDIR)/$(JHBUILD_PREFIX)/bin
++      install $(PNGCRUSH)$(E) $(DESTDIR)/$(JHBUILD_PREFIX)/bin
++
+ all:  $(EXES)
+
+ deflate$(O): deflate.c
+ 
diff --git a/patches/pygobject-gdesktopappinfo-missing.patch b/patches/pygobject-gdesktopappinfo-missing.patch
new file mode 100644
index 0000000..123084e
--- /dev/null
+++ b/patches/pygobject-gdesktopappinfo-missing.patch
@@ -0,0 +1,329 @@
+diff --git a/gio/Makefile.am b/gio/Makefile.am
+index 6b3eb57a..b7380c04 100644
+--- a/gio/Makefile.am
++++ b/gio/Makefile.am
+@@ -36,8 +36,6 @@ EXTRA_DIST =
+ # gio module
+ GIO_OVERRIDES =                       \
+       gio.override                    \
+-      gappinfo.override               \
+-      gapplaunchcontext.override      \
+       gbufferedinputstream.override   \
+       gcancellable.override           \
+       gdatainputstream.override       \
+diff --git a/gio/gio.defs b/gio/gio.defs
+index f5a28b6d..694b63cb 100644
+--- a/gio/gio.defs
++++ b/gio/gio.defs
+@@ -2,194 +2,6 @@
+ 
+ (include "gio-types.defs")
+ 
+-;; From gappinfo.h
+-
+-(define-function app_info_get_type
+-  (c-name "g_app_info_get_type")
+-  (return-type "GType")
+-)
+-
+-(define-function app_launch_context_get_type
+-  (c-name "g_app_launch_context_get_type")
+-  (return-type "GType")
+-)
+-
+-(define-function app_info_create_from_commandline
+-  (c-name "g_app_info_create_from_commandline")
+-  (is-constructor-of "GAppInfo")
+-  (return-type "GAppInfo*")
+-  (parameters
+-    '("const-char*" "commandline")
+-    '("const-char*" "application_name" (null-ok) (default "NULL"))
+-    '("GAppInfoCreateFlags" "flags" (default "G_APP_INFO_CREATE_NONE"))
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method dup
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_dup")
+-  (return-type "GAppInfo*")
+-  (caller-owns-return #t)
+-)
+-
+-(define-method equal
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_equal")
+-  (return-type "gboolean")
+-  (parameters
+-    '("GAppInfo*" "appinfo2")
+-  )
+-)
+-
+-(define-method get_id
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_id")
+-  (return-type "const-char*")
+-)
+-
+-(define-method get_name
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_name")
+-  (return-type "const-char*")
+-)
+-
+-(define-method get_description
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_description")
+-  (return-type "const-char*")
+-)
+-
+-(define-method get_executable
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_executable")
+-  (return-type "const-char*")
+-)
+-
+-(define-method get_icon
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_icon")
+-  (return-type "GIcon*")
+-)
+-
+-;;
+-;; wrapped in gappinfo.override
+-;;
+-(define-method launch
+-  (docstring
+-  "launch (files=None, launch_context=None) -> gboolean\n"
+-  "\n"
+-  "Launches the application. Passes files to the launched application\n"
+-  "as arguments, using the optional launch_context to get information\n"
+-  "about the details of the launcher (like what screen it is on).\n"
+-  "On error, error will be set accordingly.\n\n"
+-  "Note that even if the launch is successful the application launched\n"
+-  "can fail to start if it runs into problems during startup.\n"
+-  "There is no way to detect this.\n\n"
+-  "Some URIs can be changed when passed through a gio.File\n"
+-  "(for instance unsupported uris with strange formats like mailto:),\n"
+-  "so if you have a textual uri you want to pass in as argument,\n"
+-  "consider using gio.AppInfo.launch_uris() instead."
+-  )
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_launch")
+-  (return-type "gboolean")
+-  (parameters
+-    '("GList*" "files")
+-    '("GAppLaunchContext*" "launch_context")
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method supports_uris
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_supports_uris")
+-  (return-type "gboolean")
+-)
+-
+-(define-method supports_files
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_supports_files")
+-  (return-type "gboolean")
+-)
+-
+-;;
+-;; wrapped in gappinfo.override
+-;;
+-(define-method launch_uris
+-  (docstring
+-  "launch_uris (files=None, launch_context=None) -> gboolean\n"
+-  "\n"
+-  "Launches the application. Passes files to the launched application\n"
+-  "as arguments, using the optional launch_context to get information\n"
+-  "about the details of the launcher (like what screen it is on).\n"
+-  "On error, error will be set accordingly.\n\n"
+-  "Note that even if the launch is successful the application launched\n"
+-  "can fail to start if it runs into problems during startup.\n"
+-  "There is no way to detect this.\n\n"
+-  )
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_launch_uris")
+-  (return-type "gboolean")
+-  (parameters
+-    '("GList*" "uris")
+-    '("GAppLaunchContext*" "launch_context")
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method should_show
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_should_show")
+-  (return-type "gboolean")
+-)
+-
+-(define-method set_as_default_for_type
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_set_as_default_for_type")
+-  (return-type "gboolean")
+-  (parameters
+-    '("const-char*" "content_type")
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method set_as_default_for_extension
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_set_as_default_for_extension")
+-  (return-type "gboolean")
+-  (parameters
+-    '("const-char*" "extension")
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method add_supports_type
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_add_supports_type")
+-  (return-type "gboolean")
+-  (parameters
+-    '("const-char*" "content_type")
+-    '("GError**" "error")
+-  )
+-)
+-
+-(define-method can_remove_supports_type
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_can_remove_supports_type")
+-  (return-type "gboolean")
+-)
+-
+-(define-method remove_supports_type
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_remove_supports_type")
+-  (return-type "gboolean")
+-  (parameters
+-    '("const-char*" "content_type")
+-    '("GError**" "error")
+-  )
+-)
+-
+ ;;
+ ;; wrapped in gio.override
+ ;;
+@@ -209,55 +21,12 @@
+   )
+ )
+ 
+-(define-function app_info_get_default_for_type
+-  (c-name "g_app_info_get_default_for_type")
+-  (return-type "GAppInfo*")
+-  (parameters
+-    '("const-char*" "content_type")
+-    '("gboolean" "must_support_uris")
+-  )
+-)
+-
+-(define-function app_info_get_default_for_uri_scheme
+-  (c-name "g_app_info_get_default_for_uri_scheme")
+-  (return-type "GAppInfo*")
+-  (parameters
+-    '("const-char*" "uri_scheme")
+-  )
+-)
+-
+ (define-function app_launch_context_new
+   (c-name "g_app_launch_context_new")
+   (is-constructor-of "GAppLaunchContext")
+   (return-type "GAppLaunchContext*")
+ )
+ 
+-;;
+-;; wrapped in gapplaunchcontext.override
+-;;
+-(define-method get_display
+-  (of-object "GAppLaunchContext")
+-  (c-name "g_app_launch_context_get_display")
+-  (return-type "char*")
+-  (parameters
+-    '("GAppInfo*" "info")
+-    '("GList*" "files")
+-  )
+-)
+-
+-;;
+-;; wrapped in gapplaunchcontext.override
+-;;
+-(define-method get_startup_notify_id
+-  (of-object "GAppLaunchContext")
+-  (c-name "g_app_launch_context_get_startup_notify_id")
+-  (return-type "char*")
+-  (parameters
+-    '("GAppInfo*" "info")
+-    '("GList*" "files")
+-  )
+-)
+-
+ (define-method launch_failed
+   (of-object "GAppLaunchContext")
+   (c-name "g_app_launch_context_launch_failed")
+@@ -275,25 +44,6 @@
+   )
+ )
+ 
+-(define-method can_delete
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_can_delete")
+-  (return-type "gboolean")
+-)
+-
+-(define-method delete
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_delete")
+-  (return-type "gboolean")
+-)
+-
+-(define-method get_commandline
+-  (of-object "GAppInfo")
+-  (c-name "g_app_info_get_commandline")
+-  (return-type "const-char*")
+-)
+-
+-
+ 
+ ;; From gasyncinitable.h
+ 
+diff --git a/gio/unix-types.defs b/gio/unix-types.defs
+index ed1ed9f1..3f51436c 100644
+--- a/gio/unix-types.defs
++++ b/gio/unix-types.defs
+@@ -7,18 +7,6 @@
+   (gtype-id "G_TYPE_UNIX_CONNECTION")
+ )
+ 
+-(define-object DesktopAppInfo
+-  (docstring
+-  "DesktopAppInfo(desktop_id) -> gio.unix.DesktopAppInfo\n\n"
+-  "gio.Unix.DesktopAppInfo is an implementation of gio.AppInfo\n"
+-  "based on desktop files."
+-  )
+-  (in-module "giounix")
+-  (parent "GObject")
+-  (c-name "GDesktopAppInfo")
+-  (gtype-id "G_TYPE_DESKTOP_APP_INFO")
+-)
+-
+ (define-object FDMessage
+   (in-module "giounix")
+   (parent "GSocketControlMessage")
+diff --git a/gio/unix.override b/gio/unix.override
+index aebc6fca..08e27e92 100644
+--- a/gio/unix.override
++++ b/gio/unix.override
+@@ -24,7 +24,6 @@ headers
+ #define NO_IMPORT_PYGOBJECT
+ #include <pygobject.h>
+ #include <gio/gio.h>
+-#include <gio/gdesktopappinfo.h>
+ #include <gio/gunixinputstream.h>
+ #include <gio/gunixmounts.h>
+ #include <gio/gunixoutputstream.h>
diff --git a/patches/python-ldflags.patch b/patches/python-ldflags.patch
new file mode 100644
index 0000000..922e8a3
--- /dev/null
+++ b/patches/python-ldflags.patch
@@ -0,0 +1,27 @@
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -505,9 +505,9 @@
+
+ # Build the interpreter
+ $(BUILDPYTHON):       Modules/python.o $(LIBRARY) $(LDLIBRARY)
+-              $(LINKCC) $(LDFLAGS) $(LINKFORSHARED) -o $@ \
++              $(LINKCC) $(LINKFORSHARED) -o $@ \
+                       Modules/python.o \
+-                      $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
++                      $(BLDLIBRARY) $(LDFLAGS) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
+
+ platform: $(BUILDPYTHON) pybuilddir.txt
+       $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print 
get_platform()+"-"+sys.version[0:3]' >platform
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
++++ b/configure.ac
+@@ -1170,6 +1170,8 @@
+             AC_MSG_RESULT($CC)
+         fi
+
++        LDFLAGS="${LDFLAGS} -Wl,-search_paths_first"
++
+         if test "${enable_universalsdk}"
+         then
+             case "$UNIVERSAL_ARCHS" in
diff --git a/patches/x265-cmake.patch b/patches/x265-cmake.patch
new file mode 100644
index 0000000..96fa234
--- /dev/null
+++ b/patches/x265-cmake.patch
@@ -0,0 +1,5 @@
+--- CMakeLists.txt     2018-06-10 14:37:39.000000000 +0200
++++ CMakeLists.txt     2018-06-10 14:37:05.000000000 +0200
+@@ -0,0 +1,2 @@
++cmake_minimum_required(VERSION 3.10)
++add_subdirectory("source")


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