[X2go-Commits] nx-libs.git - build-main (branch) updated: redist-client/3.5.0.12

X2Go dev team git-admin at x2go.org
Wed Mar 7 20:59:49 CET 2012


The branch, build-main has been updated
       via  1b1a26ae66725db1d8e8a3b3b5b3f755457f5068 (commit)
       via  4f7c8d079014b28204f6733a4e11708be012b215 (commit)
       via  95929b8a50ce2ea07c1a0784b58a94fb0b23e36a (commit)
       via  9b17e8a96af48181c60a2dcbd3f94445bdc18623 (commit)
       via  fb274937dea4838ff18724f556305a05282cd45a (commit)
       via  055436f481b323da2e354eddb76b3099cd96e6ff (commit)
       via  3776a6f417d4844f92b035eec2ca3d06466ec4e8 (commit)
       via  a71cebf0418d1d2c4fbc1012957bf1f1b54742cc (commit)
       via  22d41ae20a02f10f7dd4245e426c0a007d42710c (commit)
       via  7e5c04b5db4e859b326ece329099d849906f2bb9 (commit)
       via  655173ff215dde1a167193eafe29bfc955a19561 (commit)
       via  be86627adf0392f94d70ad28cb9c6867b3bef0f5 (commit)
       via  0586f0d6e83cfa9ea12a3bf6a0015a4e84d09ae2 (commit)
       via  a8bf2dd819ac55535b11e38848ffc9b076a5d307 (commit)
      from  50690ea177ee39011a235bac6887a213f27e7f54 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 debian/changelog                                   |   25 ++++++
 debian/libnx-x11.links                             |    2 -
 debian/libnx-x11.postinst                          |   55 +++++++++++++
 debian/libnx-x11.prerm                             |   42 ++++++++++
 .../patches/001_add-main-makefile.full+lite.patch  |   10 +-
 debian/patches/005_nxcomp_gcc43.full+lite.patch    |   20 +++---
 .../051_nxcomp_macos105-fdisset.full+lite.patch    |   82 ++++++++++++++++++++
 .../203_nxagent_disable-rootless-exit.full.patch   |   60 ++++++++++++++
 debian/patches/series                              |    2 +
 debian/post-build-nx.sh                            |    2 -
 10 files changed, 281 insertions(+), 19 deletions(-)
 create mode 100755 debian/libnx-x11.postinst
 create mode 100755 debian/libnx-x11.prerm
 create mode 100644 debian/patches/051_nxcomp_macos105-fdisset.full+lite.patch
 create mode 100644 debian/patches/203_nxagent_disable-rootless-exit.full.patch

The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index 742e1b1..d1c14d8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,28 @@
+nx-libs (2:3.5.0.12-0) unstable; urgency=low
+
+  [ Mike Gabriel ]
+  * Update patch: 001_add-main-makefile.full+lite.patch, adapt patch from
+    packaging. Test for Makefiles in subfolders before calling them.
+    Fixes build failure during ,,make distclean'' calls.
+  * Provide temporary workaround for installation on Debian 64bit with
+    multiarch support (via libnx-x11.postinst and .prerm).
+  * Re-introduce proper Xinerama support on non-multiarch systems.
+
+  [ Mihai Moldovan ]
+  * Add patch: 051_nxcomp_macos105-fdisset.full+lite.patch, work around
+    issue in Mac OS X 10.5 SDK. Pass address of fd_set structs on the stack
+    to the FD_ISSET macro/function, instead of the struct itself.
+  * Update patch: 005_nxcomp_gcc43.full+lite.patch, fix faulty path to
+    nxcomp/Split.cpp.
+
+  [ Oleksandr Shneyder ]
+  * Add patch: 203_nxagent_disable-rootless-exit.full.patch, add command line
+    argument "-norootlessexit". Usually, nxagent exits after 30 seconds if
+    running in rootless mode and no X-Clients are present. Starting nxagent
+    with option "-norootlessexit" will change this behaviour.
+
+ -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 07 Mar 2012 20:50:14 +0100
+
 nx-libs (2:3.5.0.11-0) unstable; urgency=low
 
   [ Mike Gabriel ]
