Version bump. Add support for vala bindings. Clean up old revisions.
authorGilles Dartiguelongue <eva@gentoo.org>
Sun, 13 Nov 2011 21:13:50 +0000 (21:13 +0000)
committerGilles Dartiguelongue <eva@gentoo.org>
Sun, 13 Nov 2011 21:13:50 +0000 (21:13 +0000)
Package-Manager: portage-2.2.0_alpha73/cvs/Linux x86_64

net-libs/gtk-vnc/ChangeLog
net-libs/gtk-vnc/Manifest
net-libs/gtk-vnc/files/gtk-vnc-0.4.2-fb-bounds-fix.patch [deleted file]
net-libs/gtk-vnc/files/gtk-vnc-0.4.2-gnutls-crash-fix.patch [deleted file]
net-libs/gtk-vnc/files/gtk-vnc-0.4.2-memory-leak-fix.patch [deleted file]
net-libs/gtk-vnc/files/gtk-vnc-0.4.2-pre-conn-crash-fix.patch [deleted file]
net-libs/gtk-vnc/files/gtk-vnc-0.4.2-shared-flag.patch [deleted file]
net-libs/gtk-vnc/gtk-vnc-0.4.2-r2.ebuild [deleted file]
net-libs/gtk-vnc/gtk-vnc-0.4.3.ebuild [deleted file]
net-libs/gtk-vnc/gtk-vnc-0.4.4.ebuild [new file with mode: 0644]
net-libs/gtk-vnc/metadata.xml

index 0afe1beeed40f96d2303c958afc67cfbfaec000e..fe7c047a366ed5e917e9abadca7f6aff5044cadf 100644 (file)
@@ -1,6 +1,17 @@
 # ChangeLog for net-libs/gtk-vnc
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/gtk-vnc/ChangeLog,v 1.74 2011/11/07 06:12:13 nirbheek Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/gtk-vnc/ChangeLog,v 1.75 2011/11/13 21:13:49 eva Exp $
+
+*gtk-vnc-0.4.4 (13 Nov 2011)
+
+  13 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> -gtk-vnc-0.4.2-r2.ebuild,
+  -files/gtk-vnc-0.4.2-fb-bounds-fix.patch,
+  -files/gtk-vnc-0.4.2-gnutls-crash-fix.patch,
+  -files/gtk-vnc-0.4.2-memory-leak-fix.patch,
+  -files/gtk-vnc-0.4.2-pre-conn-crash-fix.patch,
+  -files/gtk-vnc-0.4.2-shared-flag.patch, -gtk-vnc-0.4.3.ebuild,
+  +gtk-vnc-0.4.4.ebuild, metadata.xml:
+  Version bump. Add support for vala bindings. Clean up old revisions.
 
   07 Nov 2011; Nirbheek Chauhan <nirbheek@gentoo.org> Manifest:
   Fix manifest
