diff options
author | Ruben Bressler <ruben.bressler@cerpamid.co.cu> | 2010-07-19 17:43:16 -0400 |
---|---|---|
committer | Ruben Bressler <ruben.bressler@cerpamid.co.cu> | 2010-07-19 17:43:16 -0400 |
commit | da67b754e498097b9c6b0188f1d96985748f0ccb (patch) | |
tree | 884e427391def55b663d18ac60a875ed02aa34f4 | |
parent | adicionando gdk-pixbuf-2.21.4 (diff) | |
download | rubenqba-da67b754e498097b9c6b0188f1d96985748f0ccb.tar.gz rubenqba-da67b754e498097b9c6b0188f1d96985748f0ccb.tar.bz2 rubenqba-da67b754e498097b9c6b0188f1d96985748f0ccb.zip |
adicionando ultima versión de x11-libs
19 files changed, 1186 insertions, 0 deletions
diff --git a/x11-libs/cairo/cairo-1.9.12.ebuild b/x11-libs/cairo/cairo-1.9.12.ebuild new file mode 100644 index 0000000..e58e9e3 --- /dev/null +++ b/x11-libs/cairo/cairo-1.9.12.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=2 + +inherit eutils flag-o-matic autotools + +DESCRIPTION="A vector graphics library with cross-device output support" +HOMEPAGE="http://cairographics.org/" +SRC_URI="http://cairographics.org/snapshots/${P}.tar.gz" + +LICENSE="|| ( LGPL-2.1 MPL-1.1 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="aqua debug directfb doc +svg X xcb" + +# Test causes a circular depend on gtk+... since gtk+ needs cairo but test needs gtk+ so we need to block it +RESTRICT="test" + +RDEPEND=">=media-libs/fontconfig-2.2.95 + >=media-libs/freetype-2.1.9 + sys-libs/zlib + >=media-libs/libpng-1.2.43-r2:0 + >=x11-libs/pixman-0.12.0 + directfb? ( >=dev-libs/DirectFB-0.9.24 ) + svg? ( dev-libs/libxml2 ) + X? ( + >=x11-libs/libXrender-0.6 + x11-libs/libXext + x11-libs/libX11 + x11-libs/libXft + ) + xcb? ( + >=x11-libs/libxcb-1.1.92 + x11-libs/xcb-util + )" +# test? ( +# pdf test +# x11-libs/pango +# >=x11-libs/gtk+-2.0 +# >=app-text/poppler-bindings-0.9.2[gtk] +# ps test +# app-text/ghostscript-gpl +# svg test +# >=x11-libs/gtk+-2.0 +# >=gnome-base/librsvg-2.15.0 + +DEPEND="${RDEPEND} + >=dev-util/pkgconfig-0.19 + >=sys-devel/libtool-2 + doc? ( + >=dev-util/gtk-doc-1.6 + ~app-text/docbook-xml-dtd-4.2 + ) + X? ( x11-proto/renderproto )" + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.8.8-interix.patch \ + "${FILESDIR}"/${PN}-1.8.10-libpng14.patch + + # We need to run elibtoolize to ensure correct so versioning on FreeBSD + # upgraded to an eautoreconf for the above interix patch. + eautoreconf +} + +src_configure() { + [[ ${CHOST} == *-interix* ]] && append-flags -D_REENTRANT + # http://bugs.freedesktop.org/show_bug.cgi?id=15463 + [[ ${CHOST} == *-solaris* ]] && append-flags -D_POSIX_PTHREAD_SEMANTICS + + #gets rid of fbmmx.c inlining warnings + append-flags -finline-limit=1200 + + econf \ + $(use_enable X xlib) \ + $(use_enable X xlib-xrender) \ + $(use_enable aqua quartz) \ + $(use_enable aqua quartz-image) \ + $(use_enable debug test-surfaces) \ + $(use_enable directfb) \ + $(use_enable doc gtk-doc) \ + $(use_enable xcb) \ + $(use_enable svg) \ + --enable-pdf \ + --enable-png \ + --enable-ft \ + --enable-ps +} + +src_install() { + # parallel make install fails + emake -j1 DESTDIR="${D}" install || die "Installation failed" + dodoc AUTHORS ChangeLog NEWS README || die +} + +pkg_postinst() { + if use xcb; then + ewarn "You have enabled the Cairo XCB backend which is used only by" + ewarn "a select few apps. The Cairo XCB backend is presently" + ewarn "un-maintained and needs a lot of work to get it caught up" + ewarn "to the Xrender and Xlib backends, which are the backends used" + ewarn "by most applications. See:" + ewarn "http://lists.freedesktop.org/archives/xcb/2008-December/004139.html" + fi +} + diff --git a/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch b/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch new file mode 100644 index 0000000..1872367 --- /dev/null +++ b/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch @@ -0,0 +1,11 @@ +--- configure.ac ++++ configure.ac +@@ -161,7 +161,7 @@ + AC_ARG_VAR([png_REQUIRES], [module name for libpng to search for using pkg-config]) + if test "x$png_REQUIRES" = x; then + # libpng13 is GnuWin32's libpng-1.2.8 :-( +- for l in libpng12 libpng13 libpng10 libpng; do ++ for l in libpng14 libpng12 libpng13 libpng10 libpng; do + if $PKG_CONFIG --exists $l ; then + png_REQUIRES=$l + use_png=yes diff --git a/x11-libs/cairo/files/cairo-1.8.8-interix.patch b/x11-libs/cairo/files/cairo-1.8.8-interix.patch new file mode 100644 index 0000000..dc20714 --- /dev/null +++ b/x11-libs/cairo/files/cairo-1.8.8-interix.patch @@ -0,0 +1,16 @@ +diff -ru cairo-1.8.8.orig/build/configure.ac.tools cairo-1.8.8/build/configure.ac.tools +--- cairo-1.8.8.orig/build/configure.ac.tools 2009-09-30 13:36:42 +0200 ++++ cairo-1.8.8/build/configure.ac.tools 2009-09-30 13:50:50 +0200 +@@ -21,5 +21,12 @@ + *) PKGCONFIG_REQUIRES="Requires.private"; ;; + esac + ++dnl hmm... on interix, things go really bad with Requires.private, since libpng12 ++dnl is missing on the final link commands, so gtk+'s configure checks for cairo ++dnl fail miserably with unresolved symbols to it. ++case "$host_os" in ++interix*) PKGCONFIG_REQUIRES="Requires" ;; ++esac ++ + AC_SUBST(PKGCONFIG_REQUIRES) + diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest new file mode 100644 index 0000000..870d47e --- /dev/null +++ b/x11-libs/gtk+/Manifest @@ -0,0 +1,6 @@ +AUX gtk+-2.14.3-limit-gtksignal-includes.patch 513 RMD160 ad967a5fb6b9fe2d96119d478429f10032bad8a5 SHA1 5c0df3e543303dfe456479359fea2cbd0d4b723e SHA256 20e7536c29e2675d18fd3aff933621a4fcab9b5615ff96593e9f36ab4febb734 +AUX gtk+-2.21.3-macosx-aqua.patch 5151 RMD160 7ad218341fa1e9e66e171ee54e275654644e3f08 SHA1 ff87e2eb8bed90a6a94f7cf82ccf49b9d4f5a154 SHA256 4ce4f02aa41ac647d851fde7ca95c8a776afa55810ec1157a69ab2454bf8eff4 +AUX gtk+-2.21.3-multilib.patch 611 RMD160 eca8037e03582ee04ba454b2010ba6405551239d SHA1 c304db88d098e59f2776dd99392d6712b84a4972 SHA256 4c3db89f401176ea121a982974d81ca6ba3db315d2bce16c83ef7f7d7f629f3b +AUX gtk+-2.90.4-macosx-aqua.patch 5160 RMD160 b261f1d88e1fff6359ba532360ca0529f85b72dc SHA1 6408d6b1b632844df91557d9e629dce5f162011f SHA256 6cebffdead89e458e41a365c177afd0d47cbd7ee0b462f79dbfe984845ef487a +DIST gtk+-2.90.5.tar.bz2 17028893 RMD160 8b2f5bccff4e4ebe9cd8991213731a4e2e640c9e SHA1 b5c3d87642cb412ae4820b27063d0eef98bd31d1 SHA256 8c3c2b461c5a9e0c07dcc320d6362728284e8294f2cd77428d51694c15681264 +EBUILD gtk+-2.90.5.ebuild 4834 RMD160 995c395d676b98531c8d18e6574aac4e6ba3e1f6 SHA1 62119078e4bdc72fc914a687e7871c3d86464999 SHA256 aaeb8d031227ba5f7b37f8a3b2c5bc6cd29443bf26ce982a0d97a9a21c223be9 diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-limit-gtksignal-includes.patch b/x11-libs/gtk+/files/gtk+-2.14.3-limit-gtksignal-includes.patch new file mode 100644 index 0000000..3fe8cff --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.14.3-limit-gtksignal-includes.patch @@ -0,0 +1,17 @@ +http://bugzilla.gnome.org/show_bug.cgi?id=536767 + +Makes inkscape and claws-mail buildable again. Basically all packages still using +GtkCList and single included headers. +--- gtk/gtksignal.h.orig 2008-06-12 01:40:59.000000000 -0400 ++++ gtk/gtksignal.h 2008-06-11 18:21:47.000000000 -0400 +@@ -29,7 +29,9 @@ + #ifndef __GTK_SIGNAL_H__ + #define __GTK_SIGNAL_H__ + +-#include <gtk/gtk.h> ++#include <gtk/gtkenums.h> ++#include <gtk/gtktypeutils.h> ++#include <gtk/gtkobject.h> + #include <gtk/gtkmarshal.h> + + G_BEGIN_DECLS diff --git a/x11-libs/gtk+/files/gtk+-2.21.3-macosx-aqua.patch b/x11-libs/gtk+/files/gtk+-2.21.3-macosx-aqua.patch new file mode 100644 index 0000000..43599a6 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.21.3-macosx-aqua.patch @@ -0,0 +1,145 @@ +This patch touches both the Makefile.am files as well as the Makefile.in files because +eautoreconf doesn't work properly on gtk+, for some reason. + +--- gtk+-2.21.3.orig/demos/gtk-demo/Makefile.am ++++ gtk+-2.21.3/demos/gtk-demo/Makefile.am +@@ -85,6 +85,10 @@ gtk_demo_DEPENDENCIES = $(DEPS) + gtk_demo_LDADD = $(LDADDS) + gtk_demo_LDFLAGS = -export-dynamic + ++if USE_QUARTZ ++gtk_demo_LDFLAGS += -framework AppKit -framework Carbon ++endif ++ + IMAGEFILES= alphatest.png \ + apple-red.png \ + background.jpg \ +--- gtk+-2.21.3.orig/demos/gtk-demo/Makefile.in ++++ gtk+-2.21.3/demos/gtk-demo/Makefile.in +@@ -40,6 +40,7 @@ host_triplet = @host@ + DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(srcdir)/geninclude.pl.in $(top_srcdir)/Makefile.decl + bin_PROGRAMS = gtk-demo$(EXEEXT) ++@USE_QUARTZ_TRUE@am__append_1 = -framework AppKit -framework Carbon + subdir = demos/gtk-demo + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/introspection.m4 \ +@@ -459,7 +460,7 @@ gtk_demo_SOURCES = \ + + gtk_demo_DEPENDENCIES = $(DEPS) + gtk_demo_LDADD = $(LDADDS) +-gtk_demo_LDFLAGS = -export-dynamic ++gtk_demo_LDFLAGS = -export-dynamic $(am__append_1) + IMAGEFILES = alphatest.png \ + apple-red.png \ + background.jpg \ +--- gtk+-2.21.3.orig/demos/Makefile.am ++++ gtk+-2.21.3/demos/Makefile.am +@@ -29,6 +29,10 @@ noinst_PROGRAMS = \ + testpixbuf-scale \ + pixbuf-demo + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + # Need to build test-inline-pixbufs.h for testpixbuf + noinst_PROGRAMS += testpixbuf + BUILT_SOURCES = test-inline-pixbufs.h +--- gtk+-2.21.3.orig/demos/Makefile.in ++++ gtk+-2.21.3/demos/Makefile.in +@@ -431,6 +431,7 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + $(MATH_LIB) + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + BUILT_SOURCES = test-inline-pixbufs.h + testpixbuf_DEPENDENCIES = $(DEPS) + testpixbuf_drawable_DEPENDENCIES = $(DEPS) +--- gtk+-2.21.3.orig/gtk/Makefile.am ++++ gtk+-2.21.3/gtk/Makefile.am +@@ -905,7 +905,7 @@ libgtk_directfb_2_0_la_SOURCES = $(gtk_c + + libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts) + libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid +-libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts) ++libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts) -framework AppKit -framework Carbon + libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts) + + libgtk_x11_2_0_la_LIBADD = $(libadd) +@@ -918,6 +918,10 @@ libgtk_win32_2_0_la_DEPENDENCIES = $(gtk + libgtk_quartz_2_0_la_DEPENDENCIES = $(deps) + libgtk_directfb_2_0_la_DEPENDENCIES = $(deps) + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + if USE_WIN32 + libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols) + endif +--- gtk+-2.21.3.orig/gtk/Makefile.in ++++ gtk+-2.21.3/gtk/Makefile.in +@@ -1303,7 +1303,7 @@ libgtk_quartz_2_0_la_SOURCES = $(gtk_c_s + libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources) + libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts) + libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid +-libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts) ++libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts) -framework AppKit -framework Carbon + libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts) + libgtk_x11_2_0_la_LIBADD = $(libadd) + libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32 +@@ -1313,6 +1313,7 @@ libgtk_x11_2_0_la_DEPENDENCIES = $(deps) + libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps) + libgtk_quartz_2_0_la_DEPENDENCIES = $(deps) + libgtk_directfb_2_0_la_DEPENDENCIES = $(deps) ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + @USE_WIN32_TRUE@libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols) + EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la + DEPS = $(gtktargetlib) $(top_builddir)/gdk/$(gdktargetlib) +--- gtk+-2.21.3.orig/perf/Makefile.am ++++ gtk+-2.21.3/perf/Makefile.am +@@ -19,6 +19,10 @@ LDADDS = \ + $(top_builddir)/gtk/$(gtktargetlib) \ + $(GTK_DEP_LIBS) + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + noinst_PROGRAMS = \ + testperf + +--- gtk+-2.21.3.orig/perf/Makefile.in ++++ gtk+-2.21.3/perf/Makefile.in +@@ -368,6 +368,7 @@ LDADDS = \ + $(top_builddir)/gtk/$(gtktargetlib) \ + $(GTK_DEP_LIBS) + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + testperf_DEPENDENCIES = $(TEST_DEPS) + testperf_LDADD = $(LDADDS) + testperf_SOURCES = \ +--- gtk+-2.21.3.orig/tests/Makefile.am ++++ gtk+-2.21.3/tests/Makefile.am +@@ -20,6 +20,10 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + -lm + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + if USE_X11 + testsocket_programs = testsocket testsocket_child + endif +--- gtk+-2.21.3.orig/tests/Makefile.in ++++ gtk+-2.21.3/tests/Makefile.in +@@ -623,6 +623,7 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + -lm + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + @USE_X11_TRUE@testsocket_programs = testsocket testsocket_child + @HAVE_CXX_TRUE@autotestkeywords_SOURCES = autotestkeywords.cc + @HAVE_CXX_TRUE@autotestkeywords_CPPFLAGS = -I$(srcdir)/dummy-headers \ diff --git a/x11-libs/gtk+/files/gtk+-2.21.3-multilib.patch b/x11-libs/gtk+/files/gtk+-2.21.3-multilib.patch new file mode 100644 index 0000000..3cf777d --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.21.3-multilib.patch @@ -0,0 +1,21 @@ +Same as the 2.8 version, except removed gdk-pixbuf parts + +--- gtk+-2.21.3.orig/gtk/gtkrc.c ++++ gtk+-2.21.3/gtk/gtkrc.c +@@ -364,7 +364,15 @@ + if (im_module_file) + result = g_strdup (im_module_file); + else +- result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules", NULL); ++ { ++ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", GTK_HOST, "gtk.immodules", NULL); ++ if (!g_file_test (result, G_FILE_TEST_EXISTS)) ++ { ++ g_free (result); ++ ++ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules", NULL); ++ } ++ } + } + + return result; diff --git a/x11-libs/gtk+/files/gtk+-2.90.4-macosx-aqua.patch b/x11-libs/gtk+/files/gtk+-2.90.4-macosx-aqua.patch new file mode 100644 index 0000000..24f7e13 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-2.90.4-macosx-aqua.patch @@ -0,0 +1,145 @@ +This patch touches both the Makefile.am files as well as the Makefile.in files because +eautoreconf doesn't work properly on gtk+, for some reason. + +--- gtk+-2.90.4.orig/demos/gtk-demo/Makefile.am ++++ gtk+-2.90.4/demos/gtk-demo/Makefile.am +@@ -85,6 +85,10 @@ gtk3_demo_DEPENDENCIES = $(DEPS) + gtk3_demo_LDADD = $(LDADDS) + gtk3_demo_LDFLAGS = -export-dynamic + ++if USE_QUARTZ ++gtk_demo_LDFLAGS += -framework AppKit -framework Carbon ++endif ++ + IMAGEFILES= alphatest.png \ + apple-red.png \ + background.jpg \ +--- gtk+-2.90.4.orig/demos/gtk-demo/Makefile.in ++++ gtk+-2.90.4/demos/gtk-demo/Makefile.in +@@ -40,6 +40,7 @@ host_triplet = @host@ + DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(srcdir)/geninclude.pl.in $(top_srcdir)/Makefile.decl + bin_PROGRAMS = gtk3-demo$(EXEEXT) ++@USE_QUARTZ_TRUE@am__append_1 = -framework AppKit -framework Carbon + subdir = demos/gtk-demo + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + am__aclocal_m4_deps = $(top_srcdir)/m4/introspection.m4 \ +@@ -459,7 +460,7 @@ gtk3_demo_SOURCES = \ + + gtk3_demo_DEPENDENCIES = $(DEPS) + gtk3_demo_LDADD = $(LDADDS) +-gtk3_demo_LDFLAGS = -export-dynamic ++gtk3_demo_LDFLAGS = -export-dynamic $(am__append_1) + IMAGEFILES = alphatest.png \ + apple-red.png \ + background.jpg \ +--- gtk+-2.90.4.orig/demos/Makefile.am ++++ gtk+-2.90.4/demos/Makefile.am +@@ -29,6 +29,10 @@ noinst_PROGRAMS = \ + testpixbuf-scale \ + pixbuf-demo + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + # Need to build test-inline-pixbufs.h for testpixbuf + noinst_PROGRAMS += testpixbuf + BUILT_SOURCES = test-inline-pixbufs.h +--- gtk+-2.90.4.orig/demos/Makefile.in ++++ gtk+-2.90.4/demos/Makefile.in +@@ -431,6 +431,7 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + $(MATH_LIB) + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + BUILT_SOURCES = test-inline-pixbufs.h + testpixbuf_DEPENDENCIES = $(DEPS) + testpixbuf_drawable_DEPENDENCIES = $(DEPS) +--- gtk+-2.90.4.orig/gtk/Makefile.am ++++ gtk+-2.90.4/gtk/Makefile.am +@@ -837,7 +837,7 @@ libgtk_directfb_3_0_la_SOURCES = $(gtk_c + + libgtk_x11_3_0_la_LDFLAGS = $(libtool_opts) + libgtk_win32_3_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid +-libgtk_quartz_3_0_la_LDFLAGS = $(libtool_opts) ++libgtk_quartz_3_0_la_LDFLAGS = $(libtool_opts) -framework AppKit -framework Carbon + libgtk_directfb_3_0_la_LDFLAGS = $(libtool_opts) + + libgtk_x11_3_0_la_LIBADD = $(libadd) +@@ -850,6 +850,10 @@ libgtk_win32_3_0_la_DEPENDENCIES = $(gtk + libgtk_quartz_3_0_la_DEPENDENCIES = $(deps) + libgtk_directfb_3_0_la_DEPENDENCIES = $(deps) + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + if USE_WIN32 + libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols) + endif +--- gtk+-2.90.4.orig/gtk/Makefile.in ++++ gtk+-2.90.4/gtk/Makefile.in +@@ -1560,7 +1560,7 @@ libgtk_quartz_3_0_la_SOURCES = $(gtk_c_s + libgtk_directfb_3_0_la_SOURCES = $(gtk_c_sources) + libgtk_x11_3_0_la_LDFLAGS = $(libtool_opts) + libgtk_win32_3_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid +-libgtk_quartz_3_0_la_LDFLAGS = $(libtool_opts) ++libgtk_quartz_3_0_la_LDFLAGS = $(libtool_opts) -framework AppKit -framework Carbon + libgtk_directfb_3_0_la_LDFLAGS = $(libtool_opts) + libgtk_x11_3_0_la_LIBADD = $(libadd) + libgtk_win32_3_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32 +@@ -1570,6 +1570,7 @@ libgtk_x11_3_0_la_DEPENDENCIES = $(deps) + libgtk_win32_3_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps) + libgtk_quartz_3_0_la_DEPENDENCIES = $(deps) + libgtk_directfb_3_0_la_DEPENDENCIES = $(deps) ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + @USE_WIN32_TRUE@libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols) + EXTRA_LTLIBRARIES = libgtk-x11-3.0.la libgtk-win32-3.0.la libgtk-quartz-3.0.la libgtk-directfb-3.0.la + DEPS = $(gtktargetlib) $(top_builddir)/gdk/$(gdktargetlib) +--- gtk+-2.90.4.orig/perf/Makefile.am ++++ gtk+-2.90.4/perf/Makefile.am +@@ -19,6 +19,10 @@ LDADDS = \ + $(top_builddir)/gtk/$(gtktargetlib) \ + $(GTK_DEP_LIBS) + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + noinst_PROGRAMS = \ + testperf + +--- gtk+-2.90.4.orig/perf/Makefile.in ++++ gtk+-2.90.4/perf/Makefile.in +@@ -368,6 +368,7 @@ LDADDS = \ + $(top_builddir)/gtk/$(gtktargetlib) \ + $(GTK_DEP_LIBS) + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + testperf_DEPENDENCIES = $(TEST_DEPS) + testperf_LDADD = $(LDADDS) + testperf_SOURCES = \ +--- gtk+-2.90.4.orig/tests/Makefile.am ++++ gtk+-2.90.4/tests/Makefile.am +@@ -21,6 +21,10 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + -lm + ++if USE_QUARTZ ++AM_LDFLAGS = -framework AppKit -framework Carbon ++endif ++ + if USE_X11 + testsocket_programs = testsocket testsocket_child + endif +--- gtk+-2.90.4.orig/tests/Makefile.in ++++ gtk+-2.90.4/tests/Makefile.in +@@ -627,6 +627,7 @@ LDADDS = \ + $(GTK_DEP_LIBS) \ + -lm + ++@USE_QUARTZ_TRUE@AM_LDFLAGS = -framework AppKit -framework Carbon + @USE_X11_TRUE@testsocket_programs = testsocket testsocket_child + @HAVE_CXX_TRUE@autotestkeywords_SOURCES = autotestkeywords.cc + @HAVE_CXX_TRUE@autotestkeywords_CPPFLAGS = -I$(srcdir)/dummy-headers \ diff --git a/x11-libs/gtk+/gtk+-2.90.5.ebuild b/x11-libs/gtk+/gtk+-2.90.5.ebuild new file mode 100644 index 0000000..7237189 --- /dev/null +++ b/x11-libs/gtk+/gtk+-2.90.5.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-2.20.1-r1.ebuild,v 1.2 2010/06/20 11:15:18 nirbheek Exp $ + +EAPI="3" + +inherit gnome.org flag-o-matic eutils libtool virtualx + +DESCRIPTION="Gimp ToolKit +" +HOMEPAGE="http://www.gtk.org/" + +LICENSE="LGPL-2" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="aqua cups debug doc +introspection jpeg jpeg2k tiff test vim-syntax xinerama" + +# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf) +RDEPEND="!aqua? ( + x11-libs/libXrender + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXt + x11-libs/libXext + >=x11-libs/libXrandr-1.3 + x11-libs/libXcursor + x11-libs/libXfixes + x11-libs/libXcomposite + x11-libs/libXdamage + >=x11-libs/cairo-1.9.10[X,svg] + x11-libs/gdk-pixbuf[X,introspection?,jpeg?,jpeg2k?,tiff?] + ) + aqua? ( + >=x11-libs/cairo-1.9.10[aqua,svg] + x11-libs/gdk-pixbuf[introspection?,jpeg?,jpeg2k?,tiff?] + ) + xinerama? ( x11-libs/libXinerama ) + >=dev-libs/glib-2.25.9 + >=x11-libs/pango-1.20[introspection?] + >=dev-libs/atk-1.29.2[introspection?] + media-libs/fontconfig + x11-misc/shared-mime-info + cups? ( net-print/cups ) + introspection? ( >=dev-libs/gobject-introspection-0.9 ) + !<gnome-base/gail-1000" +DEPEND="${RDEPEND} + >=dev-util/pkgconfig-0.9 + !aqua? ( + x11-proto/xextproto + x11-proto/xproto + x11-proto/inputproto + x11-proto/damageproto + ) + x86-interix? ( + sys-libs/itx-bind + ) + xinerama? ( x11-proto/xineramaproto ) + >=dev-util/gtk-doc-am-1.11 + doc? ( + >=dev-util/gtk-doc-1.11 + ~app-text/docbook-xml-dtd-4.1.2 ) + test? ( + media-fonts/font-misc-misc + media-fonts/font-cursor-misc )" +PDEPEND="vim-syntax? ( app-vim/gtk-syntax )" + +src_prepare() { + # add correct framework linking options, for aqua + epatch "${FILESDIR}/${PN}-2.90.4-macosx-aqua.patch" + + # -O3 and company cause random crashes in applications. Bug #133469 + replace-flags -O3 -O2 + strip-flags + + use ppc64 && append-flags -mminimal-toc + + # 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" + sed '\%/recent-manager/add%,/recent_manager_purge/ d' \ + -i gtk/tests/recentmanager.c || die "sed 2 failed" + + if use x86-interix; then + # activate the itx-bind package... + append-flags "-I${EPREFIX}/usr/include/bind" + append-ldflags "-L${EPREFIX}/usr/lib/bind" + fi + + elibtoolize +} + +src_configure() { + # png always on to display icons (foser) + local myconf="$(use_enable doc gtk-doc) + $(use_enable xinerama) + $(use_enable cups cups auto) + $(use_enable introspection) + --disable-papi" + if use aqua; then + myconf="${myconf} --with-gdktarget=quartz" + else + myconf="${myconf} --with-gdktarget=x11 --with-xinput" + fi + + # Passing --disable-debug is not recommended for production use + use debug && myconf="${myconf} --enable-debug=yes" + + # need libdir here to avoid a double slash in a path that libtool doesn't + # grok so well during install (// between $EPREFIX and usr ...) + econf --libdir="${EPREFIX}/usr/$(get_libdir)" ${myconf} +} + +src_compile() { + # Unfortunately, the parellel make breaks if USE=introspection + use introspection && export MAKEOPTS="${MAKEOPTS} -j1" + default +} + +src_test() { + unset DBUS_SESSION_BUS_ADDRESS + Xemake check || die "tests failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "Installation failed" + + # see bug #133241 + echo 'gtk-fallback-icon-theme = "gnome"' > "${T}/gtkrc" + insinto /etc/gtk-3.0 + doins "${T}"/gtkrc + + # Enable xft in environment as suggested by <utx@gentoo.org> + echo "GDK_USE_XFT=1" > "${T}"/50gtk3 + doenvd "${T}"/50gtk3 + + dodoc AUTHORS ChangeLog* HACKING NEWS* README* || die "dodoc failed" + + # Remove unneeded *.la files + find "${D}" -name "*.la" -delete + + # add -framework Carbon to the .pc files + use aqua && for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; do + sed -i -e "s:Libs\: :Libs\: -framework Carbon :" "${ED}"usr/$(get_libdir)/pkgconfig/$i || die "sed failed" + done +} + +pkg_postinst() { + local GTK3_MODDIR="${EROOT}usr/$(get_libdir)/gtk-3.0/3.0.0" + if [[ -d ${GTK3_MODDIR} ]]; then + gtk-query-immodules-3.0 > "${GTK3_MODDIR}/immodules.cache" + else + ewarn "The destination path ${GTK3_MODDIR} doesn't exist;" + ewarn "to complete the installation of GTK+, please create the" + ewarn "directory and then manually run:" + ewarn " cd ${GTK3_MODDIR}" + ewarn " gtk-query-immodules-3.0 > immodules.cache" + fi + + elog "Please install app-text/evince for print preview functionality." + elog "Alternatively, check \"gtk-print-preview-command\" documentation and" + elog "add it to your gtkrc." +} + diff --git a/x11-libs/gtksourceview/files/2.0/gentoo.lang b/x11-libs/gtksourceview/files/2.0/gentoo.lang new file mode 100644 index 0000000..f1e0660 --- /dev/null +++ b/x11-libs/gtksourceview/files/2.0/gentoo.lang @@ -0,0 +1,111 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + GtkSourceView syntax highlight for Gentoo-specific files + + Originally written for gtksourceview-1.x by: + Leonardo Ferreira Fontenelle <leo.fontenelle@gmail.com>, 2006. + Rewritten for gtksourceview-2 by: + Rene 'Necoro' Neumann <necoro@necoro.net>, 2007 + + Distributed under the same license(s) as gtksourceview. + + TODO: + - do not highlight "enable" in the configure options + - perhaps highlight portage variables and portage functions different + +--> + +<language name="gentoo" id="gentoo" version="2.0" _section="Scripts"> + <metadata> + <property name="globs">*.ebuild;*.eclass</property> + <property name="line-comment-start">#</property> + </metadata> + + <styles> + <style id="variable" _name="Portage variables" map-to="def:builtin" /> + <style id="command" _name="Portage command" map-to="def:type" /> + <style id="function" _name="Portage function" map-to="def:function" /> + <style id="string" _name="String" map-to="def:string" /> + </styles> + + <definitions> + + <!-- rewrite shell string to show highlighted variables --> + <context id="string" style-ref="def:string"> + <start>"</start> + <end>"</end> + <include> + <context ref="def:escape"/> + <context ref="def:line-continue"/> + <context ref="sh:variable"/> + </include> + </context> + + <context id="string-2" style-ref="def:string"> + <start>'</start> + <end>'</end> + <include> + <context ref="def:escape"/> + <context ref="def:line-continue"/> + <context ref="sh:variable"/> + </include> + </context> + + <!-- subprograms: + - $(..) is not supported currently in the normal sh.lang + - `...` is interpreted as string - I think the subshell behavior is more acurate --> + <context id="subprogram"> + <start>\$\(</start> + <end>\)</end> + <include> + <context sub-pattern="0" where="start" style-ref="sh:keyword"/> + <context sub-pattern="0" where="end" style-ref="sh:keyword"/> + <context ref="gentoo"/> + </include> + </context> + + <context id="subprogram-2"> + <start>`</start> + <end>`</end> + <include> + <context sub-pattern="0" where="start" style-ref="sh:keyword"/> + <context sub-pattern="0" where="end" style-ref="sh:keyword"/> + <context ref="gentoo"/> + </include> + </context> + + <!-- portage variables - currently unused --> + <context id="portvars" style-ref="variable"> + <match>\b((ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|FILESDIR|WORKDIR|(P|R)?DEPEND|PROVIDE|DISTDIR|RESTRICT|USERLAND)|(S|D|T|PV|PF|P|PN|A)|C(XX)?FLAGS|LDFLAGS|C(HOST|TARGET|BUILD))\b</match> + </context> + + <!-- portage functions - currently unused --> + <context id="portfuncs" style-ref="function"> + <match>^(src_(unpack|compile|install|test)|pkg_(config|nofetch|setup|(pre|post)(inst|rm)))</match> + </context> + + <!-- extra portage commands --> + <context id="portcmds" style-ref="command"> + <match>\b(e(begin|end|conf|install|make|warn|infon?|error|patch)|die|use(_(with|enable))?|inherit|has|(has|best)_version|unpack|(do|new)(ins|s?bin|doc|lib(|\.so|\.a)|man|info|exe|initd|confd|envd|pam|menu|icon)|do(python|sed|dir|hard|sym|html|jar|mo)|keepdir|prepall(|docs|info|man|strip)|prep(info|lib|lib\.(so|a)|man|strip)|(|doc|ins|exe)into|f(owners|perms)|(exe|ins|dir)opts)\b</match> + </context> + + <context id="built-in-command"> + <include> <!-- do not include "sh:built-in-command" as it is replaced down there - which would lead to an endless loop --> + <context ref="sh:built-in-command-1" /> + <context ref="sh:built-in-command-2" /> + <context ref="portcmds" /> + </include> + </context> + + <!-- gentoo is just a shell with the replacements --> + <replace id="sh:built-in-command" ref="built-in-command" /> + <replace id="sh:backtick-subshell" ref="subprogram-2" /> + <context id="gentoo"> + <include> + <context ref="subprogram"/> + <context ref="sh:sh"/> + </include> + </context> + </definitions> +</language> diff --git a/x11-libs/gtksourceview/gtksourceview-2.90.3.ebuild b/x11-libs/gtksourceview/gtksourceview-2.90.3.ebuild new file mode 100644 index 0000000..895aba4 --- /dev/null +++ b/x11-libs/gtksourceview/gtksourceview-2.90.3.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtksourceview/gtksourceview-2.10.4.ebuild,v 1.1 2010/06/23 12:08:34 pacho Exp $ + +EAPI="2" +GCONF_DEBUG="no" + +inherit gnome2 virtualx + +DESCRIPTION="A text widget implementing syntax highlighting and other features" +HOMEPAGE="http://www.gnome.org/" + +LICENSE="GPL-2" +SLOT="3.0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="doc glade +introspection" + +RDEPEND=">=x11-libs/gtk+-2.90:3[introspection?] + >=dev-libs/libxml2-2.6 + >=dev-libs/glib-2.14 + glade? ( >=dev-util/glade-3.2 ) + introspection? ( >=dev-libs/gobject-introspection-0.6.7 )" +DEPEND="${RDEPEND} + sys-devel/gettext + >=dev-util/intltool-0.40 + >=dev-util/pkgconfig-0.9 + doc? ( >=dev-util/gtk-doc-1 )" + +DOCS="AUTHORS ChangeLog HACKING MAINTAINERS NEWS README" + +pkg_config() { + G2CONF="${G2CONF} + $(use_enable glade glade-catalog) + $(use_enable introspection)" +} + +src_prepare() { + sed -i -e 's:--warn-all::' gtksourceview/Makefile.in + + gnome2_src_prepare +} + +src_test() { + Xemake check || die "Test phase failed" +} + +src_install() { + gnome2_src_install + + insinto /usr/share/${PN}-3.0/language-specs + doins "${FILESDIR}"/2.0/gentoo.lang || die "doins failed" +} diff --git a/x11-libs/libnotify/Manifest b/x11-libs/libnotify/Manifest new file mode 100644 index 0000000..e9bd8d3 --- /dev/null +++ b/x11-libs/libnotify/Manifest @@ -0,0 +1,2 @@ +DIST libnotify-0.5.1.tar.bz2 308597 RMD160 d8acb208e9a42428e5204629f7459f1fc60c557e SHA1 dd1196df09dce3800b4bb5935a60d409859f55c0 SHA256 6778ec8f496d5a9c387369bd89f5b1a9a95c799cf74fd74fffe2ab52d5d2b5c5 +EBUILD libnotify-0.5.1.ebuild 843 RMD160 3d57d6733ddf360809eb2c99367b0123f5effd52 SHA1 c3dbce3ef7130e4b65422174de0b891952dce0a3 SHA256 108163fde536e9c6eb9ea920630140caae520d5ac27a8860e640a81a6b5a7adc diff --git a/x11-libs/libnotify/libnotify-0.5.1.ebuild b/x11-libs/libnotify/libnotify-0.5.1.ebuild new file mode 100644 index 0000000..dc16ece --- /dev/null +++ b/x11-libs/libnotify/libnotify-0.5.1.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/libnotify/libnotify-0.4.5.ebuild,v 1.14 2010/03/26 16:28:15 ssuominen Exp $ + +EAPI=2 + +inherit gnome.org + +DESCRIPTION="Notifications library" +HOMEPAGE="http://www.galago-project.org/" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +IUSE="" + +RDEPEND=">=dev-libs/glib-2.6:2 + >=dev-libs/dbus-glib-0.76" +DEPEND="${RDEPEND} + dev-util/pkgconfig + >=x11-libs/gtk+-2.6:2 + x11-libs/gtk+:3" +PDEPEND="|| ( x11-misc/notification-daemon + xfce-extra/xfce4-notifyd )" + +src_install() { + emake install DESTDIR="${D}" || die "emake install failed" + dodoc AUTHORS ChangeLog NEWS +} diff --git a/x11-libs/vte/files/vte-0.24.1-background-color.patch b/x11-libs/vte/files/vte-0.24.1-background-color.patch new file mode 100644 index 0000000..08010d3 --- /dev/null +++ b/x11-libs/vte/files/vte-0.24.1-background-color.patch @@ -0,0 +1,22 @@ +From 430dd34fa9532fa492ea512f226e8483d1393716 Mon Sep 17 00:00:00 2001 +From: Behdad Esfahbod <behdad@behdad.org> +Date: Wed, 26 May 2010 17:09:25 +0000 +Subject: Fix requires_clear setting + +Part of Bug 618749 - [PATCH] set terminal widget background color to terminal +--- +diff --git a/src/vtedraw.c b/src/vtedraw.c +index c6971e4..7a0c535 100644 +--- a/src/vtedraw.c ++++ b/src/vtedraw.c +@@ -873,7 +873,7 @@ _vte_draw_set_background_solid(struct _vte_draw *draw, + double blue, + double opacity) + { +- draw->requires_clear = opacity != 0xFFFF; ++ draw->requires_clear = opacity != 1; + + if (draw->bg_pattern) + cairo_pattern_destroy (draw->bg_pattern); +-- +cgit v0.8.3.1 diff --git a/x11-libs/vte/files/vte-0.24.1-background-color2.patch b/x11-libs/vte/files/vte-0.24.1-background-color2.patch new file mode 100644 index 0000000..a64b415 --- /dev/null +++ b/x11-libs/vte/files/vte-0.24.1-background-color2.patch @@ -0,0 +1,41 @@ +From 9370647823ce29c1088c351381a07a5506b74c84 Mon Sep 17 00:00:00 2001 +From: Behdad Esfahbod <behdad@behdad.org> +Date: Wed, 26 May 2010 17:09:47 +0000 +Subject: Bug 618749 - set terminal widget background color to terminal background + +--- +diff --git a/src/vte.c b/src/vte.c +index 5f55335..545ad1b 100644 +--- a/src/vte.c ++++ b/src/vte.c +@@ -12608,6 +12608,7 @@ vte_terminal_background_update(VteTerminal *terminal) + { + double saturation; + const PangoColor *entry; ++ GdkColor color; + + /* If we're not realized yet, don't worry about it, because we get + * called when we realize. */ +@@ -12622,9 +12623,17 @@ vte_terminal_background_update(VteTerminal *terminal) + "Updating background image.\n"); + + entry = &terminal->pvt->palette[VTE_DEF_BG]; +- _vte_debug_print(VTE_DEBUG_MISC, +- "Setting background color to (%d, %d, %d).\n", +- entry->red, entry->green, entry->blue); ++ _vte_debug_print(VTE_DEBUG_BG, ++ "Setting background color to (%d, %d, %d, %d).\n", ++ entry->red, entry->green, entry->blue, ++ terminal->pvt->bg_opacity); ++ ++ /* Set the terminal widget background color since otherwise we ++ * won't draw it for VTE_BG_SOURCE_NONE. */ ++ color.red = entry->red; ++ color.green = entry->green; ++ color.blue = entry->blue; ++ gtk_widget_modify_bg (terminal, GTK_STATE_NORMAL, &color); + + _vte_draw_set_background_solid (terminal->pvt->draw, + entry->red / 65535., +-- +cgit v0.8.3.1 diff --git a/x11-libs/vte/files/vte-0.24.1-cleanup-background.patch b/x11-libs/vte/files/vte-0.24.1-cleanup-background.patch new file mode 100644 index 0000000..632462f --- /dev/null +++ b/x11-libs/vte/files/vte-0.24.1-cleanup-background.patch @@ -0,0 +1,166 @@ +From 405ed5bb3151940db0f21ff5b8e96bea94770f96 Mon Sep 17 00:00:00 2001 +From: Behdad Esfahbod <behdad@behdad.org> +Date: Sat, 12 Jun 2010 02:51:49 +0000 +Subject: Clean up background clearing + +Fixes bug where lower border of the screen was not properly painted in +fullscreen mode. +--- +diff --git a/src/vte.c b/src/vte.c +index 545ad1b..9c10804 100644 +--- a/src/vte.c ++++ b/src/vte.c +@@ -10479,33 +10479,6 @@ vte_terminal_paint_area (VteTerminal *terminal, const GdkRectangle *area) + row * height + terminal->pvt->inner_border.top, + (col_stop - col) * width, + (row_stop - row) * height); +- if (!GTK_WIDGET_DOUBLE_BUFFERED (terminal) || +- _vte_draw_requires_clear (terminal->pvt->draw)) { +- GdkRectangle rect; +- +- /* expand clear area to cover borders */ +- if (col == 0) +- rect.x = 0; +- else +- rect.x = area->x; +- if (col_stop == terminal->column_count) +- rect.width = terminal->widget.allocation.width; +- else +- rect.width = area->x + area->width; +- rect.width -= rect.x; +- if (row == 0) +- rect.y = 0; +- else +- rect.y = area->y; +- if (row_stop == terminal->row_count) +- rect.height = terminal->widget.allocation.height; +- else +- rect.height = area->y + area->height; +- rect.height -= rect.y; +- +- _vte_draw_clear (terminal->pvt->draw, +- rect.x, rect.y, rect.width, rect.height); +- } + + /* Now we're ready to draw the text. Iterate over the rows we + * need to draw. */ +@@ -10780,28 +10753,28 @@ vte_terminal_paint(GtkWidget *widget, GdkRegion *region) + clip.x, clip.y, clip.width, clip.height); + } + ++ _vte_draw_clip(terminal->pvt->draw, region); ++ _vte_draw_clear (terminal->pvt->draw, 0, 0, terminal->widget.allocation.width, terminal->widget.allocation.height); ++ + /* Calculate the bounding rectangle. */ +- if (!_vte_draw_clip(terminal->pvt->draw, region)) { +- vte_terminal_paint_area (terminal, +- &terminal->widget.allocation); +- } else { ++ { + GdkRectangle *rectangles; + gint n, n_rectangles; + gdk_region_get_rectangles (region, &rectangles, &n_rectangles); + /* don't bother to enlarge an invalidate all */ + if (!(n_rectangles == 1 +- && rectangles[0].width == terminal->widget.allocation.width +- && rectangles[0].height == terminal->widget.allocation.height)) { ++ && rectangles[0].width == terminal->widget.allocation.width ++ && rectangles[0].height == terminal->widget.allocation.height)) { + GdkRegion *rr = gdk_region_new (); +- /* convert pixels into cells */ ++ /* convert pixels into whole cells */ + for (n = 0; n < n_rectangles; n++) { +- vte_terminal_expand_region ( +- terminal, rr, rectangles + n); ++ vte_terminal_expand_region (terminal, rr, rectangles + n); + } + g_free (rectangles); + gdk_region_get_rectangles (rr, &rectangles, &n_rectangles); + gdk_region_destroy (rr); + } ++ + /* and now paint them */ + for (n = 0; n < n_rectangles; n++) { + vte_terminal_paint_area (terminal, rectangles + n); +diff --git a/src/vtedraw.c b/src/vtedraw.c +index 7a0c535..3c1a13c 100644 +--- a/src/vtedraw.c ++++ b/src/vtedraw.c +@@ -790,8 +790,6 @@ struct _vte_draw { + + gint started; + +- gboolean requires_clear; +- + struct font_info *font; + struct font_info *font_bold; + cairo_pattern_t *bg_pattern; +@@ -807,7 +805,6 @@ _vte_draw_new (GtkWidget *widget) + /* Create the structure. */ + draw = g_slice_new0 (struct _vte_draw); + draw->widget = g_object_ref (widget); +- draw->requires_clear = FALSE; + + _vte_debug_print (VTE_DEBUG_DRAW, "draw_new\n"); + +@@ -873,8 +870,6 @@ _vte_draw_set_background_solid(struct _vte_draw *draw, + double blue, + double opacity) + { +- draw->requires_clear = opacity != 1; +- + if (draw->bg_pattern) + cairo_pattern_destroy (draw->bg_pattern); + +@@ -894,9 +889,6 @@ _vte_draw_set_background_image (struct _vte_draw *draw, + { + cairo_surface_t *surface; + +- if (type != VTE_BG_SOURCE_NONE) +- draw->requires_clear = TRUE; +- + /* Need a valid draw->cr for cairo_get_target () */ + _vte_draw_start (draw); + +@@ -934,14 +926,12 @@ _vte_draw_set_background_scroll (struct _vte_draw *draw, + cairo_pattern_set_matrix (draw->bg_pattern, &matrix); + } + +-gboolean ++void + _vte_draw_clip (struct _vte_draw *draw, GdkRegion *region) + { + _vte_debug_print (VTE_DEBUG_DRAW, "draw_clip\n"); + gdk_cairo_region(draw->cr, region); + cairo_clip (draw->cr); +- +- return TRUE; + } + + void +@@ -1212,9 +1202,3 @@ _vte_draw_fill_rectangle (struct _vte_draw *draw, + set_source_color_alpha (draw->cr, color, alpha); + cairo_fill (draw->cr); + } +- +-gboolean +-_vte_draw_requires_clear (struct _vte_draw *draw) +-{ +- return draw->requires_clear; +-} +diff --git a/src/vtedraw.h b/src/vtedraw.h +index 8b98f72..ea2198b 100644 +--- a/src/vtedraw.h ++++ b/src/vtedraw.h +@@ -82,8 +82,7 @@ void _vte_draw_set_background_image(struct _vte_draw *draw, + void _vte_draw_set_background_scroll(struct _vte_draw *draw, + gint x, gint y); + +-gboolean _vte_draw_clip(struct _vte_draw *draw, GdkRegion *region); +-gboolean _vte_draw_requires_clear (struct _vte_draw *draw); ++void _vte_draw_clip(struct _vte_draw *draw, GdkRegion *region); + void _vte_draw_clear(struct _vte_draw *draw, + gint x, gint y, gint width, gint height); + +-- +cgit v0.8.3.1 diff --git a/x11-libs/vte/files/vte-0.24.2-invisible-cursor.patch b/x11-libs/vte/files/vte-0.24.2-invisible-cursor.patch new file mode 100644 index 0000000..59380f9 --- /dev/null +++ b/x11-libs/vte/files/vte-0.24.2-invisible-cursor.patch @@ -0,0 +1,39 @@ +From b58bc5359085d2c9233ac6d6a265645bfa217e82 Mon Sep 17 00:00:00 2001 +From: Behdad Esfahbod <behdad@behdad.org> +Date: Wed, 31 Mar 2010 18:05:10 +0000 +Subject: Bug 602596 - Cursor can become invisible + +Always compute the full fore/back color first, then reverse. +That's what xterm does also. +--- +diff --git a/src/vte.c b/src/vte.c +index 178010b..c6844e9 100644 +--- a/src/vte.c ++++ b/src/vte.c +@@ -8760,10 +8760,6 @@ vte_terminal_determine_colors(VteTerminal *terminal, + if (highlight && !cursor && terminal->pvt->highlight_color_set) { + *fore = cell ? cell->attr.fore : VTE_DEF_FG; + *back = VTE_DEF_HL; +- } else +- if (reverse ^ ((cell != NULL) && (cell->attr.reverse))) { +- *fore = cell ? cell->attr.back : VTE_DEF_BG; +- *back = cell ? cell->attr.fore : VTE_DEF_FG; + } else { + *fore = cell ? cell->attr.fore : VTE_DEF_FG; + *back = cell ? cell->attr.back : VTE_DEF_BG; +@@ -8796,6 +8792,13 @@ vte_terminal_determine_colors(VteTerminal *terminal, + } + } + } ++ ++ if (reverse ^ ((cell != NULL) && (cell->attr.reverse))) { ++ int tmp; ++ tmp = *fore; ++ *fore = *back; ++ *back = tmp; ++ } + } + + /* Check if a unicode character is actually a graphic character we draw +-- +cgit v0.8.3.1 diff --git a/x11-libs/vte/files/vte-0.24.2-invisible-cursor2.patch b/x11-libs/vte/files/vte-0.24.2-invisible-cursor2.patch new file mode 100644 index 0000000..633e9c3 --- /dev/null +++ b/x11-libs/vte/files/vte-0.24.2-invisible-cursor2.patch @@ -0,0 +1,34 @@ +From f412a6f73a7b3a432bb88830b63ee25ea648619d Mon Sep 17 00:00:00 2001 +From: Behdad Esfahbod <behdad@behdad.org> +Date: Thu, 01 Apr 2010 05:34:18 +0000 +Subject: Followup on Bug 602596 - Cursor can become invisible + +Fix invisible attribute. +--- +diff --git a/src/vte.c b/src/vte.c +index c6844e9..eddf06b 100644 +--- a/src/vte.c ++++ b/src/vte.c +@@ -8767,9 +8767,6 @@ vte_terminal_determine_colors(VteTerminal *terminal, + + /* Handle invisible, bold, and standout text by adjusting colors. */ + if (cell) { +- if (cell->attr.invisible) { +- *fore = *back; +- } + if (cell->attr.bold) { + if (*fore == VTE_DEF_FG) { + *fore = VTE_BOLD_FG; +@@ -8799,6 +8796,10 @@ vte_terminal_determine_colors(VteTerminal *terminal, + *fore = *back; + *back = tmp; + } ++ ++ if (cell && cell->attr.invisible) { ++ *fore = *back; ++ } + } + + /* Check if a unicode character is actually a graphic character we draw +-- +cgit v0.8.3.1 diff --git a/x11-libs/vte/vte-0.25.1.ebuild b/x11-libs/vte/vte-0.25.1.ebuild new file mode 100644 index 0000000..3c69555 --- /dev/null +++ b/x11-libs/vte/vte-0.25.1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/vte-0.24.2.ebuild,v 1.1 2010/06/23 15:01:20 pacho Exp $ + +EAPI="2" + +inherit gnome2 eutils + +DESCRIPTION="Gnome terminal widget" +HOMEPAGE="http://www.gnome.org/" + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="debug doc glade +introspection python" + +RDEPEND=">=dev-libs/glib-2.22.0 + >=x11-libs/gtk+-2.14.0:2[introspection?] + >=x11-libs/pango-1.22.0 + sys-libs/ncurses + glade? ( dev-util/glade:3 ) + introspection? ( dev-libs/gobject-introspection ) + python? ( >=dev-python/pygtk-2.4 ) + x11-libs/libX11 + x11-libs/libXft" +DEPEND="${RDEPEND} + doc? ( >=dev-util/gtk-doc-1.13 ) + >=dev-util/intltool-0.35 + >=dev-util/pkgconfig-0.9 + sys-devel/gettext" + +DOCS="AUTHORS ChangeLog HACKING NEWS README" + +pkg_setup() { + G2CONF="${G2CONF} + --disable-deprecation + --disable-static + $(use_enable debug) + $(use_enable glade glade-catalogue) + $(use_enable introspection) + $(use_enable python) + --with-html-dir=/usr/share/doc/${PF}/html" +} + +src_prepare() { + gnome2_src_prepare + + # Fix ugly artifacts with upstream patches from bgo#618749 + # FIXME: Second patch needs to be skipped since it causes problems with + # x11-terms/terminal, see bug #324631. If this is not solved by upstream, + # the problem could reappear with >=x11-libs/vte-0.25.2 + epatch "${FILESDIR}/${PN}-0.24.1-background-color.patch" +# epatch "${FILESDIR}/${PN}-0.24.1-background-color2.patch" + epatch "${FILESDIR}/${PN}-0.24.1-cleanup-background.patch" + + # Prevent cursor from become invisible, bgo#602596 + # FIXME: The following patches cannot be applied until bug #323443 is solved. +# epatch "${FILESDIR}/${PN}-0.24.2-invisible-cursor.patch" +# epatch "${FILESDIR}/${PN}-0.24.2-invisible-cursor2.patch" +} |