diff --git a/debian/libnx-x11.links b/debian/libnx-x11.links
index 82c245f..7331e79 100644
--- a/debian/libnx-x11.links
+++ b/debian/libnx-x11.links
@@ -1,4 +1,2 @@
-usr/lib/libX11.so.6  usr/lib/nx/X11/Xinerama/libNX_X11.so.6
-usr/lib/libXext.so.6 usr/lib/nx/X11/Xinerama/libNX_Xext.so.6
 usr/lib/nx/X11/libNX_Xinerama.so usr/lib/nx/X11/Xinerama/libXinerama.so
 usr/lib/nx/X11/libNX_Xinerama.so.1 usr/lib/nx/X11/Xinerama/libXinerama.so.1
diff --git a/debian/libnx-x11.postinst b/debian/libnx-x11.postinst
new file mode 100755
index 0000000..f584054
--- /dev/null
+++ b/debian/libnx-x11.postinst
@@ -0,0 +1,55 @@
+#!/bin/sh
+# postinst script for libnx-x11
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+	configure)
+		### FIXME: this is a work-around while we have not implemented
+		###        multiarch support into the Debian source package of
+		###        nx-libs.
+		if dpkg-architecture -qDEB_BUILD_MULTIARCH 1>/dev/null 2>/dev/null; then
+			libdir=/usr/lib/$(dpkg-architecture -qDEB_BUILD_MULTIARCH)
+		else
+			libdir=/usr/lib
+		fi
+		rm -f /usr/lib/nx/X11/Xinerama/libNX_X11.so.6
+		rm -f /usr/lib/nx/X11/Xinerama/libNX_Xext.so.6
+		if test -e $libdir/libX11.so.6; then
+			ln -s $libdir/libX11.so.6 /usr/lib/nx/X11/Xinerama/libNX_X11.so.6
+		fi
+		if test -e $libdir/libXext.so.6; then
+			ln -s $libdir/libXext.so.6 /usr/lib/nx/X11/Xinerama/libNX_Xext.so.6
+		fi
+	;;
+
+	abort-upgrade|abort-remove|abort-deconfigure)
+	;;
+
+	*)
+		echo "postinst called with unknown argument \`$1'" >&2
+		exit 1
+	;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libnx-x11.prerm b/debian/libnx-x11.prerm
new file mode 100755
index 0000000..3fcd330
--- /dev/null
+++ b/debian/libnx-x11.prerm
@@ -0,0 +1,42 @@
+#!/bin/sh
+# postrm script for x2goserver-fmbindings
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postrm> `remove'
+#        * <postrm> `purge'
+#        * <old-postrm> `upgrade' <new-version>
+#        * <new-postrm> `failed-upgrade' <old-version>
+#        * <new-postrm> `abort-install'
+#        * <new-postrm> `abort-install' <old-version>
+#        * <new-postrm> `abort-upgrade' <old-version>
+#        * <disappearer's-postrm> `disappear' <overwriter>
+#          <overwriter-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+	purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+		if test -e /usr/lib/nx/X11/Xinerama/libNX_X11.so.6; then
+			rm -f /usr/lib/nx/X11/Xinerama/libNX_X11.so.6
+		fi
+		if test -e /usr/lib/nx/X11/Xinerama/libNX_Xext.so.6; then
+			rm -f /usr/lib/nx/X11/Xinerama/libNX_Xext.so.6
+		fi
+	;;
+	*)
+		echo "postrm called with unknown argument \`$1'" >&2
+		exit 1
+	;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/patches/001_add-main-makefile.full+lite.patch b/debian/patches/001_add-main-makefile.full+lite.patch
index 3c236b9..fffa4dc 100644
--- a/debian/patches/001_add-main-makefile.full+lite.patch
+++ b/debian/patches/001_add-main-makefile.full+lite.patch
@@ -11,12 +11,12 @@ Last-Update: 2011-12-31
 +CONFIGURE=./configure
 +
 +%:
-+	${MAKE} -C nxcomp $@
-+	${MAKE} -C nxproxy $@
++	if test -f nxcomp/Makefile; then ${MAKE} -C nxcomp $@; fi
++	if test -f nxproxy/Makefile; then ${MAKE} -C nxproxy $@; fi
 +	if test -d nx-X11; then \