index a57beef46c8e2cb4f6d2909b3ff7ce1db237f523..a01c5f0c231bafb49d6308f3462a4911ccbe01a6 100644 (file)
@@ -1,32 +1,16 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-AUX gtk-vnc-0.4.2-fb-bounds-fix.patch 3099 RMD160 cc591f16e3356e73079cf054465e54dfa78eb279 SHA1 8ecc272829ca60ab7741329dc4fdfe619ce21f81 SHA256 0e2432f8bfa37eb24a160ae7d210c9781b4be40dcb23ca4093cc89e43eeabbf3
-AUX gtk-vnc-0.4.2-gnutls-crash-fix.patch 1977 RMD160 267f4da2c0fc2752367afb6496f7b1abec228b1b SHA1 ec2edac831ad3939d294f8e80c8f37834aca01d4 SHA256 8ae22b88874ff40db314739c1d435925466cf014c570a761b5ffb20a4edb27aa
-AUX gtk-vnc-0.4.2-memory-leak-fix.patch 1464 RMD160 a6e0239731cda4b7e2cf67b9ed5cf7ca27a3e2f9 SHA1 60f62e3a9e8aba1418c8dbb531b2479b6c85ce1c SHA256 d5983864034c113fb148128e3061f4cc8fb80e7952a7b0e35d9ce46078bab75d
-AUX gtk-vnc-0.4.2-pre-conn-crash-fix.patch 1276 RMD160 dde15c2c910d36a1b37b75a67312598ba7202f23 SHA1 a2cb10cb9553f77184e3c5e56c9a63fc7229af7b SHA256 277c2205469e128fedacb59a5edc39c21ed5ea2bb26da1f229992488a0974dd5
-AUX gtk-vnc-0.4.2-shared-flag.patch 1085 RMD160 2bee1cf8483328edf5b05e033ab734d944e11367 SHA1 822ec5312995034d41355a3f0f1e3476d6b6f3cb SHA256 65e86adec082c3423b7f3770eed12fa55876f36b56ba9b9876b7ca7041f0bc97
-DIST gtk-vnc-0.4.2.tar.bz2 438062 RMD160 ba5d81a3ef4b6d6eb0322bfdc51014df38ee6c7b SHA1 8aa76bbb6a47951d4692ebb1ac241fa7b3bda2ef SHA256 96e948b62984a1a3a32fd83793fb645c493c1bc93b303eb831ecafee01a956d2
 DIST gtk-vnc-0.4.3.tar.bz2 446486 RMD160 f7cc379b43088b83628dc92fb10ece463b1ab8fc SHA1 4e43d8fd68e5809b0769e26f7a7ac94d45315864 SHA256 b9870d923d636d2e7547267d01c8cafdc06ad5b5b4987003ea3cd567bfbb6377
-EBUILD gtk-vnc-0.4.2-r2.ebuild 1682 RMD160 00652cf00c714d064864e1615c9e599a98000033 SHA1 f923ec76064fc16ee00dc0bae12bdeefef43d854 SHA256 26fcd19f6ad468cbc71b1c7f9e502f77db55f30a6731ad312c0bfb81ba59bed9
+DIST gtk-vnc-0.4.4.tar.xz 377304 RMD160 f7d24d19969c2c236731749f2339252ebb7d70f1 SHA1 9b8f9bf12f31af9808b5bbf1176ac913003015ba SHA256 c93fdb53c78b52a1cfa067c1a0be0b93d4adfc17ccea1215f20eeab2818308b7
 EBUILD gtk-vnc-0.4.3-r1.ebuild 3263 RMD160 8353c3cc7dc33ebc7209df283f4920ed910e68c8 SHA1 7c92be5a3ffbda5b4e924f7e0ee97f25d63c40d1 SHA256 c16b089764f79922cdde23c4137e227e742d268f2b0ceaba0164c8212f5fcaf3
-EBUILD gtk-vnc-0.4.3.ebuild 1472 RMD160 58954fdac0e15dcae1858d88d02555b08aa70f98 SHA1 32bf98ab4e39b0cff969036803b2897d96c5fcfb SHA256 e11f6eab603845bbccc03f41b5bf879bdd94b31f6988fd62e9303843c6da11d0
-MISC ChangeLog 10638 RMD160 b4580fb2b7c3816d64965de39dfb2c30f0997cc4 SHA1 d4f1bc51c60b3c3c68405c88c83b96e8b298c059 SHA256 466df6fcc1b777a445766074984dc24fceb3cec0ea9315fbb902aa11a2d246c5
-MISC metadata.xml 351 RMD160 fb91f84774bd7557f27df3e1ec1ce48ec3185837 SHA1 f1b374f3da6b5db83461e7a5294da64b486d4ca1 SHA256 7d1e8e895138770ac0e233f67adc82aa9b25e1cc3e0164bab9f358704e495e78
+EBUILD gtk-vnc-0.4.4.ebuild 3633 RMD160 5fae2fc31b0fba8c34b53b24182758bbb97db9c8 SHA1 5fd019f22b988da83abc52ab7b255f6cac96d430 SHA256 66dbe92bc9cc83771884f14d24617e09f628826301a14ff9c1699fecf7e53ac0
+MISC ChangeLog 11105 RMD160 ad71358afd1317cbbbbfac7fb130d0f31bfce8ab SHA1 63793914be948cb45fffd32772b8f5827e9feb95 SHA256 2f453fcd040f7fffb4894c34e4e017aaa8304fbfb2857eb1241e49a72d0abf31
+MISC metadata.xml 422 RMD160 cb601006c1db8b5d55b62e8716a7d6f202a8383a SHA1 9cb78db02346b72dce5f3448ceecd3d04cc40413 SHA256 207a74cd4c91430061e1c1104813b2563eddf87f08e4ea0d559248bbd4b6b9a2
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.17 (GNU/Linux)
+Version: GnuPG v2.0.18 (GNU/Linux)
 
