diff options
author | Raúl Porcel <armin76@gentoo.org> | 2011-11-12 18:05:41 +0000 |
---|---|---|
committer | Raúl Porcel <armin76@gentoo.org> | 2011-11-12 18:05:41 +0000 |
commit | cb7c53352f089001aaeb585350267e1d2828df86 (patch) | |
tree | af43fb9341c07be7bf7b6e8e19998f467165fe50 /net-misc | |
parent | Speeling. (diff) | |
download | gentoo-2-cb7c53352f089001aaeb585350267e1d2828df86.tar.gz gentoo-2-cb7c53352f089001aaeb585350267e1d2828df86.tar.bz2 gentoo-2-cb7c53352f089001aaeb585350267e1d2828df86.zip |
Version bump, fixes bug 387729
(Portage version: 2.1.10.30/cvs/Linux ia64)
Diffstat (limited to 'net-misc')
-rw-r--r-- | net-misc/tigervnc/ChangeLog | 9 | ||||
-rw-r--r-- | net-misc/tigervnc/files/xserver111.patch | 240 | ||||
-rw-r--r-- | net-misc/tigervnc/tigervnc-1.1.0-r1.ebuild | 183 | ||||
-rw-r--r-- | net-misc/tigervnc/tigervnc-1.1.0.ebuild | 182 |
4 files changed, 613 insertions, 1 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/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 +} |