-+	    ${MAKE} -C nxcompext $@; \
-+	    ${MAKE} -C nxcompshad; \
-+	    ${MAKE} -C nx-X11 $@; \
++	    if test -f nxcompext/Makefile; then ${MAKE} -C nxcompext $@; fi; \
++	    if test -f nxcompshad/Makefile; then ${MAKE} -C nxcompshad $@; fi; \
++	    if test -f nx-X11/Makefile; then ${MAKE} -C nx-X11 $@; fi; \
 +	fi
 +
 +all: build
diff --git a/debian/patches/005_nxcomp_gcc43.full+lite.patch b/debian/patches/005_nxcomp_gcc43.full+lite.patch
index 31cb984..bb758c2 100644
--- a/debian/patches/005_nxcomp_gcc43.full+lite.patch
+++ b/debian/patches/005_nxcomp_gcc43.full+lite.patch
@@ -5,8 +5,8 @@ Description: gcc43 fix
 Forwarded: not-yet
 Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
 Last-Update: 2011-12-31
---- a/nxcomp/Message.cpp      2010-03-18 19:32:44.476930493 -0300
-+++ b/nxcomp/Message.cpp   2010-03-18 19:40:48.669719034 -0300
+--- a/nxcomp/Message.cpp	2012-03-01 03:46:39.220943822 +0100
++++ b/nxcomp/Message.cpp	2012-03-01 03:47:27.605712530 +0100
 @@ -15,9 +15,9 @@
  /*                                                                        */
  /**************************************************************************/
@@ -19,8 +19,8 @@ Last-Update: 2011-12-31
  
  #include <algorithm>
  
---- a/nxcomp/Misc.cpp 2010-03-18 19:32:44.488465101 -0300
-+++ b/nxcomp/Misc.cpp      2010-03-18 19:40:48.669719034 -0300
+--- a/nxcomp/Misc.cpp	2012-03-01 03:46:39.220943822 +0100
++++ b/nxcomp/Misc.cpp	2012-03-01 03:47:27.605712530 +0100
 @@ -15,11 +15,11 @@
  /*                                                                        */
  /**************************************************************************/
@@ -37,8 +37,8 @@ Last-Update: 2011-12-31
  
  #include <errno.h>
  #include <string.h>
---- a/nxcomp/Misc.h   2010-03-18 19:32:44.488465101 -0300
-+++ b/nxcomp/Misc.h        2010-03-18 19:40:48.669719034 -0300
+--- a/nxcomp/Misc.h	2012-03-01 03:46:39.220943822 +0100
++++ b/nxcomp/Misc.h	2012-03-01 03:47:27.605712530 +0100
 @@ -21,8 +21,8 @@
  #include <iostream>
  #include <fstream>
@@ -50,8 +50,8 @@ Last-Update: 2011-12-31
  
  #ifdef __sun
  
---- a/nxcomp/Proxy.cpp        2010-03-18 19:32:44.547273410 -0300
-+++ b/nxcomp/Proxy.cpp     2010-03-18 19:40:48.669719034 -0300
+--- a/nxcomp/Proxy.cpp	2012-03-01 03:46:39.224943897 +0100
++++ b/nxcomp/Proxy.cpp	2012-03-01 03:47:27.605712530 +0100
 @@ -15,9 +15,9 @@
  /*                                                                        */
  /**************************************************************************/
@@ -64,8 +64,8 @@ Last-Update: 2011-12-31
  #include <sys/types.h>
  #include <sys/stat.h>
  
---- a/nxcomp/Split.cpp        2010-03-18 19:32:44.688465322 -0300
-+++ nxcomp-ubuntu/Split.cpp     2010-03-18 19:40:48.669719034 -0300
+--- a/nxcomp/Split.cpp	2012-03-01 03:46:39.224943897 +0100
++++ b/nxcomp/Split.cpp	2012-03-01 03:47:27.605712530 +0100
 @@ -16,7 +16,7 @@
  /**************************************************************************/
  
