diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-03-21 13:34:31 -0400 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-03-21 13:37:46 -0400 |
commit | cb3b7e2d6bec96233f79d88fde59e3434b1e159d (patch) | |
tree | 0d20d22f379ddd370257778516335255503f5b63 | |
parent | dev-libs/gjs: 1.31.20 → 1.31.22 (diff) | |
download | gnome-cb3b7e2d6bec96233f79d88fde59e3434b1e159d.tar.gz gnome-cb3b7e2d6bec96233f79d88fde59e3434b1e159d.tar.bz2 gnome-cb3b7e2d6bec96233f79d88fde59e3434b1e159d.zip |
x11-libs/gtk+: 3.3.18 → 3.3.20 + wayland support
Add wayland support by dolphinling (bug #408131). Warning: not tested at
all since I don't have wayland and use nvidia-drivers.
Mask the wayland USE flag because libxkbcommon from the x11 overlay is
required.
-rw-r--r-- | status/portage-configs/package.use.mask.gnome3 | 2 | ||||
-rw-r--r-- | x11-libs/gtk+/Manifest | 7 | ||||
-rw-r--r-- | x11-libs/gtk+/files/gtk+-3.3.20-wayland-xkbcommon-headers.patch | 39 | ||||
-rw-r--r-- | x11-libs/gtk+/gtk+-3.3.20.ebuild (renamed from x11-libs/gtk+/gtk+-3.3.18-r1.ebuild) | 64 | ||||
-rw-r--r-- | x11-libs/gtk+/gtk+-9999.ebuild | 67 |
5 files changed, 124 insertions, 55 deletions
diff --git a/status/portage-configs/package.use.mask.gnome3 b/status/portage-configs/package.use.mask.gnome3 index b9817206..9327bb36 100644 --- a/status/portage-configs/package.use.mask.gnome3 +++ b/status/portage-configs/package.use.mask.gnome3 @@ -3,3 +3,5 @@ dev-libs/libgee -introspection gnome-extra/gnome-games -clutter media-libs/clutter-gtk -introspection sys-apps/gnome-disk-utility -nautilus +# Requires x11-libs/libxkbcommon from the x11 overlay +x11-libs/gtk+ wayland diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest index 6559b561..fe81db9a 100644 --- a/x11-libs/gtk+/Manifest +++ b/x11-libs/gtk+/Manifest @@ -1,7 +1,8 @@ AUX gtk+-3.3.18-fallback-theme.patch 2841 RMD160 01f69c2800ae57c1e21e22ba5be562061cae20b0 SHA1 0800ab93bd2b1b311ead6bd2a423fec984fb78f1 SHA256 a552218132b903835a480881803e29be678a311d3a653b8111eba1fd0ea04922 +AUX gtk+-3.3.20-wayland-xkbcommon-headers.patch 1347 RMD160 b21bfb4fdca683e385b08f181ce10922bc1d3b58 SHA1 d74d0fe0ca3058044f22520fdc288e5c0758311d SHA256 9876be3bf2ef19413248e5de51e285aa1545b3d94751e840692b811c7b4bd9a9 AUX settings.ini 96 RMD160 ff8d7e28f097820b15ea1d2168d9405db1a5707b SHA1 92c3120655ba14f163846a22d5c94fa50b0eb437 SHA256 a42c86c26b5bfa0da806961e28cdff21da6e2f7c35febf67c67d7f2667658163 DIST gtk+-3.3.16.tar.xz 12867600 RMD160 0a7a0d62c4abd05ff1b7f28611ddb45538fe1567 SHA1 da733b4d27e5803cb0393e9fda656ea4b7e11853 SHA256 57ccae54ad41b8ff5c7be98ca010a5497a86ce7de71050e837d2cf9bc4124256 -DIST gtk+-3.3.18.tar.xz 12955912 RMD160 e6d124c94044a1870371753c61896d7a1aa92319 SHA1 f3bd5b6da6bd73e58e82cad6cfbceb1fda1601d4 SHA256 c63cc7ff19c28f73c1060f4b6168ef0f6cb359803abb990baa5c5f5a48f31f90 +DIST gtk+-3.3.20.tar.xz 12857324 RMD160 c44dd293db131857d9601c56e8e722732e0eb9c2 SHA1 4d106cc1c733289b284a93bfc60a0fa33f4e9c69 SHA256 2327df9b2eca97d4817a6adbf127bf77141c4bafb2f79b6a91c9495b272d8501 EBUILD gtk+-3.3.16.ebuild 6580 RMD160 658cc71ab2efd1712fd3a340eea19092f4bab432 SHA1 15f307ce1373af13ac6bfb40b92b1dd6a8548d8f SHA256 bf37120e57b80880e1b6fa02ef24fa75e012539fe4ad25cfa951450b1d1e512d -EBUILD gtk+-3.3.18-r1.ebuild 6714 RMD160 d91a75fb2844e33d1d792711616091f76b4cb1cb SHA1 975fd6a3ebadb0f621024d4ac3c16fc4a81a29bd SHA256 5ab4f347f93da68af1e7b86d7bbd39d79bd0db5f849a8aa0049150fa4d6bbe77 -EBUILD gtk+-9999.ebuild 6605 RMD160 a8c1af172df2db31146a96e6a253d064475259bf SHA1 06b538834e2fedf93c68fe121391640f46af74e1 SHA256 a1caadf4b31b306e4f6fcf3a5844f4a27d66e19b4fbbe0e5ce6645c15d288ad5 +EBUILD gtk+-3.3.20.ebuild 7060 RMD160 90216de047892c0e15bed47e2ec724598731feeb SHA1 f560b04246d9b323b052badf77c7c4efef8f9eb1 SHA256 f5028071aab63ab1b49a768c0d3b0a4bcadabcce2345708db5ee06630d4cd60a +EBUILD gtk+-9999.ebuild 7060 RMD160 90216de047892c0e15bed47e2ec724598731feeb SHA1 f560b04246d9b323b052badf77c7c4efef8f9eb1 SHA256 f5028071aab63ab1b49a768c0d3b0a4bcadabcce2345708db5ee06630d4cd60a diff --git a/x11-libs/gtk+/files/gtk+-3.3.20-wayland-xkbcommon-headers.patch b/x11-libs/gtk+/files/gtk+-3.3.20-wayland-xkbcommon-headers.patch new file mode 100644 index 00000000..2e052d9a --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-3.3.20-wayland-xkbcommon-headers.patch @@ -0,0 +1,39 @@ +diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c +index 9e8e6b1..237a5b8 100644 +--- a/gdk/wayland/gdkdevice-wayland.c ++++ b/gdk/wayland/gdkdevice-wayland.c +@@ -32,7 +32,7 @@ + #include "gdkdevicemanagerprivate.h" + #include "gdkprivate-wayland.h" + +-#include <X11/extensions/XKBcommon.h> ++#include <xkbcommon/xkbcommon.h> + #include <X11/keysym.h> + + #include <sys/time.h> +diff --git a/gdk/wayland/gdkdisplaymanager-wayland.c b/gdk/wayland/gdkdisplaymanager-wayland.c +index eca6f92..d59563a 100644 +--- a/gdk/wayland/gdkdisplaymanager-wayland.c ++++ b/gdk/wayland/gdkdisplaymanager-wayland.c +@@ -27,7 +27,7 @@ + + #include "gdkinternals.h" + +-#include <X11/extensions/XKBcommon.h> ++#include <xkbcommon/xkbcommon.h> + + typedef struct _GdkWaylandDisplayManager GdkWaylandDisplayManager; + typedef struct _GdkWaylandDisplayManagerClass GdkWaylandDisplayManagerClass; +diff --git a/gdk/wayland/gdkkeys-wayland.c b/gdk/wayland/gdkkeys-wayland.c +index f3e9d3c..bc26a43 100644 +--- a/gdk/wayland/gdkkeys-wayland.c ++++ b/gdk/wayland/gdkkeys-wayland.c +@@ -39,7 +39,7 @@ + #include "gdkdisplay-wayland.h" + #include "gdkkeysprivate.h" + +-#include <X11/extensions/XKBcommon.h> ++#include <xkbcommon/xkbcommon.h> + + typedef struct _GdkWaylandKeymap GdkWaylandKeymap; + typedef struct _GdkWaylandKeymapClass GdkWaylandKeymapClass; diff --git a/x11-libs/gtk+/gtk+-3.3.18-r1.ebuild b/x11-libs/gtk+/gtk+-3.3.20.ebuild index 592807e2..62541da9 100644 --- a/x11-libs/gtk+/gtk+-3.3.18-r1.ebuild +++ b/x11-libs/gtk+/gtk+-3.3.20.ebuild @@ -19,7 +19,11 @@ SLOT="3" # * http://mail.gnome.org/archives/gtk-devel-list/2010-November/msg00099.html # I tried this and got it all compiling, but the end result is unusable as it # horribly mixes up the backends -- grobian -IUSE="aqua colord cups debug doc examples +introspection packagekit test vim-syntax xinerama" +IUSE="aqua colord cups debug doc examples +introspection packagekit test vim-syntax wayland X xinerama" +REQUIRED_USE=" + || ( aqua wayland X ) + xinerama? ( X )" + if [[ ${PV} = 9999 ]]; then KEYWORDS="" else @@ -28,12 +32,11 @@ fi # FIXME: introspection data is built against system installation of gtk+:3 # NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf) -# Use gtk+:2 for gtk-update-icon-cache and gtk-builder-convert -# >=x11-libs/gtk+-2.24:2 is needed for bug 359555 -COMMON_DEPEND="!aqua? ( +# Use gtk+:2 for gtk-update-icon-cache +COMMON_DEPEND="X? ( x11-libs/libXrender x11-libs/libX11 - x11-libs/libXi + >=x11-libs/libXi-1.3 x11-libs/libXt x11-libs/libXext >=x11-libs/libXrandr-1.3 @@ -41,32 +44,34 @@ COMMON_DEPEND="!aqua? ( x11-libs/libXfixes x11-libs/libXcomposite x11-libs/libXdamage - >=x11-libs/cairo-1.10.0[X,glib,svg] - >=x11-libs/gdk-pixbuf-2.25.2:2[X,introspection?] + xinerama? ( x11-libs/libXinerama ) ) - aqua? ( - >=x11-libs/cairo-1.10.0[aqua,glib,svg] - >=x11-libs/gdk-pixbuf-2.25.2:2[introspection?] + wayland? ( + dev-libs/wayland + media-libs/mesa[egl,wayland] + x11-libs/cairo[opengl] + x11-libs/libxkbcommon ) - xinerama? ( x11-libs/libXinerama ) >=dev-libs/glib-2.31.20 >=x11-libs/pango-1.29.0[introspection?] >=dev-libs/atk-2.1.5[introspection?] + >=x11-libs/cairo-1.10.0[aqua?,glib,svg,X?] + >=x11-libs/gdk-pixbuf-2.25.2:2[introspection?,X?] >=x11-libs/gtk+-2.24:2 media-libs/fontconfig x11-misc/shared-mime-info colord? ( >=x11-misc/colord-0.1.9 ) - cups? ( net-print/cups ) + cups? ( >=net-print/cups-1.2 ) introspection? ( >=dev-libs/gobject-introspection-0.10.1 )" DEPEND="${COMMON_DEPEND} >=dev-util/pkgconfig-0.9 - !aqua? ( + X? ( x11-proto/xextproto x11-proto/xproto x11-proto/inputproto x11-proto/damageproto + xinerama? ( x11-proto/xineramaproto ) ) - xinerama? ( x11-proto/xineramaproto ) >=dev-util/gtk-doc-am-1.11 doc? ( >=dev-util/gtk-doc-1.11 @@ -76,10 +81,13 @@ DEPEND="${COMMON_DEPEND} media-fonts/font-cursor-misc )" # gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90 # gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90 +# >=xorg-server-1.11.4 needed for +# http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html RDEPEND="${COMMON_DEPEND} !<gnome-base/gail-1000 !<x11-libs/vte-0.31.0:2.90 - packagekit? ( app-admin/packagekit-base )" + packagekit? ( app-admin/packagekit-base ) + X? ( !<x11-base/xorg-server-1.11.4 )" PDEPEND="vim-syntax? ( app-vim/gtk-syntax )" strip_builddir() { @@ -99,6 +107,9 @@ src_prepare() { # https://bugzilla.gnome.org/show_bug.cgi?id=65410 epatch "${FILESDIR}/${PN}-3.3.18-fallback-theme.patch" + # Apparently needed for new libxkbcommon headers; bug #408131 + epatch "${FILESDIR}/${PN}-3.3.20-wayland-xkbcommon-headers.patch" + # Non-working test in gentoo's env sed 's:\(g_test_add_func ("/ui-tests/keys-events.*\):/*\1*/:g' \ -i gtk/tests/testing.c || die "sed 1 failed" @@ -129,22 +140,23 @@ src_prepare() { } src_configure() { - local myconf="$(use_enable doc gtk-doc) - $(use_enable xinerama) - $(use_enable packagekit) - $(use_enable cups cups auto) + local myconf="$(use_enable aqua quartz-backend) $(use_enable colord) + $(use_enable cups cups auto) + $(use_enable doc gtk-doc) $(use_enable introspection) + $(use_enable packagekit) + $(use_enable wayland wayland-backend) + $(use_enable X x11-backend) + $(use_enable X xcomposite) + $(use_enable X xdamage) + $(use_enable X xfixes) + $(use_enable X xkb) + $(use_enable X xrandr) + $(use_enable xinerama) --disable-papi --enable-gtk2-dependency" - # XXX: Maybe with multi-backend we should enable x11 all the time? - if use aqua; then - myconf="${myconf} --enable-quartz-backend" - else - myconf="${myconf} --enable-x11-backend" - fi - # Passing --disable-debug is not recommended for production use use debug && myconf="${myconf} --enable-debug=yes" diff --git a/x11-libs/gtk+/gtk+-9999.ebuild b/x11-libs/gtk+/gtk+-9999.ebuild index 4d353a94..62541da9 100644 --- a/x11-libs/gtk+/gtk+-9999.ebuild +++ b/x11-libs/gtk+/gtk+-9999.ebuild @@ -19,7 +19,11 @@ SLOT="3" # * http://mail.gnome.org/archives/gtk-devel-list/2010-November/msg00099.html # I tried this and got it all compiling, but the end result is unusable as it # horribly mixes up the backends -- grobian -IUSE="aqua colord cups debug doc examples +introspection packagekit test vim-syntax xinerama" +IUSE="aqua colord cups debug doc examples +introspection packagekit test vim-syntax wayland X xinerama" +REQUIRED_USE=" + || ( aqua wayland X ) + xinerama? ( X )" + if [[ ${PV} = 9999 ]]; then KEYWORDS="" else @@ -28,12 +32,11 @@ fi # FIXME: introspection data is built against system installation of gtk+:3 # NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf) -# Use gtk+:2 for gtk-update-icon-cache and gtk-builder-convert -# >=x11-libs/gtk+-2.24:2 is needed for bug 359555 -COMMON_DEPEND="!aqua? ( +# Use gtk+:2 for gtk-update-icon-cache +COMMON_DEPEND="X? ( x11-libs/libXrender x11-libs/libX11 - x11-libs/libXi + >=x11-libs/libXi-1.3 x11-libs/libXt x11-libs/libXext >=x11-libs/libXrandr-1.3 @@ -41,32 +44,34 @@ COMMON_DEPEND="!aqua? ( x11-libs/libXfixes x11-libs/libXcomposite x11-libs/libXdamage - >=x11-libs/cairo-1.10.0[X,glib,svg] - >=x11-libs/gdk-pixbuf-2.25.2:2[X,introspection?] + xinerama? ( x11-libs/libXinerama ) ) - aqua? ( - >=x11-libs/cairo-1.10.0[aqua,glib,svg] - >=x11-libs/gdk-pixbuf-2.25.2:2[introspection?] + wayland? ( + dev-libs/wayland + media-libs/mesa[egl,wayland] + x11-libs/cairo[opengl] + x11-libs/libxkbcommon ) - xinerama? ( x11-libs/libXinerama ) >=dev-libs/glib-2.31.20 >=x11-libs/pango-1.29.0[introspection?] >=dev-libs/atk-2.1.5[introspection?] + >=x11-libs/cairo-1.10.0[aqua?,glib,svg,X?] + >=x11-libs/gdk-pixbuf-2.25.2:2[introspection?,X?] >=x11-libs/gtk+-2.24:2 media-libs/fontconfig x11-misc/shared-mime-info colord? ( >=x11-misc/colord-0.1.9 ) - cups? ( net-print/cups ) + cups? ( >=net-print/cups-1.2 ) introspection? ( >=dev-libs/gobject-introspection-0.10.1 )" DEPEND="${COMMON_DEPEND} >=dev-util/pkgconfig-0.9 - !aqua? ( + X? ( x11-proto/xextproto x11-proto/xproto x11-proto/inputproto x11-proto/damageproto + xinerama? ( x11-proto/xineramaproto ) ) - xinerama? ( x11-proto/xineramaproto ) >=dev-util/gtk-doc-am-1.11 doc? ( >=dev-util/gtk-doc-1.11 @@ -76,10 +81,13 @@ DEPEND="${COMMON_DEPEND} media-fonts/font-cursor-misc )" # gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90 # gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90 +# >=xorg-server-1.11.4 needed for +# http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html RDEPEND="${COMMON_DEPEND} !<gnome-base/gail-1000 !<x11-libs/vte-0.31.0:2.90 - packagekit? ( app-admin/packagekit-base )" + packagekit? ( app-admin/packagekit-base ) + X? ( !<x11-base/xorg-server-1.11.4 )" PDEPEND="vim-syntax? ( app-vim/gtk-syntax )" strip_builddir() { @@ -96,6 +104,12 @@ src_prepare() { replace-flags -O3 -O2 strip-flags + # https://bugzilla.gnome.org/show_bug.cgi?id=65410 + epatch "${FILESDIR}/${PN}-3.3.18-fallback-theme.patch" + + # Apparently needed for new libxkbcommon headers; bug #408131 + epatch "${FILESDIR}/${PN}-3.3.20-wayland-xkbcommon-headers.patch" + # Non-working test in gentoo's env sed 's:\(g_test_add_func ("/ui-tests/keys-events.*\):/*\1*/:g' \ -i gtk/tests/testing.c || die "sed 1 failed" @@ -126,22 +140,23 @@ src_prepare() { } src_configure() { - local myconf="$(use_enable doc gtk-doc) - $(use_enable xinerama) - $(use_enable packagekit) - $(use_enable cups cups auto) + local myconf="$(use_enable aqua quartz-backend) $(use_enable colord) + $(use_enable cups cups auto) + $(use_enable doc gtk-doc) $(use_enable introspection) + $(use_enable packagekit) + $(use_enable wayland wayland-backend) + $(use_enable X x11-backend) + $(use_enable X xcomposite) + $(use_enable X xdamage) + $(use_enable X xfixes) + $(use_enable X xkb) + $(use_enable X xrandr) + $(use_enable xinerama) --disable-papi --enable-gtk2-dependency" - # XXX: Maybe with multi-backend we should enable x11 all the time? - if use aqua; then - myconf="${myconf} --enable-quartz-backend" - else - myconf="${myconf} --enable-x11-backend" - fi - # Passing --disable-debug is not recommended for production use use debug && myconf="${myconf} --enable-debug=yes" |