summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2008-09-15 14:58:30 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2008-09-15 14:58:30 +0000
commit42a613c2e155f86899dc70cac789d410bfe8f63e (patch)
tree5bfdcc7cf4e0d8ea55bf899fe8f3a163e6a2ed0e /net-misc
parentVersion bump, bug #225527, thank cruzki for report. (diff)
downloadgentoo-2-42a613c2e155f86899dc70cac789d410bfe8f63e.tar.gz
gentoo-2-42a613c2e155f86899dc70cac789d410bfe8f63e.tar.bz2
gentoo-2-42a613c2e155f86899dc70cac789d410bfe8f63e.zip
Add patch for nxproxy to read from stdin, allows nxcl to use standard ssh instead of nxssh
(Portage version: 2.2_rc8/cvs/Linux 2.6.26-gentoo x86_64)
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/nx/ChangeLog9
-rw-r--r--net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch68
-rw-r--r--net-misc/nx/nx-3.2.0-r5.ebuild116
3 files changed, 192 insertions, 1 deletions
diff --git a/net-misc/nx/ChangeLog b/net-misc/nx/ChangeLog
index c0292231e4a5..5bd3b54e1696 100644
--- a/net-misc/nx/ChangeLog
+++ b/net-misc/nx/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-misc/nx
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/nx/ChangeLog,v 1.31 2008/08/26 08:50:56 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/nx/ChangeLog,v 1.32 2008/09/15 14:58:29 voyageur Exp $
+
+*nx-3.2.0-r5 (15 Sep 2008)
+
+ 15 Sep 2008; Bernard Cafarelli <voyageur@gentoo.org>
+ +files/nx-3.2.0-nxproxy_read_from_stdin.patch, +nx-3.2.0-r5.ebuild:
+ Add patch for nxproxy to read from stdin, allows nxcl to use standard ssh
+ instead of nxssh
*nx-3.2.0-r4 (26 Aug 2008)
diff --git a/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch b/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch
new file mode 100644
index 000000000000..bce692d10a7a
--- /dev/null
+++ b/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch
@@ -0,0 +1,68 @@
+--- Main.c.old 2007-07-18 17:39:13.000000000 +0200
++++ Main.c 2008-03-12 04:40:30.000000000 +0100
+@@ -36,28 +36,48 @@
+ int result = -1;
+
+ char *options = NULL;
+-
++
++ char *nx_commfd_str = NULL;
++
+ options = getenv("NX_DISPLAY");
+-
+- if (NXTransParseCommandLine(argc, argv) < 0)
++
++ if ((nx_commfd_str = getenv("NX_COMMFD")) != NULL)
+ {
+- NXTransCleanup();
+- }
++ int nx_commfd = atoi(nx_commfd_str);
+
+- if (NXTransParseEnvironment(options, 0) < 0)
+- {
+- NXTransCleanup();
++ if (result)
++ result = NXTransCreate(nx_commfd, NX_MODE_SERVER, options);
++
++ // go into endless loop
++
++ if (result)
++ {
++ while (NXTransRunning(NX_FD_ANY))
++ result = NXTransContinue(NULL);
++ }
+ }
++ else
++ {
++ if (NXTransParseCommandLine(argc, argv) < 0)
++ {
++ NXTransCleanup();
++ }
++
++ if (NXTransParseEnvironment(options, 0) < 0)
++ {
++ NXTransCleanup();
++ }
++
++ /*
++ * This should not return...
++ */
++
++ #ifdef TEST
++ fprintf(stderr, "Main: Yielding control to NX entry point.\n");
++ #endif
+
+- /*
+- * This should not return...
+- */
+-
+- #ifdef TEST
+- fprintf(stderr, "Main: Yielding control to NX entry point.\n");
+- #endif
+-
+- result = NXTransProxy(NX_FD_ANY, NX_MODE_ANY, NX_DISPLAY_ANY);
++ result = NXTransProxy(NX_FD_ANY, NX_MODE_ANY, NX_DISPLAY_ANY);
++ }
+
+ /*
+ * ...So these should not be called.
diff --git a/net-misc/nx/nx-3.2.0-r5.ebuild b/net-misc/nx/nx-3.2.0-r5.ebuild
new file mode 100644
index 000000000000..205f9ac5c7ee
--- /dev/null
+++ b/net-misc/nx/nx-3.2.0-r5.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/nx/nx-3.2.0-r5.ebuild,v 1.1 2008/09/15 14:58:29 voyageur Exp $
+
+inherit autotools eutils multilib
+
+DESCRIPTION="NX compression technology core libraries"
+HOMEPAGE="http://www.nomachine.com/developers.php"
+
+URI_BASE="http://web04.nomachine.com/download/${PV}/sources"
+SRC_NX_X11="nx-X11-$PV-2.tar.gz"
+SRC_NXAGENT="nxagent-$PV-10.tar.gz"
+SRC_NXAUTH="nxauth-$PV-1.tar.gz"
+SRC_NXCOMP="nxcomp-$PV-7.tar.gz"
+SRC_NXCOMPEXT="nxcompext-$PV-1.tar.gz"
+SRC_NXCOMPSHAD="nxcompshad-$PV-3.tar.gz"
+SRC_NXPROXY="nxproxy-$PV-1.tar.gz"
+
+SRC_URI="$URI_BASE/$SRC_NX_X11 $URI_BASE/$SRC_NXAGENT $URI_BASE/$SRC_NXPROXY $URI_BASE/$SRC_NXAUTH $URI_BASE/$SRC_NXCOMPEXT $URI_BASE/$SRC_NXCOMPSHAD $URI_BASE/$SRC_NXCOMP"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="rdesktop vnc"
+
+RDEPEND="x11-libs/libXau
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ >=media-libs/jpeg-6b-r4
+ >=media-libs/libpng-1.2.8
+ >=sys-libs/zlib-1.2.3
+ rdesktop? ( net-misc/rdesktop )
+ vnc? ( || ( net-misc/vnc net-misc/tightvnc ) )"
+
+DEPEND="${RDEPEND}
+ x11-misc/gccmakedep
+ x11-misc/imake
+ x11-proto/inputproto"
+
+S=${WORKDIR}/${PN}-X11
+
+pkg_setup() {
+ if use vnc; then
+ if has_version net-misc/vnc && ! built_with_use net-misc/vnc server;
+ then
+ die "net-misc/vnc needs to be built with USE=\"server\" for VNC support"
+ fi
+
+ if has_version net-misc/tightvnc && ! built_with_use net-misc/tightvnc server;
+ then
+ die "net-misc/tightvnc needs to be built with USE=\"server\" for VNC support"
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${WORKDIR}"
+ epatch "${FILESDIR}"/1.5.0/nx-x11-1.5.0-tmp-exec.patch
+ epatch "${FILESDIR}"/1.5.0/nxcomp-1.5.0-pic.patch
+
+ cd "${WORKDIR}"/nxproxy
+ epatch "${FILESDIR}"/${P}-nxproxy_read_from_stdin.patch
+
+ cd "${WORKDIR}"/nxcomp
+ epatch "${FILESDIR}"/${PN}-2.1.0-invalid-options.patch
+ eautoreconf
+}
+
+src_compile() {
+ cd "${WORKDIR}"/nxcomp || die "No nxcomp directory found"
+ econf || die "nxcomp econf failed"
+ emake || die "nxcomp emake failed"
+
+ cd "${WORKDIR}"/nxcompshad || die "No nxcompshad directory found"
+
+ econf || die "nxcompshad econf failed"
+ emake || die "nxcompshad emake failed"
+
+ cd "${WORKDIR}"/nxproxy || die "No nxproxy directory found"
+ econf || die "nxproxy econf failed"
+ emake || die "nxproxy emake failed"
+
+ cd "${S}" || die "No nx-X11 directory found"
+ emake World || die "nx-X11 emake failed"
+
+ cd "${WORKDIR}"/nxcompext || die "No nxcompext directory found"
+ econf || die "nxcompext econf failed"
+ emake || die "nxcompext emake failed"
+}
+
+src_install() {
+ NX_ROOT=/usr/$(get_libdir)/NX
+
+ for x in nxagent nxauth nxproxy; do
+ make_wrapper $x ./$x ${NX_ROOT}/bin ${NX_ROOT}/$(get_libdir) ||
+ die " $x wrapper creation failed"
+ done
+
+ into ${NX_ROOT}
+ dobin "${S}"/programs/Xserver/nxagent
+ dobin "${S}"/programs/nxauth/nxauth
+ dobin "${WORKDIR}"/nxproxy/nxproxy
+
+ dolib.so "${S}"/lib/X11/libX11.so*
+ dolib.so "${S}"/lib/Xext/libXext.so*
+ dolib.so "${S}"/lib/Xrender/libXrender.so*
+ dolib.so "${WORKDIR}"/nxcomp/libXcomp.so*
+ dolib.so "${WORKDIR}"/nxcompext/libXcompext.so*
+ dolib.so "${WORKDIR}"/nxcompshad/libXcompshad.so*
+}