diff --git a/debian/patches/051_nxcomp_macos105-fdisset.full+lite.patch b/debian/patches/051_nxcomp_macos105-fdisset.full+lite.patch
new file mode 100644
index 0000000..6b78a6b
--- /dev/null
+++ b/debian/patches/051_nxcomp_macos105-fdisset.full+lite.patch
@@ -0,0 +1,82 @@
+Description: workaround for Mac OS X 10.5 
+ The Mac OS X 10.5 SDK requires the second argument of FD_ISSET to be
+ writeable, although it does only access the data. Given that we have a
+ const pointer for a const struct, copy and pass that.
+ .
+ Note that this is merely a workaround for OS X 10.5, as 10.6 and later
+ define the second argument of FD_ISSET as const struct const *foo, too.
+ .
+ It is safe, as data is accessed read-only by FD_ISSET, even on 10.5.
+Forward: pending
+Author: Mihai Moldovan <ionic at ionic.de>
+---
+ nxcomp/Agent.h |   28 ++++++++++++++++++++--------
+ 1 files changed, 20 insertions(+), 8 deletions(-)
+
+--- a/nxcomp/Agent.h
++++ b/nxcomp/Agent.h
+@@ -149,30 +149,38 @@
+ 
+   int remoteCanRead(const fd_set * const readSet)
+   {
++    // OS X 10.5 requires the second argument to be non-const, so copy readSet.
++    // It's safe though, as FD_ISSET does not operate on it.
++    fd_set readWorkSet = *readSet;
++
+     #if defined(TEST) || defined(INFO)
+     *logofs << "Agent: remoteCanRead() is " <<
+-               (FD_ISSET(remoteFd_, readSet) && transport_ -> dequeuable() != 0)
+-            << " with FD_ISSET() " << (int) FD_ISSET(remoteFd_, readSet)
++               (FD_ISSET(remoteFd_, &readWorkSet) && transport_ -> dequeuable() != 0)
++            << " with FD_ISSET() " << (int) FD_ISSET(remoteFd_, &readWorkSet)
+             << " and dequeuable " << transport_ -> dequeuable()
+             << ".\n" << logofs_flush;
+     #endif
+ 
+-    return (FD_ISSET(remoteFd_, readSet) &&
++    return (FD_ISSET(remoteFd_, &readWorkSet) &&
+                 transport_ -> dequeuable() != 0);
+   }
+ 
+   int remoteCanWrite(const fd_set * const writeSet)
+   {
++    // OS X 10.5 requires the second argument to be non-const, so copy writeSet.
++    // It's safe though, as FD_ISSET does not operate on it.
++    fd_set writeWorkSet = *writeSet;
++
+     #if defined(TEST) || defined(INFO)
+     *logofs << "Agent: remoteCanWrite() is " <<
+-               (FD_ISSET(remoteFd_, writeSet) && transport_ ->
++               (FD_ISSET(remoteFd_, &writeWorkSet) && transport_ ->
+                queuable() != 0 && canRead_ == 1) << " with FD_ISSET() "
+-            << (int) FD_ISSET(remoteFd_, writeSet) << " queueable "
++            << (int) FD_ISSET(remoteFd_, &writeWorkSet) << " queueable "
+             << transport_ -> queuable() << " channel can read "
+             << canRead_ << ".\n" << logofs_flush;
+     #endif
+ 
+-    return (FD_ISSET(remoteFd_, writeSet) &&
++    return (FD_ISSET(remoteFd_, &writeWorkSet) &&
+                 transport_ -> queuable() != 0 &&
+                     canRead_ == 1);
+   }
+@@ -203,13 +211,17 @@
+ 
+   int proxyCanRead(const fd_set * const readSet)
+   {
++    // OS X 10.5 requires the second argument to be non-const, so copy readSet.
++    // It's safe though, as FD_ISSET does not operate on it.
++    fd_set readWorkSet = *readSet;
++
+     #if defined(TEST) || defined(INFO)
+     *logofs << "Agent: proxyCanRead() is "
+-            << ((int) FD_ISSET(proxy -> getFd(), readSet)
++            << ((int) FD_ISSET(proxy -> getFd(), &readWorkSet)
+             << ".\n" << logofs_flush;
+     #endif
+ 
+-    return (FD_ISSET(proxy -> getFd(), readSet));
++    return (FD_ISSET(proxy -> getFd(), &readWorkSet));
+   }
+ 
+   int enqueueData(const char *data, const int size) const
diff --git a/debian/patches/203_nxagent_disable-rootless-exit.full.patch b/debian/patches/203_nxagent_disable-rootless-exit.full.patch
new file mode 100644
index 0000000..03154bb
--- /dev/null
+++ b/debian/patches/203_nxagent_disable-rootless-exit.full.patch
@@ -0,0 +1,60 @@
+--- a/nx-X11/programs/Xserver/hw/nxagent/Args.c
++++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c
+@@ -656,6 +656,12 @@
+     return 1;
+   }
+ 
++  if (!strcmp(argv[i], "-norootlessexit")) {
++    nxagentChangeOption(NoRootlessExit, True);
++    return 1;
++  }
++
++
+   if (!strcmp(argv[i], "-noonce"))
+   {
+       nxagentOnce = False;
+@@ -1837,6 +1843,7 @@
+   ErrorF("The NX system adds the following arguments:\n");
+   ErrorF("-forcenx               force use of NX protocol messages assuming communication through nxproxy\n");
+   ErrorF("-timeout int           auto-disconnect timeout in seconds (minimum allowed: 60)\n");
++  ErrorF("-norootlessexit        don't exit if there are no clients in rootless mode\n");
+ #ifdef RENDER
+   ErrorF("-norender              disable the use of the render extension\n");
+   ErrorF("-nocomposite           disable the use of the composite extension\n");
+--- a/nx-X11/programs/Xserver/hw/nxagent/Handlers.c
++++ b/nx-X11/programs/Xserver/hw/nxagent/Handlers.c
+@@ -217,7 +217,7 @@
+ 
+   if (nxagentOption(Rootless) &&
+           nxagentLastWindowDestroyed && nxagentRootlessDialogPid == 0 &&
+-              now > nxagentLastWindowDestroyedTime + 30 * 1000)
++              now > nxagentLastWindowDestroyedTime + 30 * 1000 && !nxagentOption(NoRootlessExit))
+   {
+     #ifdef WARNING
+     fprintf(stderr, "nxagentBlockHandler: No application running. Closing the session.\n");
+--- a/nx-X11/programs/Xserver/hw/nxagent/Options.c
++++ b/nx-X11/programs/Xserver/hw/nxagent/Options.c
+@@ -56,6 +56,7 @@
+   nxagentOptions.Persistent = 1;
+   nxagentOptions.Rootless   = UNDEFINED;
+   nxagentOptions.Fullscreen = UNDEFINED;
++  nxagentOptions.NoRootlessExit = False;
+ 
+   nxagentOptions.X           = 0;
+   nxagentOptions.Y           = 0;
+--- a/nx-X11/programs/Xserver/hw/nxagent/Options.h
++++ b/nx-X11/programs/Xserver/hw/nxagent/Options.h
+@@ -369,6 +369,13 @@
+ 
+   int CopyBufferSize;
+ 
++ /*
++  * True if agent should not exit if there are no
++  * clients in rootless mode
++  */
++
++  int NoRootlessExit;
++
+ } AgentOptionsRec;
+ 
+ typedef AgentOptionsRec *AgentOptionsPtr;
diff --git a/debian/patches/series b/debian/patches/series
index cf194f1..dc42d85 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -25,6 +25,7 @@
 030_nx-X11_configure-args.full.patch
 031_nx-X11_parallel-make.full.patch
 032_no-x11r6.full.patch
+051_nxcomp_macos105-fdisset.full+lite.patch
 101_nxagent_set-rgb-path.full.patch
 102_xserver-xext_set-securitypolicy-path.full.patch
 103_nxagent_set-X0-config-path.full.patch
@@ -37,6 +38,7 @@
 200_nxagent_check-binary-x2go-flavour.full.patch
 201_nxagent_set-x2go-icon-if-x2goagent-flavour.full.patch
 202_nx-x11_enable-xinerama.full.patch
+203_nxagent_disable-rootless-exit.full.patch
 209_x2goagent-add-man-page.full.patch
 300_nxagent_set-wm-class.full.patch
 301_nx-X11_use-shared-libs.full.patch
diff --git a/debian/post-build-nx.sh b/debian/post-build-nx.sh
index 2d1f8d2..94f18ac 100755
--- a/debian/post-build-nx.sh
+++ b/debian/post-build-nx.sh
@@ -20,8 +20,6 @@ find nx-X11/exports/lib/ | egrep "^.*\.so$" | while read libpath; do
     find $libdir/$libfile.* | while read symlink; do
         ln -s $libfile ${libdir//exports/.build-exports}/$(basename $symlink)
     done
-
-
 done
 
 exit 0


hooks/post-receive
-- 
nx-libs.git (NX (redistributed))

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "nx-libs.git" (NX (redistributed)).




More information about the x2go-commits mailing list