diff options
Diffstat (limited to 'packaging/macos/modulesets/gtk-osx.modules')
-rw-r--r-- | packaging/macos/modulesets/gtk-osx.modules | 336 |
1 files changed, 336 insertions, 0 deletions
diff --git a/packaging/macos/modulesets/gtk-osx.modules b/packaging/macos/modulesets/gtk-osx.modules new file mode 100644 index 0000000..f1f6b5f --- /dev/null +++ b/packaging/macos/modulesets/gtk-osx.modules @@ -0,0 +1,336 @@ +<?xml version="1.0"?><!--*- mode: nxml; indent-tabs-mode: nil -*--> +<!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="cairographics" + href="https://www.cairographics.org/"/> + <repository type="tarball" name="cairographics-temp" + href="https://gitlab.freedesktop.org/cairo/cairo/-/archive/"/> + <repository type="tarball" name="ftp.gnu.org" + href="https://ftp.gnu.org/gnu/"/> + <repository type="tarball" name="xorg" + href="https://www.x.org/releases/"/> + <repository type="tarball" name="fontconfig" + href="http://www.freedesktop.org/software/fontconfig/release/"/> + <repository type="tarball" name="hicolor" + href="https://icon-theme.freedesktop.org/releases/"/> + <repository type="git" name="github" href="https://github.com/"/> + <repository type="tarball" name="github-tarball" href="https://github.com/"/> + <repository type="tarball" name="sourceforge" + href="http://downloads.sourceforge.net/sourceforge/"/> + <repository type="system" name="system"/> + + <!-- This module set works a bit differently than for example the + GNOME ones do. It's split up in seperate pieces: + + - gtk-osx-bootstrap: contains bootstrap-like modules that you + don't want to rebuild all the time. + + - gtk-osx.modules: contains the core GTK+ stack. This does not + have a hard dependency on the bootstrap modules, in order to + make it easy to rebuild the whole core stack without redoing + the bootstrap parts. They have a soft, "after", depencency. + + - gtk-osx-python.modules: Python bindings for Gtk. + - gtk-osx-gtkmm.modules: C++ wrappers for Gtk. + - gtk-osx-network.modules: The network/crypto stack and WebKit. + - gtk-osx-random.modules: "random stuff", has apps for testing GTK+. + --> + + <include href="gtk-osx-bootstrap.modules"/> + <include href="gtk-osx-gtkmm.modules"/> + <include href="gtk-osx-network.modules"/> + <include href="gtk-osx-python.modules"/> + <include href="gtk-osx-random.modules"/> + + <!-- Dummy meson module to shut up a jhbuild warning. --> + <systemmodule id="meson"> + <branch repo="system"/> + </systemmodule> + + <metamodule id="meta-gtk-osx-gtk3"> + <dependencies> + <dep package="gtk+-3.0"/> + <dep package="adwaita-icon-theme"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </metamodule> + + <autotools id="libffi" autogenargs="--disable-builddir" + autogen-sh="configure"> + <branch module="libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz" + repo="github-tarball" version="3.3" + hash="sha256:72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056"/> + </autotools> + + <autotools id="libpcre" autogen-sh="configure" + autogenargs="--enable-unicode-properties --enable-newline-is-any --enable-jit"> + <branch repo="sourceforge" version="8.45" + module="pcre/pcre-8.45.tar.bz2" + hash="sha256:4dae6fdcd2bb0bb6c37b5f97c33c2be954da743985369cddac3546e3218bffb8"/> + </autotools> + + <meson id="glib" mesonargs="-Dlibmount=disabled"> + <branch module="glib/2.72/glib-2.72.1.tar.xz" version="2.72.1" + hash="sha256:c07e57147b254cef92ce80a0378dc0c02a4358e7de4702e9f403069781095fe2"> + </branch> + <dependencies> + <dep package="libffi"/> + <dep package="libpcre"/> + </dependencies> + </meson> + + <!-- To build Freetype *with* harfbuzz requires harfbuzz to be built + with freetype so we first have to build it *without* harfbuzz, + then build harfbuzz without cairo because cairo requires + harfbuzz. --> + <cmake id="freetype-no-harfbuzz" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release"> + <branch module="freetype/freetype-2.11.1.tar.gz" version="2.11.1" + repo="sourceforge" + hash="sha256:f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b"/> + <dependencies> + <dep package="zlib"/> + </dependencies> + </cmake> + + <meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Ddocs=disabled -Dbenchmark=disabled -Dintrospection=disabled"> + <branch repo="github-tarball" version="2.9.1" + module="harfbuzz/harfbuzz/releases/download/2.9.1/harfbuzz-2.9.1.tar.xz" + hash="sha256:0edcc980f526a338452180e701d6aba6323aef457b6686976a7d17ccbddc51cf"> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="freetype-no-harfbuzz"/> + <dep package="icu"/> + </dependencies> + </meson> + + <cmake id="freetype" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release"> + <branch module="freetype/freetype-2.11.1.tar.gz" version="2.11.1" + repo="sourceforge"/> + <dependencies> + <dep package="harfbuzz-no-cairo"/> + <dep package="zlib"/> + </dependencies> + </cmake> + + <autotools id="fontconfig" autogen-sh="configure" + autogenargs="--disable-docs --with-default-fonts=/System/Library/Fonts --with-add-fonts=/Library/Fonts"> + <branch repo="fontconfig" version="2.14.0" + module="fontconfig-2.14.0.tar.xz" + hash="sha256:dcbeb84c9c74bbfdb133d535fe1c7bedc9f2221a8daf3914b984c44c520e9bac"/> + <dependencies> + <dep package="freetype"/> + </dependencies> + </autotools> + + <autotools id="pixman" autogenargs="--disable-gtk --disable-mmx" + autogen-sh="configure"> + <branch version="0.40.0" module="releases/pixman-0.40.0.tar.gz" + repo="cairographics" + hash="sha512:063776e132f5d59a6d3f94497da41d6fc1c7dca0d269149c78247f0e0d7f520a25208d908cf5e421d1564889a91da44267b12d61c0bd7934cd54261729a7de5f"> + </branch> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </autotools> + + <!-- cairo doesn't really need fontconfig, but if Pango finds + freetype it insists that it has to have fontconfig too and that + they are both built into cairo. --> + <meson id="cairo"> + <branch module="1.17.6/cairo-1.17.6.tar.bz2" version="1.17.6" + repo="cairographics-temp" + hash="sha256:90496d135c9ef7612c98f8ee358390cdec0825534573778a896ea021155599d2"> + <patch file="cairo-pixman_dithering.patch" strip="1"/> <!-- Inkscape: packaging/cario.patch --> + <patch file="cairo-color_mgmt_perf.patch" strip="1"/> <!-- https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/290 --> + <patch file="cairo-snapshot_leak.patch" strip="1"/> <!-- https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/316 --> + </branch> + <dependencies> + <dep package="pixman"/> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="harfbuzz-no-cairo"/> + <dep package="fontconfig"/> + </dependencies> + </meson> + + <meson id="gobject-introspection"> + <branch module="gobject-introspection/1.72/gobject-introspection-1.72.0.tar.xz" + version="1.72.0" + hash="sha256:02fe8e590861d88f83060dd39cda5ccaa60b2da1d21d0f95499301b186beaabc"> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="cairo"/> + </dependencies> + <after> + <dep package='python3'/> + </after> + </meson> + + <!-- + harfbuzz 4.1.0 breaks the following tests for Inkscape: + 351 - render_test-glyph-y-pos (Failed) + 352 - render_text-glyphs-combining (Failed) + 353 - render_text-glyphs-vertical (Failed) + 356 - render_test-rtl-vertical (Failed) + + harfbuzz 3.4.0 breaks the following tests for Inkscape: + 351 - render_test-glyph-y-pos (Failed) + 353 - render_text-glyphs-vertical (Failed) + 356 - render_test-rtl-vertical (Failed) + --> + <meson id="harfbuzz" mesonargs="-Dcoretext=enabled -Ddocs=disabled -Dbenchmark=disabled"> + <branch repo="github-tarball" version="2.9.1" + module="harfbuzz/harfbuzz/releases/download/2.9.1/harfbuzz-2.9.1.tar.xz" + hash="sha256:0edcc980f526a338452180e701d6aba6323aef457b6686976a7d17ccbddc51cf" +> + </branch> + <dependencies> + <dep package="gobject-introspection"/> + <dep package="cairo"/> + <!-- no longer required as of https://github.com/harfbuzz/harfbuzz/releases/tag/2.8.1 + <dep package="fontconfig"/> + --> + </dependencies> + </meson> + + <meson id="fribidi" mesonargs="-Ddocs=false"> + <branch module="fribidi/fribidi/releases/download/v1.0.11/fribidi-1.0.11.tar.xz" + repo="github-tarball" version="1.0.11" + hash="sha256:30f93e9c63ee627d1a2cedcf59ac34d45bf30240982f99e44c6e015466b4e73d"/> + <dependencies> + <!--dep package="c2man"/ --> + </dependencies> + </meson> + + <meson id="pango" mesonargs="-Dfontconfig=enabled"> + <branch version="1.50.6" module="pango/1.50/pango-1.50.6.tar.xz" + hash="sha256:a998bcf36881c3ac20495d40bceb304f4eaa9175bd2967c85656434cbdafe86a"> + <patch file="pango-coretext-fix-clang-build-failure.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="cairo"/> + <dep package="harfbuzz"/> + <dep package="fribidi"/> + </dependencies> + <after> + <dep package="gobject-introspection"/> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </meson> + + <meson id="atk"> + <branch module="atk/2.36/atk-2.36.0.tar.xz" version="2.36.0" + hash="sha256:fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788"/> + <dependencies> + </dependencies> + <after> + <dep package="glib"/> + <dep package="meta-gtk-osx-bootstrap"/> + <dep package="gobject-introspection"/> + </after> + </meson> + + <!-- + relocatability breaks two tests in Inkscape + - <symbol> geometric properties (SVG 2.0 feature) + - .otf font with compressed SVG glyphs + <meson id="gdk-pixbuf" mesonargs="-Drelocatable=true -Dman=false"> + --> + <meson id="gdk-pixbuf" mesonargs="-Dman=false"> + + <branch module="gdk-pixbuf/2.42/gdk-pixbuf-2.42.8.tar.xz" version="2.42.8" + hash="sha256:84acea3acb2411b29134b32015a5b1aaa62844b19c4b1ef8b8971c6b0759f4c6"> + <patch file="gdk-pixbuf-loader-name.patch" strip="1"/> + </branch> + <after> + <dep package="pango"/> + <dep package="gobject-introspection"/> + </after> + </meson> + + <autotools id="hicolor-icon-theme"> + <branch module="hicolor-icon-theme-0.17.tar.xz" version="0.17" + repo="hicolor"/> + </autotools> + + <autotools id="xorg-util-macros"> + <branch repo="xorg" version="1.19.3" + module="individual/util/util-macros-1.19.3.tar.bz2" + hash="sha256:0f812e6e9d2786ba8f54b960ee563c0663ddbe2434bf24ff193f5feab1f31971"/> + </autotools> + + <meson id="libepoxy"> + <branch repo="github-tarball" version="1.5.4" + hash="sha256:0bd2cc681dfeffdef739cb29913f8c3caa47a88a451fd2bc6e606c02997289d2" + module="anholt/libepoxy/releases/download/1.5.4/libepoxy-1.5.4.tar.xz"/> + <dependencies> + <dep package="xorg-util-macros"/> + </dependencies> + </meson> + + <!-- gtk3 is in maintenance mode with 3.24 the final release series. --> + <meson id="gtk+-3.0" mesonargs="-Dx11_backend=false"> + <branch module="gtk+/3.24/gtk+-3.24.34.tar.xz" version="3.24.34" + hash="sha256:dbc69f90ddc821b8d1441f00374dc1da4323a2eafa9078e61edbe5eeefa852ec"> + <patch file="gtk-3.24.33-remove-gtk4-update-icon-cache-dependency.patch" strip="1"/> + <patch file="gtk-3.24.33-quartz-window-transient-for.patch" strip="1"/> + </branch> + <dependencies> + <dep package="glib"/> + <dep package="pango"/> + <dep package="atk"/> + <dep package="gdk-pixbuf"/> + <dep package="gobject-introspection"/> + <dep package="libepoxy"/> + <dep package="hicolor-icon-theme"/> + </dependencies> + <after> + <dep package="meta-gtk-osx-bootstrap"/> + </after> + </meson> + + <autotools id="libcroco" autogenargs="--disable-Bsymbolic" + autogen-sh="configure"> + <branch module="libcroco/0.6/libcroco-0.6.13.tar.xz" version="0.6.13" + hash="sha256:767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4"/> + </autotools> + + <autotools id="librsvg" autogen-sh="autoreconf" + autogenargs="--disable-Bsymbolic"> + <branch module="librsvg/2.54/librsvg-2.54.0.tar.xz" version="2.54.0" + hash="sha256:baf8ebc147f146b4261bb3d0cd0fac944bf8dbb4b1f2347d23341f974dcc3085"/> + <dependencies> + <dep package="cairo"/> + <dep package="pango"/> + <dep package="harfbuzz"/> + <dep package="freetype"/> + <dep package="rust"/> + <dep package="docutils"/> + <dep package="gidocgen"/> + </dependencies> + <after> + <!-- Circular dependency if we depend on meta-gtk-osx or meta-gtk-osx-gtk3 --> + <dep package="gtk+-3.0"/> + </after> + </autotools> + + <autotools id="adwaita-icon-theme" autogen-sh="configure"> + <branch module="adwaita-icon-theme/42/adwaita-icon-theme-42.0.tar.xz" + version="42.0" + hash="sha256:5e85b5adc8dee666900fcaf271ba717f7dcb9d0a03d96dae08f9cbd27e18b1e0"/> + <dependencies> + <dep package="librsvg"/> + </dependencies> + </autotools> + + <!-- Null metamodule, provided so as not to break modules that use it. --> + <metamodule id="meta-gtk-osx-freetype" /> + +</moduleset> |