diff options
author | Bernard Cafarelli <voyageur@gentoo.org> | 2008-09-15 14:58:30 +0000 |
---|---|---|
committer | Bernard Cafarelli <voyageur@gentoo.org> | 2008-09-15 14:58:30 +0000 |
commit | 42a613c2e155f86899dc70cac789d410bfe8f63e (patch) | |
tree | 5bfdcc7cf4e0d8ea55bf899fe8f3a163e6a2ed0e /net-misc | |
parent | Version bump, bug #225527, thank cruzki for report. (diff) | |
download | gentoo-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/ChangeLog | 9 | ||||
-rw-r--r-- | net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch | 68 | ||||
-rw-r--r-- | net-misc/nx/nx-3.2.0-r5.ebuild | 116 |
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* +} |