-iQIcBAEBAgAGBQJOt3bBAAoJEO/kOhxWD91kdU4P/34K38U1OIQJTqe43kep6JjM
-ohRUTUJzSUTkWs3OOrfzpFf21+ueU2bxS+mqPSaMpqbE66dVyaZsBtNb8N/2hNDn
-Mx0UYUvADKGhOXKxTJkU3Qp9o6VZAKbYP9J+hlWq71hB8jywML11Y9vL/yQ9s9f8
-a91g5s62Xb8Nv5XK3HCkmcsFjY6yfnZOqKCkui0XcfNFlfC9sftzW/kPPWelZf2m
-gvcGEAO/vp59wnqGJWG/fbHDy37MDOn8UM9vYrcU62axk8tsxKnwPRA9PFWrVC57
-sFHqrUt2q/HJD4kEH0K4j7srPpaythbyk20HAefbZPW2g0E0Nh4qdGwvdNTNC0gn
-dSv8CbSyTj1O3kLiNUjfd7RQYzNb6WhxxZ5o04oxBS7L656BxgDYVmUYzjHtLgoC
-O3OJyijGfgz7NSf5KUK3a0V6lQ0w5F9MvKeJdPGaUvsG4m+AJQxxz2W0WF+5A+iu
-ceQHOH4+mM7J0Gfx5DpJeWjBTWYgkSH9ZrDJh/Qhjus6cyfHriNI1API61wVCHPy
-3wTJAbAbobzoP7doPaRoPLToHhLR26BzOrtHJWPMnWrD6pzriy4Rs6S9Y8nBwtAI
-90CdSY8eCzycKycEIVblRI6HtYoBK0FcoL2K6acncWHQla6DsvdcxRERi6JnYi3a
-S6VkZJTJGnGYMtzhjtz6
-=ICaw
+iEYEARECAAYFAk7AMxMACgkQ1fmVwcYIWAZ5jQCg7dOwS2oG6k3/Z4cbGPereZBl
+QCAAoJGB8+QQDym7WglyMqdwsHcTyX9b
+=OPsV
 -----END PGP SIGNATURE-----
