<?xml version="1.0"?> <!DOCTYPE moduleset SYSTEM "moduleset.dtd"> <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?> <moduleset> <!-- Please format this file using the following command: tidy -config ../tidy.conf -m gtk-osx.modules; sed -i "" '/^ *$/d' gtk-osx.modules You can get 'tidy' here: https://github.com/htacg/tidy-html5 --> <repository name="git.gnome.org" default="yes" href="https://gitlab.gnome.org/GNOME" type="git" /> <repository name="github" href="https://github.com/" type="git" /> <repository name="freedesktop" href="https://gitlab.freedesktop.org/" type="git" /> <repository name="nongnu" href="https://git.savannah.nongnu.org/git/" type="git" /> <repository name="hicolor" href="https://icon-theme.freedesktop.org/releases/" type="tarball" /> <repository name="github-tarball" href="https://github.com/" type="tarball" /> <repository name="system" type="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-gstreamer.modules: Gstreamer Library and modules. - 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-gstreamer.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="gtk-mac-integration" /> <dep package="adwaita-icon-theme" /> </dependencies> <after> <dep package="meta-gtk-osx-bootstrap" /> </after> </metamodule> <autotools id="libffi" autogen-sh="autoreconf" autogenargs="--disable-multi-os-directory --disable-docs"> <branch module="libffi/libffi" repo="github" tag="v3.4.7" /> </autotools> <autotools id="libpcre2" autogen-sh="configure" autogenargs="--enable-pcre2-16 --enable-pcre2-32 --enable-jit"> <branch module="PCRE2Project/pcre2/" revision="release/pcre2-10.45" repo="github" /> </autotools> <meson id="glib-no-introspection" mesonargs="-Dlibmount=disabled"> <branch module="glib" tag="glib-2-83" /> <dependencies> <dep package="libffi" /> <dep package="libpcre2" /> </dependencies> </meson> <meson id="glib" mesonargs="-Dlibmount=disabled"> <branch tag="glib-2-83" /> <dependencies> <dep package="gobject-introspection" /> </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='-DFT_DISABLE_HARFBUZZ=ON -DBUILD_SHARED_LIBS=true -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_NAME_DIR="${JHBUILD_PREFIX}/lib"'> <branch module="freetype/freetype2" repo="nongnu" revision="VER-2-13-3" /> <dependencies> <dep package="zlib" /> </dependencies> </cmake> <autotools id="icu" autogen-sh="source/configure" autogenargs="--enable-rpath" makeargs='CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1 -DU_USING_ICU_NAMESPACE=0"'> <branch module="unicode-org/icu/releases/download/release-76-1/icu4c-76_1-src.tgz" version="76.1" checkoutdir="icu" repo="github-tarball" /> </autotools> <meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Dfreetype=enabled -Ddocs=disabled -Dbenchmark=disabled -Dintrospection=disabled -Dtests=disabled"> <branch module="harfbuzz/harfbuzz" repo="github" tag="10.2.0" /> <dependencies> <dep package="glib-no-introspection" /> <dep package="freetype-no-harfbuzz" /> </dependencies> <after> <dep package="icu" /> <dep package="icu55" /> </after> </meson> <cmake id="freetype" cmakeargs='-DFT_REQUIRE_HARFBUZZ=ON -DBUILD_SHARED_LIBS=true -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_NAME_DIR="${JHBUILD_PREFIX}/lib"'> <branch module="freetype/freetype2" repo="nongnu" revision="VER-2-13-3" /> <dependencies> <dep package="harfbuzz-no-cairo" /> <dep package="zlib" /> </dependencies> </cmake> <meson id="fontconfig" mesonargs="-Ddoc=disabled -Ddefault-fonts-dirs=/System/Library/Fonts -Dadditional-fonts-dirs=/Library/Fonts"> <branch module="fontconfig/fontconfig" repo="freedesktop" tag="2.16.0" /> <dependencies> <dep package="freetype" /> </dependencies> </meson> <meson id="pixman" mesonargs="-Dgtk=disabled -Dmmx=disabled -Da64-neon=disabled"> <branch module="pixman/pixman" repo="freedesktop" revision="pixman-0.44.2" /> <after> <dep package="meta-gtk-osx-bootstrap" /> </after> </meson> <!-- 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" mesonargs="-Dfontconfig=enabled -Dfreetype=enabled"> <branch module="cairo/cairo" repo="freedesktop" tag="1.18.2" /> <dependencies> <dep package="pixman" /> <dep package="meta-gtk-osx-bootstrap" /> <dep package="fontconfig" /> </dependencies> </meson> <meson id="gobject-introspection"> <branch module="gobject-introspection" tag="1.82.0" /> <dependencies> <dep package="glib-no-introspection" /> <dep package="cairo" /> </dependencies> <after> <!-- Mandatory if MAC_OS_X_MIN_REQURED != macOS Version. --> <dep package='python3' /> </after> </meson> <!-- This harfbuzz doesn't really need cairo, but if Pango is going to use introspection it requires harfbuzz to have introspection, and gobject-introspection needs cairo. --> <meson id="harfbuzz" mesonargs="-Dcoretext=enabled -Dfreetype=enabled -Ddocs=disabled -Dbenchmark=disabled"> <branch module="harfbuzz/harfbuzz" repo="github" tag="10.2.0" /> <dependencies> <dep package="gobject-introspection" /> <dep package="cairo" /> <dep package="fontconfig" /> </dependencies> </meson> <meson id="fribidi" mesonargs="-Ddocs=false"> <branch module="fribidi/fribidi" repo="github" tag="v1.0.13" /> <dependencies> <!--dep package="c2man" /--> </dependencies> </meson> <meson id="pango" mesonargs="-Dfontconfig=enabled"> <branch tag="1.56.1" /> <dependencies> <dep package="glib" /> <dep package="cairo" /> <dep package="harfbuzz" /> <dep package="fribidi" /> <dep package="gobject-introspection" /> <dep package="meta-gtk-osx-bootstrap" /> </dependencies> </meson> <!-- ATK is retired and archived. There are only housekeeping commits since tagging 3.38.0 so we might as well use master. --> <meson id="atk"> <branch /> <after> <dep package="glib" /> <dep package="meta-gtk-osx-bootstrap" /> <dep package="gobject-introspection" /> </after> </meson> <meson id="gdk-pixbuf" mesonargs="-Drelocatable=true -Dman=false"> <!-- gdk-pixbuf is releasing from master --> <branch tag="2.42.10" /> <dependencies> <dep package="pango" /> <dep package="gobject-introspection" /> </dependencies> </meson> <meson id="libepoxy"> <branch module="anholt/libepoxy" repo="github" revision="1.5.10" /> </meson> <autotools id="hicolor-icon-theme"> <branch module="hicolor-icon-theme-0.17.tar.xz" version="0.17" repo="hicolor" /> </autotools> <meson id="gtk+-3.0" mesonargs="-Dx11_backend=false"> <branch module="gtk" checkoutdir="gtk+-3.0" revision="gtk-3-24" /> <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> <meson id="graphene" mesonargs="-Dtests=false"> <branch module="ebassi/graphene" repo="github" revision="1.10.8" /> <dependencies> <dep package="glib" /> <dep package="gobject-introspection" /> </dependencies> </meson> <!-- SASS is required to build Gtk4 from git, not needed for tarballs. sassc versions are tied to specific libsass versions and 3.6.2 is the last release so we're stuck with libsass 3.6.5 unless Gtk4 migrates to Dart-Sass.--> <autotools id="libsass" autogen-sh="autoreconf" autogenargs="--disable-tests --disable-static"> <branch module="sass/libsass" repo="github" revision="3.6.6"/> </autotools> <autotools id="sassc" autogen-sh="autoreconf"> <branch module="sass/sassc" repo="github" revision="3.6.2"/> <dependencies> <dep package="libsass"/> </dependencies> </autotools> <meson id="gtk-4" mesonargs="-Dx11-backend=false -Dmedia-gstreamer=disabled"> <branch module="gtk" checkoutdir="gtk-4.0" revision="gtk-4-16" /> <dependencies> <dep package="glib"/> <dep package="pango"/> <dep package="atk"/> <dep package="gdk-pixbuf"/> <dep package="graphene"/> <dep package="libepoxy"/> <dep package="sassc"/> </dependencies> <after> <dep package="meta-gtk-osx-bootstrap" /> </after> </meson> <autotools id="gtk-mac-integration" autogenargs="--disable-python"> <!-- gtk-mac-integration releases from master" --> <branch /> <dependencies> <dep package="gtk+-3.0" /> </dependencies> </autotools> <autotools id="libxml2"> <branch module="libxml2" revision="2.13"/> </autotools> <meson id="librsvg" mesonargs="-Dintrospection=disabled -Ddocs=disabled"> <branch module="librsvg" branch="librsvg-2.59" /> <dependencies> <dep package="libxml2" /> <dep package="cairo" /> <dep package="pango" /> <dep package="harfbuzz" /> <dep package="freetype" /> </dependencies> </meson> <meson id="adwaita-icon-theme"> <branch branch="gnome-47" /> <dependencies> <dep package="librsvg" /> </dependencies> </meson> <!-- Null metamodule, provided so as not to break modules that use it. --> <metamodule id="meta-gtk-osx-freetype" /> </moduleset>