summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaúl Porcel <armin76@gentoo.org>2011-11-12 18:05:41 +0000
committerRaúl Porcel <armin76@gentoo.org>2011-11-12 18:05:41 +0000
commit7b9d9cd66aac22ac371eab5e413b077866314be2 (patch)
tree562d0d663ffe51e1e3b5ad5e7b907aa2193b4a1b /net-misc/tigervnc
parentSpeeling. (diff)
downloadhistorical-7b9d9cd66aac22ac371eab5e413b077866314be2.tar.gz
historical-7b9d9cd66aac22ac371eab5e413b077866314be2.tar.bz2
historical-7b9d9cd66aac22ac371eab5e413b077866314be2.zip
Version bump, fixes bug 387729
Package-Manager: portage-2.1.10.30/cvs/Linux ia64
Diffstat (limited to 'net-misc/tigervnc')
-rw-r--r--net-misc/tigervnc/ChangeLog9
-rw-r--r--net-misc/tigervnc/Manifest13
-rw-r--r--net-misc/tigervnc/files/xserver111.patch240
-rw-r--r--net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild183
-rw-r--r--net-misc/tigervnc/tigervnc-1.1.0.ebuild182
5 files changed, 622 insertions, 5 deletions
diff --git a/net-misc/tigervnc/ChangeLog b/net-misc/tigervnc/ChangeLog
index 421a18fb98e9..a6a1cc731f77 100644
--- a/net-misc/tigervnc/ChangeLog
+++ b/net-misc/tigervnc/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-misc/tigervnc
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/ChangeLog,v 1.111 2011/11/05 18:55:14 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/ChangeLog,v 1.112 2011/11/12 18:05:41 armin76 Exp $
+
+*tigervnc-1.1.0-r1 (12 Nov 2011)
+*tigervnc-1.1.0 (12 Nov 2011)
+
+ 12 Nov 2011; Raúl Porcel <armin76@gentoo.org> +files/xserver111.patch,
+ +tigervnc-1.1.0.ebuild, +tigervnc-1.1.0-r1.ebuild:
+ Version bump, fixes bug 387729
05 Nov 2011; Raúl Porcel <armin76@gentoo.org>
tigervnc-1.0.1_p20110618-r1.ebuild:
diff --git a/net-misc/tigervnc/Manifest b/net-misc/tigervnc/Manifest
index 00368ccfb93b..f8e3c00bd2b0 100644
--- a/net-misc/tigervnc/Manifest
+++ b/net-misc/tigervnc/Manifest
@@ -3,16 +3,21 @@ Hash: SHA1
AUX tigervnc.confd 346 RMD160 07a4541c0d9ef5611afafa8db75d2caf2e7ab051 SHA1 a3b00e99fc68844a7d0be29c4a8caae3a8b5a491 SHA256 48b6ae4f3e9e528b3cd4bc1349ceed3cd1a403ab0f3a2a8dd57a4769f88ceafc
AUX tigervnc.initd 1585 RMD160 2fb536e85fa490df5450bf6e9f0296beb17921b1 SHA1 389d095ce1c18b323208ac059992cbd539d5a6b4 SHA256 a705a1aacdc3149a52b222fb990c654a5b5b5133d24be675ab327ec9a0c6f0e6
+AUX xserver111.patch 6542 RMD160 0ef07d4dd2a5af434a74996f9416631d299e550e SHA1 8bd891c29b6fcb2f9381800701ca461083441332 SHA256 f3827d742211b77807f1a02a47a99dddafe9efefbf9be17a21932e50abd1e63b
DIST tigervnc-1.0.1_p20110618.tar.bz2 9307564 RMD160 c86f8d47a48082d5162e58bb469e3e470f2caedd SHA1 5b6d710b0d86ec2ef68d67012eb7eede8635eac5 SHA256 38f95f824fc697728f1f13c3f31dbf85b559307824df14f962f642f05e68b5fd
+DIST tigervnc-1.1.0.tar.gz 2742707 RMD160 692ce76f38c229485ae75acb87f39f8844575e35 SHA1 a678745c231a37eea92c7c7c259f7495061a9a0d SHA256 594b70825a2c24863afd7b8dd2a5bc1935807118c6726e1d98396dee44d060f4
DIST tigervnc.png 4958 RMD160 24ca257dac5de8d97672d943ee47f310af4fe837 SHA1 2f12a12a0f105c6f2ecc9aa306c63719f07b0062 SHA256 e0828aeb92ccaaf93e690e9ee5e17803de1cb140d3ca79fb756fe08ebbc4492e
DIST xorg-server-1.10.4.tar.bz2 5386174 RMD160 13eeaf7497e63ecddba46010c075d27121e18aae SHA1 857d6377025c77851a3cc5f8ec2ce84164a2fdc6 SHA256 fafc16b97b9a61b62dfaa74e8d336baa0cea752ce9ed8103c4d212baa8031ca5
+DIST xorg-server-1.11.2.tar.bz2 4945939 RMD160 cc69cfd86a5a870d1433262dd1445a8603a9266a SHA1 b4de5c599c90bd08d3122866ba68152cd59a880e SHA256 fa415decf02027ca278b06254ccfbcceba2a83c2741405257ebf749da4a73cf2
EBUILD tigervnc-1.0.1_p20110618-r1.ebuild 4550 RMD160 5362609ee5bb47b23ba8fe3219791a697ef49fb1 SHA1 57ccdc74bb801a13d9c431b2c46f3667fcca4087 SHA256 ffbddf412c8e445ebfc03e0a407857fea2422f4639f0fb24c0c5dc7e028e7133
-MISC ChangeLog 14608 RMD160 0cfac01bd77edd7760ef7eaea885ad215d70c460 SHA1 be497f8efaab5e8def50d3f01f259a2be1ce4501 SHA256 e69ee9a094c58cd2069336e64045dbc2144a75613bd5838fd5bacf9c39bd6bb1
+EBUILD tigervnc-1.1.0-r1.ebuild 4674 RMD160 e7fd5dc8a26ff46dcf88c2bef608c633fa81c833 SHA1 656d1893b65148666027ffd19526d73dd3168084 SHA256 299b1c1531e7757c2ed5a4fefb9ac1ac929d67a4f0af110fa59b31fd08d08e4e
+EBUILD tigervnc-1.1.0.ebuild 4632 RMD160 34025ade33219e6e7ce41334e46bf9af127389d6 SHA1 622f189aff6a6c629f36eef34f97b8f3c30e9476 SHA256 c3110fb5cd0671a28e707a6445a539f123e13c8eb7563e9d274daf261c3ca3e3
+MISC ChangeLog 14833 RMD160 43004fd1c987f8d35222e70ce57d32c3872cf8f0 SHA1 ad9de76470e09388c017d31cc80abda3998acb9f SHA256 c746300712d7fb09cc6b0d518f19ccfe1972780f5f6a8c3fd467f872c3783790
MISC metadata.xml 335 RMD160 a1f13f76a1f6b93bfcda75e10afa92831f24e1a4 SHA1 7030f47cbe62c52bde156cacf6f123487ea7bee3 SHA256 821ea06553b929fa98b219ad2f17ca84dda361965182f46e030ddd3b2d950209
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iEYEARECAAYFAk61hpcACgkQuQc30/atMkA/vwCgqP5iB/+J1PeTG2HCeDfhWqUn
-2usAn1JPUl7EdPLGclavnmpCa84EPLCL
-=o1mW
+iEYEARECAAYFAk6+tXsACgkQuQc30/atMkBLeACeOlwdMkqTzUcj1inQmO8RPRh4
+1GkAn3xC9+QhiQxMIexlBtk/SmDbMu8h
+=f6kx
-----END PGP SIGNATURE-----
diff --git a/net-misc/tigervnc/files/xserver111.patch b/net-misc/tigervnc/files/xserver111.patch
new file mode 100644
index 000000000000..18c0d46b1cb4
--- /dev/null
+++ b/net-misc/tigervnc/files/xserver111.patch
@@ -0,0 +1,240 @@
+diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc
+--- tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 2011-08-09 23:16:36.000000000 +0200
++++ tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc 2011-09-14 13:22:19.540000049 +0200
+@@ -82,10 +82,11 @@ static KeyCode KeysymToKeycode(KeySymsPt
+ /* Event queue is shared between all devices. */
+ #if XORG == 15
+ static xEvent *eventq = NULL;
+-#else
++#elif XORG < 111
+ static EventList *eventq = NULL;
+ #endif
+
++#if XORG < 111
+ static void initEventq(void)
+ {
+ /* eventq is never free()-ed because it exists during server life. */
+@@ -100,7 +101,9 @@ static void initEventq(void)
+ #endif
+ }
+ }
++#endif /* XORG < 111 */
+
++#if XORG < 111
+ static void enqueueEvents(DeviceIntPtr dev, int n)
+ {
+ int i;
+@@ -122,6 +125,7 @@ static void enqueueEvents(DeviceIntPtr d
+ );
+ }
+ }
++#endif /* XORG < 111 */
+
+ InputDevice::InputDevice(rfb::VNCServerST *_server)
+ : server(_server), oldButtonMask(0)
+@@ -141,12 +145,17 @@ InputDevice::InputDevice(rfb::VNCServerS
+ keyboardProc, TRUE);
+ RegisterKeyboardDevice(keyboardDev);
+ #endif
++#if XORG < 111
+ initEventq();
++#endif
+ }
+
+ void InputDevice::PointerButtonAction(int buttonMask)
+ {
+- int i, n;
++ int i;
++#if XORG < 111
++ int n;
++#endif
+ #if XORG >= 110
+ ValuatorMask mask;
+ #endif
+@@ -160,13 +169,17 @@ void InputDevice::PointerButtonAction(in
+ #if XORG < 110
+ n = GetPointerEvents(eventq, pointerDev, action, i + 1,
+ POINTER_RELATIVE, 0, 0, NULL);
+-#else
++ enqueueEvents(pointerDev, n);
++#elif XORG < 111
+ valuator_mask_set_range(&mask, 0, 0, NULL);
+ n = GetPointerEvents(eventq, pointerDev, action, i + 1,
+ POINTER_RELATIVE, &mask);
+-#endif
+ enqueueEvents(pointerDev, n);
+-
++#else
++ valuator_mask_set_range(&mask, 0, 0, NULL);
++ QueuePointerEvents(pointerDev, action, i + 1,
++ POINTER_RELATIVE, &mask);
++#endif
+ }
+ }
+
+@@ -175,7 +188,10 @@ void InputDevice::PointerButtonAction(in
+
+ void InputDevice::PointerMove(const rfb::Point &pos)
+ {
+- int n, valuators[2];
++ int valuators[2];
++#if XORG < 111
++ int n;
++#endif
+ #if XORG >= 110
+ ValuatorMask mask;
+ #endif
+@@ -190,12 +206,16 @@ void InputDevice::PointerMove(const rfb:
+ #if XORG < 110
+ n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, 0,
+ 2, valuators);
+-#else
++ enqueueEvents(pointerDev, n);
++#elif XORG < 111
+ valuator_mask_set_range(&mask, 0, 2, valuators);
+ n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE,
+ &mask);
+-#endif
+ enqueueEvents(pointerDev, n);
++#else
++ valuator_mask_set_range(&mask, 0, 2, valuators);
++ QueuePointerEvents(pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, &mask);
++#endif
+
+ cursorPos = pos;
+ }
+@@ -299,14 +319,20 @@ void InputDevice::initInputDevice(void)
+ static inline void pressKey(DeviceIntPtr dev, int kc, bool down, const char *msg)
+ {
+ int action;
++#if XORG < 111
+ unsigned int n;
++#endif
+
+ if (msg != NULL)
+ vlog.debug("%s %d %s", msg, kc, down ? "down" : "up");
+
+ action = down ? KeyPress : KeyRelease;
+- n = GetKeyboardEvents(eventq, dev, action, kc);
++#if XORG < 111
++ n = GetKeyboardEvents(eventq, dev, action, kc, NULL);
+ enqueueEvents(dev, n);
++#else
++ QueueKeyboardEvents(dev, action, kc, NULL);
++#endif
+ }
+
+ #define IS_PRESSED(keyc, keycode) \
+@@ -341,8 +367,11 @@ public:
+ int state, maxKeysPerMod, keycode;
+ #if XORG >= 17
+ KeyCode *modmap = NULL;
++ DeviceIntPtr master;
+
+- state = XkbStateFieldFromRec(&dev->u.master->key->xkbInfo->state);
++ master = GetMaster(dev, MASTER_KEYBOARD);
++
++ state = XkbStateFieldFromRec(&master->key->xkbInfo->state);
+ #else
+ KeyClassPtr keyc = dev->key;
+ state = keyc->state;
+@@ -379,8 +408,10 @@ public:
+ KeyClassPtr keyc;
+ #if XORG >= 17
+ KeyCode *modmap = NULL;
++ DeviceIntPtr master;
+
+- keyc = dev->u.master->key;
++ master = GetMaster(dev, MASTER_KEYBOARD);
++ keyc = master->key;
+ state = XkbStateFieldFromRec(&keyc->xkbInfo->state);
+ #else
+ keyc = dev->key;
+@@ -565,9 +596,7 @@ static inline int isModifier(KeySymsPtr
+
+ void InputDevice::keyEvent(rdr::U32 keysym, bool down)
+ {
+-#if XORG < 17
+ DeviceIntPtr master;
+-#endif
+ KeyClassPtr keyc;
+ KeySymsPtr keymap = NULL;
+ KeySym *map = NULL;
+@@ -596,7 +625,8 @@ void InputDevice::keyEvent(rdr::U32 keys
+ }
+
+ #if XORG >= 17
+- keyc = keyboardDev->u.master->key;
++ master = GetMaster(keyboardDev, MASTER_KEYBOARD);
++ keyc = master->key;
+
+ keymap = XkbGetCoreMap(keyboardDev);
+ if (!keymap) {
+@@ -753,7 +783,7 @@ ModeSwitchFound:
+ XkbApplyMappingChange(keyboardDev, keymap, minKeyCode,
+ maxKeyCode - minKeyCode + 1,
+ NULL, serverClient);
+- XkbCopyDeviceKeymap(keyboardDev->u.master, keyboardDev);
++ XkbCopyDeviceKeymap(master, keyboardDev);
+ #endif /* XORG < 17 */
+ break;
+ }
+diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h
+--- tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 2011-08-09 23:16:36.000000000 +0200
++++ tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h 2011-09-12 16:51:36.958000000 +0200
+@@ -36,6 +36,8 @@
+ #define XORG 19
+ #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (10 * 100000) + (99 * 1000))
+ #define XORG 110
++#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000))
++#define XORG 111
+ #else
+ #error "X.Org newer than 1.10 is not supported"
+ #endif
+diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc
+--- tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 2011-08-09 23:16:36.000000000 +0200
++++ tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc 2011-09-14 13:49:23.751000543 +0200
+@@ -211,7 +211,11 @@ static void vfbFreeFramebufferMemory(vfb
+
+ extern "C" {
+
++#if XORG < 111
+ void ddxGiveUp()
++#else
++void ddxGiveUp(enum ExitCode error)
++#endif
+ {
+ int i;
+
+@@ -221,9 +225,17 @@ void ddxGiveUp()
+ }
+
+ void
++#if XORG < 111
+ AbortDDX()
++#else
++AbortDDX(enum ExitCode error)
++#endif
+ {
++#if XORG < 111
+ ddxGiveUp();
++#else
++ ddxGiveUp(error);
++#endif
+ }
+
+ #ifdef __DARWIN__
+@@ -668,8 +680,13 @@ vfbUninstallColormap(ColormapPtr pmap)
+ {
+ if (pmap->mid != pmap->pScreen->defColormap)
+ {
++#if XORG < 111
+ curpmap = (ColormapPtr) LookupIDByType(pmap->pScreen->defColormap,
+ RT_COLORMAP);
++#else
++ dixLookupResourceByType((pointer *) &curpmap, pmap->pScreen->defColormap,
++ RT_COLORMAP, serverClient, DixUnknownAccess);
++#endif
+ (*pmap->pScreen->InstallColormap)(curpmap);
+ }
+ } \ No newline at end of file
diff --git a/net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild b/net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..7ae1ee8c2aab
--- /dev/null
+++ b/net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild,v 1.1 2011/11/12 18:05:41 armin76 Exp $
+
+EAPI="1"
+
+inherit eutils toolchain-funcs multilib autotools
+
+XSERVER_VERSION="1.11.2"
+OPENGL_DIR="xorg-x11"
+
+DESCRIPTION="Remote desktop viewer display system"
+HOMEPAGE="http://www.tigervnc.org"
+#SRC_URI="mirror://gentoo/${P}.tar.bz2
+# http://dev.gentoo.org/~armin76/dist/${P}.tar.bz2
+SRC_URI="mirror://sourceforge/tigervnc/${P}.tar.gz
+ mirror://gentoo/${PN}.png
+ server? ( ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${XSERVER_VERSION}.tar.bz2 )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86"
+IUSE="nptl +opengl server +xorgmodule"
+
+RDEPEND="virtual/jpeg
+ sys-libs/zlib
+ media-libs/freetype
+ x11-libs/libSM
+ x11-libs/libXtst
+ app-admin/eselect-opengl
+ server? (
+ x11-libs/libXi
+ x11-libs/libXfont
+ x11-libs/libXmu
+ x11-libs/libxkbfile
+ x11-libs/libXrender
+ x11-libs/pixman
+ x11-apps/xauth
+ x11-apps/xsetroot
+ x11-misc/xkeyboard-config
+ media-fonts/font-adobe-100dpi
+ media-fonts/font-adobe-75dpi
+ media-fonts/font-alias
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ xorgmodule? ( ~x11-base/xorg-server-${XSERVER_VERSION} )
+ )
+ !net-misc/vnc
+ !net-misc/tightvnc
+ !net-misc/xf4vnc"
+DEPEND="${RDEPEND}
+ amd64? ( dev-lang/nasm )
+ x86? ( dev-lang/nasm )
+ >=x11-proto/inputproto-1.5
+ >=x11-proto/xextproto-7.0.3
+ >=x11-proto/xproto-7.0.13
+ server? (
+ x11-misc/util-macros
+ x11-proto/bigreqsproto
+ x11-proto/compositeproto
+ x11-proto/damageproto
+ x11-proto/dri2proto
+ x11-proto/fixesproto
+ x11-proto/fontsproto
+ >=x11-proto/randrproto-1.2.99
+ x11-proto/resourceproto
+ x11-proto/scrnsaverproto
+ x11-proto/trapproto
+ x11-proto/videoproto
+ x11-proto/xcmiscproto
+ x11-proto/xineramaproto
+ x11-proto/xf86bigfontproto
+ x11-proto/xf86dgaproto
+ x11-proto/xf86driproto
+ x11-proto/xf86miscproto
+ x11-proto/xf86vidmodeproto
+ opengl? ( >=x11-proto/glproto-1.4.10 )
+ >=media-libs/mesa-7.1
+ >=x11-proto/renderproto-0.9.3
+ x11-libs/libpciaccess
+ >=x11-libs/xtrans-1.2.2
+ )"
+
+#S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ if ! use server ; then
+ echo
+ einfo "The 'server' USE flag will build tigervnc's server."
+ einfo "If '-server' is chosen only the client is built to save space."
+ einfo "Stop the build now if you need to add 'server' to USE flags.\n"
+ ebeep
+ epause 5
+ else
+ ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
+ OLD_IMPLEM="$(eselect opengl show)"
+ eselect opengl set ${OPENGL_DIR}
+ fi
+}
+
+switch_opengl_implem() {
+ # Switch to the xorg implementation.
+ # Use new opengl-update that will not reset user selected
+ # OpenGL interface ...
+ echo
+ eselect opengl set ${OLD_IMPLEM}
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ if use server ; then
+ cp -r "${WORKDIR}"/xorg-server-${XSERVER_VERSION}/* unix/xserver
+ fi
+
+ eautoreconf
+ cd unix
+
+ if use server ; then
+ epatch xserver110.patch
+ epatch "${FILESDIR}"/xserver111.patch
+ cd xserver
+ eautoreconf
+ fi
+}
+
+src_compile() {
+ econf --without-included-zlib --with-system-jpeg || die "econf failed"
+ emake || die "emake failed"
+
+ if use server ; then
+ cd unix/xserver
+ econf \
+ --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
+ --disable-xwin --disable-xephyr --disable-kdrive --with-pic \
+ --disable-static --disable-xinerama \
+ --disable-composite \
+ --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
+ --enable-install-libxf86config \
+ --enable-dri2 \
+ --disable-config-dbus \
+ --disable-config-hal \
+ --with-xmlto=no \
+ --disable-unit-tests \
+ $(use_enable opengl glx) \
+ $(use_enable nptl glx-tls) \
+ || die "econf server failed"
+ emake || die "emake server failed"
+ fi
+}
+
+src_install() {
+ dodoc README.txt
+
+ cd unix
+ emake DESTDIR="${D}" install || die "emake install failed"
+ newman vncviewer/vncviewer.man vncviewer.1
+
+ newicon "${DISTDIR}"/tigervnc.png vncviewer.png
+ make_desktop_entry vncviewer vncviewer vncviewer Network
+
+ if use server ; then
+ cd xserver/hw/vnc
+ emake DESTDIR="${D}" install || die "emake install failed"
+ ! use xorgmodule && rm -rf "${D}"/usr/$(get_libdir)/xorg
+
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ rm "${D}"/usr/$(get_libdir)/xorg/modules/extensions/libvnc.la
+ else
+ cd "${D}"
+ for f in vncserver vncpasswd x0vncserver vncconfig; do
+ rm usr/bin/$f
+ rm usr/share/man/man1/$f.1
+ done
+ fi
+}
+
+pkg_postinst() {
+ use server && switch_opengl_implem
+} \ No newline at end of file
diff --git a/net-misc/tigervnc/tigervnc-1.1.0.ebuild b/net-misc/tigervnc/tigervnc-1.1.0.ebuild
new file mode 100644
index 000000000000..a77afc64ac8c
--- /dev/null
+++ b/net-misc/tigervnc/tigervnc-1.1.0.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/tigervnc-1.1.0.ebuild,v 1.1 2011/11/12 18:05:41 armin76 Exp $
+
+EAPI="1"
+
+inherit eutils toolchain-funcs multilib autotools
+
+XSERVER_VERSION="1.10.4"
+OPENGL_DIR="xorg-x11"
+
+DESCRIPTION="Remote desktop viewer display system"
+HOMEPAGE="http://www.tigervnc.org"
+#SRC_URI="mirror://gentoo/${P}.tar.bz2
+# http://dev.gentoo.org/~armin76/dist/${P}.tar.bz2
+SRC_URI="mirror://sourceforge/tigervnc/${P}.tar.gz
+ mirror://gentoo/${PN}.png
+ server? ( ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${XSERVER_VERSION}.tar.bz2 )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86"
+IUSE="nptl +opengl server +xorgmodule"
+
+RDEPEND="virtual/jpeg
+ sys-libs/zlib
+ media-libs/freetype
+ x11-libs/libSM
+ x11-libs/libXtst
+ app-admin/eselect-opengl
+ server? (
+ x11-libs/libXi
+ x11-libs/libXfont
+ x11-libs/libXmu
+ x11-libs/libxkbfile
+ x11-libs/libXrender
+ x11-libs/pixman
+ x11-apps/xauth
+ x11-apps/xsetroot
+ x11-misc/xkeyboard-config
+ media-fonts/font-adobe-100dpi
+ media-fonts/font-adobe-75dpi
+ media-fonts/font-alias
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ xorgmodule? ( ~x11-base/xorg-server-${XSERVER_VERSION} )
+ )
+ !net-misc/vnc
+ !net-misc/tightvnc
+ !net-misc/xf4vnc"
+DEPEND="${RDEPEND}
+ amd64? ( dev-lang/nasm )
+ x86? ( dev-lang/nasm )
+ >=x11-proto/inputproto-1.5
+ >=x11-proto/xextproto-7.0.3
+ >=x11-proto/xproto-7.0.13
+ server? (
+ x11-misc/util-macros
+ x11-proto/bigreqsproto
+ x11-proto/compositeproto
+ x11-proto/damageproto
+ x11-proto/dri2proto
+ x11-proto/fixesproto
+ x11-proto/fontsproto
+ >=x11-proto/randrproto-1.2.99
+ x11-proto/resourceproto
+ x11-proto/scrnsaverproto
+ x11-proto/trapproto
+ x11-proto/videoproto
+ x11-proto/xcmiscproto
+ x11-proto/xineramaproto
+ x11-proto/xf86bigfontproto
+ x11-proto/xf86dgaproto
+ x11-proto/xf86driproto
+ x11-proto/xf86miscproto
+ x11-proto/xf86vidmodeproto
+ opengl? ( >=x11-proto/glproto-1.4.10 )
+ >=media-libs/mesa-7.1
+ >=x11-proto/renderproto-0.9.3
+ x11-libs/libpciaccess
+ >=x11-libs/xtrans-1.2.2
+ )"
+
+#S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ if ! use server ; then
+ echo
+ einfo "The 'server' USE flag will build tigervnc's server."
+ einfo "If '-server' is chosen only the client is built to save space."
+ einfo "Stop the build now if you need to add 'server' to USE flags.\n"
+ ebeep
+ epause 5
+ else
+ ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
+ OLD_IMPLEM="$(eselect opengl show)"
+ eselect opengl set ${OPENGL_DIR}
+ fi
+}
+
+switch_opengl_implem() {
+ # Switch to the xorg implementation.
+ # Use new opengl-update that will not reset user selected
+ # OpenGL interface ...
+ echo
+ eselect opengl set ${OLD_IMPLEM}
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ if use server ; then
+ cp -r "${WORKDIR}"/xorg-server-${XSERVER_VERSION}/* unix/xserver
+ fi
+
+ eautoreconf
+ cd unix
+
+ if use server ; then
+ epatch xserver110.patch
+ cd xserver
+ eautoreconf
+ fi
+}
+
+src_compile() {
+ econf --without-included-zlib --with-system-jpeg || die "econf failed"
+ emake || die "emake failed"
+
+ if use server ; then
+ cd unix/xserver
+ econf \
+ --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
+ --disable-xwin --disable-xephyr --disable-kdrive --with-pic \
+ --disable-static --disable-xinerama \
+ --disable-composite \
+ --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
+ --enable-install-libxf86config \
+ --enable-dri2 \
+ --disable-config-dbus \
+ --disable-config-hal \
+ --with-xmlto=no \
+ --disable-unit-tests \
+ $(use_enable opengl glx) \
+ $(use_enable nptl glx-tls) \
+ || die "econf server failed"
+ emake || die "emake server failed"
+ fi
+}
+
+src_install() {
+ dodoc README.txt
+
+ cd unix
+ emake DESTDIR="${D}" install || die "emake install failed"
+ newman vncviewer/vncviewer.man vncviewer.1
+
+ newicon "${DISTDIR}"/tigervnc.png vncviewer.png
+ make_desktop_entry vncviewer vncviewer vncviewer Network
+
+ if use server ; then
+ cd xserver/hw/vnc
+ emake DESTDIR="${D}" install || die "emake install failed"
+ ! use xorgmodule && rm -rf "${D}"/usr/$(get_libdir)/xorg
+
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ rm "${D}"/usr/$(get_libdir)/xorg/modules/extensions/libvnc.la
+ else
+ cd "${D}"
+ for f in vncserver vncpasswd x0vncserver vncconfig; do
+ rm usr/bin/$f
+ rm usr/share/man/man1/$f.1
+ done
+ fi
+}
+
+pkg_postinst() {
+ use server && switch_opengl_implem
+}