diff --git a/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-fb-bounds-fix.patch b/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-fb-bounds-fix.patch
deleted file mode 100644 (file)
index c983456..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-From f3fc5e57a78d4be9872f1394f697b9929873a737 Mon Sep 17 00:00:00 2001
-From: Daniel P. Berrange <dan@berrange.com>
-Date: Tue, 23 Nov 2010 22:59:37 +0000
-Subject: Fix framebuffer update boundary check
-
-Framebuffer boundary checks need to take into account offset,
-in addition to width/height
-
-* src/vncconnection.c: Fix boundary check
----
-diff --git a/src/vncconnection.c b/src/vncconnection.c
-index 433256a..165a5f1 100644
---- a/src/vncconnection.c
-+++ b/src/vncconnection.c
-@@ -2653,13 +2653,14 @@ static void vnc_connection_ext_key_event(VncConnection *conn)
- 
- 
- static gboolean vnc_connection_validate_boundary(VncConnection *conn,
-+                                               guint16 x, guint16 y,
-                                                guint16 width, guint16 height)
- {
-       VncConnectionPrivate *priv = conn->priv;
- 
--      if (width > priv->width || height > priv->height) {
--              VNC_DEBUG("Framebuffer update %dx%d outside boundary %dx%d",
--                        width, height, priv->width, priv->height);
-+      if ((x + width) > priv->width || (y + height) > priv->height) {
-+              VNC_DEBUG("Framebuffer update %dx%d at %d,%d outside boundary %dx%d",
-+                        width, height, x, y, priv->width, priv->height);
-               priv->has_error = TRUE;
-       }
- 
-@@ -2681,37 +2682,37 @@ static gboolean vnc_connection_framebuffer_update(VncConnection *conn, gint32 et
- 
-       switch (etype) {
-       case VNC_CONNECTION_ENCODING_RAW:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_raw_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
-               break;
-       case VNC_CONNECTION_ENCODING_COPY_RECT:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_copyrect_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
-               break;
-       case VNC_CONNECTION_ENCODING_RRE:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_rre_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
-               break;
-       case VNC_CONNECTION_ENCODING_HEXTILE:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_hextile_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
-               break;
-       case VNC_CONNECTION_ENCODING_ZRLE:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_zrle_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
-               break;
-       case VNC_CONNECTION_ENCODING_TIGHT:
--              if (!vnc_connection_validate_boundary(conn, width, height))
-+              if (!vnc_connection_validate_boundary(conn, x, y, width, height))
-                       break;
-               vnc_connection_tight_update(conn, x, y, width, height);
-               vnc_connection_update(conn, x, y, width, height);
---
-cgit v0.8.3.1
diff --git a/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-gnutls-crash-fix.patch b/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-gnutls-crash-fix.patch
deleted file mode 100644 (file)
index d9dff3e..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-From 5760a2a28d85cb79e39063cfd8ee8aee975caf24 Mon Sep 17 00:00:00 2001
-From: Daniel P. Berrange <dan@berrange.com>
-Date: Mon, 22 Nov 2010 21:44:56 +0000
-Subject: Avoid crash in TLS cleanup code on shutdown
-
-The gnutls_bye() method may try to send data on the socket todo
-graceful TLS shutdown. The priv->sock variable is possibly
-already NULL at this point if the close was triggered via the
-vnc_connection_shutdown() method. Change the latter so that
-it only calls g_socket_close, not actually free'ing the
-priv->sock object immediately. Also put sanity check code in
-the TLS push/pull functions to catch future bugs in this area
----
-diff --git a/src/vncconnection.c b/src/vncconnection.c
-index 4a0c53c..433256a 100644
---- a/src/vncconnection.c
-+++ b/src/vncconnection.c
-@@ -939,6 +939,12 @@ static ssize_t vnc_connection_tls_push(gnutls_transport_ptr_t transport,
-       int ret;
-       GError *error = NULL;
- 
-+      if (!priv->sock) {
-+              VNC_DEBUG("Unexpected TLS push on closed socket");
-+              errno = EBADF;
-+              return -1;
-+      }
-+
-       ret = g_socket_send(priv->sock, data, len, NULL, &error);
-       if (ret < 0) {
-               if (error) {
-@@ -962,6 +968,12 @@ static ssize_t vnc_connection_tls_pull(gnutls_transport_ptr_t transport,
-       int ret;
-       GError *error = NULL;
- 
-+      if (!priv->sock) {
-+              VNC_DEBUG("Unexpected TLS pull on closed socket");
-+              errno = EBADF;
-+              return -1;
-+      }
-+
-       ret = g_socket_receive(priv->sock, data, len, NULL, &error);
-       if (ret < 0) {
-               if (error) {
-@@ -4461,11 +4473,12 @@ void vnc_connection_shutdown(VncConnection *conn)
-       VNC_DEBUG("Waking up couroutine to shutdown gracefully");
-       g_io_wakeup(&priv->wait);
- 
--      if (priv->sock) {
-+      /* Closing the socket triggers an I/O error in the
-+       * event loop resulting...eventually.. in a call
-+       * to vnc_connection_close for full cleanup
-+       */
-+      if (priv->sock)
-               g_socket_close(priv->sock, NULL);
--              g_object_unref(priv->sock);
--              priv->sock = NULL;
--      }
- }
- 
- gboolean vnc_connection_is_open(VncConnection *conn)
---
-cgit v0.8.3.1
diff --git a/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-memory-leak-fix.patch b/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-memory-leak-fix.patch
deleted file mode 100644 (file)
index b852fef..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 968968c9cf705f5bc96764399ea17a27a454c1c5 Mon Sep 17 00:00:00 2001
-From: Daniel P. Berrange <berrange@redhat.com>
-Date: Tue, 14 Dec 2010 12:41:01 +0000
-Subject: Fix leak of GSource objects which causes performance problems
-
-The GLib event loop scales poorly as the number of GSource objects
-increases. A missing unref on the GSource objects used in the VNC
-connection meant that many unused instances accumulated, slowing
-down the event loop processing.
-
-* src/vncconnection.c: Unref all GSource objects
----
-diff --git a/src/vncconnection.c b/src/vncconnection.c
-index 165a5f1..51b8b8d 100644
---- a/src/vncconnection.c
-+++ b/src/vncconnection.c
-@@ -234,6 +234,7 @@ static GIOCondition g_io_wait(GSocket *sock, GIOCondition cond)
-       g_source_set_callback(src, (GSourceFunc)g_io_wait_helper, coroutine_self(), NULL);
-       g_source_attach(src, NULL);
-       ret = coroutine_yield(NULL);
-+      g_source_unref(src);
-       return *ret;
- }
- 
-@@ -254,6 +255,7 @@ static GIOCondition g_io_wait_interruptable(struct wait_queue *wait,
-       id = g_source_attach(src, NULL);
-       wait->waiting = TRUE;
-       ret = coroutine_yield(NULL);
-+      g_source_unref(src);
-       wait->waiting = FALSE;
- 
-       if (ret == NULL) {
-@@ -334,6 +336,8 @@ static gboolean g_condition_wait(g_condition_wait_func func, gpointer data)
-       g_source_attach(src, NULL);
-       g_source_set_callback(src, g_condition_wait_helper, coroutine_self(), NULL);
-       coroutine_yield(NULL);
-+      g_source_unref(src);
-+
-       return TRUE;
- }
- 
---
-cgit v0.8.3.1
diff --git a/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-pre-conn-crash-fix.patch b/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-pre-conn-crash-fix.patch
deleted file mode 100644 (file)
index e3a77c1..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From f23f0ebf1b659208d5036e10ab1f32249a2e1a4c Mon Sep 17 00:00:00 2001
-From: Daniel P. Berrange <dan@berrange.com>
-Date: Mon, 22 Nov 2010 21:18:29 +0000
-Subject: Avoid crash in motion event & vnc_display_get_pixbuf
-
-If a mouse event occurs before a connection completes setup
-priv->fb will be NULL and a crash can occur. Likewise if
-vnc_display_get_pixbuf() is called before priv->fb is set,
-then a crash occurs. Add checks for NULL in both cases
----
-diff --git a/src/vncdisplay.c b/src/vncdisplay.c
-index 55fbcf4..0b7e800 100644
---- a/src/vncdisplay.c
-+++ b/src/vncdisplay.c
-@@ -557,6 +557,9 @@ static gboolean motion_event(GtkWidget *widget, GdkEventMotion *motion)
-       if (priv->conn == NULL || !vnc_connection_is_initialized(priv->conn))
-               return FALSE;
- 
-+      if (!priv->fb)
-+              return FALSE;
-+
-       fbw = vnc_framebuffer_get_width(VNC_FRAMEBUFFER(priv->fb));
-       fbh = vnc_framebuffer_get_height(VNC_FRAMEBUFFER(priv->fb));
- 
-@@ -2050,6 +2053,9 @@ GdkPixbuf *vnc_display_get_pixbuf(VncDisplay *obj)
-           !vnc_connection_is_initialized(priv->conn))
-               return NULL;
- 
-+      if (!priv->fb)
-+              return NULL;
-+
-       fb = VNC_FRAMEBUFFER(priv->fb);
-       surface = vnc_cairo_framebuffer_get_surface(priv->fb);
-       content = cairo_surface_get_content(surface) | CAIRO_CONTENT_COLOR;
---
-cgit v0.8.3.1
diff --git a/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-shared-flag.patch b/net-libs/gtk-vnc/files/gtk-vnc-0.4.2-shared-flag.patch
deleted file mode 100644 (file)
index 16d5cd9..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From ba169973b875f90bf787158588ee4258b71a6ba6 Mon Sep 17 00:00:00 2001
-From: Sébastien Granjoux <seb.sfo@free.fr>
-Date: Thu, 13 Jan 2011 16:36:33 +0000
-Subject: Fix setup of 'shared flag' when opening connection
-
-The VncDisplay class forgot to pass the 'shared flag' onto
-the VncConnection class when establishing a connection
----
-diff --git a/src/vncdisplay.c b/src/vncdisplay.c
-index deab4d8..f8ee9ea 100644
---- a/src/vncdisplay.c
-+++ b/src/vncdisplay.c
-@@ -1407,6 +1407,9 @@ gboolean vnc_display_open_fd(VncDisplay *obj, int fd)
-       if (vnc_connection_is_open(priv->conn))
-               return FALSE;
- 
-+      if (!vnc_connection_set_shared(priv->conn, priv->shared_flag))
-+              return FALSE;
-+
-       if (!vnc_connection_open_fd(priv->conn, fd))
-               return FALSE;
- 
-@@ -1422,6 +1425,9 @@ gboolean vnc_display_open_host(VncDisplay *obj, const char *host, const char *po
-       if (vnc_connection_is_open(priv->conn))
-               return FALSE;
- 
-+      if (!vnc_connection_set_shared(priv->conn, priv->shared_flag))
-+              return FALSE;
-+
-       if (!vnc_connection_open_host(priv->conn, host, port))
-               return FALSE;
- 
---
-cgit v0.8.3.1
diff --git a/net-libs/gtk-vnc/gtk-vnc-0.4.2-r2.ebuild b/net-libs/gtk-vnc/gtk-vnc-0.4.2-r2.ebuild
deleted file mode 100644 (file)
index 7725572..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/gtk-vnc/gtk-vnc-0.4.2-r2.ebuild,v 1.6 2011/03/22 19:41:58 ranger Exp $
-
-EAPI="2"
-PYTHON_DEPEND="python? 2:2.4"
-
-inherit base gnome.org python
-
-DESCRIPTION="VNC viewer widget for GTK."
-HOMEPAGE="http://live.gnome.org/gtk-vnc"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE="examples +introspection python sasl"
-
-# libview is used in examples/gvncviewer -- no need
-# TODO: review nsplugin when it will be considered less experimental
-
-RDEPEND=">=dev-libs/glib-2.10:2
-       >=net-libs/gnutls-1.4
-       >=x11-libs/cairo-1.2
-       >=x11-libs/gtk+-2.18:2
-       x11-libs/libX11
-       introspection? ( >=dev-libs/gobject-introspection-0.9.4 )
-       python? ( >=dev-python/pygtk-2:2 )
-       sasl? ( dev-libs/cyrus-sasl )"
-DEPEND="${RDEPEND}
-       >=dev-lang/perl-5
-       dev-perl/Text-CSV
-       dev-util/pkgconfig
-       sys-devel/gettext
-       >=dev-util/intltool-0.40"
-
-pkg_setup() {
-       python_set_active_version 2
-}
-
-src_prepare() {
-       epatch "${FILESDIR}"/${P}-pre-conn-crash-fix.patch
-       epatch "${FILESDIR}"/${P}-gnutls-crash-fix.patch
-       epatch "${FILESDIR}"/${P}-fb-bounds-fix.patch
-       epatch "${FILESDIR}"/${P}-memory-leak-fix.patch
-       epatch "${FILESDIR}"/${P}-shared-flag.patch
-}
-
-src_configure() {
-       econf \
-               $(use_with examples) \
-               $(use_enable introspection) \
-               $(use_with python) \
-               $(use_with sasl) \
-               --with-coroutine=gthread \
-               --without-libview \
-               --with-gtk=2.0 \
-               --disable-static
-}
-
-src_install() {
-       # bug #328273
-       MAKEOPTS="${MAKEOPTS} -j1" \
-               base_src_install
-       python_clean_installation_image
-       dodoc AUTHORS ChangeLog NEWS README || die
-}
diff --git a/net-libs/gtk-vnc/gtk-vnc-0.4.3.ebuild b/net-libs/gtk-vnc/gtk-vnc-0.4.3.ebuild
deleted file mode 100644 (file)
index 1a6bf67..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/gtk-vnc/gtk-vnc-0.4.3.ebuild,v 1.5 2011/10/05 17:01:49 xarthisius Exp $
-
-EAPI="3"
-PYTHON_DEPEND="python? 2:2.4"
-
-inherit base gnome.org python
-
-DESCRIPTION="VNC viewer widget for GTK."
-HOMEPAGE="http://live.gnome.org/gtk-vnc"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE="examples +introspection python sasl"
-
-# libview is used in examples/gvncviewer -- no need
-# TODO: review nsplugin when it will be considered less experimental
-
-RDEPEND=">=dev-libs/glib-2.10:2
-       >=net-libs/gnutls-1.4
-       >=x11-libs/cairo-1.2
-       >=x11-libs/gtk+-2.18:2
-       x11-libs/libX11
-       introspection? ( >=dev-libs/gobject-introspection-0.9.4 )
-       python? ( >=dev-python/pygtk-2:2 )
-       sasl? ( dev-libs/cyrus-sasl )"
-DEPEND="${RDEPEND}
-       >=dev-lang/perl-5
-       dev-perl/Text-CSV
-       dev-util/pkgconfig
-       sys-devel/gettext
-       >=dev-util/intltool-0.40"
-
-pkg_setup() {
-       python_set_active_version 2
-}
-
-src_prepare() {
-       python_convert_shebangs -r 2 .
-}
-
-src_configure() {
-       econf \
-               $(use_with examples) \
-               $(use_enable introspection) \
-               $(use_with python) \
-               $(use_with sasl) \
-               --with-coroutine=gthread \
-               --without-libview \
-               --with-gtk=2.0 \
-               --disable-static
-}
-
-src_install() {
-       # bug #328273
-       MAKEOPTS="${MAKEOPTS} -j1" \
-               base_src_install
-       python_clean_installation_image
-       dodoc AUTHORS ChangeLog NEWS README || die
-}
diff --git a/net-libs/gtk-vnc/gtk-vnc-0.4.4.ebuild b/net-libs/gtk-vnc/gtk-vnc-0.4.4.ebuild
new file mode 100644 (file)
index 0000000..62a3a79
--- /dev/null
@@ -0,0 +1,146 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/gtk-vnc/gtk-vnc-0.4.4.ebuild,v 1.1 2011/11/13 21:13:49 eva Exp $
+
+EAPI="3"
+GNOME_TARBALL_SUFFIX="xz"
+
+inherit base eutils gnome.org python
+
+DESCRIPTION="VNC viewer widget for GTK"
+HOMEPAGE="http://live.gnome.org/gtk-vnc"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="examples gtk3 +introspection python sasl vala"
+
+# libview is used in examples/gvncviewer -- no need
+# TODO: review nsplugin when it will be considered less experimental
+
+COMMON_DEPEND=">=dev-libs/glib-2.10:2
+       >=net-libs/gnutls-1.4
+       >=x11-libs/cairo-1.2
+       >=x11-libs/gtk+-2.18:2
+       x11-libs/libX11
+       gtk3? ( >=x11-libs/gtk+-2.91.3:3 )
+       introspection? ( >=dev-libs/gobject-introspection-0.9.4 )
+       python? ( >=dev-python/pygtk-2:2 )
+       sasl? ( dev-libs/cyrus-sasl )"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+       >=dev-lang/perl-5
+       dev-util/pkgconfig
+       sys-devel/gettext
+       >=dev-util/intltool-0.40
+       vala? (
+               dev-lang/vala:0.14[vapigen]
+               >=dev-libs/gobject-introspection-0.9.4 )
+"
+
+GTK2_BUILDDIR="${WORKDIR}/${P}_gtk2"
+GTK3_BUILDDIR="${WORKDIR}/${P}_gtk3"
+
+pkg_setup() {
+       python_set_active_version 2
+
+       if use vala && ! use gtk3; then
+               ewarn "You must set USE=gtk3 to enable vala bindings support."
+       fi
+}
+
+src_prepare() {
+       python_convert_shebangs -r 2 .
+       mkdir "${GTK2_BUILDDIR}" || die
+       mkdir "${GTK3_BUILDDIR}" || die
+
+       # Remove a few files that were autogenerated during distcheck.
+       # Having these around in srcdir breaks out of tree build since they're
+       # expected to be in builddir, which is correct for trunk builds since
+       # they're generated files, not source files. Funny false dichotomy.
+       rm -vf "${S}"/src/{vncconnectionenums.[ch],vncdisplayenums.[ch]}
+
+       # Fix incorrect codegendir check: h2def.py is in pygobject, not pygtk
+       sed -e 's/codegendir pygtk-2.0/codegendir pygobject-2.0/g' \
+               -i src/Makefile.* || die
+}
+
+src_configure() {
+       local myconf
+       myconf="
+               $(use_with examples) \
+               $(use_enable introspection) \
+               $(use_with sasl) \
+               --with-coroutine=gthread \
+               --without-libview \
+               --disable-static \
+               --disable-vala"
+
+       cd ${GTK2_BUILDDIR}
+       einfo "Running configure in ${GTK2_BUILDDIR}"
+       ECONF_SOURCE="${S}" econf ${myconf} \
+               $(use_with python) \
+               --with-gtk=2.0
+
+       if use gtk3; then
+               if use vala; then
+                       myconf="${myconf} \
+                               --enable-introspection \
+                               --enable-vala \
+                               VAPIGEN=$(type -p vapigen-0.14)"
+               fi
+
+               cd ${GTK3_BUILDDIR}
+               einfo "Running configure in ${GTK3_BUILDDIR}"
+               # Python support is via gobject-introspection
+               # Ex: from gi.repository import GtkVnc
+               ECONF_SOURCE="${S}" econf ${myconf} \
+                       --with-python=no \
+                       --with-gtk=3.0
+       fi
+}
+
+src_compile() {
+       cd ${GTK2_BUILDDIR}
+       einfo "Running make in ${GTK2_BUILDDIR}"
+       emake || die
+
+       if use gtk3; then
+               cd ${GTK3_BUILDDIR}
+               einfo "Running make in ${GTK3_BUILDDIR}"
+               emake || die
+       fi
+}
+
+src_test() {
+       cd ${GTK2_BUILDDIR}
+       einfo "Running make check in ${GTK2_BUILDDIR}"
+       emake check || die
+
+       if use gtk3; then
+               cd ${GTK3_BUILDDIR}
+               einfo "Running make check in ${GTK3_BUILDDIR}"
+               emake check || die
+       fi
+}
+
+src_install() {
+       dodoc AUTHORS ChangeLog NEWS README || die
+
+       cd ${GTK2_BUILDDIR}
+       einfo "Running make install in ${GTK2_BUILDDIR}"
+       # bug #328273
+       MAKEOPTS="${MAKEOPTS} -j1" base_src_install
+
+       if use gtk3; then
+               cd ${GTK3_BUILDDIR}
+               einfo "Running make install in ${GTK3_BUILDDIR}"
+               # bug #328273
+               MAKEOPTS="${MAKEOPTS} -j1" base_src_install
+       fi
+
+       python_clean_installation_image
+
+       # Remove .la files
+       find "${ED}" -name '*.la' -exec rm -f '{}' + || die
+}
index 21064efa27ad2abb9b69000a2bd7b4bd562c47ae..e54548dae0dc49c2bf24c0a2b382a999cad4d18a 100644 (file)
@@ -6,5 +6,6 @@
        <flag name="gtk3">Build the gtk3 gtk-vnc library and other gtk3 assets</flag>
        <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
                for introspection</flag>
+       <flag name="vala">Enable bindings for <pkg>dev-lang/vala</pkg></flag>
 </use>
 </pkgmetadata>