diff --git a/gnome/gtk+/build.sh b/gnome/gtk+/build.sh new file mode 100644 index 0000000..d31e729 --- /dev/null +++ b/gnome/gtk+/build.sh @@ -0,0 +1,62 @@ +pkgname=gtk+ +_pkgver=3.24 +pkgver=$_pkgver.31 + +fetch() { + curl -L "https://download.gnome.org/sources/gtk+/$_pkgver/gtk%2B-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz + tar -xf $pkgname-$pkgver.tar.xz + mkdir -p $pkgname-$pkgver/build + cd $pkgname-$pkgver + patch -p1 < ../../no-fribidi.patch + + # Remove 'atk-bridge' dependency which removes the 'dbus' dependency. + sed '/atkbridge_dep/d;/atk-bridge-2.0/d' meson.build > _ + mv -f _ meson.build + sed '/atkbridge_dep,/d' gtk/meson.build > _ + mv -f _ gtk/meson.build + + sed '//d;/atk_bridge_adaptor_init/d' \ + gtk/a11y/gtkaccessibility.c > _ + mv -f _ gtk/a11y/gtkaccessibility.c + +} + +build() { + cd $pkgname-$pkgver + cd build + meson .. \ + --buildtype=release \ + --prefix=/usr \ + --libexecdir=lib \ + --localstatedir=/var \ + -Dx11_backend=false \ + -Dprint_backends=auto \ + -Dwayland_backend=true \ + -Dwin32_backend=false \ + -Dquartz_backend=false \ + -Dcolord=no \ + -Ddemos=false \ + -Dexamples=false \ + -Dtests=false \ + -Dinstalled_tests=false \ + -Dgtk_doc=false \ + -Dintrospection=false + + samu +} + +package() { + cd $pkgname-$pkgver + cd build + DESTDIR=$pkgdir samu install +} + +backup() { + return +} + +license() { + cd $pkgname-$pkgver + cat LICENSE +# cat COPYING +} diff --git a/gnome/gtk+/no-fribidi.patch b/gnome/gtk+/no-fribidi.patch new file mode 100644 index 0000000..360c378 --- /dev/null +++ b/gnome/gtk+/no-fribidi.patch @@ -0,0 +1,60 @@ +diff --git a/gdk/gdk.c b/gdk/gdk.c +index f0869a6..2f3c039 100644 +--- a/gdk/gdk.c ++++ b/gdk/gdk.c +@@ -44,7 +44,6 @@ + #include + #include + +-#include + + + /** +@@ -1118,17 +1117,6 @@ gdk_disable_multidevice (void) + PangoDirection + gdk_unichar_direction (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) +- return PANGO_DIRECTION_NEUTRAL; +- else if (FRIBIDI_IS_RTL (fribidi_ch_type)) +- return PANGO_DIRECTION_RTL; +- else + return PANGO_DIRECTION_LTR; + } + +diff --git a/gtk/gtkpango.c b/gtk/gtkpango.c +index aaac4cc..a76ad57 100644 +--- a/gtk/gtkpango.c ++++ b/gtk/gtkpango.c +@@ -25,7 +25,6 @@ + #include "config.h" + #include "gtkpango.h" + #include +-#include + #include "gtkintl.h" + + #define GTK_TYPE_FILL_LAYOUT_RENDERER (_gtk_fill_layout_renderer_get_type()) +@@ -1326,17 +1325,6 @@ _gtk_pango_attr_list_merge (PangoAttrList *into, + PangoDirection + _gtk_pango_unichar_direction (gunichar ch) + { +- FriBidiCharType fribidi_ch_type; +- +- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); +- +- fribidi_ch_type = fribidi_get_bidi_type (ch); +- +- if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) +- return PANGO_DIRECTION_NEUTRAL; +- else if (FRIBIDI_IS_RTL (fribidi_ch_type)) +- return PANGO_DIRECTION_RTL; +- else + return PANGO_DIRECTION_LTR; + } +