diff options
Diffstat (limited to 'build-aux/osx/build/modulesets')
23 files changed, 2365 insertions, 0 deletions
diff --git a/build-aux/osx/build/modulesets/bootstrap.modules b/build-aux/osx/build/modulesets/bootstrap.modules new file mode 100644 index 0000000..e6dfdc5 --- /dev/null +++ b/build-aux/osx/build/modulesets/bootstrap.modules @@ -0,0 +1,249 @@ +<?xml version='1.0' encoding='utf-8'?> +<!DOCTYPE moduleset SYSTEM "moduleset.dtd"> +<moduleset><repository type="tarball" name="apache.org" href="http://archive.apache.org/dist/"/> + <repository type="tarball" name="cmake" href="http://www.cmake.org/files/"/> + <repository type="tarball" name="cpan" href="http://search.cpan.org/CPAN/"/> + <repository type="tarball" name="ftp.gnome.org" default="yes" href="ftp://ftp.gnome.org/pub/gnome/sources/"/> + <repository type="tarball" name="ftp.gnu.org" href="ftp://ftp.gnu.org/gnu/"/> + <repository type="tarball" name="intltool" href="http://launchpad.net/intltool/trunk/"/> + + <repository type="tarball" name="itstool.org" href="http://files.itstool.org/itstool/"/> + <repository type="tarball" name="oracle" href="http://download.oracle.com/"/> + + <repository type="tarball" name="pkgconfig" href="http://pkgconfig.freedesktop.org/releases/"/> + <repository type="tarball" name="python" href="http://www.python.org/ftp/python/"/> + <repository type="tarball" name="sourceforge" href="http://downloads.sourceforge.net/sourceforge/"/> + <repository type="tarball" name="tukaani.org" href="http://tukaani.org/"/> + <repository type="tarball" name="xmlsoft.org" href="ftp://xmlsoft.org/libxml2/"/> + <autotools id="berkeleydb-nonsrctree" autogen-sh="configure" autogen-template="%(srcdir)s/dist/%(autogen-sh)s --prefix %(prefix)s --libdir %(libdir)s %(autogenargs)s"> + + <branch module="berkeley-db/db-4.8.30.NC.tar.gz" version="4.8.30" repo="oracle"> + <patch file="berkeleydb-nonsrctree/atomic.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="berkeleydb" autogen-sh="configure" supports-non-srcdir-builds="no" makeargs="-C build_unix" autogen-template="cd build_unix; ../dist/%(autogen-sh)s --prefix %(prefix)s --libdir %(libdir)s %(autogenargs)s" makeinstallargs="-C build_unix install"> + + <branch module="berkeley-db/db-4.8.30.NC.tar.gz" version="4.8.30" repo="oracle"> + <patch file="berkeleydb/atomic.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="readline" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="readline/readline-6.2.tar.gz" version="6.2"> + <patch file="readline/readline62-001" strip="0"/> + <patch file="readline/readline62-002" strip="0"/> + <patch file="readline/readline62-003" strip="0"/> + <patch file="readline/readline62-004" strip="0"/> + </branch> + </autotools> + + <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.18.1.1.tar.gz" version="0.18.1.1" size="15139737" md5sum="3dd55b952826d2b32f51308f2f91aa89"> + <patch file="gettext-runtime/gettext-bug33999-stpncpy.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="python" autogenargs="--enable-shared" autogen-sh="configure"> + <branch repo="python" module="2.7.6/Python-2.7.6.tar.xz" version="2.7.6"> + </branch> + <dependencies> + <dep package="gettext-runtime"/> + <dep package="readline"/> + </dependencies> + <after> + <dep package="berkeleydb"/> + <dep package="berkeleydb-nonsrctree"/> + </after> + </autotools> + + <autotools id="itstool" autogen-sh="autoreconf"> + <branch repo="itstool.org" module="itstool-2.0.2.tar.bz2" version="2.0.2" hash="sha256:bf909fb59b11a646681a8534d5700fec99be83bb2c57badf8c1844512227033a" size="96748"> + <patch file="itstool/itstool.use-correct-libxml.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="yelp-xsl" autogen-sh="configure"> + <branch module="yelp-xsl/3.12/yelp-xsl-3.12.0.tar.xz" version="3.12.0" hash="sha256:dd0b8af338b1cdae50444273d7c761e3f511224421487311103edc95a4493656" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libxslt"/> + <dep package="libxml2"/> + <dep package="intltool"/> + <dep package="itstool"/> + </dependencies> + </autotools> + + <autotools id="libxml2" autogen-sh="configure" autogenargs="--with-python"> + <branch version="2.9.0" module="libxml2-2.9.0.tar.gz" repo="xmlsoft.org"> + <patch file="libxml2/libxml2-Bug-686118-pthreads_once_init.patch" strip="1"/> + </branch> + <dependencies> + <dep package="python"/> + </dependencies> + </autotools> + + <autotools id="apr"> + <branch repo="apache.org" module="apr/apr-1.4.5.tar.bz2" version="1.4.5"/> + </autotools> + + <autotools id="yelp-tools" autogen-sh="configure"> + <branch module="yelp-tools/3.13/yelp-tools-3.13.3.tar.xz" version="3.13.3" hash="sha256:20067061736e3d4ec05fc364a71d8e5d06b230528b6b7a16cb41e03c9bf3b8c6" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libxslt"/> + <dep package="libxml2"/> + <dep package="intltool"/> + <dep package="yelp-xsl"/> + <dep package="itstool"/> + </dependencies> + </autotools> + + <autotools id="libxslt" autogen-sh="configure"> + <branch version="1.1.27" module="libxslt-1.1.27.tar.gz" repo="xmlsoft.org"/> + <dependencies> + <dep package="libxml2"/> + </dependencies> + </autotools> + + <autotools id="apr-util" autogenargs="--with-apr=$PREFIX/bin/apr-1-config"> + <branch repo="apache.org" module="apr/apr-util-1.3.12.tar.bz2" version="1.3.12"/> + <dependencies> + <dep package="apr"/> + </dependencies> + </autotools> + + <autotools id="intltool" autogen-sh="configure"> + <branch repo="intltool" module="0.50.2/+download/intltool-0.50.2.tar.gz" version="0.50.2" hash="md5:23fbd879118253cb99aeac067da5f591"/> + <dependencies> + <dep package="gnome-common"/> + <dep package="perl-xml-parser"/> + </dependencies> + </autotools> + + <autotools id="gnome-common"> + <branch module="gnome-common/3.12/gnome-common-3.12.0.tar.xz" version="3.12.0" hash="sha256:18712bc2df6b2dd88a11b9f7f874096d1c0c6e7ebc9cfc0686ef963bd590e1d8" repo="ftp.gnome.org"/> + </autotools> + <autotools id="gtk-doc" autogenargs="--disable-scrollkeeper --with-xml-catalog=$JHBUILD_PREFIX/etc/xml/catalog" makeargs="-k -i" makeinstallargs="-k -i install" autogen-sh="configure"> + <branch version="1.21" module="gtk-doc/1.21/gtk-doc-1.21.tar.xz" hash="sha256:5d934d012ee08edd1585544792efa80da271652587ba5b843d2cea8e8b80ee3e" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libxslt"/> + <dep package="yelp-tools"/> + </dependencies> + </autotools> +<autotools id="gtk-osx-docbook" autogen-sh="configure" supports-non-srcdir-builds="no"> + <branch repo="sourceforge" module="gtk-osx/gtk-osx-docbook-1.1.tar.gz" version="1.1"/> + </autotools> + + <perl id="perl-xml-simple"> + <branch repo="cpan" module="authors/id/G/GR/GRANTM/XML-Simple-2.20.tar.gz" version="2.20" size="75993" md5sum="4d10964e123b76eca36678464daa63cd"/> + <dependencies> + <dep package="perl-xml-parser"/> + </dependencies> + </perl> + + <perl id="perl-xml-parser" makeargs="EXPATLIBPATH=${prefix}/lib EXPATINCPATH=${prefix}/include"> + <branch repo="cpan" module="authors/id/T/TO/TODDR/XML-Parser-2.41.tar.gz" version="2.41"/> + <dependencies> + <dep package="expat"/> + </dependencies> + </perl> + + <autotools id="expat" autogen-sh="configure"> + <branch module="expat/expat-2.1.0.tar.gz" version="2.1.0" repo="sourceforge"/> + </autotools> + + <autotools id="flex" autogen-sh="configure"> + <branch repo="sourceforge" module="flex/flex-2.5.37.tar.bz2" version="2.5.37"/> + </autotools> + + <autotools id="bison" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="bison/bison-2.6.3.tar.bz2" version="2.6.3"/> + </autotools> + + <autotools id="pkg-config" autogen-sh="configure"> + <branch repo="pkgconfig" module="pkg-config-0.25.tar.gz" version="0.25"/> + </autotools> + + <autotools id="automake-1.13" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="automake/automake-1.13.1.tar.xz" version="1.13.1"/> + </autotools> + +<autotools id="automake-1.12" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="automake/automake-1.12.6.tar.xz" version="1.12.6"/> + </autotools> + + <autotools id="automake-1.11" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="automake/automake-1.11.6.tar.xz" version="1.11.6"/> + </autotools> + + <autotools id="automake-1.10" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="automake/automake-1.10.3.tar.bz2" version="1.10.3" size="957505" md5sum="b8e67fb458da396bc35555af7ef2b49f"/> + </autotools> + + <autotools id="libtool" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="libtool/libtool-2.4.2.tar.gz" version="2.4.2"/> + </autotools> + + <autotools id="autoconf" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="autoconf/autoconf-2.69.tar.xz" version="2.69"/> + <dependencies> + <dep package="m4"/> + </dependencies> + </autotools> + + <autotools id="m4" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="m4/m4-1.4.16.tar.bz2" version="1.4.16"/> + </autotools> + + <autotools id="cmake" autogen-sh="bootstrap" autogen-template="%(srcdir)s/%(autogen-sh)s --prefix=%(prefix)s %(autogenargs)s"> + <branch repo="cmake" module="v2.8/cmake-2.8.12.tar.gz" version="2.8.12"/> + </autotools> + + <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.18.1.1.tar.gz" version="0.18.1.1" size="15139737" md5sum="3dd55b952826d2b32f51308f2f91aa89"> + <patch file="gettext-tools/gettext-bug33999-stpncpy.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="subversion"> + <branch repo="apache.org" module="subversion/subversion-1.5.9.tar.bz2" version="1.5.9"/> + <dependencies> + <dep package="apr-util"/> + </dependencies> + </autotools> + + <autotools id="make"> + <branch repo="ftp.gnu.org" module="make/make-3.82.tar.gz" version="3.82"/> + </autotools> + + <autotools id="xz" autogen-sh="configure"> + <branch repo="tukaani.org" module="xz/xz-5.0.4.tar.bz2" version="5.0.4"/> + </autotools> + + <metamodule id="meta-bootstrap"> + <dependencies> + <dep package="xz"/> + <dep package="make"/> <!-- Needed for Tiger, skipped otherwise --> + <dep package="subversion"/> <!-- Needed for Tiger, skipped otherwise --> + <dep package="gettext-tools"/> <!-- Needed for 64-bit --> + <dep package="cmake"/> + <dep package="m4"/> <!-- Can be skipped for Leopard and later --> + <dep package="autoconf"/> + <dep package="libtool"/> + <dep package="automake-1.10"/> + <dep package="automake-1.11"/> + <dep package="automake-1.12"/> + <dep package="automake-1.13"/> + <dep package="pkg-config"/> + <dep package="bison"/> <!-- included for Tiger, skipped otherwise --> + <dep package="flex"/> <!-- included for Tiger, skipped otherwise --> + <dep package="expat"/> + <dep package="perl-xml-parser"/> + <dep package="perl-xml-simple"/> + <dep package="gtk-osx-docbook"/> + <dep package="gtk-doc"/> + <dep package="gnome-common"/> + <dep package="intltool"/> + </dependencies> + </metamodule> + +</moduleset> diff --git a/build-aux/osx/build/modulesets/gedit.modules b/build-aux/osx/build/modulesets/gedit.modules new file mode 100644 index 0000000..f8497b9 --- /dev/null +++ b/build-aux/osx/build/modulesets/gedit.modules @@ -0,0 +1,553 @@ +<?xml version='1.0' encoding='utf-8'?> +<!DOCTYPE moduleset SYSTEM "moduleset.dtd"> +<moduleset><repository type="tarball" name="abisource/enchant" href="http://www.abisource.com/downloads/enchant/"/> + <repository type="tarball" name="cairographics" href="http://cairographics.org/releases/"/> + + <repository type="tarball" name="cairographics.org" href="http://cairographics.org/releases/"/> + <repository type="tarball" name="cups" href="http://ftp.easysw.com/pub/"/> + + <repository type="tarball" name="fontconfig" href="http://www.freedesktop.org/software/fontconfig/release/"/> + <repository type="tarball" name="ftp.gnome.org" default="yes" href="ftp://ftp.gnome.org/pub/gnome/sources/"/> + <repository type="tarball" name="ftp.gnu.org" href="ftp://ftp.gnu.org/gnu/"/> + <repository type="tarball" name="ftp.gnupg.org" href="ftp://ftp.gnupg.org/"/> + <repository type="git" name="git.github.com" href="https://github.com/"/> + + <repository type="git" name="git.gnome.org" href="git://git.gnome.org/"/> + <repository type="tarball" name="hadess" href="http://freedesktop.org/~hadess/"/> + <repository type="tarball" name="harfbuzz" href="http://www.freedesktop.org/software/harfbuzz/release/"/> + <repository type="tarball" name="icon-theme" href="http://icon-theme.freedesktop.org/releases/"/> + <repository type="tarball" name="iso-codes" href="http://pkg-isocodes.alioth.debian.org/downloads/"/> + <repository type="tarball" name="jpeg" href="http://www.ijg.org/files/"/> + <repository type="tarball" name="libtiff" href="http://download.osgeo.org/"/> + <repository type="tarball" name="oracle" href="http://download.oracle.com/"/> + <repository type="tarball" name="python" href="https://www.python.org/ftp/python/"/> + <repository type="tarball" name="sourceforge" href="http://downloads.sourceforge.net/sourceforge/"/> + <repository type="tarball" name="sourceware.org" href="ftp://sourceware.org/pub/"/> + + <repository type="tarball" name="sqlite" href="http://www.sqlite.org/"/> + <repository type="tarball" name="tango.freedesktop.org" href="http://tango.freedesktop.org/releases/"/> + <repository type="tarball" name="tarball.github.com" href="https://github.com/"/> + <repository type="tarball" name="xmlsoft.org" href="ftp://xmlsoft.org/libxml2/"/> + <autotools id="libcroco" autogenargs="--disable-Bsymbolic" autogen-sh="configure"> + <branch module="libcroco/0.6/libcroco-0.6.8.tar.xz" version="0.6.8" hash="sha256:ea6e1b858c55219cefd7109756bff5bc1a774ba7a55f7d3ccd734d6b871b8570" repo="ftp.gnome.org"/> + </autotools> + + <autotools id="libgpg-error" autogen-sh="configure" supports-non-srdir-builds="no"> + <branch repo="ftp.gnupg.org" version="1.10" module="gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2"/> + </autotools> + + <autotools id="libtasn1" supports-non-srcdir-builds="no" autogen-sh="configure"> + <branch repo="ftp.gnu.org" version="2.14" module="libtasn1/libtasn1-2.14.tar.gz"/> + </autotools> + + <autotools id="gnome-icon-theme" autogen-sh="configure"> + <branch module="gnome-icon-theme/3.12/gnome-icon-theme-3.12.0.tar.xz" version="3.12.0" hash="sha256:359e720b9202d3aba8d477752c4cd11eced368182281d51ffd64c8572b4e503a" repo="ftp.gnome.org"/> + <dependencies> + <dep package="hicolor-icon-theme"/> + <dep package="icon-naming-utils"/> + </dependencies> + </autotools> + + <autotools id="librsvg" autogenargs="--disable-Bsymbolic"> + <branch module="librsvg/2.40/librsvg-2.40.3.tar.xz" version="2.40.3" hash="sha256:eb2755fe8bf0aa5b439bcf94edc880f08396b4c79fd54c73147df0607c63c98f" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libcroco"/> + </dependencies> + </autotools> + + <autotools id="pixman" autogenargs="--disable-gtk" autogen-sh="configure"> + <branch version="0.30.2" module="pixman-0.30.2.tar.gz" repo="cairographics" hash="sha1:59cc9cd91a2394b7c0aa90ffc7c141f06d75f066"/> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="libxml2" autogen-sh="configure" autogenargs="--with-python"> + <branch version="2.9.0" module="libxml2-2.9.0.tar.gz" repo="xmlsoft.org"> + <patch file="libxml2/libxml2-Bug-686118-pthreads_once_init.patch" strip="1"/> + </branch> + <after> + <dep package="python"/> + <dep package="python3"/> + </after> + </autotools> + + <autotools id="libgcrypt" autogen-sh="configure" autogenargs="--disable-asm"> + <branch repo="ftp.gnupg.org" version="1.5.3" module="gcrypt/libgcrypt/libgcrypt-1.5.3.tar.bz2"> + <patch file="libgcrypt/libgcrypt-build-clang.patch" strip="1"/> + </branch> + <dependencies> + <dep package="libgpg-error"/> + </dependencies> + </autotools> + + <autotools id="gnutls" autogen-sh="configure" autogenargs="--with-libgcrypt --without-p11-kit"> + <branch repo="ftp.gnu.org" version="2.12.20" module="gnutls/gnutls-2.12.20.tar.bz2"/> + <dependencies> + <dep package="libgcrypt"/> + <dep package="libtasn1"/> + <dep package="zlib"/> + </dependencies> + </autotools> + + <autotools id="berkeleydb-nonsrctree" autogen-sh="configure" autogen-template="%(srcdir)s/dist/%(autogen-sh)s --prefix %(prefix)s --libdir %(libdir)s %(autogenargs)s"> + + <branch module="berkeley-db/db-4.8.30.NC.tar.gz" version="4.8.30" repo="oracle"> + <patch file="berkeleydb-nonsrctree/atomic.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="berkeleydb" autogen-sh="configure" supports-non-srcdir-builds="no" makeargs="-C build_unix" autogen-template="cd build_unix; ../dist/%(autogen-sh)s --prefix %(prefix)s --libdir %(libdir)s %(autogenargs)s" makeinstallargs="-C build_unix install"> + + <branch module="berkeley-db/db-4.8.30.NC.tar.gz" version="4.8.30" repo="oracle"> + <patch file="berkeleydb/atomic.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="adwaita-icon-theme" autogen-sh="configure"> + <branch module="adwaita-icon-theme/3.13/adwaita-icon-theme-3.13.91.tar.xz" version="3.13.91" hash="sha256:d0cf4705d3439c68d344431b62cca5fe6fcf91bd38c745c48b2476d0aa41b8ad" repo="ftp.gnome.org"/> + <dependencies> + <dep package="hicolor-icon-theme"/> + <dep package="icon-naming-utils"/> + <dep package="librsvg"/> + </dependencies> + </autotools> + + <autotools id="gnome-themes-standard" autogen-sh="configure" autogenargs="--disable-gtk2-engine"> + <branch module="gnome-themes-standard/3.13/gnome-themes-standard-3.13.90.tar.xz" version="3.13.90" hash="sha256:76bfbf25cdd6f86fdbf15b085c5bcfbe0abf4715510a917ec023a4d780fb5f53" repo="ftp.gnome.org"/> + <dependencies> + <dep package="librsvg"/> + <dep package="gnome-icon-theme"/> + </dependencies> + </autotools> + + <autotools id="icon-naming-utils" autogen-sh="configure"> + <branch repo="tango.freedesktop.org" version="0.8.90" module="icon-naming-utils-0.8.90.tar.bz2" hash="md5:dd8108b56130b9eedc4042df634efa66"/> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="gtk+" autogen-sh="autoreconf" autogenargs="--with-gdktarget=quartz --enable-quartz-relocation --disable-introspection"> + <branch module="gtk+/2.24/gtk+-2.24.21.tar.xz" version="2.24.21" hash="sha256:302e9216dd19ec4b5b9e2f77275e23758253f7e86b06287284d8e794ef38dce3" repo="ftp.gnome.org"> + <!--patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/0004-Bug-571582-GtkSelection-implementation-for-quartz.patch" strip="1"/--> + <patch file="gtk+/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch" strip="1"/> + <patch file="gtk+/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch" strip="1"/> +<patch file="gtk+/gtk+-2-m4-creation.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="pango"/> + <dep package="atk"/> + <dep package="gdk-pixbuf"/> + <dep package="gobject-introspection"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="atk" autogen-sh="configure"> + <branch module="atk/2.13/atk-2.13.90.tar.xz" version="2.13.90" hash="sha256:66a1ddf2ee3e8251012d428740549d7ac176135451927bcc4c332e3ed12dfc47" repo="ftp.gnome.org"/> + <dependencies> + </dependencies> + <after> + <dep package="glib"/> + <dep package="glib"/> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="gdk-pixbuf" autogen-sh="configure"> + <branch module="gdk-pixbuf/2.31/gdk-pixbuf-2.31.1.tar.xz" version="2.31.1" hash="sha256:25a75e3c61dac11e6ff6416ad846951ccafac6486b1c6a1bfb0b213b99db52cd" repo="ftp.gnome.org"/> + <after> + <dep package="pango"/> + </after> + </autotools> + + <autotools id="pango" autogen-sh="autoreconf"> + <branch version="1.36.7" module="pango/1.36/pango-1.36.7.tar.xz" hash="sha256:1f7b527423a1b3044fd9ae7fbe054107b06723ff1c73e0b5f7bf9b84358d404a" repo="ftp.gnome.org"> + </branch> + <dependencies> + <dep package="cairo"/> + </dependencies> + <after> + <dep package="gobject-introspection"/> + <dep package="meta-gtk-osx-freetype"/> + <dep package="glib"/> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="zlib" autogen-sh="configure" skip-autogen="never" supports-non-srcdir-builds="no"> + <branch repo="sourceforge" version="1.2.7" module="libpng/zlib-1.2.7.tar.gz"/> + </autotools> + + <autotools id="python" autogenargs="--enable-shared" autogen-sh="configure"> + <branch repo="python" module="2.7.6/Python-2.7.6.tar.xz" version="2.7.6"> + </branch> + <dependencies> + <dep package="gettext-runtime"/> + <dep package="readline"/> + </dependencies> + <after> + <dep package="berkeleydb"/> + <dep package="berkeleydb-nonsrctree"/> + </after> + </autotools> + + <autotools id="cairo" autogen-sh="configure" autogenargs="--enable-pdf --enable-quartz --enable-xlib=no --without-x"> + <branch module="cairo-1.12.16.tar.xz" version="1.12.16" repo="cairographics" hash="sha1:4f6e337d5d3edd7ea79d1426f575331552b003ec"> + </branch> + <dependencies> + <dep package="pixman"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="fontconfig"/> + <dep package="freetype"/> + </after> + </autotools> + + <autotools id="libffi" autogenargs="--disable-builddir" autogen-sh="configure"> + <branch module="libffi/libffi-3.0.13.tar.gz" repo="sourceware.org" version="3.0.13" checkoutdir="atgreen-libffi-873d687"/> + </autotools> + +<autotools id="libxslt" autogen-sh="configure"> + <branch version="1.1.27" module="libxslt-1.1.27.tar.gz" repo="xmlsoft.org"/> + <dependencies> + <dep package="libxml2"/> + </dependencies> + </autotools> + +<autotools id="sqlite" autogenargs="--disable-tcl --enable-threadsafe" autogen-sh="configure"> + <branch module="sqlite-autoconf-3071401.tar.gz" version="3.7.14" repo="sqlite"/> + </autotools> + +<autotools id="glib-networking" autogen-sh="configure" autogenargs="--without-ca-certificates set_more_warnings=no"> + <branch module="glib-networking/2.41/glib-networking-2.41.4.tar.xz" version="2.41.4" hash="sha256:930ad618865dcf81765d0f48cb6f13e22d76203efa59d30604aed0384ce80fd7" repo="ftp.gnome.org"/> + <dependencies> + <dep package="gnutls"/> + <dep package="libgcrypt"/> + </dependencies> + </autotools> + + <autotools id="pygobject3" autogenargs="--with-python=python3"> + <branch module="pygobject" repo="git.gnome.org"/> + <dependencies> + <dep package="meta-gtk-osx-gtk3"/> + </dependencies> + <after> + <dep package="python"/> + <dep package="python3"/> + </after> + </autotools> + + <waf id="pycairo-python3" autogen-sh="configure" python-command="python3"> + <branch module="pycairo-1.10.0.tar.bz2" repo="cairographics.org" version="1.10.0" hash="sha1:b4283aa1cc9aafd12fd72ad371303a486da1d014"/> + <dependencies> + <dep package="python3"/> + <dep package="cairo"/> + </dependencies> + <after> + <dep package="python3"/> + <dep package="meta-gtk-osx-gtk3"/> + </after> + </waf> + + <autotools id="python3" autogenargs="--enable-shared" autogen-sh="configure"> + <branch repo="python" module="3.3.2/Python-3.3.2.tar.xz" version="3.3.2"/> + <dependencies> + <dep package="gettext-runtime"/> + <dep package="readline"/> + </dependencies> + <after> + <dep package="berkeleydb"/> + <dep package="berkeleydb-nonsrctree"/> + </after> + </autotools> + + <metamodule id="meta-gtk-osx-gtk3-core-themes"> + <dependencies> + <dep package="icon-naming-utils"/> + <dep package="gnome-themes-standard"/> + <dep package="adwaita-icon-theme"/> + </dependencies> + </metamodule> + + <autotools id="gtk-mac-integration" autogen-sh="configure" autogenargs="--disable-python"> + <branch module="gtk-mac-integration/2.0/gtk-mac-integration-2.0.5.tar.xz" version="2.0.5" hash="sha256:6c4ff7501d7ff35e49068052d80fcf76ce494e5953c5f3967e4958b1b0c67b9f" repo="ftp.gnome.org"> + <patch file="gtk-mac-integration/0001-Fix-unhandled-exception-from-attempting-to-access-me.patch" strip="1"/> + </branch> + <dependencies> + </dependencies> + <after> + <dep package="gtk+"/> + <dep package="gtk+-3.0"/> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + +<autotools id="gtk+-3.0" autogenargs="--enable-quartz-backend --enable-quartz-relocation --disable-colord --without-atk-bridge"> + <branch module="jessevdk/gtk" checkoutdir="gtk+-3.0" repo="git.github.com" revision="wip/app-osx-int"/> + <dependencies> + <dep package="gobject-introspection"/> + <dep package="pango"/> + <dep package="gdk-pixbuf"/> + <dep package="atk"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <autotools id="harfbuzz" autogen-sh="configure" autogenargs="--with-coretext"> + <branch repo="harfbuzz" module="harfbuzz-0.9.26.tar.bz2" version="0.9.26"/> + <dependencies> + <dep package="freetype"/> + <dep package="fontconfig"/> + <dep package="glib"/> + </dependencies> + </autotools> + + <autotools id="fontconfig" autogen-sh="autoreconf" autogenargs="--disable-docs"> + <branch repo="fontconfig" version="2.11.0" module="fontconfig-2.11.0.tar.gz"/> + <dependencies> + <dep package="freetype"/> + </dependencies> + </autotools> + +<autotools id="freetype" autogen-sh="configure" skip-autogen="never" autogenargs="--without-bzip2"> + <branch module="freetype/freetype-2.5.2.tar.gz" version="2.5.2" repo="sourceforge"> + </branch> + <dependencies> + <dep package="zlib"/> + </dependencies> + </autotools> + + <autotools id="gobject-introspection" autogen-sh="configure"> + <branch module="gobject-introspection/1.41/gobject-introspection-1.41.91.tar.xz" version="1.41.91" hash="sha256:a1ea708eeaa13dcc5a3078b1ae5aae178f22410023a56c699560f4e068722d9e" repo="ftp.gnome.org"> + <patch file="gobject-introspection/girscanner-objc.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="cairo"/> + </dependencies> + <after> + <dep package="python"/> + </after> + </autotools> + + <autotools id="glib" autogen-sh="autoreconf"> + <branch module="glib/2.41/glib-2.41.4.tar.xz" version="2.41.4" hash="sha256:1661bc4abfd1b0b59ae7abbef9d6a60c32192a7a65122753d5d8cc2db110fbf7" repo="ftp.gnome.org"> + <patch file="glib/0001-Bug-724590-GSlice-slab_stack-corruption.patch" strip="1"/> + </branch> + <dependencies> + <dep package="libffi"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <cmake id="libgit2" cmakeargs="-DTHREADSAFE:BOOL=1"> + <branch repo="tarball.github.com" module="libgit2/libgit2/archive/v${version}.tar.gz" version="0.21.0" hash="ae2afb5729ab6dcf6f690e5d66cb876372eaaedd37dc4fb072ad8da92338e099" checkoutdir="libgit2-${version}"> + </branch> + </cmake> + + <autotools id="hicolor-icon-theme" autogen-sh="configure" supports-non-srcdir-builds="no"> + <branch module="hicolor-icon-theme-0.11.tar.gz" repo="icon-theme" version="0.11"/> + + </autotools> + + <autotools id="gnome-doc-utils" autogenargs="--disable-scrollkeeper" autogen-sh="configure" supports-non-srcdir-builds="no"> + <branch module="gnome-doc-utils/0.20/gnome-doc-utils-0.20.10.tar.xz" version="0.20.10" hash="sha256:cb0639ffa9550b6ddf3b62f3b1add92fb92ab4690d351f2353cffe668be8c4a6" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libxslt"/> + </dependencies> + </autotools> + + <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.18.1.1.tar.gz" version="0.18.1.1" size="15139737" md5sum="3dd55b952826d2b32f51308f2f91aa89"> + <patch file="gettext-runtime/gettext-bug33999-stpncpy.patch" strip="1"/> + </branch> + </autotools> + + <autotools id="libtiff" autogen-sh="configure" autogenargs="--without-x --without-apple-opengl-framework"> + <branch version="3.9.5" module="libtiff/tiff-3.9.5.tar.gz" repo="libtiff"/> + <dependencies> + <dep package="libjpeg"/> + </dependencies> + </autotools> + + <autotools id="libjpeg" autogen-sh="configure"> + <branch module="jpegsrc.v8d.tar.gz" version="8c" repo="jpeg" checkoutdir="jpeg-8d"> + </branch> + </autotools> + + <autotools id="libpng" autogenargs="--enable-shared" autogen-sh="configure"> + <branch version="1.5.13" module="libpng/libpng-1.5.13.tar.bz2" repo="sourceforge"/> + </autotools> + + <autotools id="cups" autogen-sh="configure" skip-autogen="never" autogenargs="DSOFLAGS="$LDFLAGS""> + <branch module="cups/1.2.12/cups-1.2.12-source.tar.bz2" version="1.2.12" repo="cups" checkoutdir="cups-1.2.12"/> + <dependencies> + <dep package="libtiff"/> + </dependencies> + </autotools> + + <autotools id="readline" autogen-sh="configure"> + <branch repo="ftp.gnu.org" module="readline/readline-6.3.tar.gz" version="6.3"> + </branch> + </autotools> + + <autotools id="libsoup" autogen-sh="configure" autogenargs="set_more_warnings=no"> + <branch module="libsoup/2.46/libsoup-2.46.0.tar.xz" version="2.46.0" hash="sha256:fa3d5574c1a2df521242e2ca624a2b3057121798cab9f8f40525aa186a7b15a3" repo="ftp.gnome.org"/> + <dependencies> + <dep package="glib"/> + <dep package="glib-networking"/> + <dep package="sqlite"/> + </dependencies> + </autotools> + + <autotools id="shared-mime-info" autogen-sh="configure" supports-non-srcdir-builds="no"> + <branch module="shared-mime-info-1.2.tar.xz" version="1.2" repo="hadess"> + <patch file="shared-mime-info/0001-Bug-70255-Build-fails-with-glib-2.38.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + </dependencies> + </autotools> + + <autotools id="iso-codes" autogen-sh="configure"> + <branch module="iso-codes-3.51.tar.xz" version="3.51" repo="iso-codes"/> + </autotools> + + <autotools id="gsettings-desktop-schemas"> + <branch module="gsettings-desktop-schemas/3.13/gsettings-desktop-schemas-3.13.92.tar.xz" version="3.13.92" hash="sha256:82338a066b48cf39f190ef7a82db46bc6a6a451cbe08d43dca7d03364bf9c034" repo="ftp.gnome.org"> + </branch> + <dependencies> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="glib"/> + </dependencies> + </autotools> + + <autotools id="enchant" autogenargs="--disable-myspell --disable-ispell"> + <branch module="1.6.0/enchant-1.6.0.tar.gz" version="1.6.0" repo="abisource/enchant"> + <patch file="enchant/enchant-gsize.patch" strip="1"/> + <patch file="enchant/enchant-applespell.patch" strip="1"/> + <patch file="enchant/enchant-relocatable.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + </dependencies> + </autotools> + + <autotools id="gtksourceview3"> + <branch module="gtksourceview" repo="git.gnome.org"/> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="meta-gtk-osx-gtk3"/> + </after> + </autotools> + + <autotools id="libpeas" autogenargs="PYTHON=python3 --disable-python2 --enable-python3"> + <branch module="libpeas" repo="git.gnome.org"> + </branch> + <dependencies> + <dep package="python3"/> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="meta-gtk-osx-gtk3"/> + <dep package="pycairo-python3"/> + <dep package="pygobject3"/> + </dependencies> + </autotools> + + <metamodule id="meta-gtk-osx-gtk3"> + <dependencies> + <dep package="gtk+-3.0"/> + <dep package="gtk-mac-integration"/> + <dep package="meta-gtk-osx-gtk3-core-themes"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </metamodule> + + <metamodule id="meta-gtk-osx-freetype"> + <dependencies> + <dep package="freetype"/> + <dep package="fontconfig"/> + <dep package="harfbuzz"/> + </dependencies> + </metamodule> + + <autotools id="vte" autogenargs="--disable-Bsymbolic --disable-vala --disable-gnome-pty-helper"> + <branch module="jessevdk/vte" repo="git.github.com"/> + <dependencies> + <dep package="meta-gtk-osx-gtk3"/> + </dependencies> + </autotools> + + <autotools id="libgit2-glib"> + <branch module="libgit2-glib/0.0/libgit2-glib-0.0.20.tar.xz" version="0.0.20" hash="sha256:f8a10c8d3fcad14eed080dff6b8db0c72866c11a05b9731af31cb7258bcc8d95" repo="ftp.gnome.org"/> + <dependencies> + <dep package="libgit2"/> + <dep package="glib"/> + <dep package="gobject-introspection"/> + </dependencies> + </autotools> + + <metamodule id="meta-gtk-osx-bootstrap"> + <dependencies> + <dep package="readline"/> + <dep package="cups"/> + <dep package="libpng"/> + <dep package="libjpeg"/> + <dep package="libtiff"/> + <dep package="gettext-runtime"/> + <dep package="gnome-doc-utils"/> + <dep package="hicolor-icon-theme"/> + </dependencies> + </metamodule> + + <metamodule id="gedit-deps"> + <dependencies> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="meta-gtk-osx-freetype"/> + <dep package="meta-gtk-osx-gtk3"/> + <dep package="libpeas"/> + <dep package="gtksourceview3"/> + <dep package="enchant"/> + <dep package="gsettings-desktop-schemas"/> + <dep package="iso-codes"/> + <dep package="shared-mime-info"/> + <dep package="libsoup"/> + </dependencies> + </metamodule> + + <autotools id="gedit-plugins"> + <branch module="gedit-plugins" repo="git.gnome.org"/> + <dependencies> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="gedit"/> + <dep package="libgit2-glib"/> + <dep package="vte"/> + </dependencies> + </autotools> + + <autotools id="gedit" autogenargs="PYTHON=python3"> + <branch repo="git.gnome.org" module="gedit"/> + <dependencies> + <dep package="gedit-deps"/> + </dependencies> + </autotools> + + <metamodule id="gedit-meta"> + <dependencies> + <dep package="gedit"/> + <dep package="gedit-plugins"/> + </dependencies> + </metamodule> + +</moduleset> diff --git a/build-aux/osx/build/modulesets/patches/berkeleydb-nonsrctree/atomic.patch b/build-aux/osx/build/modulesets/patches/berkeleydb-nonsrctree/atomic.patch new file mode 100644 index 0000000..398aa1d --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/berkeleydb-nonsrctree/atomic.patch @@ -0,0 +1,20 @@ +--- src/dbinc/atomic.h 2013-03-12 14:07:22.000000000 -0400 ++++ src/dbinc/atomic.h.change 2013-03-12 14:06:35.000000000 -0400 +@@ -144,7 +144,7 @@ + #define atomic_inc(env, p) __atomic_inc(p) + #define atomic_dec(env, p) __atomic_dec(p) + #define atomic_compare_exchange(env, p, o, n) \ +- __atomic_compare_exchange((p), (o), (n)) ++ __atomic_compare_exchange_db((p), (o), (n)) + static inline int __atomic_inc(db_atomic_t *p) + { + int temp; +@@ -176,7 +176,7 @@ + * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html + * which configure could be changed to use. + */ +-static inline int __atomic_compare_exchange( ++static inline int __atomic_compare_exchange_db( + db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval) + { + atomic_value_t was; diff --git a/build-aux/osx/build/modulesets/patches/berkeleydb/atomic.patch b/build-aux/osx/build/modulesets/patches/berkeleydb/atomic.patch new file mode 100644 index 0000000..398aa1d --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/berkeleydb/atomic.patch @@ -0,0 +1,20 @@ +--- src/dbinc/atomic.h 2013-03-12 14:07:22.000000000 -0400 ++++ src/dbinc/atomic.h.change 2013-03-12 14:06:35.000000000 -0400 +@@ -144,7 +144,7 @@ + #define atomic_inc(env, p) __atomic_inc(p) + #define atomic_dec(env, p) __atomic_dec(p) + #define atomic_compare_exchange(env, p, o, n) \ +- __atomic_compare_exchange((p), (o), (n)) ++ __atomic_compare_exchange_db((p), (o), (n)) + static inline int __atomic_inc(db_atomic_t *p) + { + int temp; +@@ -176,7 +176,7 @@ + * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html + * which configure could be changed to use. + */ +-static inline int __atomic_compare_exchange( ++static inline int __atomic_compare_exchange_db( + db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval) + { + atomic_value_t was; diff --git a/build-aux/osx/build/modulesets/patches/enchant/enchant-applespell.patch b/build-aux/osx/build/modulesets/patches/enchant/enchant-applespell.patch new file mode 100644 index 0000000..f6f1f65 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/enchant/enchant-applespell.patch @@ -0,0 +1,368 @@ +--- a/configure.in (revision 30591) ++++ b/configure.in (working copy) +@@ -33,4 +33,5 @@ + AC_PROG_CC + AC_PROG_CPP ++AC_PROG_OBJC + AC_PROG_INSTALL + AC_PROG_LN_S +--- a/src/applespell/Makefile.am 2010-04-01 22:53:37.000000000 +0200 ++++ b/src/applespell/Makefile.am 2012-01-11 22:42:13.000000000 +0100 +@@ -1,4 +1,13 @@ +-EXTRA_DIST= \ +- applespell_checker.h \ +- applespell_checker.mm \ +- AppleSpell.config ++target_lib = libenchant_applespell.la ++ ++INCLUDES=-I$(top_srcdir)/src $(ENCHANT_CFLAGS) $(CC_WARN_CFLAGS) -DXP_TARGET_COCOA -xobjective-c -D_ENCHANT_BUILD=1 ++ ++applespell_LTLIBRARIES = $(target_lib) ++applespelldir= $(libdir)/enchant ++ ++libenchant_applespell_la_LIBADD= $(ENCHANT_LIBS) -lobjc $(top_builddir)/src/libenchant.la ++libenchant_applespell_la_LDFLAGS = -module -avoid-version -no-undefined -framework Cocoa ++libenchant_applespell_la_SOURCES = applespell_provider.m ++libenchant_applespell_la_LIBTOOLFLAGS = --tag=CC ++ ++libenchant_applespell_lalibdir=$(libdir)/enchant +--- a/src/applespell/applespell_provider.m 2012-01-11 22:46:35.000000000 +0100 ++++ b/src/applespell/applespell_provider.m 2012-01-11 22:39:17.000000000 +0100 +@@ -0,0 +1,337 @@ ++/* vim: set sw=8: -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* enchant ++ * Copyright (C) 2004 Remi Payette ++ * Copyright (C) 2004 Francis James Franklin ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License ++ * as published by the Free Software Foundation; either version 2 ++ * of the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ++ * 02110-1301, USA. ++ */ ++ ++#include <glib.h> ++#include <gmodule.h> ++#include <Cocoa/Cocoa.h> ++#include <AvailabilityMacros.h> ++ ++#include "enchant-provider.h" ++ ++#ifdef __cplusplus ++extern "C" ++{ ++#endif ++ ++ENCHANT_MODULE_EXPORT (EnchantProvider *) ++init_enchant_provider (void); ++ ++ENCHANT_MODULE_EXPORT (void) ++configure_enchant_provider (EnchantProvider *provider, const gchar *module_dir); ++ ++#ifdef __cplusplus ++} ++#endif ++ ++ENCHANT_PLUGIN_DECLARE("AppleSpell") ++ ++typedef struct ++{ ++ NSSpellChecker *checker; ++ NSString *language; ++} Dictionary; ++ ++static Dictionary * ++dictionary_new (NSSpellChecker *checker, ++ NSString *language) ++{ ++ Dictionary *ret; ++ ++ ret = g_slice_new (Dictionary); ++ ++ ret->checker = checker; ++ ret->language = language; ++ ++ return ret; ++} ++ ++static void ++dictionary_free (Dictionary *dictionary) ++{ ++ [dictionary->language release]; ++ g_slice_free (Dictionary, dictionary); ++} ++ ++static gchar ** ++applespell_dict_suggest (EnchantDict *dict, ++ const gchar * const word, ++ size_t len, ++ size_t *out_n_suggs) ++{ ++ NSAutoreleasePool *pool; ++ gchar **ret = NULL; ++ NSString *str; ++ Dictionary *d; ++ NSArray *words; ++ NSRange range; ++ guint i = 0; ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ d = dict->user_data; ++ ++ str = [[NSString alloc] initWithBytes:word length:len encoding:NSUTF8StringEncoding]; ++ ++ range.location = 0; ++ range.length = [str length]; ++ ++#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 ++ words = [d->checker guessesForWordRange:range ++ inString:str ++ language:d->language ++ inSpellDocumentWithTag:0]; ++#else ++ [d->checker setLanguage:d->language]; ++ words = [d->checker guessesForWord:str]; ++#endif ++ ++ *out_n_suggs = [words count]; ++ ++ ret = g_new0 (gchar *, *out_n_suggs + 1); ++ ++ for (i = 0; i < [words count]; ++i) ++ { ++ ret[i] = g_strdup ([[words objectAtIndex:i] UTF8String]); ++ } ++ ++ [str release]; ++ [pool release]; ++ ++ return ret; ++} ++ ++static gint ++applespell_dict_check (EnchantDict *dict, ++ const gchar * const word, ++ size_t len) ++{ ++ NSAutoreleasePool *pool; ++ gint result = 0; ++ NSString *str; ++ Dictionary *d; ++ NSRange range; ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ d = dict->user_data; ++ ++ str = [[NSString alloc] initWithBytes:word length:len encoding:NSUTF8StringEncoding]; ++ ++ range = [d->checker checkSpellingOfString:str ++ startingAt:0 ++ language:d->language ++ wrap:true ++ inSpellDocumentWithTag:0 ++ wordCount:NULL]; ++ ++ result = range.length > 0 ? 1 : 0; ++ ++ [str release]; ++ [pool release]; ++ ++ return result; ++} ++ ++static EnchantDict * ++applespell_provider_request_dict (EnchantProvider *provider, ++ const char * const tag) ++{ ++ NSAutoreleasePool *pool; ++ EnchantDict *dict; ++ NSString *str; ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ str = [[NSString alloc] initWithUTF8String:tag]; ++ ++ dict = g_new0 (EnchantDict, 1); ++ ++ dict->check = applespell_dict_check; ++ dict->suggest = applespell_dict_suggest; ++ ++ dict->user_data = dictionary_new (provider->user_data, ++ str); ++ ++ [str retain]; ++ ++ [pool release]; ++ return dict; ++} ++ ++static void ++applespell_provider_dispose_dict (EnchantProvider *provider, ++ EnchantDict *dict) ++{ ++ NSAutoreleasePool *pool; ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ dictionary_free (dict->user_data); ++ g_free (dict); ++ ++ [pool release]; ++} ++ ++#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5 ++static gchar const *available_languages[] = { ++ "en", ++ "en_GB", ++ "en_AU", ++ "de", ++ "fr", ++ "nl", ++ "pl", ++ NULL ++}; ++ ++#endif ++ ++static gint ++applespell_provider_dictionary_exists (EnchantProvider *provider, ++ const gchar * const tag) ++{ ++ NSAutoreleasePool *pool; ++ gint result = 0; ++ NSSpellChecker *checker; ++#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 ++ NSArray *languages; ++ guint i; ++#else ++ gchar const **ptr; ++#endif ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ checker = provider->user_data; ++ ++#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 ++ languages = [checker availableLanguages]; ++ ++ for (i = 0; i < [languages count]; ++i) ++ { ++ if (g_strcmp0 (tag, [[languages objectAtIndex:i] UTF8String]) == 0) ++ { ++ result = 1; ++ break; ++ } ++ } ++#else ++ ptr = available_languages; ++ ++ while (ptr && *ptr) ++ { ++ if (g_strcmp0 (tag, *ptr) == 0) ++ { ++ result = 1; ++ break; ++ } ++ ++ptr; ++ } ++#endif ++ ++ [pool release]; ++ ++ return result; ++} ++ ++static void ++applespell_provider_dispose (EnchantProvider *provider) ++{ ++ g_free (provider); ++} ++ ++static const gchar * ++applespell_provider_identify (EnchantProvider *provider) ++{ ++ return "AppleSpell"; ++} ++ ++static const gchar * ++applespell_provider_describe (EnchantProvider *provider) ++{ ++ return "AppleSpell Provider"; ++} ++ ++static gchar ** ++applespell_provider_list_dicts (EnchantProvider *provider, ++ size_t *out_n_dicts) ++{ ++ NSSpellChecker *checker; ++ NSAutoreleasePool *pool; ++ gchar **ret = NULL; ++#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 ++ NSArray *languages; ++ guint i = 0; ++#endif ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ checker = provider->user_data; ++ ++#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 ++ languages = [checker availableLanguages]; ++ *out_n_dicts = [languages count]; ++ ++ ret = g_new0 (gchar *, *out_n_dicts + 1); ++ ++ for (i = 0; i < [languages count]; ++i) ++ { ++ ret[i] = g_strdup ([[languages objectAtIndex:i] UTF8String]); ++ } ++#else ++ ret = g_strdupv ((gchar **)available_languages); ++#endif ++ ++ [pool release]; ++ ++ return ret; ++} ++ ++ENCHANT_MODULE_EXPORT (EnchantProvider *) ++init_enchant_provider (void) ++{ ++ NSAutoreleasePool *pool; ++ EnchantProvider *provider; ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ provider = g_new0 (EnchantProvider, 1); ++ ++ provider->dispose = applespell_provider_dispose; ++ provider->request_dict = applespell_provider_request_dict; ++ provider->dispose_dict = applespell_provider_dispose_dict; ++ provider->dictionary_exists = applespell_provider_dictionary_exists; ++ provider->identify = applespell_provider_identify; ++ provider->describe = applespell_provider_describe; ++ provider->list_dicts = applespell_provider_list_dicts; ++ ++ provider->user_data = [NSSpellChecker sharedSpellChecker]; ++ ++ [pool release]; ++ ++ return provider; ++} ++ ++ENCHANT_MODULE_EXPORT (void) ++configure_enchant_provider (EnchantProvider *provider, ++ const gchar *module_dir) ++{ ++ return; ++} diff --git a/build-aux/osx/build/modulesets/patches/enchant/enchant-gsize.patch b/build-aux/osx/build/modulesets/patches/enchant/enchant-gsize.patch new file mode 100644 index 0000000..5bfba14 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/enchant/enchant-gsize.patch @@ -0,0 +1,97 @@ +--- a/src/ispell/ispell_checker.cpp Thu Apr 1 13:53:37 2010 ++++ b/src/ispell/ispell_checker.cpp Mon Feb 24 15:35:49 2014 +@@ -162,7 +162,7 @@ + else + { + /* convert to 8bit string and null terminate */ +- size_t len_in, len_out, result; ++ gsize len_in, len_out, result; + // the 8bit encodings use precomposed forms + char *normalizedWord = g_utf8_normalize (utf8Word, length, G_NORMALIZE_NFC); + char *In = normalizedWord; +@@ -172,7 +172,7 @@ + len_out = sizeof( szWord ) - 1; + result = g_iconv(m_translate_in, &In, &len_in, &Out, &len_out); + g_free(normalizedWord); +- if ((size_t)-1 == result) ++ if ((gsize)-1 == result) + return false; + *Out = '\0'; + } +@@ -210,7 +210,7 @@ + { + /* convert to 8bit string and null terminate */ + +- size_t len_in, len_out, result; ++ gsize len_in, len_out, result; + // the 8bit encodings use precomposed forms + char *normalizedWord = g_utf8_normalize (utf8Word, length, G_NORMALIZE_NFC); + char *In = normalizedWord; +@@ -219,7 +219,7 @@ + len_out = sizeof( word8 ) - 1; + result = g_iconv(m_translate_in, &In, &len_in, &Out, &len_out); + g_free(normalizedWord); +- if ((size_t)-1 == result) ++ if ((gsize)-1 == result) + return NULL; + *Out = '\0'; + } +@@ -252,13 +252,13 @@ + { + /* convert to 32bit string and null terminate */ + +- size_t len_in, len_out; ++ gsize len_in, len_out; + char *In = m_possibilities[c]; + char *Out = reinterpret_cast<char *>(utf8Sugg); + + len_in = l; + len_out = INPUTWORDLEN + MAXAFFIXLEN; +- if ((size_t)-1 == g_iconv(m_translate_out, &In, &len_in, &Out, &len_out)) { ++ if ((gsize)-1 == g_iconv(m_translate_out, &In, &len_in, &Out, &len_out)) { + *out_n_suggestions = c; + return sugg_arr; + } +--- a/src/myspell/myspell_checker.cpp Thu Apr 1 13:53:37 2010 ++++ b/src/myspell/myspell_checker.cpp Mon Feb 24 15:37:56 2014 +@@ -159,11 +159,11 @@ + char *in = normalizedWord; + char word8[MAXWORDLEN + 1]; + char *out = word8; +- size_t len_in = strlen(in); +- size_t len_out = sizeof( word8 ) - 1; +- size_t result = g_iconv(m_translate_in, &in, &len_in, &out, &len_out); ++ gsize len_in = strlen(in); ++ gsize len_out = sizeof( word8 ) - 1; ++ gsize result = g_iconv(m_translate_in, &in, &len_in, &out, &len_out); + g_free(normalizedWord); +- if ((size_t)-1 == result) ++ if ((gsize)-1 == result) + return false; + *out = '\0'; + if (myspell->spell(word8)) +@@ -185,11 +185,11 @@ + char *in = normalizedWord; + char word8[MAXWORDLEN + 1]; + char *out = word8; +- size_t len_in = strlen(in); +- size_t len_out = sizeof(word8) - 1; +- size_t result = g_iconv(m_translate_in, &in, &len_in, &out, &len_out); ++ gsize len_in = strlen(in); ++ gsize len_out = sizeof(word8) - 1; ++ gsize result = g_iconv(m_translate_in, &in, &len_in, &out, &len_out); + g_free(normalizedWord); +- if ((size_t)-1 == result) ++ if ((gsize)-1 == result) + return NULL; + + *out = '\0'; +@@ -203,7 +203,7 @@ + len_out = MAXWORDLEN; + char *word = g_new0(char, len_out + 1); + out = reinterpret_cast<char *>(word); +- if ((size_t)-1 == g_iconv(m_translate_out, &in, &len_in, &out, &len_out)) { ++ if ((gsize)-1 == g_iconv(m_translate_out, &in, &len_in, &out, &len_out)) { + for (size_t j = i; j < *nsug; j++) + free(sugMS[j]); + free(sugMS); diff --git a/build-aux/osx/build/modulesets/patches/enchant/enchant-relocatable.patch b/build-aux/osx/build/modulesets/patches/enchant/enchant-relocatable.patch new file mode 100644 index 0000000..7e56eb7 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/enchant/enchant-relocatable.patch @@ -0,0 +1,40 @@ +--- a/src/enchant.c 2010-04-01 22:53:37.000000000 +0200 ++++ b/src/enchant.c 2014-08-26 21:32:21.000000000 +0200 +@@ -210,6 +210,13 @@ + char * module_dir = NULL; + char * prefix = NULL; + ++ const char *envdir = g_getenv ("ENCHANT_MODULES_DIR"); ++ ++ if (envdir != NULL && *envdir != '\0') ++ { ++ module_dirs = enchant_slist_append_unique_path (module_dirs, g_strdup (envdir)); ++ } ++ + { + char* user_module_dir; + +@@ -239,7 +246,8 @@ + module_dirs = enchant_slist_append_unique_path (module_dirs, module_dir); + + #if defined(ENCHANT_GLOBAL_MODULE_DIR) +- module_dirs = enchant_slist_append_unique_path (module_dirs, g_strdup (ENCHANT_GLOBAL_MODULE_DIR)); ++ if (envdir == NULL || *envdir == '\0') ++ module_dirs = enchant_slist_append_unique_path (module_dirs, g_strdup (ENCHANT_GLOBAL_MODULE_DIR)); + #else + /* Dynamically locate library and search for modules relative to it. */ + prefix = enchant_get_prefix_dir(); +@@ -278,6 +286,13 @@ + if (ordering_dir) + conf_dirs = enchant_slist_append_unique_path (conf_dirs, ordering_dir); + ++ const char *envdir = g_getenv ("ENCHANT_DATA_DIR"); ++ ++ if (envdir != NULL && *envdir != '\0') ++ { ++ conf_dirs = enchant_slist_append_unique_path (conf_dirs, g_strdup (envdir)); ++ } ++ + /* Dynamically locate library and search for files relative to it. */ + prefix = enchant_get_prefix_dir(); + if(prefix) diff --git a/build-aux/osx/build/modulesets/patches/gettext-runtime/gettext-bug33999-stpncpy.patch b/build-aux/osx/build/modulesets/patches/gettext-runtime/gettext-bug33999-stpncpy.patch new file mode 100644 index 0000000..eda2932 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gettext-runtime/gettext-bug33999-stpncpy.patch @@ -0,0 +1,63 @@ + +--- a/gettext-tools/libgettextpo/string.in.h Sun Apr 25 02:22:40 2010 ++++ b/gettext-tools/libgettextpo/string.in.h Tue Oct 4 14:36:31 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, + + Rename module 'memxfrm' to 'amemxfrm'. +--- a/gettext-tools/gnulib-lib/string.in.h Mon May 24 02:42:47 2010 ++++ b/gettext-tools/gnulib-lib/string.in.h Tue Oct 4 14:35:46 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, + +--- a/gettext-runtime/gnulib-lib/string.in.h Sun Apr 25 02:20:42 2010 ++++ b/gettext-runtime/gnulib-lib/string.in.h Tue Oct 4 14:34:57 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, +--- a/gettext-tools/configure Sun Jun 6 13:12:20 2010 ++++ b/gettext-tools/configure Tue Oct 4 16:29:27 2011 +@@ -40562,6 +40562,16 @@ + + + ++ ac_fn_c_check_decl "$LINENO" "stpncpy" "ac_cv_have_decl_stpncpy" "$ac_includes_default" ++if test "x$ac_cv_have_decl_stpncpy" = x""yes; then : ++ ac_have_decl=1 ++else ++ ac_have_decl=0 ++fi ++ ++cat >>confdefs.h <<_ACEOF ++#define HAVE_DECL_STPNCPY $ac_have_decl ++_ACEOF + + + +@@ -40606,7 +40616,9 @@ + #include <stdlib.h> + #include <string.h> /* for strcpy */ + /* The stpncpy prototype is missing in <string.h> on AIX 4. */ ++#if !HAVE_DECL_STPNCPY + extern char *stpncpy (char *dest, const char *src, size_t n); ++#endif + int main () { + const char *src = "Hello"; + char dest[10]; diff --git a/build-aux/osx/build/modulesets/patches/gettext-tools/gettext-bug33999-stpncpy.patch b/build-aux/osx/build/modulesets/patches/gettext-tools/gettext-bug33999-stpncpy.patch new file mode 100644 index 0000000..eda2932 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gettext-tools/gettext-bug33999-stpncpy.patch @@ -0,0 +1,63 @@ + +--- a/gettext-tools/libgettextpo/string.in.h Sun Apr 25 02:22:40 2010 ++++ b/gettext-tools/libgettextpo/string.in.h Tue Oct 4 14:36:31 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, + + Rename module 'memxfrm' to 'amemxfrm'. +--- a/gettext-tools/gnulib-lib/string.in.h Mon May 24 02:42:47 2010 ++++ b/gettext-tools/gnulib-lib/string.in.h Tue Oct 4 14:35:46 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, + +--- a/gettext-runtime/gnulib-lib/string.in.h Sun Apr 25 02:20:42 2010 ++++ b/gettext-runtime/gnulib-lib/string.in.h Tue Oct 4 14:34:57 2011 +@@ -229,6 +229,7 @@ + #if @GNULIB_STPNCPY@ + # if @REPLACE_STPNCPY@ + # if !(defined __cplusplus && defined GNULIB_NAMESPACE) ++# undef stpncpy + # define stpncpy rpl_stpncpy + # endif + _GL_FUNCDECL_RPL (stpncpy, char *, +--- a/gettext-tools/configure Sun Jun 6 13:12:20 2010 ++++ b/gettext-tools/configure Tue Oct 4 16:29:27 2011 +@@ -40562,6 +40562,16 @@ + + + ++ ac_fn_c_check_decl "$LINENO" "stpncpy" "ac_cv_have_decl_stpncpy" "$ac_includes_default" ++if test "x$ac_cv_have_decl_stpncpy" = x""yes; then : ++ ac_have_decl=1 ++else ++ ac_have_decl=0 ++fi ++ ++cat >>confdefs.h <<_ACEOF ++#define HAVE_DECL_STPNCPY $ac_have_decl ++_ACEOF + + + +@@ -40606,7 +40616,9 @@ + #include <stdlib.h> + #include <string.h> /* for strcpy */ + /* The stpncpy prototype is missing in <string.h> on AIX 4. */ ++#if !HAVE_DECL_STPNCPY + extern char *stpncpy (char *dest, const char *src, size_t n); ++#endif + int main () { + const char *src = "Hello"; + char dest[10]; diff --git a/build-aux/osx/build/modulesets/patches/glib/0001-Bug-724590-GSlice-slab_stack-corruption.patch b/build-aux/osx/build/modulesets/patches/glib/0001-Bug-724590-GSlice-slab_stack-corruption.patch new file mode 100644 index 0000000..0e62201 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/glib/0001-Bug-724590-GSlice-slab_stack-corruption.patch @@ -0,0 +1,28 @@ +From 1b21a85f1914eecc107319cb94e8c8517291599b Mon Sep 17 00:00:00 2001 +From: John Ralls <jralls@ceridwen.us> +Date: Mon, 17 Feb 2014 15:51:38 -0800 +Subject: [PATCH] Bug 724590 - GSlice slab_stack corruption + +Dereference allocation->contention_counters before trying to take the +address of an element. +--- + glib/gslice.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/glib/gslice.c b/glib/gslice.c +index 0563d80..2c5f4fb 100644 +--- a/glib/gslice.c ++++ b/glib/gslice.c +@@ -715,7 +715,8 @@ static ChunkLink* + magazine_cache_pop_magazine (guint ix, + gsize *countp) + { +- g_mutex_lock_a (&allocator->magazine_mutex, &allocator->contention_counters[ix]); ++ guint *counters = allocator->contention_counters; ++ g_mutex_lock_a (&allocator->magazine_mutex, &counters[ix]); + if (!allocator->magazines[ix]) + { + guint magazine_threshold = allocator_get_magazine_threshold (allocator, ix); +-- +1.8.3.rc0 + diff --git a/build-aux/osx/build/modulesets/patches/gobject-introspection/girscanner-objc.patch b/build-aux/osx/build/modulesets/patches/gobject-introspection/girscanner-objc.patch new file mode 100644 index 0000000..76d2bee --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gobject-introspection/girscanner-objc.patch @@ -0,0 +1,20 @@ +diff --git a/giscanner/scannerlexer.l b/giscanner/scannerlexer.l +index 6a40398..40f1fc0 100644 +--- a/giscanner/scannerlexer.l ++++ b/giscanner/scannerlexer.l +@@ -108,6 +108,7 @@ stringtext ([^\\\"])|(\\.) + "|" { return '|'; } + "~" { return '~'; } + "!" { return '!'; } ++"@" { return '@'; } + "=" { return '='; } + "<" { return '<'; } + ">" { return '>'; } +@@ -199,6 +200,7 @@ stringtext ([^\\\"])|(\\.) + + "\""{stringtext}*"\"" { return STRING; } + "L\""{stringtext}*"\"" { return STRING; } ++"@\""{stringtext}*"\"" { return STRING; } + + . { if (yytext[0]) fprintf(stderr, "%s:%d: unexpected character `%c'\n", scanner->current_filename, lineno, yytext[0]); } + diff --git a/build-aux/osx/build/modulesets/patches/gtk+/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch b/build-aux/osx/build/modulesets/patches/gtk+/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch new file mode 100644 index 0000000..b0a1ef5 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gtk+/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch @@ -0,0 +1,274 @@ +From dcd9ab00c64a1df63fd5fa58c2ca25efd9b3e09e Mon Sep 17 00:00:00 2001 +From: John Ralls <jralls@ceridwen.us> +Date: Sat, 24 Sep 2011 18:14:09 -0700 +Subject: [PATCH 06/15] Bug 658722 - Drag and Drop sometimes stops working + +First, rather than assuming that there's already an event queued up if +_gdk_quartz_drag_source_context isn't NULL, assume that it just didn't get +cleaned up the last time it ran and abort it. + +This naturally requires implementing gdk_quartz_drag_abort(), so remove the +code from [GdkQuartzNSWindow draggedImage:endedAt:operation:] and move it to +gdkdnd_quartz.c as static void gdk_quartz_drag_end(). Implement both +gdk_quartz_drag_drop() and gdk_quartz_drag_abort() by calling +gdk_quartz_drag_end(). + +Next, try to get rid of the memory cycle between gtk_drag_source_info.context +and _gdk_quartz_drag_source_context (which carries the GtkQuartzDragSourceInfo +struct as qdata). Replace gtk_drag_source_clear_info() by using a +g_object_set_qdata_full() for context in gtk_drag_get_source_context, calling +gtk_drag_source_info_destroy() as the destructor. This eliminates the need to +queue a cleanup idle event. I use g_object_run_dispose() on +_gtk_quartz_drag_source_context to force the deletion of the info stored as +qdata, which in turn unrefs the info->context pointer. Ordinarily this gets +fired off from draggedImage:endedAt:operation:, meaning that the special +dragging CFRunLoop is complete and NSEvents are again flowing, so queuing a +cleanup event isn't necessary. The advantage is that it can also be run from +gdk_drag_abort, so if Gdk thinks there's a drag but CF doesn't all of the +memory still gets cleaned up. +--- + gdk/quartz/GdkQuartzWindow.c | 16 +------- + gdk/quartz/gdkdnd-quartz.c | 35 +++++++++++++-- + gtk/gtkdnd-quartz.c | 96 ++++++++++++++++------------------------- + 3 files changed, 69 insertions(+), 78 deletions(-) + +diff --git a/gdk/quartz/GdkQuartzWindow.c b/gdk/quartz/GdkQuartzWindow.c +index dcd7250..20ed80e 100644 +--- a/gdk/quartz/GdkQuartzWindow.c ++++ b/gdk/quartz/GdkQuartzWindow.c +@@ -560,21 +560,7 @@ update_context_from_dragging_info (id <NSDraggingInfo> sender) + + - (void)draggedImage:(NSImage *)anImage endedAt:(NSPoint)aPoint operation:(NSDragOperation)operation + { +- GdkEvent event; +- +- g_assert (_gdk_quartz_drag_source_context != NULL); +- +- event.dnd.type = GDK_DROP_FINISHED; +- event.dnd.window = g_object_ref ([[self contentView] gdkWindow]); +- event.dnd.send_event = FALSE; +- event.dnd.context = _gdk_quartz_drag_source_context; +- +- (*_gdk_event_func) (&event, _gdk_event_data); +- +- g_object_unref (event.dnd.window); +- +- g_object_unref (_gdk_quartz_drag_source_context); +- _gdk_quartz_drag_source_context = NULL; ++ gdk_drag_drop (_gdk_quartz_drag_source_context, (guint32)g_get_real_time()); + } + + @end +diff --git a/gdk/quartz/gdkdnd-quartz.c b/gdk/quartz/gdkdnd-quartz.c +index bb70b71..143a8ed 100644 +--- a/gdk/quartz/gdkdnd-quartz.c ++++ b/gdk/quartz/gdkdnd-quartz.c +@@ -111,11 +111,20 @@ GdkDragContext * + gdk_drag_begin (GdkWindow *window, + GList *targets) + { +- g_assert (_gdk_quartz_drag_source_context == NULL); ++ if (_gdk_quartz_drag_source_context != NULL) ++ { ++ /* Something is amiss with the existing drag, so log a message ++ and abort it */ ++ g_warning ("Drag begun with existing context; aborting the preexisting drag"); ++ gdk_drag_abort (_gdk_quartz_drag_source_context, ++ (guint32)g_get_real_time ()); ++ } ++ + + /* Create fake context */ + _gdk_quartz_drag_source_context = gdk_drag_context_new (); + _gdk_quartz_drag_source_context->is_source = TRUE; ++ _gdk_quartz_drag_source_context->source_window = window; + + return _gdk_quartz_drag_source_context; + } +@@ -155,20 +164,36 @@ gdk_drag_find_window_for_screen (GdkDragContext *context, + /* FIXME: Implement */ + } + ++static void ++gdk_quartz_drag_end (GdkDragContext *context) ++{ ++ GdkEvent event; ++ ++ g_assert (context != NULL); ++ event.dnd.type = GDK_DROP_FINISHED; ++ event.dnd.window = g_object_ref (context->source_window); ++ event.dnd.send_event = FALSE; ++ event.dnd.context = context; ++ ++ (*_gdk_event_func) (&event, _gdk_event_data); ++ ++ g_object_run_dispose (_gdk_quartz_drag_source_context); ++ _gdk_quartz_drag_source_context = NULL; ++} ++ + void + gdk_drag_drop (GdkDragContext *context, + guint32 time) + { +- /* FIXME: Implement */ ++ gdk_quartz_drag_end (context); + } + + void + gdk_drag_abort (GdkDragContext *context, + guint32 time) + { +- g_return_if_fail (context != NULL); +- +- /* FIXME: Implement */ ++ g_warning ("Gdk-quartz-drag-drop, aborting\n"); ++ gdk_quartz_drag_end (context); + } + + void +diff --git a/gtk/gtkdnd-quartz.c b/gtk/gtkdnd-quartz.c +index 5688568..be92a22 100644 +--- a/gtk/gtkdnd-quartz.c ++++ b/gtk/gtkdnd-quartz.c +@@ -269,6 +269,39 @@ gtk_drag_dest_info_destroy (gpointer data) + g_free (info); + } + ++static void ++gtk_drag_source_info_destroy (GtkDragSourceInfo *info) ++{ ++ NSPasteboard *pasteboard; ++ NSAutoreleasePool *pool; ++ ++ if (info->icon_pixbuf) ++ g_object_unref (info->icon_pixbuf); ++ ++ g_signal_emit_by_name (info->widget, "drag-end", ++ info->context); ++ ++ if (info->source_widget) ++ g_object_unref (info->source_widget); ++ ++ if (info->widget) ++ g_object_unref (info->widget); ++ ++ gtk_target_list_unref (info->target_list); ++ ++ pool = [[NSAutoreleasePool alloc] init]; ++ ++ /* Empty the pasteboard, so that it will not accidentally access ++ * info->context after it has been destroyed. ++ */ ++ pasteboard = [NSPasteboard pasteboardWithName: NSDragPboard]; ++ [pasteboard declareTypes: nil owner: nil]; ++ ++ [pool release]; ++ ++ g_free (info); ++} ++ + static GtkDragDestInfo * + gtk_drag_get_dest_info (GdkDragContext *context, + gboolean create) +@@ -308,18 +341,14 @@ gtk_drag_get_source_info (GdkDragContext *context, + { + info = g_new0 (GtkDragSourceInfo, 1); + info->context = context; +- g_object_set_qdata (G_OBJECT (context), dest_info_quark, info); ++ g_object_ref (info->context); ++ g_object_set_qdata_full (G_OBJECT (context), dest_info_quark, ++ info, gtk_drag_source_info_destroy); + } + + return info; + } + +-static void +-gtk_drag_clear_source_info (GdkDragContext *context) +-{ +- g_object_set_qdata (G_OBJECT (context), dest_info_quark, NULL); +-} +- + GtkWidget * + gtk_drag_get_source_widget (GdkDragContext *context) + { +@@ -1089,7 +1118,8 @@ gtk_drag_begin_idle (gpointer arg) + [owner release]; + [types release]; + +- if ((nswindow = get_toplevel_nswindow (info->source_widget)) == NULL) ++ if (info->source_widget == NULL ++ || (nswindow = get_toplevel_nswindow (info->source_widget)) == NULL) + return FALSE; + + /* Ref the context. It's unreffed when the drag has been aborted */ +@@ -1108,7 +1138,6 @@ gtk_drag_begin_idle (gpointer arg) + source:nswindow + slideBack:YES]; + +- [info->nsevent release]; + [drag_image release]; + + [pool release]; +@@ -1833,61 +1862,12 @@ gtk_drag_set_default_icon (GdkColormap *colormap, + } + + static void +-gtk_drag_source_info_destroy (GtkDragSourceInfo *info) +-{ +- NSPasteboard *pasteboard; +- NSAutoreleasePool *pool; +- +- if (info->icon_pixbuf) +- g_object_unref (info->icon_pixbuf); +- +- g_signal_emit_by_name (info->widget, "drag-end", +- info->context); +- +- if (info->source_widget) +- g_object_unref (info->source_widget); +- +- if (info->widget) +- g_object_unref (info->widget); +- +- gtk_target_list_unref (info->target_list); +- +- pool = [[NSAutoreleasePool alloc] init]; +- +- /* Empty the pasteboard, so that it will not accidentally access +- * info->context after it has been destroyed. +- */ +- pasteboard = [NSPasteboard pasteboardWithName: NSDragPboard]; +- [pasteboard declareTypes: nil owner: nil]; +- +- [pool release]; +- +- gtk_drag_clear_source_info (info->context); +- g_object_unref (info->context); +- +- g_free (info); +- info = NULL; +-} +- +-static gboolean +-drag_drop_finished_idle_cb (gpointer data) +-{ +- gtk_drag_source_info_destroy (data); +- return FALSE; +-} +- +-static void + gtk_drag_drop_finished (GtkDragSourceInfo *info) + { + if (info->success && info->delete) + g_signal_emit_by_name (info->source_widget, "drag-data-delete", + info->context); + +- /* Workaround for the fact that the NS API blocks until the drag is +- * over. This way the context is still valid when returning from +- * drag_begin, even if it will still be quite useless. See bug #501588. +- */ +- g_idle_add (drag_drop_finished_idle_cb, info); + } + + /************************************************************* diff --git a/build-aux/osx/build/modulesets/patches/gtk+/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch b/build-aux/osx/build/modulesets/patches/gtk+/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch new file mode 100644 index 0000000..5b9153c --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gtk+/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch @@ -0,0 +1,39 @@ +From 259563958047ccbf6f61578f2d724fc731218304 Mon Sep 17 00:00:00 2001 +From: John Ralls <jralls@ceridwen.us> +Date: Sun, 25 Sep 2011 12:03:54 -0700 +Subject: [PATCH 08/15] Implement GtkDragSourceOwner pasteboardChangedOwner: + +--- + gtk/gtkdnd-quartz.c | 11 +++++++++++ + 1 files changed, 11 insertions(+), 0 deletions(-) + +diff --git a/gtk/gtkdnd-quartz.c b/gtk/gtkdnd-quartz.c +index 084aada..21ce11a 100644 +--- a/gtk/gtkdnd-quartz.c ++++ b/gtk/gtkdnd-quartz.c +@@ -149,6 +149,8 @@ struct _GtkDragFindData + guint target_info; + GtkSelectionData selection_data; + ++ g_return_if_fail(info->source_widget != NULL); ++ g_return_if_fail(info->target_list != NULL); + selection_data.selection = GDK_NONE; + selection_data.data = NULL; + selection_data.length = -1; +@@ -171,6 +173,15 @@ struct _GtkDragFindData + } + } + ++- (void)pasteboardChangedOwner: (NSPasteboard*)sender ++{ ++ if (!info) return; ++ ++ info->target_list = NULL; ++ info->widget = NULL; ++ info->source_widget = NULL; ++} ++ + - (id)initWithInfo:(GtkDragSourceInfo *)anInfo + { + self = [super init]; + diff --git a/build-aux/osx/build/modulesets/patches/gtk+/gtk+-2-m4-creation.patch b/build-aux/osx/build/modulesets/patches/gtk+/gtk+-2-m4-creation.patch new file mode 100644 index 0000000..26321b7 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gtk+/gtk+-2-m4-creation.patch @@ -0,0 +1,5 @@ +diff -uN gtk+-2.24.21/m4/.bogus gtk+-2.24.21.save/m4/.bogus +--- gtk+-2.24.21/m4/.bogus 2013-10-02 08:01:33.000000000 -0700 ++++ gtk+-2.24.21.save/m4/.bogus 2013-10-02 08:03:40.000000000 -0700 +@@ -0,0 +1 @@ ++A phony file to enable making a patch to create this directory. diff --git a/build-aux/osx/build/modulesets/patches/gtk-mac-integration/0001-Fix-unhandled-exception-from-attempting-to-access-me.patch b/build-aux/osx/build/modulesets/patches/gtk-mac-integration/0001-Fix-unhandled-exception-from-attempting-to-access-me.patch new file mode 100644 index 0000000..87151bb --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/gtk-mac-integration/0001-Fix-unhandled-exception-from-attempting-to-access-me.patch @@ -0,0 +1,39 @@ +From cd3a21ff115cd6c6c11ce39aa62eaf912c78b060 Mon Sep 17 00:00:00 2001 +From: John Ralls <jralls@ceridwen.us> +Date: Mon, 30 Dec 2013 12:20:26 -0800 +Subject: [PATCH] Fix unhandled exception from attempting to access menu + itemAtIndex:-1 + +--- + src/cocoa_menu_item.c | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/src/cocoa_menu_item.c b/src/cocoa_menu_item.c +index 793c254..dd46586 100644 +--- a/src/cocoa_menu_item.c ++++ b/src/cocoa_menu_item.c +@@ -550,12 +550,16 @@ cocoa_menu_item_add_item (NSMenu* cocoa_menu, GtkWidget* menu_item, int index) + /* Clean up adjacent separators: */ + if ([cocoa_menu numberOfItems] > 0) + { +- if (([cocoa_menu numberOfItems] == index || +- [[cocoa_menu itemAtIndex: index] isSeparatorItem]) && +- [[cocoa_menu itemAtIndex: index - 1] isSeparatorItem]) ++ if (index == 0) ++ { ++ if ([[cocoa_menu itemAtIndex: index] isSeparatorItem]) ++ [cocoa_menu removeItemAtIndex: index]; ++ } ++ else if (([cocoa_menu numberOfItems] == index || ++ [[cocoa_menu itemAtIndex: index] isSeparatorItem]) && ++ [[cocoa_menu itemAtIndex: index - 1] isSeparatorItem]) + [cocoa_menu removeItemAtIndex: index - 1]; +- if (index == 0 && [[cocoa_menu itemAtIndex: index] isSeparatorItem]) +- [cocoa_menu removeItemAtIndex: index]; ++ + } + } + +-- +1.8.3.rc0 + diff --git a/build-aux/osx/build/modulesets/patches/itstool/itstool.use-correct-libxml.patch b/build-aux/osx/build/modulesets/patches/itstool/itstool.use-correct-libxml.patch new file mode 100644 index 0000000..51a25c0 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/itstool/itstool.use-correct-libxml.patch @@ -0,0 +1,28 @@ +From d6ef86e2fb7bf9ddf888521e2c7dc5b5b7e4b6d8 Mon Sep 17 00:00:00 2001 +From: Michael Catanzaro <mcatanzaro@gnome.org> +Date: Fri, 10 Jan 2014 23:50:52 -0600 +Subject: [PATCH] build: use $PYTHON when testing for libxml2 + +/usr/bin/python is a symlink to /usr/bin/python3 on some systems. +In this case, configure unconditionally checks for the Python 3 version +of libxml2. Instead, use the version of Python found by AM_PATH_PYTHON. +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index c29efad..dbd0c7f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -14,7 +14,7 @@ AM_PATH_PYTHON([2.6]) + + py_module=libxml2 + AC_MSG_CHECKING(for python module $py_module) +-echo "import $py_module" | python - &>/dev/null ++echo "import $py_module" | $PYTHON - &>/dev/null + if test $? -ne 0; then + AC_MSG_RESULT(not found) + AC_MSG_ERROR(Python module $py_module is needed to run this package) +-- +1.8.5.2 + diff --git a/build-aux/osx/build/modulesets/patches/libgcrypt/libgcrypt-build-clang.patch b/build-aux/osx/build/modulesets/patches/libgcrypt/libgcrypt-build-clang.patch new file mode 100644 index 0000000..5e6beb5 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/libgcrypt/libgcrypt-build-clang.patch @@ -0,0 +1,97 @@ +diff -c /Users/john/Development/gtk-sources/libgcrypt-1.5.3/cipher/rijndael.c\~ /Users/john/Development/gtk-sources/libgcrypt-1.5.3/cipher/rijndael.c +--- a/cipher/rijndael.c Tue Oct 15 11:09:37 2013 ++++ b/cipher/rijndael.c + Tue Oct 15 11:53:22 2013 +@@ -725,13 +725,13 @@ + "movdqa 0x90(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xa0(%%esi), %%xmm1\n\t" +- "cmp $10, %[rounds]\n\t" ++ "cmpl $10, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xb0(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xc0(%%esi), %%xmm1\n\t" +- "cmp $12, %[rounds]\n\t" ++ "cmpl $12, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xd0(%%esi), %%xmm1\n\t" +@@ -780,13 +780,13 @@ + "movdqa 0x90(%%esi), %%xmm1\n\t" + aesdec_xmm1_xmm0 + "movdqa 0xa0(%%esi), %%xmm1\n\t" +- "cmp $10, %[rounds]\n\t" ++ "cmpl $10, %[rounds]\n\t" + "jz .Ldeclast%=\n\t" + aesdec_xmm1_xmm0 + "movdqa 0xb0(%%esi), %%xmm1\n\t" + aesdec_xmm1_xmm0 + "movdqa 0xc0(%%esi), %%xmm1\n\t" +- "cmp $12, %[rounds]\n\t" ++ "cmpl $12, %[rounds]\n\t" + "jz .Ldeclast%=\n\t" + aesdec_xmm1_xmm0 + "movdqa 0xd0(%%esi), %%xmm1\n\t" +@@ -839,13 +839,13 @@ + "movdqa 0x90(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xa0(%%esi), %%xmm1\n\t" +- "cmp $10, %[rounds]\n\t" ++ "cmpl $10, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xb0(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xc0(%%esi), %%xmm1\n\t" +- "cmp $12, %[rounds]\n\t" ++ "cmpl $12, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xd0(%%esi), %%xmm1\n\t" +@@ -857,7 +857,7 @@ + "movdqu %[src], %%xmm1\n\t" /* Save input. */ + "pxor %%xmm1, %%xmm0\n\t" /* xmm0 = input ^ IV */ + +- "cmp $1, %[decrypt]\n\t" ++ "cmpl $1, %[decrypt]\n\t" + "jz .Ldecrypt_%=\n\t" + "movdqa %%xmm0, %[iv]\n\t" /* [encrypt] Store IV. */ + "jmp .Lleave_%=\n" +@@ -918,13 +918,13 @@ + "movdqa 0x90(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xa0(%%esi), %%xmm1\n\t" +- "cmp $10, %[rounds]\n\t" ++ "cmpl $10, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xb0(%%esi), %%xmm1\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xc0(%%esi), %%xmm1\n\t" +- "cmp $12, %[rounds]\n\t" ++ "cmpl $12, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + "movdqa 0xd0(%%esi), %%xmm1\n\t" +@@ -1045,7 +1045,7 @@ + aesenc_xmm1_xmm3 + aesenc_xmm1_xmm4 + "movdqa 0xa0(%%esi), %%xmm1\n\t" +- "cmp $10, %[rounds]\n\t" ++ "cmpl $10, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + aesenc_xmm1_xmm2 +@@ -1057,7 +1057,7 @@ + aesenc_xmm1_xmm3 + aesenc_xmm1_xmm4 + "movdqa 0xc0(%%esi), %%xmm1\n\t" +- "cmp $12, %[rounds]\n\t" ++ "cmpl $12, %[rounds]\n\t" + "jz .Lenclast%=\n\t" + aesenc_xmm1_xmm0 + aesenc_xmm1_xmm2 + +Diff finished. Tue Oct 15 11:53:31 2013 diff --git a/build-aux/osx/build/modulesets/patches/libxml2/libxml2-Bug-686118-pthreads_once_init.patch b/build-aux/osx/build/modulesets/patches/libxml2/libxml2-Bug-686118-pthreads_once_init.patch new file mode 100644 index 0000000..8f42220 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/libxml2/libxml2-Bug-686118-pthreads_once_init.patch @@ -0,0 +1,33 @@ +From 3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e Mon Sep 17 00:00:00 2001 +From: Friedrich Haubensak <hsk@fli-leibniz.de> +Date: Wed, 12 Sep 2012 15:34:53 +0000 +Subject: Fix a thread portability problem + +cannot compile libxml2-2.9.0 using studio 12.1 compiler on solaris 10 + +I.M.O. structure initializer (as PTHREAD_ONCE_INIT) cannot be used in +a structure assignment anyway +--- +diff --git a/threads.c b/threads.c +index f206149..7e85a26 100644 +--- a/threads.c ++++ b/threads.c +@@ -146,6 +146,7 @@ struct _xmlRMutex { + static pthread_key_t globalkey; + static pthread_t mainthread; + static pthread_once_t once_control = PTHREAD_ONCE_INIT; ++static pthread_once_t once_control_init = PTHREAD_ONCE_INIT; + static pthread_mutex_t global_init_lock = PTHREAD_MUTEX_INITIALIZER; + #elif defined HAVE_WIN32_THREADS + #if defined(HAVE_COMPILER_TLS) +@@ -915,7 +916,7 @@ xmlCleanupThreads(void) + #ifdef HAVE_PTHREAD_H + if ((libxml_is_threaded) && (pthread_key_delete != NULL)) + pthread_key_delete(globalkey); +- once_control = PTHREAD_ONCE_INIT; ++ once_control = once_control_init; + #elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL)) + if (globalkey != TLS_OUT_OF_INDEXES) { + xmlGlobalStateCleanupHelperParams *p; +-- +cgit v0.9.0.2 diff --git a/build-aux/osx/build/modulesets/patches/readline/readline62-001 b/build-aux/osx/build/modulesets/patches/readline/readline62-001 new file mode 100644 index 0000000..d4563c3 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/readline/readline62-001 @@ -0,0 +1,46 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 6.2 +Patch-ID: readline62-001 + +Bug-Reported-by: Clark J. Wang <dearvoid@gmail.com> +Bug-Reference-ID: <AANLkTimGbW7aC4E5infXP6ku5WPci4t=xVc+L1SyHqrD@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00157.html + +Bug-Description: + +The readline vi-mode `cc', `dd', and `yy' commands failed to modify the +entire line. + +[This patch intentionally does not modify patchlevel] + +Patch (apply with `patch -p0'): + +*** ../readline-6.2-patched/vi_mode.c 2010-11-20 19:51:39.000000000 -0500 +--- vi_mode.c 2011-02-17 20:24:25.000000000 -0500 +*************** +*** 1115,1119 **** + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (0); + } + #if defined (READLINE_CALLBACKS) +--- 1115,1119 ---- + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (vidomove_dispatch (m)); + } + #if defined (READLINE_CALLBACKS) +*** ../readline-6.2-patched/callback.c 2010-06-06 12:18:58.000000000 -0400 +--- callback.c 2011-02-17 20:43:28.000000000 -0500 +*************** +*** 149,152 **** +--- 149,155 ---- + /* Should handle everything, including cleanup, numeric arguments, + and turning off RL_STATE_VIMOTION */ ++ if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0) ++ _rl_internal_char_cleanup (); ++ + return; + } diff --git a/build-aux/osx/build/modulesets/patches/readline/readline62-002 b/build-aux/osx/build/modulesets/patches/readline/readline62-002 new file mode 100644 index 0000000..3dc2604 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/readline/readline62-002 @@ -0,0 +1,57 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 6.2 +Patch-ID: readline62-002 + +Bug-Reported-by: Vincent Sheffer <vince.sheffer@apisphere.com> +Bug-Reference-ID: <F13C1C4F-C44C-4071-BFED-4BB6D13CF92F@apisphere.com> +Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2011-08/msg00000.html + +Bug-Description: + +The readline shared library helper script needs to be updated for Mac OS X +10.7 (Lion, darwin11). + +Patch (apply with `patch -p0'): + +*** ../readline-6.2-patched/support/shobj-conf 2009-10-28 09:20:21.000000000 -0400 +--- support/shobj-conf 2011-08-27 13:25:23.000000000 -0400 +*************** +*** 158,162 **** + + # Darwin/MacOS X +! darwin[89]*|darwin10*) + SHOBJ_STATUS=supported + SHLIB_STATUS=supported +--- 172,176 ---- + + # Darwin/MacOS X +! darwin[89]*|darwin1[012]*) + SHOBJ_STATUS=supported + SHLIB_STATUS=supported +*************** +*** 187,191 **** + + case "${host_os}" in +! darwin[789]*|darwin10*) SHOBJ_LDFLAGS='' + SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' + ;; +--- 201,205 ---- + + case "${host_os}" in +! darwin[789]*|darwin1[012]*) SHOBJ_LDFLAGS='' + SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' + ;; + +*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500 +--- patchlevel 2011-11-17 11:09:35.000000000 -0500 +*************** +*** 1,3 **** + # Do not edit -- exists only for use by patch + +! 1 +--- 1,3 ---- + # Do not edit -- exists only for use by patch + +! 2 diff --git a/build-aux/osx/build/modulesets/patches/readline/readline62-003 b/build-aux/osx/build/modulesets/patches/readline/readline62-003 new file mode 100644 index 0000000..0462242 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/readline/readline62-003 @@ -0,0 +1,76 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 6.2 +Patch-ID: readline62-003 + +Bug-Reported-by: Max Horn <max@quendi.de> +Bug-Reference-ID: <20CC5C60-07C3-4E41-9817-741E48D407C5@quendi.de> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2012-06/msg00005.html + +Bug-Description: + +A change between readline-6.1 and readline-6.2 to prevent the readline input +hook from being called too frequently had the side effect of causing delays +when reading pasted input on systems such as Mac OS X. This patch fixes +those delays while retaining the readline-6.2 behavior. + +Patch (apply with `patch -p0'): + +*** ../readline-6.2-patched/input.c 2010-05-30 18:33:01.000000000 -0400 +--- input.c 2012-06-25 21:08:42.000000000 -0400 +*************** +*** 410,414 **** + rl_read_key () + { +! int c; + + rl_key_sequence_length++; +--- 412,416 ---- + rl_read_key () + { +! int c, r; + + rl_key_sequence_length++; +*************** +*** 430,441 **** + while (rl_event_hook) + { +! if (rl_gather_tyi () < 0) /* XXX - EIO */ + { + rl_done = 1; + return ('\n'); + } + RL_CHECK_SIGNALS (); +- if (rl_get_char (&c) != 0) +- break; + if (rl_done) /* XXX - experimental */ + return ('\n'); +--- 432,447 ---- + while (rl_event_hook) + { +! if (rl_get_char (&c) != 0) +! break; +! +! if ((r = rl_gather_tyi ()) < 0) /* XXX - EIO */ + { + rl_done = 1; + return ('\n'); + } ++ else if (r == 1) /* read something */ ++ continue; ++ + RL_CHECK_SIGNALS (); + if (rl_done) /* XXX - experimental */ + return ('\n'); +*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500 +--- patchlevel 2011-11-17 11:09:35.000000000 -0500 +*************** +*** 1,3 **** + # Do not edit -- exists only for use by patch + +! 2 +--- 1,3 ---- + # Do not edit -- exists only for use by patch + +! 3 diff --git a/build-aux/osx/build/modulesets/patches/readline/readline62-004 b/build-aux/osx/build/modulesets/patches/readline/readline62-004 new file mode 100644 index 0000000..5f3ba9b --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/readline/readline62-004 @@ -0,0 +1,108 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 6.2 +Patch-ID: readline62-004 + +Bug-Reported-by: Jakub Filak +Bug-Reference-ID: +Bug-Reference-URL: https://bugzilla.redhat.com/show_bug.cgi?id=813289 + +Bug-Description: + +Attempting to redo (using `.') the vi editing mode `cc', `dd', or `yy' +commands leads to an infinite loop. + +Patch (apply with `patch -p0'): + +*** ../readline-6.2-patched/vi_mode.c 2011-02-25 11:17:02.000000000 -0500 +--- vi_mode.c 2012-06-02 12:24:47.000000000 -0400 +*************** +*** 1235,1243 **** + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing) + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +--- 1297,1313 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing && _rl_vi_last_motion != 'd') /* `dd' is special */ + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing) /* handle redoing `dd' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*************** +*** 1317,1325 **** + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing) + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +--- 1387,1403 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } +! else if (vi_redoing && _rl_vi_last_motion != 'c') /* `cc' is special */ + { + _rl_vimvcxt->motion = _rl_vi_last_motion; + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing) /* handle redoing `cc' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*************** +*** 1378,1381 **** +--- 1456,1472 ---- + r = rl_domove_motion_callback (_rl_vimvcxt); + } ++ else if (vi_redoing && _rl_vi_last_motion != 'y') /* `yy' is special */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ r = rl_domove_motion_callback (_rl_vimvcxt); ++ } ++ else if (vi_redoing) /* handle redoing `yy' here */ ++ { ++ _rl_vimvcxt->motion = _rl_vi_last_motion; ++ rl_mark = rl_end; ++ rl_beg_of_line (1, key); ++ RL_UNSETSTATE (RL_STATE_VIMOTION); ++ r = vidomove_dispatch (_rl_vimvcxt); ++ } + #if defined (READLINE_CALLBACKS) + else if (RL_ISSTATE (RL_STATE_CALLBACK)) +*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500 +--- patchlevel 2011-11-17 11:09:35.000000000 -0500 +*************** +*** 1,3 **** + # Do not edit -- exists only for use by patch + +! 3 +--- 1,3 ---- + # Do not edit -- exists only for use by patch + +! 4 diff --git a/build-aux/osx/build/modulesets/patches/shared-mime-info/0001-Bug-70255-Build-fails-with-glib-2.38.patch b/build-aux/osx/build/modulesets/patches/shared-mime-info/0001-Bug-70255-Build-fails-with-glib-2.38.patch new file mode 100644 index 0000000..f2007d2 --- /dev/null +++ b/build-aux/osx/build/modulesets/patches/shared-mime-info/0001-Bug-70255-Build-fails-with-glib-2.38.patch @@ -0,0 +1,42 @@ +From bfb2d780ff11cb547cc20d31c473be35cacb4509 Mon Sep 17 00:00:00 2001 +From: John Ralls <jralls@ceridwen.us> +Date: Tue, 8 Oct 2013 11:33:11 -0700 +Subject: [PATCH] Bug 70255 - Build fails with glib-2.38 + +--- + configure.ac | 3 +++ + test-tree-magic.c | 3 ++- + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 68007c9..60a4c4d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -29,6 +29,9 @@ dnl Check whether libxml and glib are present is installed + PKG_CHECK_MODULES(ALL, \ + libxml-2.0 >= 2.4 \ + glib-2.0 >= 2.6.0) ++PKG_CHECK_MODULES(GLIB_2_36, glib-2.0 >= 2.36.0, ++ [AC_DEFINE([HAVE_GLIB_2_36], [1], [Configure g_type_init deprecation])], ++ [PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.6.0)]) + AC_SUBST(ALL_CFLAGS) + AC_SUBST(ALL_LIBS) + +diff --git a/test-tree-magic.c b/test-tree-magic.c +index 9b4dfaf..ec44a29 100644 +--- a/test-tree-magic.c ++++ b/test-tree-magic.c +@@ -637,8 +637,9 @@ int main (int argc, char **argv) + char *content, **lines; + guint i; + ++#ifndef HAVE_GLIB_2_36 + g_type_init (); +- ++#endif + if (argc != 2) { + g_print ("Usage: %s [file]\n", argv[0]); + g_print ("Where file contains, on each line, a directory path,\n" +-- +1.8.3.rc0 + |