This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch 3.6.x in repository nx-libs. from a43c495 update changelog new 4dc1bd0 Test for xkb/rules/base instead of xkb/keymap.dir for setting XkbBaseDir (302_nx-X11_xkbbasedir-detection.full.patch). new e91277d Make nxagent-specific keyboard bindings configurable (320_nxagent_configurable-keystrokes.full.patch). new fea8fb5 Adapt paths of keystrokes.cfg if nxagent runs as x2goagent (321_nxagent_x2go-specific-keystroke-config.full.patch). new d4d3fe0 Allow version 4-digit version comparison/handshake (400_nxcomp-version.full+lite.patch). new c4a8556 Unique Library Names Patch (600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch). new 456f887 Do not build bundled libraries (601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch). new 415b20b Be compliant with POS36-C: Observe correct revocation order while relinquishing privileges (602_nx-X11_initgroups.full.patch). new 96d5e74 Handle some serious compilation warnings (603_nx-X11_compilation_warnings.full.patch). new ab8d127 In Types.h, don't use STL internals on libc++ (605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch). new 31cdd87 Provide build support for aarch64 architecture (606_nx-X11_build-on-aarch64.full.patch). new a8fb7d4 Detection for Mac OS X's launchd service on Mac OS X 10.10 and beyond (607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch). new 6e66247 Several fixes for building debug versions of NX (990_fix-DEBUG-and-TEST-builds.full.patch). new 23fb617 Fix several typos in nxcomp. new 1fd8551 Unbrand NX Agent Startup Screen / Brand X2Go Agent Startup Screen (999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch). The 14 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: .../302_nx-X11_xkbbasedir-detection.full.patch | 84 -- .../320_nxagent_configurable-keystrokes.full.patch | 1031 ----------------- ...agent_x2go-specific-keystroke-config.full.patch | 25 - debian/patches/400_nxcomp-version.full+lite.patch | 240 ---- ...nxcompext+nxcompshad_unique-libnames.full.patch | 1183 -------------------- ...changes-to-not-use-bundled-libraries.full.patch | 99 -- debian/patches/602_nx-X11_initgroups.full.patch | 67 -- .../603_nx-X11_compilation_warnings.full.patch | 38 - ...ont-use-STL-internals-on-libc++.full+lite.patch | 52 - .../patches/606_nx-X11_build-on-aarch64.full.patch | 77 -- ...osx-X11-launcher-in-private-tmp.full+lite.patch | 14 - .../990_fix-DEBUG-and-TEST-builds.full.patch | 69 -- debian/patches/991_fix-hr-typos.full+lite.patch | 97 -- debian/patches/991_fix-hr-typos.full.patch | 36 - ...gent_unbrand-nxagent-brand-x2goagent.full.patch | 367 ------ debian/patches/series | 15 - nx-X11/ChangeLog.X.org | 2 +- nx-X11/config/cf/Imake.cf | 3 + nx-X11/config/cf/Imake.rules | 12 +- nx-X11/config/cf/Imake.tmpl | 4 + nx-X11/config/cf/X11.tmpl | 240 ++-- nx-X11/config/cf/host.def | 17 +- nx-X11/config/cf/linux.cf | 10 + nx-X11/config/cf/lnxLib.rules | 16 +- nx-X11/config/cf/lnxLib.tmpl | 4 +- nx-X11/extras/Mesa/src/mesa/main/debug.c | 2 +- nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c | 3 +- nx-X11/lib/Imakefile | 6 - nx-X11/lib/X11/Imakefile | 2 +- nx-X11/lib/X11/imLcPrs.c | 2 +- nx-X11/lib/XRes/Imakefile | 2 +- nx-X11/lib/Xau/Imakefile | 2 +- nx-X11/lib/Xcomposite/Imakefile | 2 +- nx-X11/lib/Xcomposite/xcomposite.pc.in | 2 +- nx-X11/lib/Xcursor/Imakefile | 2 +- nx-X11/lib/Xcursor/xcursor.pc.in | 2 +- nx-X11/lib/Xdamage/Imakefile | 2 +- nx-X11/lib/Xdamage/xdamage.pc.in | 2 +- nx-X11/lib/Xdmcp/Imakefile | 2 +- nx-X11/lib/Xext/Imakefile | 2 +- nx-X11/lib/Xfixes/Imakefile | 2 +- nx-X11/lib/Xfixes/xfixes.pc.in | 2 +- nx-X11/lib/Xinerama/Imakefile | 2 +- nx-X11/lib/Xpm/Imakefile | 2 +- nx-X11/lib/Xrandr/Imakefile | 2 +- nx-X11/lib/Xrender/Imakefile | 2 +- nx-X11/lib/Xrender/xrender.pc.in | 2 +- nx-X11/lib/Xtst/Imakefile | 2 +- nx-X11/lib/font/Imakefile | 2 +- nx-X11/lib/font/include/Imakefile | 2 +- nx-X11/lib/oldX/Imakefile | 2 +- nx-X11/lib/xkbfile/Imakefile | 2 +- nx-X11/lib/xkbui/Imakefile | 2 +- nx-X11/programs/Xserver/Imakefile | 21 +- nx-X11/programs/Xserver/dix/dixfonts.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Args.c | 16 + nx-X11/programs/Xserver/hw/nxagent/Args.h | 2 + nx-X11/programs/Xserver/hw/nxagent/Display.c | 40 +- nx-X11/programs/Xserver/hw/nxagent/Imakefile | 9 +- nx-X11/programs/Xserver/hw/nxagent/Keyboard.c | 18 +- nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | 706 ++++++++---- nx-X11/programs/Xserver/hw/nxagent/Keystroke.h | 47 + nx-X11/programs/Xserver/hw/nxagent/Render.c | 9 +- nx-X11/programs/Xserver/hw/nxagent/Splash.c | 162 ++- nx-X11/programs/Xserver/hw/nxagent/Splash.h | 1 + nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c | 2 +- nx-X11/programs/Xserver/include/servermd.h | 22 + nx-X11/programs/Xserver/os/oscolor.c | 14 +- nx-X11/programs/Xserver/os/utils.c | 7 + nx-X11/programs/Xserver/xkb/ddxLoad.c | 38 +- nxcomp/CHANGELOG | 2 +- nxcomp/ClientReadBuffer.cpp | 2 +- nxcomp/Control.cpp | 40 +- nxcomp/Control.h | 9 + nxcomp/EncodeBuffer.cpp | 4 +- nxcomp/GenericChannel.cpp | 2 +- nxcomp/Loop.cpp | 5 +- nxcomp/Makefile.in | 3 +- nxcomp/NX.h | 6 + nxcomp/Pipe.cpp | 3 + nxcomp/ProxyReadBuffer.cpp | 2 +- nxcomp/ServerReadBuffer.cpp | 2 +- nxcomp/Transport.h | 2 +- nxcomp/Types.h | 10 +- nxcompext/Makefile.in | 4 +- nxcompshad/Makefile.in | 4 +- 87 files changed, 1020 insertions(+), 4061 deletions(-) delete mode 100644 debian/patches/302_nx-X11_xkbbasedir-detection.full.patch delete mode 100644 debian/patches/320_nxagent_configurable-keystrokes.full.patch delete mode 100644 debian/patches/321_nxagent_x2go-specific-keystroke-config.full.patch delete mode 100644 debian/patches/400_nxcomp-version.full+lite.patch delete mode 100644 debian/patches/600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch delete mode 100644 debian/patches/601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch delete mode 100644 debian/patches/602_nx-X11_initgroups.full.patch delete mode 100644 debian/patches/603_nx-X11_compilation_warnings.full.patch delete mode 100644 debian/patches/605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch delete mode 100644 debian/patches/606_nx-X11_build-on-aarch64.full.patch delete mode 100644 debian/patches/607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch delete mode 100644 debian/patches/990_fix-DEBUG-and-TEST-builds.full.patch delete mode 100644 debian/patches/991_fix-hr-typos.full+lite.patch delete mode 100644 debian/patches/991_fix-hr-typos.full.patch delete mode 100644 debian/patches/999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 4dc1bd0043aed6b92526cbda26991be1f611a121 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Feb 13 09:49:52 2015 +0100 Test for xkb/rules/base instead of xkb/keymap.dir for setting XkbBaseDir (302_nx-X11_xkbbasedir-detection.full.patch). In recent (as of 2014/06) X.org release, the keymap.dir file has become obsolete. Let's test for the xkb/rules/base file instead. --- .../302_nx-X11_xkbbasedir-detection.full.patch | 84 -------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/xkb/ddxLoad.c | 32 ++++---- 3 files changed, 16 insertions(+), 101 deletions(-) diff --git a/debian/patches/302_nx-X11_xkbbasedir-detection.full.patch b/debian/patches/302_nx-X11_xkbbasedir-detection.full.patch deleted file mode 100644 index dac3d8a..0000000 --- a/debian/patches/302_nx-X11_xkbbasedir-detection.full.patch +++ /dev/null @@ -1,84 +0,0 @@ -Description: Test for xkb/rules/base instead of xkb/keymap.dir for setting XkbBaseDir -Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> -Abstract: - In recent (as of 2014/06) X.org release, the keymap.dir file - has become obsolete. Let's test for the xkb/rules/base file - instead. ---- a/nx-X11/programs/Xserver/xkb/ddxLoad.c -+++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c -@@ -180,7 +180,7 @@ - - #define NX_XKB_BASE_DIRECTORY "/usr/lib/X11/xkb" - #define NX_XKB_ALTERNATE_BASE_DIRECTORY "/usr/share/X11/xkb" --#define NX_KEYMAP_DIR_FILE "keymap.dir" -+#define NX_XKB_RULES_BASE_FILE "rules/base" - #define NX_ALT_XKBCOMP_PATH "/usr/bin" - - static char _NXXkbBasePath[PATH_MAX]; -@@ -189,43 +189,43 @@ - static int NXVerifyXkbBaseDirectory(const char *dirPath) - { - int size; -- char *keymapDirFilePath; -- struct stat keymapDirFileStat; -+ char *rulesBaseFilePath; -+ struct stat rulesBaseFileStat; - - /* -- * If keymap.dir file -- * is not present into -- * Xkb Base Directory, -+ * If rules/base file -+ * is not present inside -+ * the Xkb Base Directory, - * we suppose that the - * path is not valid. - */ - - size = strlen(dirPath) + strlen("/") + -- strlen(NX_KEYMAP_DIR_FILE) + 1; -+ strlen(NX_XKB_RULES_BASE_FILE) + 1; - -- if ((keymapDirFilePath = malloc((size + 1) * sizeof(char))) == NULL) -+ if ((rulesBaseFilePath = malloc((size + 1) * sizeof(char))) == NULL) - { - FatalError("NXVerifyXkbBaseDirectory: malloc failed.\n"); - } - -- strcpy(keymapDirFilePath, dirPath); -- strcat(keymapDirFilePath, "/"); -- strcat(keymapDirFilePath, NX_KEYMAP_DIR_FILE); -+ strcpy(rulesBaseFilePath, dirPath); -+ strcat(rulesBaseFilePath, "/"); -+ strcat(rulesBaseFilePath, NX_XKB_RULES_BASE_FILE); - - #ifdef TEST - fprintf(stderr, "NXVerifyXkbBaseDirectory: Looking for [%s] file.\n", -- keymapDirFilePath); -+ rulesBaseFilePath); - #endif - -- if (stat(keymapDirFilePath, &keymapDirFileStat) != 0) -+ if (stat(rulesBaseFilePath, &rulesBaseFileStat) != 0) - { - - #ifdef TEST - fprintf(stderr, "NXVerifyXkbBaseDirectory: Can't find the keymap.dir file [%s].\n", -- keymapDirFilePath); -+ rulesBaseFilePath); - #endif - -- free(keymapDirFilePath); -+ free(rulesBaseFilePath); - - return 0; - } -@@ -235,7 +235,7 @@ - dirPath); - #endif - -- free(keymapDirFilePath); -+ free(rulesBaseFilePath); - - return 1; - } diff --git a/debian/patches/series b/debian/patches/series index a901010..5780128 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ -302_nx-X11_xkbbasedir-detection.full.patch 320_nxagent_configurable-keystrokes.full.patch 321_nxagent_x2go-specific-keystroke-config.full.patch 400_nxcomp-version.full+lite.patch diff --git a/nx-X11/programs/Xserver/xkb/ddxLoad.c b/nx-X11/programs/Xserver/xkb/ddxLoad.c index e69d956..0b779b7 100644 --- a/nx-X11/programs/Xserver/xkb/ddxLoad.c +++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c @@ -180,7 +180,7 @@ Win32System(const char *cmdline) #define NX_XKB_BASE_DIRECTORY "/usr/lib/X11/xkb" #define NX_XKB_ALTERNATE_BASE_DIRECTORY "/usr/share/X11/xkb" -#define NX_KEYMAP_DIR_FILE "keymap.dir" +#define NX_XKB_RULES_BASE_FILE "rules/base" #define NX_ALT_XKBCOMP_PATH "/usr/bin" static char _NXXkbBasePath[PATH_MAX]; @@ -189,43 +189,43 @@ static char _NXXkbCompPath[PATH_MAX]; static int NXVerifyXkbBaseDirectory(const char *dirPath) { int size; - char *keymapDirFilePath; - struct stat keymapDirFileStat; + char *rulesBaseFilePath; + struct stat rulesBaseFileStat; /* - * If keymap.dir file - * is not present into - * Xkb Base Directory, + * If rules/base file + * is not present inside + * the Xkb Base Directory, * we suppose that the * path is not valid. */ size = strlen(dirPath) + strlen("/") + - strlen(NX_KEYMAP_DIR_FILE) + 1; + strlen(NX_XKB_RULES_BASE_FILE) + 1; - if ((keymapDirFilePath = malloc((size + 1) * sizeof(char))) == NULL) + if ((rulesBaseFilePath = malloc((size + 1) * sizeof(char))) == NULL) { FatalError("NXVerifyXkbBaseDirectory: malloc failed.\n"); } - strcpy(keymapDirFilePath, dirPath); - strcat(keymapDirFilePath, "/"); - strcat(keymapDirFilePath, NX_KEYMAP_DIR_FILE); + strcpy(rulesBaseFilePath, dirPath); + strcat(rulesBaseFilePath, "/"); + strcat(rulesBaseFilePath, NX_XKB_RULES_BASE_FILE); #ifdef TEST fprintf(stderr, "NXVerifyXkbBaseDirectory: Looking for [%s] file.\n", - keymapDirFilePath); + rulesBaseFilePath); #endif - if (stat(keymapDirFilePath, &keymapDirFileStat) != 0) + if (stat(rulesBaseFilePath, &rulesBaseFileStat) != 0) { #ifdef TEST fprintf(stderr, "NXVerifyXkbBaseDirectory: Can't find the keymap.dir file [%s].\n", - keymapDirFilePath); + rulesBaseFilePath); #endif - free(keymapDirFilePath); + free(rulesBaseFilePath); return 0; } @@ -235,7 +235,7 @@ static int NXVerifyXkbBaseDirectory(const char *dirPath) dirPath); #endif - free(keymapDirFilePath); + free(rulesBaseFilePath); return 1; } -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit e91277d02bf1288909daed3b0de8f876f6403acf Author: Alexander Wuerstlein <arw@arw.name> Date: Fri Feb 13 09:52:21 2015 +0100 Make nxagent-specific keyboard bindings configurable (320_nxagent_configurable-keystrokes.full.patch). Replaces the hardcoded nxagent keybindings by a configurable table of keybindings. The default configuration is the same as the original one, to maintain compatibility. A user/administrator can either specify a command line parameter, environment variable or place a file in ~/.nx/config/keystrokes.cfg or /etc/nxagent/keystrokes.cfg to reconfigure these keybindings. The configuration file format is XML, a dependency on libxml2 is added to allow parsing the configuration. --- .../320_nxagent_configurable-keystrokes.full.patch | 1031 -------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/Imakefile | 9 +- nx-X11/programs/Xserver/hw/nxagent/Args.c | 16 + nx-X11/programs/Xserver/hw/nxagent/Args.h | 2 + nx-X11/programs/Xserver/hw/nxagent/Imakefile | 9 +- nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | 700 ++++++++----- nx-X11/programs/Xserver/hw/nxagent/Keystroke.h | 47 + 8 files changed, 546 insertions(+), 1269 deletions(-) diff --git a/debian/patches/320_nxagent_configurable-keystrokes.full.patch b/debian/patches/320_nxagent_configurable-keystrokes.full.patch deleted file mode 100644 index c799c8b..0000000 --- a/debian/patches/320_nxagent_configurable-keystrokes.full.patch +++ /dev/null @@ -1,1031 +0,0 @@ -Author: Alexander Wuerstlein <arw@arw.name> -Description: Make nxagent-specific keyboard bindings configurable - Replaces the hardcoded nxagent keybindings by a configurable - table of keybindings. The default configuration is the same as the - original one, to maintain compatibility. A user/administrator can either - specify a command line parameter, environment variable or place a file - in ~/.nx/config/keystrokes.cfg or /etc/nxagent/keystrokes.cfg to reconfigure - these keybindings. - . - The configuration file format is XML, a dependency on libxml2 is added - to allow parsing the configuration. ---- a/nx-X11/programs/Xserver/Imakefile -+++ b/nx-X11/programs/Xserver/Imakefile -@@ -1013,15 +1013,18 @@ - #if defined(SunArchitecture) - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ - -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lXrender -lXfixes \ -- -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp -+ -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp \ -+`pkg-config --libs libxml-2.0` - #elif defined(cygwinArchitecture) - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext \ - -lXcomp -lXcompext -lXrender -lX11 -lXext -lXcomposite -lXfixes \ -- -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp -+ -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp \ -+`pkg-config --libs libxml-2.0` - #else - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ - -lXcomp -lXcompext -lXcompshad -lXrender -lX11 -lXext -lXfixes \ -- -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp -+ -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp \ -+`pkg-config --libs libxml-2.0` - #endif - - #endif ---- a/nx-X11/programs/Xserver/hw/nxagent/Imakefile -+++ b/nx-X11/programs/Xserver/hw/nxagent/Imakefile -@@ -142,7 +142,8 @@ - -I../../miext/damage -I../../miext/cw \ - -I../../GL/glx -I../../GL/include -I../../../../lib/GL/include -I../../Xext \ - -I$(EXTINCSRC) -I$(XINCLUDESRC) \ -- $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) -+ $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ -+ `pkg-config --cflags-only-I libxml-2.0` - #ifdef SunArchitecture - INCLUDES = -I. -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../../nxcompshad \ - -I../../../../extras/Mesa/include \ -@@ -152,7 +153,8 @@ - -I../../GL/glx -I../../GL/include -I../../../../lib/GL/include -I../../Xext \ - -I../../miext/damage -I../../miext/cw \ - -I$(EXTINCSRC) -I$(XINCLUDESRC) \ -- $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) -+ $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ -+ `pkg-config --cflags-only-I libxml-2.0` - #else - #ifdef cygwinArchitecture - INCLUDES = -I. -I$(XBUILDINCDIR) -I$(FONTINCSRC) \ -@@ -162,7 +164,8 @@ - -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../../nxcompshad \ - -I../../../../extras/Mesa/include \ - -I$(EXTINCSRC) -I$(XINCLUDESRC) \ -- $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) -+ $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ -+ `pkg-config --cflags-only-I libxml-2.0` - #endif - #endif - ---- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c -@@ -28,8 +28,15 @@ - #include "Keystroke.h" - #include "Drawable.h" - -+#include <unistd.h> -+ -+#include <libxml/parser.h> -+#include <libxml/tree.h> -+ - extern Bool nxagentWMIsRunning; - extern Bool nxagentIpaq; -+extern char *nxagentKeystrokeFile; -+Bool nxagentKeystrokeFileParsed = False; - - #ifdef NX_DEBUG_INPUT - int nxagentDebugInputDevices = 0; -@@ -47,297 +54,528 @@ - #undef DEBUG - #undef DUMP - --int nxagentCheckSpecialKeystroke(XKeyEvent *X, enum HandleEventResult *result) --{ -- KeySym sym; -- int index = 0; - -- *result = doNothing; -+/* this table is used to parse actions given on the command line or in the -+ * config file, therefore indices have to match the enum in Keystroke.h */ -+char * nxagentSpecialKeystrokeNames[] = { -+ "end_marker", -+ "close_session", -+ "switch_all_screens", -+ "minimize", -+ "left", -+ "up", -+ "right", -+ "down", -+ "resize", -+ "defer", -+ "ignore", -+ "force_synchronization", -+ -+ "debug_tree", -+ "regions_on_screen", -+ "test_input", -+ "deactivate_input_devices_grab", -+ -+ "fullscreen", -+ "viewport_move_left", -+ "viewport_move_up", -+ "viewport_move_right", -+ "viewport_move_down", -+ NULL, -+}; -+ -+struct nxagentSpecialKeystrokeMap default_map[] = { -+ /* stroke, modifierMask, modifierAltMeta, keysym */ -+ {KEYSTROKE_DEBUG_TREE, ControlMask, 1, XK_q}, -+ {KEYSTROKE_DEBUG_TREE, ControlMask, 1, XK_Q}, -+ {KEYSTROKE_CLOSE_SESSION, ControlMask, 1, XK_t}, -+ {KEYSTROKE_CLOSE_SESSION, ControlMask, 1, XK_T}, -+ {KEYSTROKE_SWITCH_ALL_SCREENS, ControlMask, 1, XK_f}, -+ {KEYSTROKE_SWITCH_ALL_SCREENS, ControlMask, 1, XK_F}, -+ {KEYSTROKE_MINIMIZE, ControlMask, 1, XK_m}, -+ {KEYSTROKE_MINIMIZE, ControlMask, 1, XK_M}, -+ {KEYSTROKE_LEFT, ControlMask, 1, XK_Left}, -+ {KEYSTROKE_LEFT, ControlMask, 1, XK_KP_Left}, -+ {KEYSTROKE_UP, ControlMask, 1, XK_Up}, -+ {KEYSTROKE_UP, ControlMask, 1, XK_KP_Up}, -+ {KEYSTROKE_RIGHT, ControlMask, 1, XK_Right}, -+ {KEYSTROKE_RIGHT, ControlMask, 1, XK_KP_Right}, -+ {KEYSTROKE_DOWN, ControlMask, 1, XK_Down}, -+ {KEYSTROKE_DOWN, ControlMask, 1, XK_KP_Down}, -+ {KEYSTROKE_RESIZE, ControlMask, 1, XK_r}, -+ {KEYSTROKE_RESIZE, ControlMask, 1, XK_R}, -+ {KEYSTROKE_DEFER, ControlMask, 1, XK_e}, -+ {KEYSTROKE_DEFER, ControlMask, 1, XK_E}, -+ {KEYSTROKE_IGNORE, ControlMask, 1, XK_BackSpace}, -+ {KEYSTROKE_IGNORE, 0, 0, XK_Terminate_Server}, -+ {KEYSTROKE_FORCE_SYNCHRONIZATION, ControlMask, 1, XK_j}, -+ {KEYSTROKE_FORCE_SYNCHRONIZATION, ControlMask, 1, XK_J}, -+ {KEYSTROKE_REGIONS_ON_SCREEN, ControlMask, 1, XK_a}, -+ {KEYSTROKE_REGIONS_ON_SCREEN, ControlMask, 1, XK_A}, -+ {KEYSTROKE_TEST_INPUT, ControlMask, 1, XK_x}, -+ {KEYSTROKE_TEST_INPUT, ControlMask, 1, XK_X}, -+ {KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB, ControlMask, 1, XK_y}, -+ {KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB, ControlMask, 1, XK_Y}, -+ {KEYSTROKE_FULLSCREEN, ControlMask | ShiftMask, 1, XK_f}, -+ {KEYSTROKE_FULLSCREEN, ControlMask | ShiftMask, 1, XK_F}, -+ {KEYSTROKE_VIEWPORT_MOVE_LEFT, ControlMask | ShiftMask, 1, XK_Left}, -+ {KEYSTROKE_VIEWPORT_MOVE_LEFT, ControlMask | ShiftMask, 1, XK_KP_Left}, -+ {KEYSTROKE_VIEWPORT_MOVE_UP, ControlMask | ShiftMask, 1, XK_Up}, -+ {KEYSTROKE_VIEWPORT_MOVE_UP, ControlMask | ShiftMask, 1, XK_KP_Up}, -+ {KEYSTROKE_VIEWPORT_MOVE_RIGHT, ControlMask | ShiftMask, 1, XK_Right}, -+ {KEYSTROKE_VIEWPORT_MOVE_RIGHT, ControlMask | ShiftMask, 1, XK_KP_Right}, -+ {KEYSTROKE_VIEWPORT_MOVE_DOWN, ControlMask | ShiftMask, 1, XK_Down}, -+ {KEYSTROKE_VIEWPORT_MOVE_DOWN, ControlMask | ShiftMask, 1, XK_KP_Down}, -+ {KEYSTROKE_END_MARKER, 0, 0, 0}, -+}; -+struct nxagentSpecialKeystrokeMap *map = default_map; - -- /* -- * I don't know how much hard work is doing this operation. -- * Do we need a cache ? -+static int modifier_matches(unsigned int mask, int compare_alt_meta, unsigned int state) -+{ -+ /* nxagentAltMetaMask needs special handling -+ * it seems to me its an and-ed mask of all possible meta and alt keys -+ * somehow... -+ * -+ * otherwise this function would be just a simple bitop - */ -+ int ret = 1; - -- sym = XKeycodeToKeysym(nxagentDisplay, X -> keycode, index); -+ if (compare_alt_meta) { -+ if (! (state & nxagentAltMetaMask)) { -+ ret = 0; -+ } - -- if (sym == XK_VoidSymbol || sym == NoSymbol) -- { -- return 0; -+ mask &= ~nxagentAltMetaMask; - } - -- #ifdef TEST -- fprintf(stderr, "nxagentCheckSpecialKeystroke: got code %x - state %x - sym %lx\n", -- X -> keycode, X -> state, sym); -- #endif -- -- /* -- * Check special keys. -- */ -- -- /* -- * FIXME: We should use the keysym instead that the keycode -- * here. -- */ -+ /* all modifiers except meta/alt have to match exactly, extra bits are evil */ -+ if ((mask & state) != mask) { -+ ret = 0; -+ } - -- if (X -> keycode == 130 && nxagentIpaq) -- { -- *result = doStartKbd; -+ return ret; -+} - -- return 1; -- } -+static int read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystrokeMap *ret) -+{ -+ int successful = 0; -+ struct nxagentSpecialKeystrokeMap new = {0, 0, 0, 0}; -+ xmlAttr *attr; - -- if ((X -> state & nxagentAltMetaMask) && -- ((X -> state & (ControlMask | ShiftMask)) == ControlMask)) -+ for (attr = node->properties; attr; attr = attr->next) - { -- switch (sym) -+ /* ignore attributes without data (which should never happen anyways) */ -+ if (attr->children->content == NULL) - { -- #ifdef DEBUG_TREE -- -- case XK_q: -- case XK_Q: -- { -- *result = doDebugTree; -- -- break; -- } -- -- #endif /* DEBUG_TREE */ -- -- case XK_t: -- case XK_T: -- { -- *result = doCloseSession; -- -- break; -- } -- case XK_f: -- case XK_F: -+ char *aname = (attr->name)?(attr->name):"unknown"; -+ fprintf(stderr, "attribute %s with NULL value", aname); -+ continue; -+ } -+ if (strcmp((char *)attr->name, "action") == 0) -+ { -+ int i; -+ for (i = 0; nxagentSpecialKeystrokeNames[i] != NULL; i++) - { -- if (nxagentOption(Rootless) == False) -+ if (strcmp(nxagentSpecialKeystrokeNames[i],(char *)attr->children->content) == 0) - { -- *result = doSwitchAllScreens; -+ /* this relies on the values of enum nxagentSpecialKeystroke and the -+ * indices of nxagentSpecialKeystrokeNames being in sync */ -+ new.stroke = i; -+ break; - } -- -- break; - } -- case XK_m: -- case XK_M: -+ continue; -+ } -+ else if (strcmp((char *)attr->name, "key") == 0) -+ { -+ new.keysym = XStringToKeysym((char *)attr->children->content); -+ /* NoSymbol is usually 0, but could there be weird implementations? */ -+ if (new.keysym == NoSymbol) - { -- if (nxagentOption(Rootless) == False) -- { -- *result = doMinimize; -- } -- -- break; -+ new.keysym = 0; - } -- case XK_Left: -- case XK_KP_Left: -- { -- if (nxagentOption(Rootless) == False && -- nxagentOption(DesktopResize) == False) -- { -- *result = doViewportLeft; -- } -+ continue; -+ } - -- break; -- } -- case XK_Up: -- case XK_KP_Up: -- { -- if (nxagentOption(Rootless) == False && -- nxagentOption(DesktopResize) == False) -- { -- *result = doViewportUp; -- } -+ /* ignore attributes with value="0" or "false", everything else is interpreted as true */ -+ if (strcmp((char *)attr->children->content, "0") == 0 || strcmp((char *)attr->children->content, "false") == 0) -+ continue; - -- break; -- } -- case XK_Right: -- case XK_KP_Right: -- { -- if (nxagentOption(Rootless) == False && -- nxagentOption(DesktopResize) == False) -- { -- *result = doViewportRight; -- } -+ if (strcmp((char *)attr->name, "Mod1") == 0) -+ { -+ new.modifierMask |= Mod1Mask; -+ } -+ else if (strcmp((char *)attr->name, "Mod2") == 0) -+ { -+ new.modifierMask |= Mod2Mask; -+ } -+ else if (strcmp((char *)attr->name, "Mod3") == 0) -+ { -+ new.modifierMask |= Mod3Mask; -+ } -+ else if (strcmp((char *)attr->name, "Mod4") == 0) -+ { -+ new.modifierMask |= Mod4Mask; -+ } -+ else if (strcmp((char *)attr->name, "Control") == 0) -+ { -+ new.modifierMask |= ControlMask; -+ } -+ else if (strcmp((char *)attr->name, "Shift") == 0) -+ { -+ new.modifierMask |= ShiftMask; -+ } -+ else if (strcmp((char *)attr->name, "Lock") == 0) -+ { -+ new.modifierMask |= LockMask; -+ } -+ else if (strcmp((char *)attr->name, "AltMeta") == 0) -+ { -+ new.modifierAltMeta = 1; -+ } -+ } - -- break; -- } -- case XK_Down: -- case XK_KP_Down: -- { -- if (nxagentOption(Rootless) == 0 && -- nxagentOption(DesktopResize) == 0) -- { -- *result = doViewportDown; -- } -+ if (new.stroke != 0 && new.keysym != 0) -+ { -+ /* keysym and stroke are required, everything else is optional */ -+ successful = 1; -+ memcpy(ret, &new, sizeof(struct nxagentSpecialKeystrokeMap)); -+ } -+ return successful; -+} - -- break; -- } -- case XK_R: -- case XK_r: -- { -- if (nxagentOption(Rootless) == 0) -- { -- *result = doSwitchResizeMode; -- } -+/* -+ * searches a keystroke xml file -+ * -+ * search order: -+ * - '-keystrokefile' commandline parameter -+ * - $NXAGENT_KEYSTROKEFILE environment variable -+ * - $HOME/.nx/config/keystrokes.cfg -+ * - /etc/nxagent/keystrokes.cfg -+ * - hardcoded traditional NX default settings -+ */ -+static void parse_keystroke_file(void) -+{ -+ char *filename = NULL; - -- break; -- } -- case XK_E: -- case XK_e: -- { -- *result = doSwitchDeferMode; -+ char *homefile = "/.nx/config/keystrokes.cfg"; -+ char *etcfile = "/etc/nxagent/keystrokes.cfg"; - -- break; -+ if (nxagentKeystrokeFile != NULL && access(nxagentKeystrokeFile, R_OK) == 0) -+ { -+ filename = strdup(nxagentKeystrokeFile); -+ if (filename == NULL) -+ { -+ fprintf(stderr, "malloc failed"); -+ exit(EXIT_FAILURE); -+ } -+ } -+ else if ((filename = getenv("NXAGENT_KEYSTROKEFILE")) != NULL && access(filename, R_OK) == 0) -+ { -+ filename = strdup(filename); -+ if (filename == NULL) -+ { -+ fprintf(stderr, "malloc failed"); -+ exit(EXIT_FAILURE); -+ } -+ } -+ else -+ { -+ char *homedir = getenv("HOME"); -+ filename = NULL; -+ if (homedir != NULL) -+ { -+ homedir = strdup(homedir); -+ if (homedir == NULL) -+ { -+ fprintf(stderr, "malloc failed"); -+exit(EXIT_FAILURE); - } -- case XK_BackSpace: -- case XK_Terminate_Server: -+ filename = calloc(1, strlen(homefile) + strlen(homedir) + 1); -+ if (filename == NULL) - { -- /* -- * Discard Ctrl-Alt-BackSpace key. -- */ -- -- return 1; -- -- break; -+ fprintf(stderr, "malloc failed"); -+ exit(EXIT_FAILURE); - } -- -- case XK_J: -- case XK_j: -+ strcpy(filename, homedir); -+ strcpy(filename + strlen(homedir), homefile); -+ if (homedir) - { -- nxagentForceSynchronization = 1; -- -- return 1; -+ free(homedir); - } -+ } - -- #ifdef DUMP -- -- case XK_A: -- case XK_a: -+ if (access(filename, R_OK) == 0) -+ { -+ /* empty */ -+ } -+ else if (access(etcfile, R_OK) == 0) -+ { -+ if (filename) -+ free(filename); -+ filename = strdup(etcfile); -+ if (filename == NULL) - { -- /* -- * Used to test the lazy encoding. -- */ -- -- nxagentRegionsOnScreen(); -- -- return 1; -+ fprintf(stderr, "malloc failed"); -+ exit(EXIT_FAILURE); - } -+ } -+ else -+ { -+ if (filename) -+free(filename); -+ filename = NULL; -+ } -+ } - -- #endif -- -- #ifdef NX_DEBUG_INPUT -+ /* now we know which file to read, if any */ -+ if (filename) -+ { -+ xmlDoc *doc = NULL; -+ xmlNode *root = NULL; -+ LIBXML_TEST_VERSION -+ doc = xmlReadFile(filename, NULL, 0); -+ if (doc != NULL) -+ { -+ xmlNode *cur = NULL; -+ root = xmlDocGetRootElement(doc); - -- case XK_X: -- case XK_x: -+ for (cur = root; cur; cur = cur->next) - { -- /* -- * Used to test the input devices state. -- */ -+ if (cur->type == XML_ELEMENT_NODE && strcmp((char *)cur->name, "keystrokes") == 0) -+{ -+ xmlNode *bindings = NULL; -+ int num = 0; -+ int idx = 0; - -- if (X -> type == KeyPress) -- { -- if (nxagentDebugInputDevices == 0) -+ for (bindings = cur->children; bindings; bindings = bindings->next) - { -- fprintf(stderr, "Info: Turning input devices debug ON.\n"); -- -- nxagentDebugInputDevices = 1; -+ if (bindings->type == XML_ELEMENT_NODE && strcmp((char *)bindings->name, "keystroke") == 0) -+ { -+ num++; -+ } - } -- else -+ map = calloc((num + 1), sizeof(struct nxagentSpecialKeystrokeMap)); -+ if (map == NULL) - { -- fprintf(stderr, "Info: Turning input devices debug OFF.\n"); -- -- nxagentDebugInputDevices = 0; -- -- nxagentLastInputDevicesDumpTime = 0; -+ fprintf(stderr, "malloc failed"); -+ exit(EXIT_FAILURE); - } -- } -- -- return 1; -- } - -- case XK_Y: -- case XK_y: -- { -- /* -- * Used to deactivate input devices grab. -- */ -+ for (bindings = cur->children; bindings; bindings = bindings->next) -+ { -+ if (bindings->type == XML_ELEMENT_NODE && strcmp((char *)bindings->name, "keystroke") == 0) -+ { -+ int res = 0; -+ res = read_binding_from_xmlnode(bindings, &(map[idx])); -+ if (res) -+ idx++; -+ } -+ } - -- if (X -> type == KeyPress) -- { -- nxagentDeactivateInputDevicesGrabs(); -+ map[idx].stroke = KEYSTROKE_END_MARKER; - } -- -- return 1; - } - -+ xmlFreeDoc(doc); -+ xmlCleanupParser(); -+ } -+ else -+ { -+ #ifdef DEBUG -+ fprintf("XML parsing for %s failed\n", filename); - #endif - } -+ free(filename); - } -- else if ((X -> state & nxagentAltMetaMask) && -- ((X -> state & (ControlMask | ShiftMask)) == (ControlMask | -- ShiftMask))) -+} -+ -+static enum nxagentSpecialKeystroke find_keystroke(XKeyEvent *X) -+{ -+ KeySym keysym = XKeycodeToKeysym(nxagentDisplay, X->keycode, 0); -+ struct nxagentSpecialKeystrokeMap *cur = map; -+ -+ if (! nxagentKeystrokeFileParsed) - { -- switch (sym) -- { -- case XK_f: -- case XK_F: -- { -- if (nxagentOption(Rootless) == 0) -- { -- *result = doSwitchFullscreen; -- } -+ parse_keystroke_file(); -+ nxagentKeystrokeFileParsed = True; -+ } - -- break; -- } -- case XK_Left: -- case XK_KP_Left: -- { -- if (nxagentOption(Rootless) == 0 && -- nxagentOption(DesktopResize) == 0) -- { -- *result = doViewportMoveLeft; -- } -+ enum nxagentSpecialKeystroke ret = KEYSTROKE_NOTHING; - -- break; -- } -- case XK_Up: -- case XK_KP_Up: -- { -- if (nxagentOption(Rootless) == 0 && -- nxagentOption(DesktopResize) == 0) -- { -- *result = doViewportMoveUp; -- } -+ while (cur->stroke != KEYSTROKE_END_MARKER) { -+ if (cur->keysym == keysym && modifier_matches(cur->modifierMask, cur->modifierAltMeta, X->state)) { -+ return cur->stroke; -+ } -+ cur++; -+ } - -- break; -- } -- case XK_Right: -- case XK_KP_Right: -- { -- if (nxagentOption(Rootless) == 0 && -- nxagentOption(DesktopResize) == 0) -- { -- *result = doViewportMoveRight; -- } -+ return ret; -+} - -- break; -- } -- case XK_Down: -- case XK_KP_Down: -- { -- if (nxagentOption(Rootless) == 0 && -- nxagentOption(DesktopResize) == 0) -- { -- *result = doViewportMoveDown; -- } -+int nxagentCheckSpecialKeystroke(XKeyEvent *X, enum HandleEventResult *result) -+{ -+ KeySym sym; -+ int index = 0; -+ enum nxagentSpecialKeystroke stroke = find_keystroke(X); - -- break; -- } -- } -+ *result = doNothing; -+ -+ /* -+ * I don't know how much hard work is doing this operation. -+ * Do we need a cache ? -+ */ -+ -+ sym = XKeycodeToKeysym(nxagentDisplay, X -> keycode, index); -+ -+ if (sym == XK_VoidSymbol || sym == NoSymbol) -+ { -+ return 0; - } - -+ #ifdef TEST -+ fprintf(stderr, "nxagentCheckSpecialKeystroke: got code %x - state %x - sym %lx\n", -+ X -> keycode, X -> state, sym); -+ #endif -+ -+ /* -+ * Check special keys. -+ */ -+ -+ /* -+ * FIXME: We should use the keysym instead that the keycode -+ * here. -+ */ -+ -+ if (X -> keycode == 130 && nxagentIpaq) -+ { -+ *result = doStartKbd; -+ -+ return 1; -+ } -+ -+ switch (stroke) { -+ case KEYSTROKE_DEBUG_TREE: -+ #ifdef DEBUG_TREE -+ *result = doDebugTree; -+ #endif -+ break; -+ case KEYSTROKE_CLOSE_SESSION: -+ *result = doCloseSession; -+ break; -+ case KEYSTROKE_SWITCH_ALL_SCREENS: -+ if (nxagentOption(Rootless) == False) { -+ *result = doSwitchAllScreens; -+ } -+ break; -+ case KEYSTROKE_MINIMIZE: -+ if (nxagentOption(Rootless) == False) { -+ *result = doMinimize; -+ } -+ break; -+ case KEYSTROKE_LEFT: -+ if (nxagentOption(Rootless) == False && -+ nxagentOption(DesktopResize) == False) { -+ *result = doViewportLeft; -+ } -+ break; -+ case KEYSTROKE_UP: -+ if (nxagentOption(Rootless) == False && -+ nxagentOption(DesktopResize) == False) { -+ *result = doViewportUp; -+ } -+ break; -+ case KEYSTROKE_RIGHT: -+ if (nxagentOption(Rootless) == False && -+ nxagentOption(DesktopResize) == False) { -+ *result = doViewportRight; -+ } -+ break; -+ case KEYSTROKE_DOWN: -+ if (nxagentOption(Rootless) == False && -+ nxagentOption(DesktopResize) == False) { -+ *result = doViewportDown; -+ } -+ break; -+ case KEYSTROKE_RESIZE: -+ if (nxagentOption(Rootless) == False) { -+ *result = doSwitchResizeMode; -+ } -+ break; -+ case KEYSTROKE_DEFER: -+ *result = doSwitchDeferMode; -+ break; -+ case KEYSTROKE_IGNORE: -+ /* this is used e.g. to ignore C-A-Backspace aka XK_Terminate_Server */ -+ return 1; -+ break; -+ case KEYSTROKE_FORCE_SYNCHRONIZATION: -+ nxagentForceSynchronization = 1; -+ break; -+ case KEYSTROKE_REGIONS_ON_SCREEN: -+ #ifdef DUMP -+ nxagentRegionsOnScreen(); -+ #endif -+ break; -+ case KEYSTROKE_TEST_INPUT: -+ /* -+ * Used to test the input devices state. -+ */ -+ #ifdef NX_DEBUG_INPUT -+ if (X -> type == KeyPress) { -+ if (nxagentDebugInputDevices == 0) { -+ fprintf(stderr, "Info: Turning input devices debug ON.\n"); -+ nxagentDebugInputDevices = 1; -+ } else { -+ fprintf(stderr, "Info: Turning input devices debug OFF.\n"); -+ nxagentDebugInputDevices = 0; -+ nxagentLastInputDevicesDumpTime = 0; -+ } -+ } -+ return 1; -+ #endif -+ break; -+ case KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB: -+ #ifdef NX_DEBUG_INPUT -+ if (X->type == KeyPress) { -+ nxagentDeactivateInputDevicesGrab(); -+ } -+ return 1; -+ #endif -+ break; -+ case KEYSTROKE_FULLSCREEN: -+ if (nxagentOption(Rootless) == 0) { -+ *result = doSwitchFullscreen; -+ } -+ break; -+ case KEYSTROKE_VIEWPORT_MOVE_LEFT: -+ if (nxagentOption(Rootless) == 0 && -+ nxagentOption(DesktopResize) == 0) { -+ *result = doViewportMoveLeft; -+ } -+ break; -+ case KEYSTROKE_VIEWPORT_MOVE_UP: -+ if (nxagentOption(Rootless) == 0 && -+ nxagentOption(DesktopResize) == 0) { -+ *result = doViewportMoveUp; -+ } -+ break; -+ case KEYSTROKE_VIEWPORT_MOVE_RIGHT: -+ if (nxagentOption(Rootless) == 0 && -+ nxagentOption(DesktopResize) == 0) { -+ *result = doViewportMoveRight; -+ } -+ break; -+ case KEYSTROKE_VIEWPORT_MOVE_DOWN: -+ if (nxagentOption(Rootless) == 0 && -+ nxagentOption(DesktopResize) == 0) { -+ *result = doViewportMoveDown; -+ } -+ break; -+ case KEYSTROKE_NOTHING: /* do nothing. difference to KEYSTROKE_IGNORE is the return value */ -+ case KEYSTROKE_END_MARKER: /* just to make gcc STFU */ -+ case KEYSTROKE_MAX: -+ break; -+ } - return (*result == doNothing) ? 0 : 1; - } ---- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h -+++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h -@@ -24,4 +24,51 @@ - - unsigned int nxagentAltMetaMask; - -+/* keep this sorted, do not rely on any numerical value in this enum, and be aware -+ * that KEYSTROKE_MAX may be used in a malloc */ -+ -+/* also be aware that if changing any numerical values, you also need to change values -+ * Keystroke.c nxagentSpecialKeystrokeNames */ -+enum nxagentSpecialKeystroke { -+ /* 0 is used as end marker */ -+ KEYSTROKE_END_MARKER = 0, -+ KEYSTROKE_CLOSE_SESSION = 1, -+ KEYSTROKE_SWITCH_ALL_SCREENS = 2, -+ KEYSTROKE_MINIMIZE = 3, -+ KEYSTROKE_LEFT = 4, -+ KEYSTROKE_UP = 5, -+ KEYSTROKE_RIGHT = 6, -+ KEYSTROKE_DOWN = 7, -+ KEYSTROKE_RESIZE = 8, -+ KEYSTROKE_DEFER = 9, -+ KEYSTROKE_IGNORE = 10, -+ KEYSTROKE_FORCE_SYNCHRONIZATION = 11, -+ -+ /* stuff used for debugging, probably not useful for most people */ -+ KEYSTROKE_DEBUG_TREE = 12, -+ KEYSTROKE_REGIONS_ON_SCREEN = 13, -+ KEYSTROKE_TEST_INPUT = 14, -+ KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB = 15, -+ -+ KEYSTROKE_FULLSCREEN = 16, -+ KEYSTROKE_VIEWPORT_MOVE_LEFT = 17, -+ KEYSTROKE_VIEWPORT_MOVE_UP = 18, -+ KEYSTROKE_VIEWPORT_MOVE_RIGHT = 19, -+ KEYSTROKE_VIEWPORT_MOVE_DOWN = 20, -+ -+ KEYSTROKE_NOTHING = 21, -+ -+ /* insert more here, increment KEYSTROKE_MAX accordingly. -+ * then update string translation below */ -+ -+ KEYSTROKE_MAX=22, -+}; -+ -+struct nxagentSpecialKeystrokeMap { -+ enum nxagentSpecialKeystroke stroke; -+ unsigned int modifierMask; /* everything except alt/meta */ -+ int modifierAltMeta; /* modifier combination should include alt/meta */ -+ KeySym keysym; -+}; -+ - #endif /* __Keystroke_H__ */ ---- /dev/null -+++ b/README.keystrokes -@@ -0,0 +1,83 @@ -+Configurable keybindings in nxagent -+ -+Keybindings in the redistributed x2go version of nxagent can now be configured -+by the user. This is done via a configuration file. -+ -+File location -+------------- -+ -+nxagent searches for the configuration file in the following order: -+- in the location given by the '-keystrokefile' command line parameter -+- in the location given by the NXAGENT_KEYSTROKEFILE environment variable -+- in ~/.nx/config/keystrokes.cfg -+- in /etc/nxagent/keystrokes.cfg -+ -+If none of those files is accessible, the default configuration is used which -+is the same as the old, traditional nxagent keybindings. -+ -+File format -+----------- -+ -+The configuration file is XML with the following format: -+ -+<!DOCTYPE NXKeystroke> -+<keystrokes> -+<keystroke action="fullscreen" AltMeta="1" Control="1" key="b" /> -+<keystroke action="minimize" AltMeta="1" Control="1" key="space" /> -+<keystroke action="minimize" key="Escape" Shift="1" /> -+<keystroke action="close_session" key="F7" /> -+<keystroke action="fullscreen" key="F7" Mod1="1" /> -+<keystroke action="fullscreen" key="F6" Mod1="1" /> -+<keystroke action="force_synchronization" key="f" /> -+<keystroke action="fullscreen" key="space" Mod1="0" Mod2="0" Control="0" Shift="0" AltMeta="0" /> -+</keystrokes> -+ -+Each 'action' defines an action to be executed when receiving that keystroke. A -+list of possible actions is given below. Some of those actions are only -+available with debug builds of nxagent. -+ -+Keys are given as a combination of 'key' and (optionally) a number of -+modifiers. The key attribute is evaluated into a X11 key via the usual -+XStringToKeysym function. A list of possible keys can be found in -+/usr/include/X11/keysymdef.h, the names are specified without the leading -+'XK_'. Evaluation is case-sensitive, so, 'space' and 'Escape' will work while -+'Space' and 'escape' won't. -+ -+Modifiers are given as boolean attributes, possible modifiers are Mod1, Mod2, -+Mod3, Mod4, Control, Shift, Lock. Sensible combinations strongly depend on your -+keyboard configuration, but usually you will need Mod1 and Control. Boolean in -+this context means '0', 'false' and an unspecified attribute are false, anything -+else is considered true. -+ -+Everything in this file is case-sensitive. Unknown lines are ignored. -+Keybindings are evaluated from top to bottom, so if a keybinding matches, other -+keybindings further down will be ignored. The contents of the file replaces the -+default keybindings, and only one file is read, no merging between different -+configuration files is done. This also means that an empty or invalid configuration -+file deactivates all keybindings. -+ -+List of possible 'action' attributes: -+------------------------------------- -+ -+close_session -+switch_all_screens -+minimize -+left -+up -+right -+down -+resize -+defer -+ignore -+fullscreen -+viewport_move_left -+viewport_move_up -+viewport_move_right -+viewport_move_down -+ -+Only in builds with certain debugging options enabled, ignored otherwise: -+force_synchronization -+debug_tree -+regions_on_screen -+test_input -+deactivate_input_devices_grab ---- a/nx-X11/programs/Xserver/hw/nxagent/Args.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c -@@ -149,6 +149,8 @@ - - char nxagentVerbose = 0; - -+char *nxagentKeystrokeFile = NULL; -+ - int ddxProcessArgument(int argc, char *argv[], int i) - { - /* -@@ -1022,6 +1024,20 @@ - return 1; - } - -+ if (!strcmp(argv[i], "-keystrokefile")) -+ { -+ if (i + 1 < argc) -+ { -+ if (NULL != (nxagentKeystrokeFile = strdup(argv[i + 1]))) -+ { -+ return 2; -+ } else { -+ FatalError("malloc failed"); -+ } -+ } -+ return 0; -+ } -+ - return 0; - } - ---- a/nx-X11/programs/Xserver/hw/nxagent/Args.h -+++ b/nx-X11/programs/Xserver/hw/nxagent/Args.h -@@ -83,4 +83,6 @@ - - extern int nxagentRemoteMajor; - -+extern char *nxagentKeystrokeFile; -+ - #endif /* __Args_H__ */ diff --git a/debian/patches/series b/debian/patches/series index 5780128..764a6fe 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ -320_nxagent_configurable-keystrokes.full.patch 321_nxagent_x2go-specific-keystroke-config.full.patch 400_nxcomp-version.full+lite.patch #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch diff --git a/nx-X11/programs/Xserver/Imakefile b/nx-X11/programs/Xserver/Imakefile index c803a99..c31102b 100644 --- a/nx-X11/programs/Xserver/Imakefile +++ b/nx-X11/programs/Xserver/Imakefile @@ -1013,15 +1013,18 @@ $(NXAGENTOBJS) $(NXAGENTLIBS) $(NXAGENTSYSLIBS):: $(NXAGENTDIRS) #if defined(SunArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lXrender -lXfixes \ - -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp + -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp \ +`pkg-config --libs libxml-2.0` #elif defined(cygwinArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext \ -lXcomp -lXcompext -lXrender -lX11 -lXext -lXcomposite -lXfixes \ - -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp + -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp \ +`pkg-config --libs libxml-2.0` #else NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -lXcomp -lXcompext -lXcompshad -lXrender -lX11 -lXext -lXfixes \ - -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp + -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp \ +`pkg-config --libs libxml-2.0` #endif #endif diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c index 7074a18..07e9670 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c @@ -149,6 +149,8 @@ static int nxagentGetDialogName(void); char nxagentVerbose = 0; +char *nxagentKeystrokeFile = NULL; + int ddxProcessArgument(int argc, char *argv[], int i) { /* @@ -1022,6 +1024,20 @@ int ddxProcessArgument(int argc, char *argv[], int i) return 1; } + if (!strcmp(argv[i], "-keystrokefile")) + { + if (i + 1 < argc) + { + if (NULL != (nxagentKeystrokeFile = strdup(argv[i + 1]))) + { + return 2; + } else { + FatalError("malloc failed"); + } + } + return 0; + } + return 0; } diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.h b/nx-X11/programs/Xserver/hw/nxagent/Args.h index 8f4d05d..85734be 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.h +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.h @@ -83,4 +83,6 @@ extern int nxagentUserDefinedFontPath; extern int nxagentRemoteMajor; +extern char *nxagentKeystrokeFile; + #endif /* __Args_H__ */ diff --git a/nx-X11/programs/Xserver/hw/nxagent/Imakefile b/nx-X11/programs/Xserver/hw/nxagent/Imakefile index a8e1621..d812c7f 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Imakefile +++ b/nx-X11/programs/Xserver/hw/nxagent/Imakefile @@ -142,7 +142,8 @@ INCLUDES = -I. -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../ -I../../miext/damage -I../../miext/cw \ -I../../GL/glx -I../../GL/include -I../../../../lib/GL/include -I../../Xext \ -I$(EXTINCSRC) -I$(XINCLUDESRC) \ - $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) + $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ + `pkg-config --cflags-only-I libxml-2.0` #ifdef SunArchitecture INCLUDES = -I. -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../../nxcompshad \ -I../../../../extras/Mesa/include \ @@ -152,7 +153,8 @@ INCLUDES = -I. -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../ -I../../GL/glx -I../../GL/include -I../../../../lib/GL/include -I../../Xext \ -I../../miext/damage -I../../miext/cw \ -I$(EXTINCSRC) -I$(XINCLUDESRC) \ - $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) + $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ + `pkg-config --cflags-only-I libxml-2.0` #else #ifdef cygwinArchitecture INCLUDES = -I. -I$(XBUILDINCDIR) -I$(FONTINCSRC) \ @@ -162,7 +164,8 @@ INCLUDES = -I. -I$(XBUILDINCDIR) -I$(FONTINCSRC) \ -I../../../../../nxcomp -I../../../../../nxcompext -I../../../../../nxcompshad \ -I../../../../extras/Mesa/include \ -I$(EXTINCSRC) -I$(XINCLUDESRC) \ - $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) + $(VFBINCLUDES) $(NXFONTINCLUDES) $(LIBXRANDRINCLUDES) \ + `pkg-config --cflags-only-I libxml-2.0` #endif #endif diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c index 6c6e477..d61c65b 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c @@ -28,8 +28,15 @@ #include "Keystroke.h" #include "Drawable.h" +#include <unistd.h> + +#include <libxml/parser.h> +#include <libxml/tree.h> + extern Bool nxagentWMIsRunning; extern Bool nxagentIpaq; +extern char *nxagentKeystrokeFile; +Bool nxagentKeystrokeFileParsed = False; #ifdef NX_DEBUG_INPUT int nxagentDebugInputDevices = 0; @@ -47,10 +54,370 @@ extern void nxagentDeactivateInputDevicesGrabs(); #undef DEBUG #undef DUMP + +/* this table is used to parse actions given on the command line or in the + * config file, therefore indices have to match the enum in Keystroke.h */ +char * nxagentSpecialKeystrokeNames[] = { + "end_marker", + "close_session", + "switch_all_screens", + "minimize", + "left", + "up", + "right", + "down", + "resize", + "defer", + "ignore", + "force_synchronization", + + "debug_tree", + "regions_on_screen", + "test_input", + "deactivate_input_devices_grab", + + "fullscreen", + "viewport_move_left", + "viewport_move_up", + "viewport_move_right", + "viewport_move_down", + NULL, +}; + +struct nxagentSpecialKeystrokeMap default_map[] = { + /* stroke, modifierMask, modifierAltMeta, keysym */ + {KEYSTROKE_DEBUG_TREE, ControlMask, 1, XK_q}, + {KEYSTROKE_DEBUG_TREE, ControlMask, 1, XK_Q}, + {KEYSTROKE_CLOSE_SESSION, ControlMask, 1, XK_t}, + {KEYSTROKE_CLOSE_SESSION, ControlMask, 1, XK_T}, + {KEYSTROKE_SWITCH_ALL_SCREENS, ControlMask, 1, XK_f}, + {KEYSTROKE_SWITCH_ALL_SCREENS, ControlMask, 1, XK_F}, + {KEYSTROKE_MINIMIZE, ControlMask, 1, XK_m}, + {KEYSTROKE_MINIMIZE, ControlMask, 1, XK_M}, + {KEYSTROKE_LEFT, ControlMask, 1, XK_Left}, + {KEYSTROKE_LEFT, ControlMask, 1, XK_KP_Left}, + {KEYSTROKE_UP, ControlMask, 1, XK_Up}, + {KEYSTROKE_UP, ControlMask, 1, XK_KP_Up}, + {KEYSTROKE_RIGHT, ControlMask, 1, XK_Right}, + {KEYSTROKE_RIGHT, ControlMask, 1, XK_KP_Right}, + {KEYSTROKE_DOWN, ControlMask, 1, XK_Down}, + {KEYSTROKE_DOWN, ControlMask, 1, XK_KP_Down}, + {KEYSTROKE_RESIZE, ControlMask, 1, XK_r}, + {KEYSTROKE_RESIZE, ControlMask, 1, XK_R}, + {KEYSTROKE_DEFER, ControlMask, 1, XK_e}, + {KEYSTROKE_DEFER, ControlMask, 1, XK_E}, + {KEYSTROKE_IGNORE, ControlMask, 1, XK_BackSpace}, + {KEYSTROKE_IGNORE, 0, 0, XK_Terminate_Server}, + {KEYSTROKE_FORCE_SYNCHRONIZATION, ControlMask, 1, XK_j}, + {KEYSTROKE_FORCE_SYNCHRONIZATION, ControlMask, 1, XK_J}, + {KEYSTROKE_REGIONS_ON_SCREEN, ControlMask, 1, XK_a}, + {KEYSTROKE_REGIONS_ON_SCREEN, ControlMask, 1, XK_A}, + {KEYSTROKE_TEST_INPUT, ControlMask, 1, XK_x}, + {KEYSTROKE_TEST_INPUT, ControlMask, 1, XK_X}, + {KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB, ControlMask, 1, XK_y}, + {KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB, ControlMask, 1, XK_Y}, + {KEYSTROKE_FULLSCREEN, ControlMask | ShiftMask, 1, XK_f}, + {KEYSTROKE_FULLSCREEN, ControlMask | ShiftMask, 1, XK_F}, + {KEYSTROKE_VIEWPORT_MOVE_LEFT, ControlMask | ShiftMask, 1, XK_Left}, + {KEYSTROKE_VIEWPORT_MOVE_LEFT, ControlMask | ShiftMask, 1, XK_KP_Left}, + {KEYSTROKE_VIEWPORT_MOVE_UP, ControlMask | ShiftMask, 1, XK_Up}, + {KEYSTROKE_VIEWPORT_MOVE_UP, ControlMask | ShiftMask, 1, XK_KP_Up}, + {KEYSTROKE_VIEWPORT_MOVE_RIGHT, ControlMask | ShiftMask, 1, XK_Right}, + {KEYSTROKE_VIEWPORT_MOVE_RIGHT, ControlMask | ShiftMask, 1, XK_KP_Right}, + {KEYSTROKE_VIEWPORT_MOVE_DOWN, ControlMask | ShiftMask, 1, XK_Down}, + {KEYSTROKE_VIEWPORT_MOVE_DOWN, ControlMask | ShiftMask, 1, XK_KP_Down}, + {KEYSTROKE_END_MARKER, 0, 0, 0}, +}; +struct nxagentSpecialKeystrokeMap *map = default_map; + +static int modifier_matches(unsigned int mask, int compare_alt_meta, unsigned int state) +{ + /* nxagentAltMetaMask needs special handling + * it seems to me its an and-ed mask of all possible meta and alt keys + * somehow... + * + * otherwise this function would be just a simple bitop + */ + int ret = 1; + + if (compare_alt_meta) { + if (! (state & nxagentAltMetaMask)) { + ret = 0; + } + + mask &= ~nxagentAltMetaMask; + } + + /* all modifiers except meta/alt have to match exactly, extra bits are evil */ + if ((mask & state) != mask) { + ret = 0; + } + + return ret; +} + +static int read_binding_from_xmlnode(xmlNode *node, struct nxagentSpecialKeystrokeMap *ret) +{ + int successful = 0; + struct nxagentSpecialKeystrokeMap new = {0, 0, 0, 0}; + xmlAttr *attr; + + for (attr = node->properties; attr; attr = attr->next) + { + /* ignore attributes without data (which should never happen anyways) */ + if (attr->children->content == NULL) + { + char *aname = (attr->name)?(attr->name):"unknown"; + fprintf(stderr, "attribute %s with NULL value", aname); + continue; + } + if (strcmp((char *)attr->name, "action") == 0) + { + int i; + for (i = 0; nxagentSpecialKeystrokeNames[i] != NULL; i++) + { + if (strcmp(nxagentSpecialKeystrokeNames[i],(char *)attr->children->content) == 0) + { + /* this relies on the values of enum nxagentSpecialKeystroke and the + * indices of nxagentSpecialKeystrokeNames being in sync */ + new.stroke = i; + break; + } + } + continue; + } + else if (strcmp((char *)attr->name, "key") == 0) + { + new.keysym = XStringToKeysym((char *)attr->children->content); + /* NoSymbol is usually 0, but could there be weird implementations? */ + if (new.keysym == NoSymbol) + { + new.keysym = 0; + } + continue; + } + + /* ignore attributes with value="0" or "false", everything else is interpreted as true */ + if (strcmp((char *)attr->children->content, "0") == 0 || strcmp((char *)attr->children->content, "false") == 0) + continue; + + if (strcmp((char *)attr->name, "Mod1") == 0) + { + new.modifierMask |= Mod1Mask; + } + else if (strcmp((char *)attr->name, "Mod2") == 0) + { + new.modifierMask |= Mod2Mask; + } + else if (strcmp((char *)attr->name, "Mod3") == 0) + { + new.modifierMask |= Mod3Mask; + } + else if (strcmp((char *)attr->name, "Mod4") == 0) + { + new.modifierMask |= Mod4Mask; + } + else if (strcmp((char *)attr->name, "Control") == 0) + { + new.modifierMask |= ControlMask; + } + else if (strcmp((char *)attr->name, "Shift") == 0) + { + new.modifierMask |= ShiftMask; + } + else if (strcmp((char *)attr->name, "Lock") == 0) + { + new.modifierMask |= LockMask; + } + else if (strcmp((char *)attr->name, "AltMeta") == 0) + { + new.modifierAltMeta = 1; + } + } + + if (new.stroke != 0 && new.keysym != 0) + { + /* keysym and stroke are required, everything else is optional */ + successful = 1; + memcpy(ret, &new, sizeof(struct nxagentSpecialKeystrokeMap)); + } + return successful; +} + +/* + * searches a keystroke xml file + * + * search order: + * - '-keystrokefile' commandline parameter + * - $NXAGENT_KEYSTROKEFILE environment variable + * - $HOME/.nx/config/keystrokes.cfg + * - /etc/nxagent/keystrokes.cfg + * - hardcoded traditional NX default settings + */ +static void parse_keystroke_file(void) +{ + char *filename = NULL; + + char *homefile = "/.nx/config/keystrokes.cfg"; + char *etcfile = "/etc/nxagent/keystrokes.cfg"; + + if (nxagentKeystrokeFile != NULL && access(nxagentKeystrokeFile, R_OK) == 0) + { + filename = strdup(nxagentKeystrokeFile); + if (filename == NULL) + { + fprintf(stderr, "malloc failed"); + exit(EXIT_FAILURE); + } + } + else if ((filename = getenv("NXAGENT_KEYSTROKEFILE")) != NULL && access(filename, R_OK) == 0) + { + filename = strdup(filename); + if (filename == NULL) + { + fprintf(stderr, "malloc failed"); + exit(EXIT_FAILURE); + } + } + else + { + char *homedir = getenv("HOME"); + filename = NULL; + if (homedir != NULL) + { + homedir = strdup(homedir); + if (homedir == NULL) + { + fprintf(stderr, "malloc failed"); +exit(EXIT_FAILURE); + } + filename = calloc(1, strlen(homefile) + strlen(homedir) + 1); + if (filename == NULL) + { + fprintf(stderr, "malloc failed"); + exit(EXIT_FAILURE); + } + strcpy(filename, homedir); + strcpy(filename + strlen(homedir), homefile); + if (homedir) + { + free(homedir); + } + } + + if (access(filename, R_OK) == 0) + { + /* empty */ + } + else if (access(etcfile, R_OK) == 0) + { + if (filename) + free(filename); + filename = strdup(etcfile); + if (filename == NULL) + { + fprintf(stderr, "malloc failed"); + exit(EXIT_FAILURE); + } + } + else + { + if (filename) +free(filename); + filename = NULL; + } + } + + /* now we know which file to read, if any */ + if (filename) + { + xmlDoc *doc = NULL; + xmlNode *root = NULL; + LIBXML_TEST_VERSION + doc = xmlReadFile(filename, NULL, 0); + if (doc != NULL) + { + xmlNode *cur = NULL; + root = xmlDocGetRootElement(doc); + + for (cur = root; cur; cur = cur->next) + { + if (cur->type == XML_ELEMENT_NODE && strcmp((char *)cur->name, "keystrokes") == 0) +{ + xmlNode *bindings = NULL; + int num = 0; + int idx = 0; + + for (bindings = cur->children; bindings; bindings = bindings->next) + { + if (bindings->type == XML_ELEMENT_NODE && strcmp((char *)bindings->name, "keystroke") == 0) + { + num++; + } + } + map = calloc((num + 1), sizeof(struct nxagentSpecialKeystrokeMap)); + if (map == NULL) + { + fprintf(stderr, "malloc failed"); + exit(EXIT_FAILURE); + } + + for (bindings = cur->children; bindings; bindings = bindings->next) + { + if (bindings->type == XML_ELEMENT_NODE && strcmp((char *)bindings->name, "keystroke") == 0) + { + int res = 0; + res = read_binding_from_xmlnode(bindings, &(map[idx])); + if (res) + idx++; + } + } + + map[idx].stroke = KEYSTROKE_END_MARKER; + } + } + + xmlFreeDoc(doc); + xmlCleanupParser(); + } + else + { + #ifdef DEBUG + fprintf("XML parsing for %s failed\n", filename); + #endif + } + free(filename); + } +} + +static enum nxagentSpecialKeystroke find_keystroke(XKeyEvent *X) +{ + KeySym keysym = XKeycodeToKeysym(nxagentDisplay, X->keycode, 0); + struct nxagentSpecialKeystrokeMap *cur = map; + + if (! nxagentKeystrokeFileParsed) + { + parse_keystroke_file(); + nxagentKeystrokeFileParsed = True; + } + + enum nxagentSpecialKeystroke ret = KEYSTROKE_NOTHING; + + while (cur->stroke != KEYSTROKE_END_MARKER) { + if (cur->keysym == keysym && modifier_matches(cur->modifierMask, cur->modifierAltMeta, X->state)) { + return cur->stroke; + } + cur++; + } + + return ret; +} + int nxagentCheckSpecialKeystroke(XKeyEvent *X, enum HandleEventResult *result) { KeySym sym; int index = 0; + enum nxagentSpecialKeystroke stroke = find_keystroke(X); *result = doNothing; @@ -87,257 +454,128 @@ int nxagentCheckSpecialKeystroke(XKeyEvent *X, enum HandleEventResult *result) return 1; } - if ((X -> state & nxagentAltMetaMask) && - ((X -> state & (ControlMask | ShiftMask)) == ControlMask)) - { - switch (sym) - { + switch (stroke) { + case KEYSTROKE_DEBUG_TREE: #ifdef DEBUG_TREE - - case XK_q: - case XK_Q: - { - *result = doDebugTree; - - break; - } - - #endif /* DEBUG_TREE */ - - case XK_t: - case XK_T: - { - *result = doCloseSession; - - break; - } - case XK_f: - case XK_F: - { - if (nxagentOption(Rootless) == False) - { - *result = doSwitchAllScreens; - } - - break; - } - case XK_m: - case XK_M: - { - if (nxagentOption(Rootless) == False) - { - *result = doMinimize; - } - - break; - } - case XK_Left: - case XK_KP_Left: - { - if (nxagentOption(Rootless) == False && - nxagentOption(DesktopResize) == False) - { - *result = doViewportLeft; - } - - break; - } - case XK_Up: - case XK_KP_Up: - { - if (nxagentOption(Rootless) == False && - nxagentOption(DesktopResize) == False) - { - *result = doViewportUp; - } - - break; + *result = doDebugTree; + #endif + break; + case KEYSTROKE_CLOSE_SESSION: + *result = doCloseSession; + break; + case KEYSTROKE_SWITCH_ALL_SCREENS: + if (nxagentOption(Rootless) == False) { + *result = doSwitchAllScreens; } - case XK_Right: - case XK_KP_Right: - { - if (nxagentOption(Rootless) == False && - nxagentOption(DesktopResize) == False) - { - *result = doViewportRight; - } - - break; + break; + case KEYSTROKE_MINIMIZE: + if (nxagentOption(Rootless) == False) { + *result = doMinimize; } - case XK_Down: - case XK_KP_Down: - { - if (nxagentOption(Rootless) == 0 && - nxagentOption(DesktopResize) == 0) - { - *result = doViewportDown; - } - - break; + break; + case KEYSTROKE_LEFT: + if (nxagentOption(Rootless) == False && + nxagentOption(DesktopResize) == False) { + *result = doViewportLeft; } - case XK_R: - case XK_r: - { - if (nxagentOption(Rootless) == 0) - { - *result = doSwitchResizeMode; - } - - break; + break; + case KEYSTROKE_UP: + if (nxagentOption(Rootless) == False && + nxagentOption(DesktopResize) == False) { + *result = doViewportUp; } - case XK_E: - case XK_e: - { - *result = doSwitchDeferMode; - - break; + break; + case KEYSTROKE_RIGHT: + if (nxagentOption(Rootless) == False && + nxagentOption(DesktopResize) == False) { + *result = doViewportRight; } - case XK_BackSpace: - case XK_Terminate_Server: - { - /* - * Discard Ctrl-Alt-BackSpace key. - */ - - return 1; - - break; + break; + case KEYSTROKE_DOWN: + if (nxagentOption(Rootless) == False && + nxagentOption(DesktopResize) == False) { + *result = doViewportDown; } - - case XK_J: - case XK_j: - { - nxagentForceSynchronization = 1; - - return 1; + break; + case KEYSTROKE_RESIZE: + if (nxagentOption(Rootless) == False) { + *result = doSwitchResizeMode; } - + break; + case KEYSTROKE_DEFER: + *result = doSwitchDeferMode; + break; + case KEYSTROKE_IGNORE: + /* this is used e.g. to ignore C-A-Backspace aka XK_Terminate_Server */ + return 1; + break; + case KEYSTROKE_FORCE_SYNCHRONIZATION: + nxagentForceSynchronization = 1; + break; + case KEYSTROKE_REGIONS_ON_SCREEN: #ifdef DUMP - - case XK_A: - case XK_a: - { - /* - * Used to test the lazy encoding. - */ - - nxagentRegionsOnScreen(); - - return 1; - } - + nxagentRegionsOnScreen(); #endif - + break; + case KEYSTROKE_TEST_INPUT: + /* + * Used to test the input devices state. + */ #ifdef NX_DEBUG_INPUT - - case XK_X: - case XK_x: - { - /* - * Used to test the input devices state. - */ - - if (X -> type == KeyPress) - { - if (nxagentDebugInputDevices == 0) - { - fprintf(stderr, "Info: Turning input devices debug ON.\n"); - - nxagentDebugInputDevices = 1; - } - else - { - fprintf(stderr, "Info: Turning input devices debug OFF.\n"); - - nxagentDebugInputDevices = 0; - - nxagentLastInputDevicesDumpTime = 0; - } + if (X -> type == KeyPress) { + if (nxagentDebugInputDevices == 0) { + fprintf(stderr, "Info: Turning input devices debug ON.\n"); + nxagentDebugInputDevices = 1; + } else { + fprintf(stderr, "Info: Turning input devices debug OFF.\n"); + nxagentDebugInputDevices = 0; + nxagentLastInputDevicesDumpTime = 0; } - - return 1; } - - case XK_Y: - case XK_y: - { - /* - * Used to deactivate input devices grab. - */ - - if (X -> type == KeyPress) - { - nxagentDeactivateInputDevicesGrabs(); - } - - return 1; + return 1; + #endif + break; + case KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB: + #ifdef NX_DEBUG_INPUT + if (X->type == KeyPress) { + nxagentDeactivateInputDevicesGrab(); } - + return 1; #endif - } - } - else if ((X -> state & nxagentAltMetaMask) && - ((X -> state & (ControlMask | ShiftMask)) == (ControlMask | - ShiftMask))) - { - switch (sym) - { - case XK_f: - case XK_F: - { - if (nxagentOption(Rootless) == 0) - { - *result = doSwitchFullscreen; - } - - break; + break; + case KEYSTROKE_FULLSCREEN: + if (nxagentOption(Rootless) == 0) { + *result = doSwitchFullscreen; } - case XK_Left: - case XK_KP_Left: - { - if (nxagentOption(Rootless) == 0 && - nxagentOption(DesktopResize) == 0) - { - *result = doViewportMoveLeft; - } - - break; + break; + case KEYSTROKE_VIEWPORT_MOVE_LEFT: + if (nxagentOption(Rootless) == 0 && + nxagentOption(DesktopResize) == 0) { + *result = doViewportMoveLeft; } - case XK_Up: - case XK_KP_Up: - { - if (nxagentOption(Rootless) == 0 && - nxagentOption(DesktopResize) == 0) - { - *result = doViewportMoveUp; - } - - break; + break; + case KEYSTROKE_VIEWPORT_MOVE_UP: + if (nxagentOption(Rootless) == 0 && + nxagentOption(DesktopResize) == 0) { + *result = doViewportMoveUp; } - case XK_Right: - case XK_KP_Right: - { - if (nxagentOption(Rootless) == 0 && - nxagentOption(DesktopResize) == 0) - { - *result = doViewportMoveRight; - } - - break; + break; + case KEYSTROKE_VIEWPORT_MOVE_RIGHT: + if (nxagentOption(Rootless) == 0 && + nxagentOption(DesktopResize) == 0) { + *result = doViewportMoveRight; } - case XK_Down: - case XK_KP_Down: - { - if (nxagentOption(Rootless) == 0 && - nxagentOption(DesktopResize) == 0) - { - *result = doViewportMoveDown; - } - - break; + break; + case KEYSTROKE_VIEWPORT_MOVE_DOWN: + if (nxagentOption(Rootless) == 0 && + nxagentOption(DesktopResize) == 0) { + *result = doViewportMoveDown; } - } + break; + case KEYSTROKE_NOTHING: /* do nothing. difference to KEYSTROKE_IGNORE is the return value */ + case KEYSTROKE_END_MARKER: /* just to make gcc STFU */ + case KEYSTROKE_MAX: + break; } - return (*result == doNothing) ? 0 : 1; } diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h index ef71a88..d9575c8 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h +++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.h @@ -24,4 +24,51 @@ extern int nxagentCheckSpecialKeystroke(XKeyEvent*, enum HandleEventResult*); unsigned int nxagentAltMetaMask; +/* keep this sorted, do not rely on any numerical value in this enum, and be aware + * that KEYSTROKE_MAX may be used in a malloc */ + +/* also be aware that if changing any numerical values, you also need to change values + * Keystroke.c nxagentSpecialKeystrokeNames */ +enum nxagentSpecialKeystroke { + /* 0 is used as end marker */ + KEYSTROKE_END_MARKER = 0, + KEYSTROKE_CLOSE_SESSION = 1, + KEYSTROKE_SWITCH_ALL_SCREENS = 2, + KEYSTROKE_MINIMIZE = 3, + KEYSTROKE_LEFT = 4, + KEYSTROKE_UP = 5, + KEYSTROKE_RIGHT = 6, + KEYSTROKE_DOWN = 7, + KEYSTROKE_RESIZE = 8, + KEYSTROKE_DEFER = 9, + KEYSTROKE_IGNORE = 10, + KEYSTROKE_FORCE_SYNCHRONIZATION = 11, + + /* stuff used for debugging, probably not useful for most people */ + KEYSTROKE_DEBUG_TREE = 12, + KEYSTROKE_REGIONS_ON_SCREEN = 13, + KEYSTROKE_TEST_INPUT = 14, + KEYSTROKE_DEACTIVATE_INPUT_DEVICES_GRAB = 15, + + KEYSTROKE_FULLSCREEN = 16, + KEYSTROKE_VIEWPORT_MOVE_LEFT = 17, + KEYSTROKE_VIEWPORT_MOVE_UP = 18, + KEYSTROKE_VIEWPORT_MOVE_RIGHT = 19, + KEYSTROKE_VIEWPORT_MOVE_DOWN = 20, + + KEYSTROKE_NOTHING = 21, + + /* insert more here, increment KEYSTROKE_MAX accordingly. + * then update string translation below */ + + KEYSTROKE_MAX=22, +}; + +struct nxagentSpecialKeystrokeMap { + enum nxagentSpecialKeystroke stroke; + unsigned int modifierMask; /* everything except alt/meta */ + int modifierAltMeta; /* modifier combination should include alt/meta */ + KeySym keysym; +}; + #endif /* __Keystroke_H__ */ -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit fea8fb5aeeeb77ecfd3e98791bd6f77a9782b588 Author: Horst Schirmeier <horst@schirmeier.com> Date: Fri Feb 13 13:06:53 2015 +0100 Adapt paths of keystrokes.cfg if nxagent runs as x2goagent (321_nxagent_x2go-specific-keystroke-config.full.patch). --- ...agent_x2go-specific-keystroke-config.full.patch | 25 -------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | 6 +++++ 3 files changed, 6 insertions(+), 26 deletions(-) diff --git a/debian/patches/321_nxagent_x2go-specific-keystroke-config.full.patch b/debian/patches/321_nxagent_x2go-specific-keystroke-config.full.patch deleted file mode 100644 index 795f10b..0000000 --- a/debian/patches/321_nxagent_x2go-specific-keystroke-config.full.patch +++ /dev/null @@ -1,25 +0,0 @@ -Description: Adapt paths of keystrokes.cfg if nxagent runs as x2goagent -Author: Horst Schirmeier <horst@schirmeier.com> - ---- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c -@@ -27,6 +27,7 @@ - #include "Options.h" - #include "Keystroke.h" - #include "Drawable.h" -+#include "Init.h" /* extern int nxagentX2go */ - - #include <unistd.h> - -@@ -261,6 +262,11 @@ static void parse_keystroke_file(void) - char *homefile = "/.nx/config/keystrokes.cfg"; - char *etcfile = "/etc/nxagent/keystrokes.cfg"; - -+ if (nxagentX2go) { -+ homefile = "/.x2go/config/keystrokes.cfg"; -+ etcfile = "/etc/x2go/keystrokes.cfg"; -+ } -+ - if (nxagentKeystrokeFile != NULL && access(nxagentKeystrokeFile, R_OK) == 0) - { - filename = strdup(nxagentKeystrokeFile); diff --git a/debian/patches/series b/debian/patches/series index 764a6fe..86575ec 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ -321_nxagent_x2go-specific-keystroke-config.full.patch 400_nxcomp-version.full+lite.patch #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch 600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c index d61c65b..404ed03 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c @@ -27,6 +27,7 @@ #include "Options.h" #include "Keystroke.h" #include "Drawable.h" +#include "Init.h" /* extern int nxagentX2go */ #include <unistd.h> @@ -261,6 +262,11 @@ static void parse_keystroke_file(void) char *homefile = "/.nx/config/keystrokes.cfg"; char *etcfile = "/etc/nxagent/keystrokes.cfg"; + if (nxagentX2go) { + homefile = "/.x2go/config/keystrokes.cfg"; + etcfile = "/etc/x2go/keystrokes.cfg"; + } + if (nxagentKeystrokeFile != NULL && access(nxagentKeystrokeFile, R_OK) == 0) { filename = strdup(nxagentKeystrokeFile); -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit d4d3fe0e6e77a58e68defc5895a589a681d7d092 Author: Nito Martinez <Nito@Qindel.ES> Date: Fri Feb 13 13:26:27 2015 +0100 Allow version 4-digit version comparison/handshake (400_nxcomp-version.full+lite.patch). --- debian/patches/400_nxcomp-version.full+lite.patch | 240 --------------------- debian/patches/series | 1 - nxcomp/Control.cpp | 40 +--- nxcomp/Control.h | 9 + nxcomp/Loop.cpp | 3 +- nxcomp/Makefile.in | 3 +- nxcomp/NX.h | 6 + 7 files changed, 26 insertions(+), 276 deletions(-) diff --git a/debian/patches/400_nxcomp-version.full+lite.patch b/debian/patches/400_nxcomp-version.full+lite.patch deleted file mode 100644 index 703cec8..0000000 --- a/debian/patches/400_nxcomp-version.full+lite.patch +++ /dev/null @@ -1,240 +0,0 @@ -Description: Allow version 4-digit version comparison/handshake -Author: Nito Martinez <Nito@Qindel.ES> ---- a/nxcomp/Control.cpp -+++ b/nxcomp/Control.cpp -@@ -15,6 +15,7 @@ - /* */ - /**************************************************************************/ - -+#include "NX.h" - #include "NXpack.h" - - #include "Control.h" -@@ -594,44 +595,17 @@ - RemoteVersionMajor = -1; - RemoteVersionMinor = -1; - RemoteVersionPatch = -1; -+ RemoteVersionMaintenancePatch = -1; - - CompatVersionMajor = -1; - CompatVersionMinor = -1; - CompatVersionPatch = -1; -+ CompatVersionMaintenancePatch = -1; - -- char version[32]; -- -- strcpy(version, VERSION); -- -- char *value; -- -- value = strtok(version, "."); -- -- for (int i = 0; value != NULL && i < 3; i++) -- { -- switch (i) -- { -- case 0: -- -- LocalVersionMajor = atoi(value); -- -- break; -- -- case 1: -- -- LocalVersionMinor = atoi(value); -- -- break; -- -- case 2: -- -- LocalVersionPatch = atoi(value); -- -- break; -- } -- -- value = strtok(NULL, "."); -- } -+ LocalVersionMajor = NXMajorVersion(); -+ LocalVersionMinor = NXMinorVersion(); -+ LocalVersionPatch = NXPatchVersion(); -+ LocalVersionMaintenancePatch = NXMaintenancePatchVersion(); - - #ifdef TEST - *logofs << "Control: Major version is " << LocalVersionMajor ---- a/nxcomp/Control.h -+++ b/nxcomp/Control.h -@@ -299,17 +299,26 @@ - // Version number of local and remote proxy. - // - -+ /* -+ * LocalVersionMaintenancePatch, RemoteVersionMaintenancePatch -+ * CompatVersionMaintenancePatch -+ * -+ * currently not used, for future compatibility checks -+ */ - int LocalVersionMajor; - int LocalVersionMinor; - int LocalVersionPatch; -+ int LocalVersionMaintenancePatch; - - int RemoteVersionMajor; - int RemoteVersionMinor; - int RemoteVersionPatch; -+ int RemoteVersionMaintenancePatch; - - int CompatVersionMajor; - int CompatVersionMinor; - int CompatVersionPatch; -+ int CompatVersionMaintenancePatch; - - // - // Which unpack methods are implemented in proxy? ---- a/nxcomp/Loop.cpp -+++ b/nxcomp/Loop.cpp -@@ -14250,7 +14250,8 @@ - cerr << "NXPROXY - " << "Version " - << control -> LocalVersionMajor << "." - << control -> LocalVersionMinor << "." -- << control -> LocalVersionPatch; -+ << control -> LocalVersionPatch << "." -+ << control -> LocalVersionMaintenancePatch; - - cerr << endl; - } ---- a/nxcomp/Makefile.in -+++ b/nxcomp/Makefile.in -@@ -105,7 +105,8 @@ - - CSRC = MD5.c \ - Pack.c \ -- Vars.c -+ Vars.c \ -+ Version.c - - CXXSRC = Loop.cpp \ - Children.cpp \ ---- a/nxcomp/NX.h -+++ b/nxcomp/NX.h -@@ -442,6 +442,12 @@ - - extern void NXTransCleanup(void) __attribute__((noreturn)); - -+extern const char* NXVersion(); -+extern int NXMajorVersion(); -+extern int NXMinorVersion(); -+extern int NXPatchVersion(); -+extern int NXMaintenancePatchVersion(); -+ - #ifdef __cplusplus - } - #endif ---- /dev/null -+++ b/nxcomp/Version.c -@@ -0,0 +1,106 @@ -+/**************************************************************************/ -+/* */ -+/* Copyright (C) 2014 Qindel http://qindel.com and QVD http://theqvd.com */ -+/* */ -+/* This program is free software; you can redistribute it and/or modify */ -+/* it under the terms of the GNU General Public License as published by */ -+/* the Free Software Foundation; either version 3 of the License, or (at */ -+/* your option) any later version. */ -+/* */ -+/* This program is distributed in the hope that it will be useful, but */ -+/* WITHOUT ANY WARRANTY; without even the implied warranty of */ -+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */ -+/* See the GNU General Public License for more details. */ -+/* */ -+/* You should have received a copy of the GNU General Public License */ -+/* along with this program; if not, see <http://www.gnu.org/licenses>. */ -+/* */ -+/* Additional permission under GNU GPL version 3 section 7 */ -+/* */ -+/* If you modify this Program, or any covered work, by linking or */ -+/* combining it with [name of library] (or a modified version of that */ -+/* library), containing parts covered by the terms of [name of library's */ -+/* license], the licensors of this Program grant you additional */ -+/* permission to convey the resulting work. {Corresponding Source for a */ -+/* non-source form of such a combination shall include the source code */ -+/* for the parts of [name of library] used as well as that of the covered */ -+/* work.} */ -+/* */ -+/* */ -+/**************************************************************************/ -+ -+#include <stdio.h> -+#include <stdlib.h> -+#include <string.h> -+#include "NX.h" -+ -+ -+static int _NXVersionMajor = -1; -+static int _NXVersionMinor = -1; -+static int _NXVersionPatch = -1; -+static int _NXVersionMaintenancePatch = -1; -+ -+ -+const char* NXVersion() { -+ const char *version = VERSION; -+ return version; -+} -+ -+void _parseNXVersion() { -+ char version[32]; -+ int i; -+ strcpy(version, VERSION); -+ -+ char *value; -+ /* Reset values to 0 if undefined */ -+ _NXVersionMajor = _NXVersionMinor = _NXVersionPatch = _NXVersionMaintenancePatch = 0; -+ -+ -+#define NXVERSIONSEPARATOR "." -+ value = strtok(version, NXVERSIONSEPARATOR); -+ -+ for (i = 0; value != NULL && i < 4; i++) -+ { -+ switch (i) -+ { -+ case 0: -+ _NXVersionMajor = atoi(value); -+ break; -+ -+ case 1: -+ _NXVersionMinor = atoi(value); -+ break; -+ -+ case 2: -+ _NXVersionPatch = atoi(value); -+ break; -+ -+ case 3: -+ _NXVersionMaintenancePatch = atoi(value); -+ break; -+ } -+ -+ value = strtok(NULL, NXVERSIONSEPARATOR); -+ } -+} -+ -+int NXMajorVersion() { -+ if (_NXVersionMajor == -1) -+ _parseNXVersion(); -+ return _NXVersionMajor; -+} -+int NXMinorVersion() { -+ if (_NXVersionMinor == -1) -+ _parseNXVersion(); -+ return _NXVersionMinor; -+} -+int NXPatchVersion() { -+ if (_NXVersionPatch == -1) -+ _parseNXVersion(); -+ return _NXVersionPatch; -+} -+int NXMaintenancePatchVersion() { -+ if (_NXVersionMaintenancePatch == -1) -+ _parseNXVersion(); -+ return _NXVersionMaintenancePatch; -+} diff --git a/debian/patches/series b/debian/patches/series index 86575ec..b00553e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ -400_nxcomp-version.full+lite.patch #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch 600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch 601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch diff --git a/nxcomp/Control.cpp b/nxcomp/Control.cpp index ce99567..0626542 100644 --- a/nxcomp/Control.cpp +++ b/nxcomp/Control.cpp @@ -15,6 +15,7 @@ /* */ /**************************************************************************/ +#include "NX.h" #include "NXpack.h" #include "Control.h" @@ -594,44 +595,17 @@ Control::Control() RemoteVersionMajor = -1; RemoteVersionMinor = -1; RemoteVersionPatch = -1; + RemoteVersionMaintenancePatch = -1; CompatVersionMajor = -1; CompatVersionMinor = -1; CompatVersionPatch = -1; + CompatVersionMaintenancePatch = -1; - char version[32]; - - strcpy(version, VERSION); - - char *value; - - value = strtok(version, "."); - - for (int i = 0; value != NULL && i < 3; i++) - { - switch (i) - { - case 0: - - LocalVersionMajor = atoi(value); - - break; - - case 1: - - LocalVersionMinor = atoi(value); - - break; - - case 2: - - LocalVersionPatch = atoi(value); - - break; - } - - value = strtok(NULL, "."); - } + LocalVersionMajor = NXMajorVersion(); + LocalVersionMinor = NXMinorVersion(); + LocalVersionPatch = NXPatchVersion(); + LocalVersionMaintenancePatch = NXMaintenancePatchVersion(); #ifdef TEST *logofs << "Control: Major version is " << LocalVersionMajor diff --git a/nxcomp/Control.h b/nxcomp/Control.h index c214775..71f357c 100644 --- a/nxcomp/Control.h +++ b/nxcomp/Control.h @@ -299,17 +299,26 @@ class Control // Version number of local and remote proxy. // + /* + * LocalVersionMaintenancePatch, RemoteVersionMaintenancePatch + * CompatVersionMaintenancePatch + * + * currently not used, for future compatibility checks + */ int LocalVersionMajor; int LocalVersionMinor; int LocalVersionPatch; + int LocalVersionMaintenancePatch; int RemoteVersionMajor; int RemoteVersionMinor; int RemoteVersionPatch; + int RemoteVersionMaintenancePatch; int CompatVersionMajor; int CompatVersionMinor; int CompatVersionPatch; + int CompatVersionMaintenancePatch; // // Which unpack methods are implemented in proxy? diff --git a/nxcomp/Loop.cpp b/nxcomp/Loop.cpp index 77b0c80..c8c95bd 100644 --- a/nxcomp/Loop.cpp +++ b/nxcomp/Loop.cpp @@ -14250,7 +14250,8 @@ void PrintVersionInfo() cerr << "NXPROXY - " << "Version " << control -> LocalVersionMajor << "." << control -> LocalVersionMinor << "." - << control -> LocalVersionPatch; + << control -> LocalVersionPatch << "." + << control -> LocalVersionMaintenancePatch; cerr << endl; } diff --git a/nxcomp/Makefile.in b/nxcomp/Makefile.in index 1be9281..93bb0b3 100644 --- a/nxcomp/Makefile.in +++ b/nxcomp/Makefile.in @@ -105,7 +105,8 @@ MSRC = CSRC = MD5.c \ Pack.c \ - Vars.c + Vars.c \ + Version.c CXXSRC = Loop.cpp \ Children.cpp \ diff --git a/nxcomp/NX.h b/nxcomp/NX.h index d98af79..2dbf686 100644 --- a/nxcomp/NX.h +++ b/nxcomp/NX.h @@ -442,6 +442,12 @@ extern int NXTransParseEnvironment(const char *env, int force); extern void NXTransCleanup(void) __attribute__((noreturn)); +extern const char* NXVersion(); +extern int NXMajorVersion(); +extern int NXMinorVersion(); +extern int NXPatchVersion(); +extern int NXMaintenancePatchVersion(); + #ifdef __cplusplus } #endif -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit c4a8556c45786c83b04b2e958234cb4c724e1910 Author: Jan Engelhardt <jengelh@medozas.de> Date: Fri Feb 13 13:27:42 2015 +0100 Unique Library Names Patch (600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch). We really want to make use of rpm's automatic dependency finding. Binaries are scanned for DT_NEEDED entries, the latter of which are then used for populating the "Requires"-type deps. The "nxagent" binary for example would require libX11.so.6. That incurs problems: 1. A package manager told to install nxagent could select xorg-x11 rather than nx-libs, even though nxagent depends on the NX version. 2. A package manager told to install $some_program could select nx-libs rather than xorg-x11 (since both provide libX11.so.6), but, since the NX library is in an obscure directory, running $some_program would fail as libX11.so.6 is not found. To solve this, give the NX libraries unique names different from the Xorg ones. --- ...nxcompext+nxcompshad_unique-libnames.full.patch | 1183 -------------------- debian/patches/series | 1 - nx-X11/config/cf/Imake.rules | 12 +- nx-X11/config/cf/X11.tmpl | 240 ++-- nx-X11/config/cf/lnxLib.rules | 16 +- nx-X11/config/cf/lnxLib.tmpl | 4 +- nx-X11/lib/X11/Imakefile | 2 +- nx-X11/lib/XRes/Imakefile | 2 +- nx-X11/lib/Xau/Imakefile | 2 +- nx-X11/lib/Xcomposite/Imakefile | 2 +- nx-X11/lib/Xcomposite/xcomposite.pc.in | 2 +- nx-X11/lib/Xcursor/Imakefile | 2 +- nx-X11/lib/Xcursor/xcursor.pc.in | 2 +- nx-X11/lib/Xdamage/Imakefile | 2 +- nx-X11/lib/Xdamage/xdamage.pc.in | 2 +- nx-X11/lib/Xdmcp/Imakefile | 2 +- nx-X11/lib/Xext/Imakefile | 2 +- nx-X11/lib/Xfixes/Imakefile | 2 +- nx-X11/lib/Xfixes/xfixes.pc.in | 2 +- nx-X11/lib/Xinerama/Imakefile | 2 +- nx-X11/lib/Xpm/Imakefile | 2 +- nx-X11/lib/Xrandr/Imakefile | 2 +- nx-X11/lib/Xrender/Imakefile | 2 +- nx-X11/lib/Xrender/xrender.pc.in | 2 +- nx-X11/lib/Xtst/Imakefile | 2 +- nx-X11/lib/font/Imakefile | 2 +- nx-X11/lib/oldX/Imakefile | 2 +- nx-X11/lib/xkbfile/Imakefile | 2 +- nx-X11/lib/xkbui/Imakefile | 2 +- nx-X11/programs/Xserver/Imakefile | 18 +- nxcompext/Makefile.in | 4 +- nxcompshad/Makefile.in | 4 +- 32 files changed, 172 insertions(+), 1356 deletions(-) diff --git a/debian/patches/600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch b/debian/patches/600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch deleted file mode 100644 index 7c21c6f..0000000 --- a/debian/patches/600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch +++ /dev/null @@ -1,1183 +0,0 @@ -Description: Unique Library Names Patch - Patch from the RPM folks... - . - We really want to make use of rpm's automatic dependency finding. - Binaries are scanned for DT_NEEDED entries, the latter of which are - then used for populating the "Requires"-type deps. The "nxagent" - binary for example would require libX11.so.6. That incurs problems: - . - 1. A package manager told to install nxagent could select xorg-x11 - rather than nx-libs, even though nxagent depends on the NX version. - . - 2. A package manager told to install $some_program could select nx-libs - rather than xorg-x11 (since both provide libX11.so.6), but, since - the NX library is in an obscure directory, running $some_program - would fail as libX11.so.6 is not found. - . - To solve this, give the NX libraries unique names different from the - Xorg ones. -Forward: pending -Author: Jan Engelhardt <jengelh@medozas.de> -Last-Update: 2012-02-15 ---- - nx-X11/config/cf/Imake.rules | 12 - - nx-X11/config/cf/X11.tmpl | 240 ++++++++++---------- - nx-X11/config/cf/lnxLib.rules | 16 - - nx-X11/config/cf/lnxLib.tmpl | 4 - nx-X11/lib/X11/Imakefile | 2 - nx-X11/lib/XRes/Imakefile | 2 - nx-X11/lib/Xau/Imakefile | 2 - nx-X11/lib/Xcomposite/Imakefile | 2 - nx-X11/lib/Xcomposite/xcomposite.pc.in | 2 - nx-X11/lib/Xcursor/Imakefile | 2 - nx-X11/lib/Xcursor/xcursor.pc.in | 2 - nx-X11/lib/Xdamage/Imakefile | 2 - nx-X11/lib/Xdamage/xdamage.pc.in | 2 - nx-X11/lib/Xdmcp/Imakefile | 2 - nx-X11/lib/Xext/Imakefile | 2 - nx-X11/lib/Xfixes/Imakefile | 2 - nx-X11/lib/Xfixes/xfixes.pc.in | 2 - nx-X11/lib/Xinerama/Imakefile | 2 - nx-X11/lib/Xpm/Imakefile | 2 - nx-X11/lib/Xrandr/Imakefile | 2 - nx-X11/lib/Xrender/Imakefile | 2 - nx-X11/lib/Xrender/xrender.pc.in | 2 - nx-X11/lib/Xtst/Imakefile | 2 - nx-X11/lib/font/Imakefile | 2 - nx-X11/lib/oldX/Imakefile | 2 - nx-X11/lib/xkbfile/Imakefile | 2 - nx-X11/lib/xkbui/Imakefile | 2 - nx-X11/programs/Xserver/Imakefile | 18 - - nxcompext/Makefile.in | 4 - nxcompshad/Makefile.in | 4 - 103 files changed, 294 insertions(+), 294 deletions(-) - ---- a/nx-X11/config/cf/Imake.rules -+++ b/nx-X11/config/cf/Imake.rules -@@ -2124,9 +2124,9 @@ - */ - #ifndef ProjectUnsharedFontLibReferences - #define ProjectUnsharedFontLibReferences() @@\ --DEPFONTLIB = _UseCat($(USRLIBDIR)/,XBuildLibDir/,LibraryTargetName(Xfont)) @@\ --FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lXfont @@\ --LintLibReferences(XFONT,Xfont,$(FONTLIBSRC)) -+DEPFONTLIB = _UseCat($(USRLIBDIR)/,XBuildLibDir/,LibraryTargetName(NX_Xfont)) @@\ -+FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lNX_Xfont @@\ -+LintLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC)) - #endif - - /* -@@ -2142,9 +2142,9 @@ - #ifndef SharedFontLibReferences - #define SharedFontLibReferences() @@\ - SOFONTREV = SharedFontRev @@\ --DEPFONTLIB = SharedLibDependencies(Xfont,$(FONTLIBSRC),SOFONTREV) @@\ --FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lXfont @@\ --LintLibReferences(XFONT,Xfont,$(FONTLIBSRC)) -+DEPFONTLIB = SharedLibDependencies(NX_Xfont,$(FONTLIBSRC),SOFONTREV) @@\ -+FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lNX_Xfont @@\ -+LintLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC)) - #endif - - /* ---- a/nx-X11/config/cf/X11.tmpl -+++ b/nx-X11/config/cf/X11.tmpl -@@ -1835,9 +1835,9 @@ - #ifndef SharedX11Rev - #define SharedX11Rev 6.2 - #endif --SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev) -+SharedLibReferences(XONLY,NX_X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev) - #else --ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XONLY,NX_X11,$(XLIBSRC),XBuildLibDir) - #endif - /* Common alternate spellings */ - DEPXLIBONLY = $(DEPXONLYLIB) -@@ -2466,9 +2466,9 @@ - #ifndef SharedXextRev - #define SharedXextRev 6.4 - #endif --SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev) -+SharedLibReferences(EXTENSION,NX_Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev) - #else --ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(EXTENSION,NX_Xext,$(XEXTLIBSRC),XBuildLibDir) - #endif - LINTEXTENSIONLIB = $(LINTEXTENSION) - DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB) -@@ -2480,9 +2480,9 @@ - #ifndef SharedXssRev - #define SharedXssRev 1.0 - #endif --SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev) -+SharedLibReferences(XSS,NX_Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev) - #else --ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XSS,NX_Xss,$(XSSLIBSRC),XBuildLibDir) - #endif - - XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc -@@ -2490,9 +2490,9 @@ - #ifndef SharedXxf86miscRev - #define SharedXxf86miscRev 1.1 - #endif --SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev) -+SharedLibReferences(XXF86MISC,NX_Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev) - #else --ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XXF86MISC,NX_Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir) - #endif - - XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm -@@ -2500,9 +2500,9 @@ - #ifndef SharedXxf86vmRev - #define SharedXxf86vmRev 1.0 - #endif --SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev) -+SharedLibReferences(XXF86VM,NX_Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev) - #else --ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XXF86VM,NX_Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) - #endif - - XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga -@@ -2510,9 +2510,9 @@ - #ifndef SharedXxf86dgaRev - #define SharedXxf86dgaRev 1.0 - #endif --SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev) -+SharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev) - #else --ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) - #endif - - #if BuildDmxLibrary -@@ -2544,9 +2544,9 @@ - #ifndef SharedXxf86rushRev - #define SharedXxf86rushRev 1.0 - #endif --SharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev) -+SharedLibReferences(XXF86RUSH,NX_Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev) - #else --ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XXF86RUSH,NX_Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir) - #endif - - -@@ -2555,9 +2555,9 @@ - #ifndef SharedXvRev - #define SharedXvRev 1.0 - #endif --SharedLibReferences(XV,Xv,$(XVLIBSRC),SOXVREV,SharedXvRev) -+SharedLibReferences(XV,NX_Xv,$(XVLIBSRC),SOXVREV,SharedXvRev) - #else --ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XV,NX_Xv,$(XVLIBSRC),XBuildLibDir) - #endif - - -@@ -2566,9 +2566,9 @@ - #ifndef SharedXvMCRev - #define SharedXvMCRev 1.0 - #endif --SharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev) -+SharedLibReferences(XVMC,NX_XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev) - #else --ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XVMC,NX_XvMC,$(XVMCLIBSRC),XBuildLibDir) - #endif - - XINERAMALIBSRC = $(LIBSRC)/Xinerama -@@ -2576,9 +2576,9 @@ - #ifndef SharedXineramaRev - #define SharedXineramaRev 1.0 - #endif --SharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev) -+SharedLibReferences(XINERAMA,NX_Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev) - #else --ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XINERAMA,NX_Xinerama,$(XINERAMALIBSRC),XBuildLibDir) - #endif - - XRESLIBSRC = $(LIBSRC)/XRes -@@ -2586,9 +2586,9 @@ - #ifndef SharedXResRev - #define SharedXResRev 1.0 - #endif --SharedLibReferences(XRES,XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev) -+SharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev) - #else --ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),XBuildLibDir) - #endif - - DMXLIBSRC = $(LIBSRC)/dmx -@@ -2596,9 +2596,9 @@ - #ifndef SharedDmxRev - #define SharedDmxRev 1.0 - #endif --SharedLibReferences(DMX,dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev) -+SharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev) - #else --ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),XBuildLibDir) - #endif - - DPSLIBSRC = $(LIBSRC)/dps -@@ -2606,9 +2606,9 @@ - #ifndef SharedDpsRev - #define SharedDpsRev 1.0 - #endif --SharedLibReferences(DPS,dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev) -+SharedLibReferences(DPS,NX_dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev) - #else --ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(DPS,NX_dps,$(DPSLIBSRC),XBuildLibDir) - #endif - - DPSTKLIBSRC = $(LIBSRC)/dpstk -@@ -2616,9 +2616,9 @@ - #ifndef SharedDpsTkRev - #define SharedDpsTkRev 1.0 - #endif --SharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev) -+SharedLibReferences(DPSTK,NX_dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev) - #else --ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(DPSTK,NX_dpstk,$(DPSTKLIBSRC),XBuildLibDir) - #endif - - PSRESLIBSRC = $(LIBSRC)/psres -@@ -2626,9 +2626,9 @@ - #ifndef SharedPSResRev - #define SharedPSResRev 1.0 - #endif --SharedLibReferences(PSRES,psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev) -+SharedLibReferences(PSRES,NX_psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev) - #else --ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(PSRES,NX_psres,$(PSRESLIBSRC),XBuildLibDir) - #endif - - GLULIBSRC = $(LIBSRC)/GLU -@@ -2636,9 +2636,9 @@ - #ifndef SharedGluRev - #define SharedGluRev 1.3 - #endif --SharedLibReferences(GLU,GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev) -+SharedLibReferences(GLU,NX_GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev) - #else --ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(GLU,NX_GLU,$(GLULIBSRC),XBuildLibDir) - #endif - - GLXLIBSRC = $(LIBSRC)/GL -@@ -2646,18 +2646,18 @@ - #ifndef SharedGlxRev - #define SharedGlxRev 1.2 - #endif --SharedLibReferences(GLX,GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev) -+SharedLibReferences(GLX,NX_GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev) - #else --ProjectUnsharedLibReferences(GLX,GL,$(GLXLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(GLX,NX_GL,$(GLXLIBSRC),XBuildLibDir) - #endif - GLWIDGETSRC = $(LIBSRC)/GLw - #if SharedLibGLw - #ifndef SharedGLwRev - #define SharedGLwRev 1.0 /* used to name the shared library */ - #endif --SharedDSLibReferences(GLW,GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev) -+SharedDSLibReferences(GLW,NX_GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev) - #else --ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(GLW,NX_GLw,$(GLWIDGETSRC),XBuildLibDir) - #endif - - XRENDERLIBSRC = $(LIBSRC)/Xrender -@@ -2665,9 +2665,9 @@ - #ifndef SharedXrenderRev - #define SharedXrenderRev 1.2.2 - #endif --SharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev) -+SharedLibReferences(XRENDER,NX_Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev) - #else --ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XRENDER,NX_Xrender,$(XRENDERLIBSRC),XBuildLibDir) - #endif - - XRANDRLIBSRC = $(LIBSRC)/Xrandr -@@ -2675,9 +2675,9 @@ - #ifndef SharedXrandrRev - #define SharedXrandrRev 2.0 - #endif --SharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev) -+SharedLibReferences(XRANDR,NX_Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev) - #else --ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XRANDR,NX_Xrandr,$(XRANDRLIBSRC),XBuildLibDir) - #endif - - XFIXESLIBSRC = $(LIBSRC)/Xfixes -@@ -2685,9 +2685,9 @@ - #ifndef SharedXfixesRev - #define SharedXfixesRev 3.0 - #endif --SharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev) -+SharedLibReferences(XFIXES,NX_Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev) - #else --ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XFIXES,NX_Xfixes,$(XFIXESLIBSRC),XBuildLibDir) - #endif - - XDAMAGELIBSRC = $(LIBSRC)/Xdamage -@@ -2695,9 +2695,9 @@ - #ifndef SharedXdamageRev - #define SharedXdamageRev 1.0 - #endif --SharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev) -+SharedLibReferences(XDAMAGE,NX_Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev) - #else --ProjectUnsharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XDAMAGE,NX_Xdamage,$(XDAMAGELIBSRC),XBuildLibDir) - #endif - - XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite -@@ -2705,9 +2705,9 @@ - #ifndef SharedXcompositeRev - #define SharedXcompositeRev 1.0 - #endif --SharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev) -+SharedLibReferences(XCOMPOSITE,NX_Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev) - #else --ProjectUnsharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XCOMPOSITE,NX_Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir) - #endif - - XEVIELIBSRC = $(LIBSRC)/Xevie -@@ -2715,9 +2715,9 @@ - #ifndef SharedXevieRev - #define SharedXevieRev 1.0 - #endif --SharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev) -+SharedLibReferences(XEVIE,NX_Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev) - #else --ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XEVIE,NX_Xevie,$(XEVIELIBSRC),XBuildLibDir) - #endif - - XCURSORLIBSRC = $(LIBSRC)/Xcursor -@@ -2725,9 +2725,9 @@ - #ifndef SharedXcursorRev - #define SharedXcursorRev 1.0.2 - #endif --SharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev) -+SharedLibReferences(XCURSOR,NX_Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev) - #else --ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XCURSOR,NX_Xcursor,$(XCURSORLIBSRC),XBuildLibDir) - #endif - - APPLEWMLIBSRC = $(LIBSRC)/apple -@@ -2735,9 +2735,9 @@ - #ifndef SharedAppleWMRev - #define SharedAppleWMRev 1.0 - #endif --SharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev) -+SharedLibReferences(APPLEWM,NX_AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev) - #else --ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(APPLEWM,NX_AppleWM,$(APPLEWMLIBSRC),XBuildLibDir) - #endif - - WINDOWSWMLIBSRC = $(LIBSRC)/windows -@@ -2745,9 +2745,9 @@ - #ifndef SharedWindowsWMRev - #define SharedWindowsWMRev 1.0 - #endif --SharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev) -+SharedLibReferences(WINDOWSWM,NX_WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev) - #else --ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(WINDOWSWM,NX_WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir) - #endif - - # ifndef SharedLibXfontcache -@@ -2768,9 +2768,9 @@ - #ifndef SharedXfontcacheRev - #define SharedXfontcacheRev 1.2 - #endif --SharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev) -+SharedLibReferences(XFONTCACHE,NX_Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev) - #else --ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XFONTCACHE,NX_Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXau -@@ -2790,12 +2790,12 @@ - #ifndef SharedXauRev - #define SharedXauRev 6.0 - #endif --SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev) -+SharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev) - #else - #if !UseInstalledXauLib --ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),XBuildLibDir) - #else --ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR)) -+ProjectUnsharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),$(USRLIBDIR)) - #endif - #endif - -@@ -2816,12 +2816,12 @@ - #ifndef SharedXdmcpRev - #define SharedXdmcpRev 6.0 - #endif --SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev) -+SharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev) - #else - #if !UseInstalledXdmcpLib --ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),XBuildLibDir) - #else --ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR)) -+ProjectUnsharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR)) - #endif - #endif - -@@ -2842,9 +2842,9 @@ - #ifndef SharedXmuRev - #define SharedXmuRev 6.2 - #endif --SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev) -+SharedDSLibReferences(XMU,NX_Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev) - #else --ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XMU,NX_Xmu,$(XMUSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXmuu -@@ -2864,9 +2864,9 @@ - #ifndef SharedXmuuRev - #define SharedXmuuRev 1.0 - #endif --SharedLibReferences(XMUU,Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev) -+SharedLibReferences(XMUU,NX_Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev) - #else --ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XMUU,NX_Xmuu,$(XMUUSRC),XBuildLibDir) - #endif - - #ifndef SharedOldX -@@ -2886,9 +2886,9 @@ - #ifndef SharedOldXRev - #define SharedOldXRev 6.0 - #endif --SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev) -+SharedLibReferences(OLDX,NX_oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev) - #else --ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(OLDX,NX_oldX,$(OLDXLIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXp -@@ -2908,9 +2908,9 @@ - #ifndef SharedXpRev - #define SharedXpRev 6.2 - #endif --SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev) -+SharedLibReferences(XP,NX_Xp,$(XPLIBSRC),SOXPREV,SharedXpRev) - #else --ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XP,NX_Xp,$(XPLIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXt -@@ -2930,9 +2930,9 @@ - #ifndef SharedXtRev - #define SharedXtRev 6.0 - #endif --SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev) -+SharedDSLibReferences(XTOOLONLY,NX_Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev) - #else --ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XTOOLONLY,NX_Xt,$(TOOLKITSRC),XBuildLibDir) - #endif - DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB) - XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB) -@@ -2956,9 +2956,9 @@ - #ifndef SharedXaRev - #define SharedXaRev 1.0 - #endif --SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev) -+SharedLibReferences(XA,NX_Xa,$(XALIBSRC),SOXAREV,SharedXaRev) - #else --UnsharedLibReferences(XA,Xa,$(XALIBSRC)) -+UnsharedLibReferences(XA,NX_Xa,$(XALIBSRC)) - #endif - - #ifndef BuildXaw -@@ -2985,9 +2985,9 @@ - #ifndef SharedXawRev - #define SharedXawRev 8.0 - #endif --SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev) -+SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev) - #else --ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGETSRC),XBuildLibDir) - #endif - #endif - -@@ -3013,14 +3013,14 @@ - #ifndef SharedXaw7Rev - #define SharedXaw7Rev 7.0 - #endif --SharedDSLibReferences(XAW7,Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev) -+SharedDSLibReferences(XAW7,NX_Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev) - #if !BuildXaw --SharedDSLibReferences(XAW,Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev) -+SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev) - #endif - #else --ProjectUnsharedLibReferences(XAW7,Xaw,$(AWIDGET7SRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAW7,NX_Xaw,$(AWIDGET7SRC),XBuildLibDir) - #if !BuildXaw --ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGET7SRC),XBuildLibDir) - #endif - #endif - #endif -@@ -3048,14 +3048,14 @@ - #ifndef SharedXaw6Rev - #define SharedXaw6Rev 6.1 - #endif --SharedDSLibReferences(XAW6,Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev) -+SharedDSLibReferences(XAW6,NX_Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev) - #if !BuildXaw && !BuildXaw7 --SharedDSLibReferences(XAW,Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev) -+SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev) - #endif - #else --ProjectUnsharedLibReferences(XAW6,Xaw,$(AWIDGET6SRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAW6,NX_Xaw,$(AWIDGET6SRC),XBuildLibDir) - #if !BuildXaw && !BuildXaw7 --ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGET6SRC),XBuildLibDir) - #endif - #endif - #endif -@@ -3077,9 +3077,9 @@ - #ifndef SharedXiRev - #define SharedXiRev 6.0 - #endif --SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev) -+SharedLibReferences(XI,NX_Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev) - #else --ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XI,NX_Xi,$(XILIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXtst -@@ -3099,12 +3099,12 @@ - #ifndef SharedXtstRev - #define SharedXtstRev 6.1 - #endif --SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev) -+SharedLibReferences(XTEST,NX_Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev) - #else --ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XTEST,NX_Xtst,$(XTESTLIBSRC),XBuildLibDir) - #endif - --ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) -+ProjectUnsharedLibReferences(XBSD,NX_Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) - - #ifndef SharedLibICE - #define SharedLibICE HasSharedLibraries -@@ -3123,9 +3123,9 @@ - #ifndef SharedICERev - #define SharedICERev 6.4 - #endif --SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev) -+SharedLibReferences(ICE,NX_ICE,$(ICESRC),SOICEREV,SharedICERev) - #else --ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir) -+ProjectUnsharedLibReferences(ICE,NX_ICE,$(ICESRC),XBuildLibDir) - #endif - - #ifndef SharedLibSM -@@ -3145,9 +3145,9 @@ - #ifndef SharedSMRev - #define SharedSMRev 6.0 - #endif --SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev) -+SharedLibReferences(SM,NX_SM,$(SMSRC),SOSMREV,SharedSMRev) - #else --ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(SM,NX_SM,$(SMSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXkey -@@ -3167,9 +3167,9 @@ - #ifndef SharedXkeyRev - #define SharedXkeyRev 6.0 - #endif --SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev) -+SharedLibReferences(XKEY,NX_Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev) - #else --ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XKEY,NX_Xkey,$(XKEYSRC),XBuildLibDir) - #endif - - #ifndef SharedLibFS -@@ -3189,9 +3189,9 @@ - #ifndef SharedFSRev - #define SharedFSRev 6.0 - #endif --SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev) -+SharedLibReferences(FS,NX_FS,$(FSLIBSRC),SOFSREV,SharedFSRev) - #else --ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(FS,NX_FS,$(FSLIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibFont -@@ -3212,14 +3212,14 @@ - #define SharedFontRev 1.5 - #endif - SharedFontLibReferences() --XCOMM SharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev) -+XCOMM SharedLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev) - #else - ProjectUnsharedFontLibReferences() --XCOMM ProjectUnsharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),XBuildLibDir) -+XCOMM ProjectUnsharedLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC),XBuildLibDir) - #endif - - FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs --ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(FONTSTUB,NX_fntstubs,$(FONTSUBLIBSRC),XBuildLibDir) - DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB) - FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB) - -@@ -3241,9 +3241,9 @@ - #ifndef SharedFontEncRev - #define SharedFontEncRev 1.0 - #endif --SharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev) -+SharedLibReferences(XFONTENC,NX_fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev) - #else --ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XFONTENC,NX_fontenc,$(FONTENCLIBSRC),XBuildLibDir) - #endif - - #ifndef SharedLibXpm -@@ -3263,9 +3263,9 @@ - #ifndef SharedXpmRev - #define SharedXpmRev 4.11 - #endif --SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev) -+SharedLibReferences(XPM,NX_Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev) - #else --ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XPM,NX_Xpm,$(XPMLIBSRC),XBuildLibDir) - #endif - - #if UseFreetype2 -@@ -3313,9 +3313,9 @@ - #define SharedFreetype2Rev 9.0 - #endif - #endif --SharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev) -+SharedLibReferences(FREETYPE2,NX_freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev) - #else --ProjectUnsharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(FREETYPE2,NX_freetype,$(FREETYPE2LIBSRC),XBuildLibDir) - #endif - - #ifdef UseInstalled -@@ -3470,9 +3470,9 @@ - #define SharedExpatRev 4.0 - #endif - #endif --SharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev) -+SharedLibReferences(EXPAT,NX_expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev) - #else --ProjectUnsharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(EXPAT,NX_expat,$(EXPATLIBSRC),XBuildLibDir) - #endif - - #if UseExpat -@@ -3552,9 +3552,9 @@ - #ifndef SharedXft1Rev - #define SharedXft1Rev 1.1 - #endif --SharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev) -+SharedLibReferences(XFT1,NX_Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev) - #else --ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XFT1,NX_Xft,$(XFT1LIBSRC),XBuildLibDir) - #endif - - #ifndef Xft1ClientDepLibs -@@ -3589,9 +3589,9 @@ - #ifndef SharedXftRev - #define SharedXftRev 2.1.2 - #endif --SharedLibReferences(XFT,Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev) -+SharedLibReferences(XFT,NX_Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev) - #else --ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XFT,NX_Xft,$(XFTLIBSRC),XBuildLibDir) - #endif - - #ifndef XftClientDepLibs -@@ -3622,9 +3622,9 @@ - #ifndef SharedFontconfigRev - #define SharedFontconfigRev 1.0.4 - #endif --SharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev) -+SharedLibReferences(FONTCONFIG,NX_fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev) - #else --ProjectUnsharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(FONTCONFIG,NX_fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir) - #endif - - #ifdef UseInstalled -@@ -3827,9 +3827,9 @@ - # ifndef SharedxkbfileRev - # define SharedxkbfileRev 1.0 - # endif --SharedLibReferences(XKBFILE,xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev) -+SharedLibReferences(XKBFILE,NX_xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev) - #else --ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XKBFILE,NX_xkbfile,$(XKBFILELIBSRC),XBuildLibDir) - #endif - - #if BuildXKBlib -@@ -3899,9 +3899,9 @@ - # ifndef SharedxkbuiRev - # define SharedxkbuiRev 1.0 - # endif --SharedLibReferences(XKBUI,xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev) -+SharedLibReferences(XKBUI,NX_xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev) - #else --ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XKBUI,NX_xkbui,$(XKBUILIBSRC),XBuildLibDir) - #endif - - #ifndef XkbuiLibs -@@ -3974,9 +3974,9 @@ - #ifndef SharedXTrapRev - #define SharedXTrapRev 6.4 - #endif --SharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev) -+SharedLibReferences(XTRAP,NX_XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev) - #else --ProjectUnsharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),XBuildLibDir) -+ProjectUnsharedLibReferences(XTRAP,NX_XTrap,$(XTRAPLIBSRC),XBuildLibDir) - #endif - - #ifndef NeedDefaultDepLibs ---- a/nx-X11/config/cf/lnxLib.rules -+++ b/nx-X11/config/cf/lnxLib.rules -@@ -389,7 +389,7 @@ - XCOMM libX11.so (X11, SM, ICE) - JUMP_ROOT_X11 = $(XLIBSRC) - JUMP_IS_HOST_X11 = YES --JUMP_STUBLIBS_X11 = libX11.sa libSM.sa libICE.sa -+JUMP_STUBLIBS_X11 = libNX_X11.sa libNX_SM.sa libNX_ICE.sa - JUMP_SIBDIRS_X11 = $(JUMP_ROOT_SM) $(JUMP_ROOT_ICE) - JUMP_DIR_X11 = $(JUMP_ROOT_X11)/shared - JUMP_DEFS_X11 = $(XDMAUTHDEFS) $(XKB_DEFINES) -@@ -400,9 +400,9 @@ - JUMP_ADDRESS_X11 = 0x60200000 - JUMP_JUMPTABLESIZE_X11 = 0x4000 - JUMP_GOTSIZE_X11 = 4096 --JUMP_STUBNAMES_X11 = libX11 libSM libICE -+JUMP_STUBNAMES_X11 = libNX_X11 libNX_SM libNX_ICE - JUMP_STUBS_IMPORT_X11 = $(LIBC_SA) --JUMP_SIBARS_X11 = jump/libSM.a~ jump/libICE.a~ -+JUMP_SIBARS_X11 = jump/libNX_SM.a~ jump/libNX_ICE.a~ - JUMP_LDLIBS_X11 = $(JUMP_SIBARS_X11) $(JUMP_LDLIBS_libc) - - XCOMM libSM (part of libX11.so) -@@ -435,9 +435,9 @@ - JUMP_GOTSIZE_Xt = 4096 - JUMP_STUBNAMES_Xt = libXt libXmu libXext libXi libXtst libXp - JUMP_STUBS_IMPORT_Xt = $(JUMP_STUBS_IMPORT_X11) --JUMP_SIBARS_Xt = jump/libXmu.a~ jump/libXext.a~ jump/libXi.a~ jump/libXtst.a~ jump/libXp.a~ --JUMP_LDLIBS_Xt = $(JUMP_SIBARS_Xt) $(JUMP_ROOT_ICE)/libICE.sa \ -- $(JUMP_ROOT_SM)/libSM.sa $(JUMP_ROOT_X11)/libX11.sa $(JUMP_LDLIBS_libc) -+JUMP_SIBARS_Xt = jump/libNX_Xmu.a~ jump/libNX_Xext.a~ jump/libNX_Xi.a~ jump/libNX_Xtst.a~ jump/libNX_Xp.a~ -+JUMP_LDLIBS_Xt = $(JUMP_SIBARS_Xt) $(JUMP_ROOT_ICE)/libNX_ICE.sa \ -+ $(JUMP_ROOT_SM)/libNX_SM.sa $(JUMP_ROOT_X11)/libNX_X11.sa $(JUMP_LDLIBS_libc) - - XCOMM libXmu (part of libXt.so) - JUMP_ROOT_Xmu = $(XMUSRC) -@@ -485,8 +485,8 @@ - JUMP_GOTSIZE_Xaw = 4096 - JUMP_STUBNAMES_Xaw = libXaw - JUMP_STUBS_IMPORT_Xaw = $(JUMP_STUBS_IMPORT_X11) --JUMP_LDLIBS_Xaw = $(JUMP_ROOT_Xt)/libXt.sa $(JUMP_ROOT_Xt)/libXmu.sa \ -- $(JUMP_ROOT_Xt)/libXext.sa $(JUMP_ROOT_X11)/libX11.sa \ -+JUMP_LDLIBS_Xaw = $(JUMP_ROOT_Xt)/libNX_Xt.sa $(JUMP_ROOT_Xt)/libNX_Xmu.sa \ -+ $(JUMP_ROOT_Xt)/libNX_Xext.sa $(JUMP_ROOT_X11)/libNX_X11.sa \ - $(JUMP_LDLIBS_libc) - - # endif /* !UseInstalled */ ---- a/nx-X11/config/cf/lnxLib.tmpl -+++ b/nx-X11/config/cf/lnxLib.tmpl -@@ -9,7 +9,7 @@ - - #ifndef FixupLibReferences - #define FixupLibReferences() @@\ --XMULIBONLY = -lXmu @@\ -+XMULIBONLY = -lNX_Xmu @@\ - XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB) - #endif - -@@ -66,7 +66,7 @@ - - #ifndef FixupLibReferences - #define FixupLibReferences() @@\ --XMULIB = -lXmu $(XLIB) -+XMULIB = -lNX_Xmu $(XLIB) - #endif - - #endif /* UseElfFormat */ ---- a/nx-X11/lib/X11/Imakefile -+++ b/nx-X11/lib/X11/Imakefile -@@ -82,7 +82,7 @@ - #define DoExtraLib SharedLibX11 - #define DoDebugLib DebugLibX11 - #define DoProfileLib ProfileLibX11 --#define LibName X11 -+#define LibName NX_X11 - #define SoRev SOXLIBREV - #define HugeLibrary YES - #define IncSubdir X11 ---- a/nx-X11/lib/XRes/Imakefile -+++ b/nx-X11/lib/XRes/Imakefile -@@ -4,7 +4,7 @@ - #define DoSharedLib SharedLibXRes - #define DoDebugLib DebugLibXRes - #define DoProfileLib ProfileLibXRes --#define LibName XRes -+#define LibName NX_XRes - #define SoRev SOXRESREV - #define LibHeaders NO - ---- a/nx-X11/lib/Xau/Imakefile -+++ b/nx-X11/lib/Xau/Imakefile -@@ -10,7 +10,7 @@ - #define DoExtraLib SharedLibXau - #define DoDebugLib DebugLibXau - #define DoProfileLib ProfileLibXau --#define LibName Xau -+#define LibName NX_Xau - #define SoRev SOXAUTHREV - #define IncSubdir X11 - ---- a/nx-X11/lib/Xcomposite/Imakefile -+++ b/nx-X11/lib/Xcomposite/Imakefile -@@ -14,7 +14,7 @@ - #define DoDebugLib DebugLibXcomposite - #define DoProfileLib ProfileLibXcomposite - --#define LibName Xcomposite -+#define LibName NX_Xcomposite - #define SoRev SOXCOMPOSITEREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/lib/Xcomposite/xcomposite.pc.in -+++ b/nx-X11/lib/Xcomposite/xcomposite.pc.in -@@ -7,4 +7,4 @@ - Description: X Composite Library - Version: @VERSION@ - Cflags: -I${includedir} @XCOMPOSITE_CFLAGS@ @X_CFLAGS@ --Libs: -L${libdir} -lXcomposite @XCOMPOSITE_LIBS@ @X_LIBS@ -+Libs: -L${libdir} -lNX_Xcomposite @XCOMPOSITE_LIBS@ @X_LIBS@ ---- a/nx-X11/lib/Xcursor/Imakefile -+++ b/nx-X11/lib/Xcursor/Imakefile -@@ -15,7 +15,7 @@ - #define DoDebugLib DebugLibXcursor - #define DoProfileLib ProfileLibXcursor - --#define LibName Xcursor -+#define LibName NX_Xcursor - #define SoRev SOXCURSORREV - #define IncSubdir X11 - #define IncSubSubdir Xcursor ---- a/nx-X11/lib/Xcursor/xcursor.pc.in -+++ b/nx-X11/lib/Xcursor/xcursor.pc.in -@@ -12,4 +12,4 @@ - Version: @VERSION@ - Requires: xrender - Cflags: -I${includedir} ${xrendercflags} ${xcflags} --Libs: -L${libdir} -lXcursor ${xrenderlibs} ${xlibs} -+Libs: -L${libdir} -lNX_Xcursor ${xrenderlibs} ${xlibs} ---- a/nx-X11/lib/Xdamage/Imakefile -+++ b/nx-X11/lib/Xdamage/Imakefile -@@ -14,7 +14,7 @@ - #define DoDebugLib DebugLibXdamage - #define DoProfileLib ProfileLibXdamage - --#define LibName Xdamage -+#define LibName NX_Xdamage - #define SoRev SOXDAMAGEREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/lib/Xdamage/xdamage.pc.in -+++ b/nx-X11/lib/Xdamage/xdamage.pc.in -@@ -7,4 +7,4 @@ - Description: X Damage Library - Version: @VERSION@ - Cflags: -I${includedir} @XDAMAGE_CFLAGS@ @X_CFLAGS@ --Libs: -L${libdir} -lXdamage @XDAMAGE_LIBS@ @X_LIBS@ -+Libs: -L${libdir} -lNX_Xdamage @XDAMAGE_LIBS@ @X_LIBS@ ---- a/nx-X11/lib/Xdmcp/Imakefile -+++ b/nx-X11/lib/Xdmcp/Imakefile -@@ -10,7 +10,7 @@ - #define DoExtraLib SharedLibXdmcp - #define DoDebugLib DebugLibXdmcp - #define DoProfileLib ProfileLibXdmcp --#define LibName Xdmcp -+#define LibName NX_Xdmcp - #define SoRev SOXDMCPREV - #define IncSubdir X11 - ---- a/nx-X11/lib/Xext/Imakefile -+++ b/nx-X11/lib/Xext/Imakefile -@@ -10,7 +10,7 @@ - #define DoExtraLib SharedLibXext - #define DoDebugLib DebugLibXext - #define DoProfileLib ProfileLibXext --#define LibName Xext -+#define LibName NX_Xext - #define SoRev SOXEXTREV - #define LibHeaders NO - ---- a/nx-X11/lib/Xfixes/Imakefile -+++ b/nx-X11/lib/Xfixes/Imakefile -@@ -14,7 +14,7 @@ - #define DoDebugLib DebugLibXfixes - #define DoProfileLib ProfileLibXfixes - --#define LibName Xfixes -+#define LibName NX_Xfixes - #define SoRev SOXFIXESREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/lib/Xfixes/xfixes.pc.in -+++ b/nx-X11/lib/Xfixes/xfixes.pc.in -@@ -7,4 +7,4 @@ - Description: X Fixes Library - Version: @VERSION@ - Cflags: -I${includedir} @X_CFLAGS@ --Libs: -L${libdir} -lXfixes @X_LIBS@ -+Libs: -L${libdir} -lNX_Xfixes @X_LIBS@ ---- a/nx-X11/lib/Xinerama/Imakefile -+++ b/nx-X11/lib/Xinerama/Imakefile -@@ -4,7 +4,7 @@ - #define DoSharedLib SharedLibXinerama - #define DoDebugLib DebugLibXinerama - #define DoProfileLib ProfileLibXinerama --#define LibName Xinerama -+#define LibName NX_Xinerama - #define SoRev SOXINERAMAREV - #define LibHeaders NO - ---- a/nx-X11/lib/Xpm/Imakefile -+++ b/nx-X11/lib/Xpm/Imakefile -@@ -12,7 +12,7 @@ - #define DoDebugLib DebugLibXpm - #define DoProfileLib ProfileLibXpm - #define HasSharedData NO --#define LibName Xpm -+#define LibName NX_Xpm - #define SoRev SOXPMREV - #define IncSubdir X11 - ---- a/nx-X11/lib/Xrandr/Imakefile -+++ b/nx-X11/lib/Xrandr/Imakefile -@@ -5,7 +5,7 @@ - #define DoSharedLib SharedLibXrandr - #define DoDebugLib DebugLibXrandr - #define DoProfileLib ProfileLibXrandr --#define LibName Xrandr -+#define LibName NX_Xrandr - #define SoRev SOXRANDRREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/lib/Xrender/Imakefile -+++ b/nx-X11/lib/Xrender/Imakefile -@@ -74,7 +74,7 @@ - #define DoSharedLib SharedLibXrender - #define DoDebugLib DebugLibXrender - #define DoProfileLib ProfileLibXrender --#define LibName Xrender -+#define LibName NX_Xrender - #define SoRev SOXRENDERREV - - #ifdef XBuildIncDir ---- a/nx-X11/lib/Xrender/xrender.pc.in -+++ b/nx-X11/lib/Xrender/xrender.pc.in -@@ -8,4 +8,4 @@ - Version: @VERSION@ - Requires: @X_REQUIRES@ - Cflags: -I${includedir} @RENDER_CFLAGS@ @X_NON_PKG_CFLAGS@ --Libs: -L${libdir} -lXrender @X_NON_PKG_LIBS@ -+Libs: -L${libdir} -lNX_Xrender @X_NON_PKG_LIBS@ ---- a/nx-X11/lib/Xtst/Imakefile -+++ b/nx-X11/lib/Xtst/Imakefile -@@ -10,7 +10,7 @@ - #define DoExtraLib SharedLibXtst - #define DoDebugLib DebugLibXtst - #define DoProfileLib ProfileLibXtst --#define LibName Xtst -+#define LibName NX_Xtst - #define SoRev SOXTESTREV - #define LibHeaders NO - ---- a/nx-X11/lib/font/Imakefile -+++ b/nx-X11/lib/font/Imakefile -@@ -31,7 +31,7 @@ - STUBDIRS = stubs - #endif - --LIBNAME = Xfont -+LIBNAME = NX_Xfont - SOREV = $(SOFONTREV) - - #ifndef SeparateSharedCompile ---- a/nx-X11/lib/oldX/Imakefile -+++ b/nx-X11/lib/oldX/Imakefile -@@ -10,7 +10,7 @@ - #define DoExtraLib SharedOldX - #define DoDebugLib DebugOldX - #define DoProfileLib ProfileOldX --#define LibName oldX -+#define LibName NX_oldX - #define SoRev SOOLDXREV - #define IncSubdir X11 - ---- a/nx-X11/lib/xkbfile/Imakefile -+++ b/nx-X11/lib/xkbfile/Imakefile -@@ -11,7 +11,7 @@ - #define DoDebugLib DebugLibxkbfile - #define DoProfileLib ProfileLibxkbfile - #define HasSharedData NO --#define LibName xkbfile -+#define LibName NX_xkbfile - #define SoRev SOXKBFILEREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/lib/xkbui/Imakefile -+++ b/nx-X11/lib/xkbui/Imakefile -@@ -6,7 +6,7 @@ - #define DoDebugLib DebugLibxkbui - #define DoProfileLib ProfileLibxkbui - #define HasSharedData NO --#define LibName xkbui -+#define LibName NX_xkbui - #define SoRev SOXKBUIREV - #define IncSubdir X11 - #define IncSubSubdir extensions ---- a/nx-X11/programs/Xserver/Imakefile -+++ b/nx-X11/programs/Xserver/Imakefile -@@ -313,7 +313,7 @@ - FONTBASE = $(FONTLIBSRC)/fontbase.o \ - $(FONTLIBSRC)/LibraryTargetName(fontbase) - #if XserverStaticFontLib -- FONT = $(FONTLIBSRC)/LibraryTargetName(Xfont) $(FREETYPE2LIB) -+ FONT = $(FONTLIBSRC)/LibraryTargetName(NX_Xfont) $(FREETYPE2LIB) - #else - FONT = $(LDPRELIB) $(XFONTLIB) $(FREETYPE2LIB) - #endif -@@ -994,7 +994,7 @@ - dix/main.o - #endif - --XPMLIB = -lXpm -+XPMLIB = -lNX_Xpm - NXAGENT = hw/nxagent/LibraryTargetName(nxagent) - NXAGENTLIBS = PreFbLibs $(NXAGENT) FbPostFbLibs $(NXAGENT) $(MI) - NXAGENTSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XLIB) $(SYSLIBS) $(XPMLIB) -@@ -1012,18 +1012,18 @@ - - #if defined(SunArchitecture) - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -- -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lXrender -lXfixes \ -- -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp \ -+ -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lNX_Xrender -lNX_Xfixes \ -+ -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xdmcp \ - `pkg-config --libs libxml-2.0` - #elif defined(cygwinArchitecture) - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext \ -- -lXcomp -lXcompext -lXrender -lX11 -lXext -lXcomposite -lXfixes \ -- -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp \ -+ -lXcomp -lXcompext -lNX_Xrender -lX11 -lNX_Xext -lNX_Xcomposite -lNX_Xfixes \ -+ -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdmcp \ - `pkg-config --libs libxml-2.0` - #else - NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ -- -lXcomp -lXcompext -lXcompshad -lXrender -lX11 -lXext -lXfixes \ -- -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp \ -+ -lXcomp -lXcompext -lXcompshad -lNX_Xrender -lNX_X11 -lNX_Xext -lNX_Xfixes \ -+ -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xinerama -lNX_Xdmcp \ - `pkg-config --libs libxml-2.0` - #endif - -@@ -1078,7 +1078,7 @@ - else exit 0; fi - $(CCLINK) -o nxagent_static_nolibs -Wl,-Bstatic $(LDOPTIONS) $(NXAGENTOBJS) \ - $(NXAGENTLIBS) $(LOADABLEEXTS) $(LIBCWRAPPER) $(LDLIBS) $(FONTLIBS) \ -- $(LDPRELIBS) $(SYSLIBS) -Wl,-Bdynamic -lXext -lX11 $(EXTRA_LOAD_FLAGS) -+ $(LDPRELIBS) $(SYSLIBS) -Wl,-Bdynamic -lNX_Xext -lNX_X11 $(EXTRA_LOAD_FLAGS) - #endif /* NXAgentServer */ - - #if defined(XnonServer) && XnonServer ---- a/nxcompext/Makefile.in -+++ b/nxcompext/Makefile.in -@@ -42,12 +42,12 @@ - CCDEFINES = - - LDFLAGS = @LDFLAGS@ -L../nxcomp --LIBS = @LIBS@ -lz -lX11 -lXcomp -+LIBS = @LIBS@ -lz -lNX_X11 -lXcomp - - # - # Only if THREADS is defined - # --# LIBS = @LIBS@ -lz -ljpeg -lpthread -lX11 -lXcomp -+# LIBS = @LIBS@ -lz -ljpeg -lpthread -lNX_X11 -lXcomp - # - - srcdir = @srcdir@ ---- a/nxcompshad/Makefile.in -+++ b/nxcompshad/Makefile.in -@@ -48,7 +48,7 @@ - CCDEFINES = - - LDFLAGS = @LDFLAGS@ --LIBS = @LIBS@ -lX11 -+LIBS = @LIBS@ -lNX_X11 - - # - # Only if THREADS is defined. -@@ -139,7 +139,7 @@ - - else - --EXTRALIBS = -lXtst -lXrandr -lXdamage -+EXTRALIBS = -lNX_Xtst -lNX_Xrandr -lNX_Xdamage - - all: depend $(LIBFULL) $(LIBLOAD) $(LIBSHARED) $(LIBARCHIVE) - diff --git a/debian/patches/series b/debian/patches/series index b00553e..6a20a8f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch 601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch 602_nx-X11_initgroups.full.patch 603_nx-X11_compilation_warnings.full.patch diff --git a/nx-X11/config/cf/Imake.rules b/nx-X11/config/cf/Imake.rules index 21c223d..3923e4a 100644 --- a/nx-X11/config/cf/Imake.rules +++ b/nx-X11/config/cf/Imake.rules @@ -2124,9 +2124,9 @@ LintLibReferences(varname,libname,libsource) */ #ifndef ProjectUnsharedFontLibReferences #define ProjectUnsharedFontLibReferences() @@\ -DEPFONTLIB = _UseCat($(USRLIBDIR)/,XBuildLibDir/,LibraryTargetName(Xfont)) @@\ -FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lXfont @@\ -LintLibReferences(XFONT,Xfont,$(FONTLIBSRC)) +DEPFONTLIB = _UseCat($(USRLIBDIR)/,XBuildLibDir/,LibraryTargetName(NX_Xfont)) @@\ +FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lNX_Xfont @@\ +LintLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC)) #endif /* @@ -2142,9 +2142,9 @@ LintLibReferences(XFONT,Xfont,$(FONTLIBSRC)) #ifndef SharedFontLibReferences #define SharedFontLibReferences() @@\ SOFONTREV = SharedFontRev @@\ -DEPFONTLIB = SharedLibDependencies(Xfont,$(FONTLIBSRC),SOFONTREV) @@\ -FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lXfont @@\ -LintLibReferences(XFONT,Xfont,$(FONTLIBSRC)) +DEPFONTLIB = SharedLibDependencies(NX_Xfont,$(FONTLIBSRC),SOFONTREV) @@\ +FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC) LoaderLibPrefix -lNX_Xfont @@\ +LintLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC)) #endif /* diff --git a/nx-X11/config/cf/X11.tmpl b/nx-X11/config/cf/X11.tmpl index accba40..778e309 100644 --- a/nx-X11/config/cf/X11.tmpl +++ b/nx-X11/config/cf/X11.tmpl @@ -1835,9 +1835,9 @@ VENDORSUPPORTDEFS = VendorSupportDefines #ifndef SharedX11Rev #define SharedX11Rev 6.2 #endif -SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev) +SharedLibReferences(XONLY,NX_X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev) #else -ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XONLY,NX_X11,$(XLIBSRC),XBuildLibDir) #endif /* Common alternate spellings */ DEPXLIBONLY = $(DEPXONLYLIB) @@ -2466,9 +2466,9 @@ ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir) #ifndef SharedXextRev #define SharedXextRev 6.4 #endif -SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev) +SharedLibReferences(EXTENSION,NX_Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev) #else -ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(EXTENSION,NX_Xext,$(XEXTLIBSRC),XBuildLibDir) #endif LINTEXTENSIONLIB = $(LINTEXTENSION) DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB) @@ -2480,9 +2480,9 @@ LINTEXTENSIONLIB = $(LINTEXTENSION) #ifndef SharedXssRev #define SharedXssRev 1.0 #endif -SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev) +SharedLibReferences(XSS,NX_Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev) #else -ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XSS,NX_Xss,$(XSSLIBSRC),XBuildLibDir) #endif XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc @@ -2490,9 +2490,9 @@ ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir) #ifndef SharedXxf86miscRev #define SharedXxf86miscRev 1.1 #endif -SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev) +SharedLibReferences(XXF86MISC,NX_Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev) #else -ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XXF86MISC,NX_Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir) #endif XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm @@ -2500,9 +2500,9 @@ ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir #ifndef SharedXxf86vmRev #define SharedXxf86vmRev 1.0 #endif -SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev) +SharedLibReferences(XXF86VM,NX_Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev) #else -ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XXF86VM,NX_Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) #endif XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga @@ -2510,9 +2510,9 @@ ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir) #ifndef SharedXxf86dgaRev #define SharedXxf86dgaRev 1.0 #endif -SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev) +SharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev) #else -ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) #endif #if BuildDmxLibrary @@ -2544,9 +2544,9 @@ ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir) #ifndef SharedXxf86rushRev #define SharedXxf86rushRev 1.0 #endif -SharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev) +SharedLibReferences(XXF86RUSH,NX_Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev) #else -ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XXF86RUSH,NX_Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir) #endif @@ -2555,9 +2555,9 @@ ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir #ifndef SharedXvRev #define SharedXvRev 1.0 #endif -SharedLibReferences(XV,Xv,$(XVLIBSRC),SOXVREV,SharedXvRev) +SharedLibReferences(XV,NX_Xv,$(XVLIBSRC),SOXVREV,SharedXvRev) #else -ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XV,NX_Xv,$(XVLIBSRC),XBuildLibDir) #endif @@ -2566,9 +2566,9 @@ ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir) #ifndef SharedXvMCRev #define SharedXvMCRev 1.0 #endif -SharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev) +SharedLibReferences(XVMC,NX_XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev) #else -ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XVMC,NX_XvMC,$(XVMCLIBSRC),XBuildLibDir) #endif XINERAMALIBSRC = $(LIBSRC)/Xinerama @@ -2576,9 +2576,9 @@ ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir) #ifndef SharedXineramaRev #define SharedXineramaRev 1.0 #endif -SharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev) +SharedLibReferences(XINERAMA,NX_Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev) #else -ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XINERAMA,NX_Xinerama,$(XINERAMALIBSRC),XBuildLibDir) #endif XRESLIBSRC = $(LIBSRC)/XRes @@ -2586,9 +2586,9 @@ ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir) #ifndef SharedXResRev #define SharedXResRev 1.0 #endif -SharedLibReferences(XRES,XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev) +SharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev) #else -ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),XBuildLibDir) #endif DMXLIBSRC = $(LIBSRC)/dmx @@ -2596,9 +2596,9 @@ ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir) #ifndef SharedDmxRev #define SharedDmxRev 1.0 #endif -SharedLibReferences(DMX,dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev) +SharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev) #else -ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),XBuildLibDir) #endif DPSLIBSRC = $(LIBSRC)/dps @@ -2606,9 +2606,9 @@ ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir) #ifndef SharedDpsRev #define SharedDpsRev 1.0 #endif -SharedLibReferences(DPS,dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev) +SharedLibReferences(DPS,NX_dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev) #else -ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(DPS,NX_dps,$(DPSLIBSRC),XBuildLibDir) #endif DPSTKLIBSRC = $(LIBSRC)/dpstk @@ -2616,9 +2616,9 @@ ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir) #ifndef SharedDpsTkRev #define SharedDpsTkRev 1.0 #endif -SharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev) +SharedLibReferences(DPSTK,NX_dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev) #else -ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(DPSTK,NX_dpstk,$(DPSTKLIBSRC),XBuildLibDir) #endif PSRESLIBSRC = $(LIBSRC)/psres @@ -2626,9 +2626,9 @@ ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir) #ifndef SharedPSResRev #define SharedPSResRev 1.0 #endif -SharedLibReferences(PSRES,psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev) +SharedLibReferences(PSRES,NX_psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev) #else -ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(PSRES,NX_psres,$(PSRESLIBSRC),XBuildLibDir) #endif GLULIBSRC = $(LIBSRC)/GLU @@ -2636,9 +2636,9 @@ ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir) #ifndef SharedGluRev #define SharedGluRev 1.3 #endif -SharedLibReferences(GLU,GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev) +SharedLibReferences(GLU,NX_GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev) #else -ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(GLU,NX_GLU,$(GLULIBSRC),XBuildLibDir) #endif GLXLIBSRC = $(LIBSRC)/GL @@ -2646,18 +2646,18 @@ ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir) #ifndef SharedGlxRev #define SharedGlxRev 1.2 #endif -SharedLibReferences(GLX,GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev) +SharedLibReferences(GLX,NX_GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev) #else -ProjectUnsharedLibReferences(GLX,GL,$(GLXLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(GLX,NX_GL,$(GLXLIBSRC),XBuildLibDir) #endif GLWIDGETSRC = $(LIBSRC)/GLw #if SharedLibGLw #ifndef SharedGLwRev #define SharedGLwRev 1.0 /* used to name the shared library */ #endif -SharedDSLibReferences(GLW,GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev) +SharedDSLibReferences(GLW,NX_GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev) #else -ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir) +ProjectUnsharedLibReferences(GLW,NX_GLw,$(GLWIDGETSRC),XBuildLibDir) #endif XRENDERLIBSRC = $(LIBSRC)/Xrender @@ -2665,9 +2665,9 @@ ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir) #ifndef SharedXrenderRev #define SharedXrenderRev 1.2.2 #endif -SharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev) +SharedLibReferences(XRENDER,NX_Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev) #else -ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XRENDER,NX_Xrender,$(XRENDERLIBSRC),XBuildLibDir) #endif XRANDRLIBSRC = $(LIBSRC)/Xrandr @@ -2675,9 +2675,9 @@ ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir) #ifndef SharedXrandrRev #define SharedXrandrRev 2.0 #endif -SharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev) +SharedLibReferences(XRANDR,NX_Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev) #else -ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XRANDR,NX_Xrandr,$(XRANDRLIBSRC),XBuildLibDir) #endif XFIXESLIBSRC = $(LIBSRC)/Xfixes @@ -2685,9 +2685,9 @@ ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir) #ifndef SharedXfixesRev #define SharedXfixesRev 3.0 #endif -SharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev) +SharedLibReferences(XFIXES,NX_Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev) #else -ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XFIXES,NX_Xfixes,$(XFIXESLIBSRC),XBuildLibDir) #endif XDAMAGELIBSRC = $(LIBSRC)/Xdamage @@ -2695,9 +2695,9 @@ ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir) #ifndef SharedXdamageRev #define SharedXdamageRev 1.0 #endif -SharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev) +SharedLibReferences(XDAMAGE,NX_Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev) #else -ProjectUnsharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XDAMAGE,NX_Xdamage,$(XDAMAGELIBSRC),XBuildLibDir) #endif XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite @@ -2705,9 +2705,9 @@ XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite #ifndef SharedXcompositeRev #define SharedXcompositeRev 1.0 #endif -SharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev) +SharedLibReferences(XCOMPOSITE,NX_Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev) #else -ProjectUnsharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XCOMPOSITE,NX_Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir) #endif XEVIELIBSRC = $(LIBSRC)/Xevie @@ -2715,9 +2715,9 @@ XEVIELIBSRC = $(LIBSRC)/Xevie #ifndef SharedXevieRev #define SharedXevieRev 1.0 #endif -SharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev) +SharedLibReferences(XEVIE,NX_Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev) #else -ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XEVIE,NX_Xevie,$(XEVIELIBSRC),XBuildLibDir) #endif XCURSORLIBSRC = $(LIBSRC)/Xcursor @@ -2725,9 +2725,9 @@ ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir) #ifndef SharedXcursorRev #define SharedXcursorRev 1.0.2 #endif -SharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev) +SharedLibReferences(XCURSOR,NX_Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev) #else -ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XCURSOR,NX_Xcursor,$(XCURSORLIBSRC),XBuildLibDir) #endif APPLEWMLIBSRC = $(LIBSRC)/apple @@ -2735,9 +2735,9 @@ ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir) #ifndef SharedAppleWMRev #define SharedAppleWMRev 1.0 #endif -SharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev) +SharedLibReferences(APPLEWM,NX_AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev) #else -ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(APPLEWM,NX_AppleWM,$(APPLEWMLIBSRC),XBuildLibDir) #endif WINDOWSWMLIBSRC = $(LIBSRC)/windows @@ -2745,9 +2745,9 @@ ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir) #ifndef SharedWindowsWMRev #define SharedWindowsWMRev 1.0 #endif -SharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev) +SharedLibReferences(WINDOWSWM,NX_WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev) #else -ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(WINDOWSWM,NX_WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir) #endif # ifndef SharedLibXfontcache @@ -2768,9 +2768,9 @@ ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir #ifndef SharedXfontcacheRev #define SharedXfontcacheRev 1.2 #endif -SharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev) +SharedLibReferences(XFONTCACHE,NX_Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev) #else -ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XFONTCACHE,NX_Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir) #endif #ifndef SharedLibXau @@ -2790,12 +2790,12 @@ ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLib #ifndef SharedXauRev #define SharedXauRev 6.0 #endif -SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev) +SharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev) #else #if !UseInstalledXauLib -ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),XBuildLibDir) #else -ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR)) +ProjectUnsharedLibReferences(XAUTH,NX_Xau,$(XAUTHSRC),$(USRLIBDIR)) #endif #endif @@ -2816,12 +2816,12 @@ ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR)) #ifndef SharedXdmcpRev #define SharedXdmcpRev 6.0 #endif -SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev) +SharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev) #else #if !UseInstalledXdmcpLib -ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),XBuildLibDir) #else -ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR)) +ProjectUnsharedLibReferences(XDMCP,NX_Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR)) #endif #endif @@ -2842,9 +2842,9 @@ ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR)) #ifndef SharedXmuRev #define SharedXmuRev 6.2 #endif -SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev) +SharedDSLibReferences(XMU,NX_Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev) #else -ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XMU,NX_Xmu,$(XMUSRC),XBuildLibDir) #endif #ifndef SharedLibXmuu @@ -2864,9 +2864,9 @@ ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir) #ifndef SharedXmuuRev #define SharedXmuuRev 1.0 #endif -SharedLibReferences(XMUU,Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev) +SharedLibReferences(XMUU,NX_Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev) #else -ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XMUU,NX_Xmuu,$(XMUUSRC),XBuildLibDir) #endif #ifndef SharedOldX @@ -2886,9 +2886,9 @@ ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir) #ifndef SharedOldXRev #define SharedOldXRev 6.0 #endif -SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev) +SharedLibReferences(OLDX,NX_oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev) #else -ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(OLDX,NX_oldX,$(OLDXLIBSRC),XBuildLibDir) #endif #ifndef SharedLibXp @@ -2908,9 +2908,9 @@ ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir) #ifndef SharedXpRev #define SharedXpRev 6.2 #endif -SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev) +SharedLibReferences(XP,NX_Xp,$(XPLIBSRC),SOXPREV,SharedXpRev) #else -ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XP,NX_Xp,$(XPLIBSRC),XBuildLibDir) #endif #ifndef SharedLibXt @@ -2930,9 +2930,9 @@ ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir) #ifndef SharedXtRev #define SharedXtRev 6.0 #endif -SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev) +SharedDSLibReferences(XTOOLONLY,NX_Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev) #else -ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XTOOLONLY,NX_Xt,$(TOOLKITSRC),XBuildLibDir) #endif DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB) XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB) @@ -2956,9 +2956,9 @@ ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir) #ifndef SharedXaRev #define SharedXaRev 1.0 #endif -SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev) +SharedLibReferences(XA,NX_Xa,$(XALIBSRC),SOXAREV,SharedXaRev) #else -UnsharedLibReferences(XA,Xa,$(XALIBSRC)) +UnsharedLibReferences(XA,NX_Xa,$(XALIBSRC)) #endif #ifndef BuildXaw @@ -2985,9 +2985,9 @@ UnsharedLibReferences(XA,Xa,$(XALIBSRC)) #ifndef SharedXawRev #define SharedXawRev 8.0 #endif -SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev) +SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev) #else -ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGETSRC),XBuildLibDir) #endif #endif @@ -3013,14 +3013,14 @@ ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir) #ifndef SharedXaw7Rev #define SharedXaw7Rev 7.0 #endif -SharedDSLibReferences(XAW7,Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev) +SharedDSLibReferences(XAW7,NX_Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev) #if !BuildXaw -SharedDSLibReferences(XAW,Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev) +SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev) #endif #else -ProjectUnsharedLibReferences(XAW7,Xaw,$(AWIDGET7SRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAW7,NX_Xaw,$(AWIDGET7SRC),XBuildLibDir) #if !BuildXaw -ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGET7SRC),XBuildLibDir) #endif #endif #endif @@ -3048,14 +3048,14 @@ ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir) #ifndef SharedXaw6Rev #define SharedXaw6Rev 6.1 #endif -SharedDSLibReferences(XAW6,Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev) +SharedDSLibReferences(XAW6,NX_Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev) #if !BuildXaw && !BuildXaw7 -SharedDSLibReferences(XAW,Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev) +SharedDSLibReferences(XAW,NX_Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev) #endif #else -ProjectUnsharedLibReferences(XAW6,Xaw,$(AWIDGET6SRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAW6,NX_Xaw,$(AWIDGET6SRC),XBuildLibDir) #if !BuildXaw && !BuildXaw7 -ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir) +ProjectUnsharedLibReferences(XAW,NX_Xaw,$(AWIDGET6SRC),XBuildLibDir) #endif #endif #endif @@ -3077,9 +3077,9 @@ ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir) #ifndef SharedXiRev #define SharedXiRev 6.0 #endif -SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev) +SharedLibReferences(XI,NX_Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev) #else -ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XI,NX_Xi,$(XILIBSRC),XBuildLibDir) #endif #ifndef SharedLibXtst @@ -3099,12 +3099,12 @@ ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir) #ifndef SharedXtstRev #define SharedXtstRev 6.1 #endif -SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev) +SharedLibReferences(XTEST,NX_Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev) #else -ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XTEST,NX_Xtst,$(XTESTLIBSRC),XBuildLibDir) #endif -ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) +ProjectUnsharedLibReferences(XBSD,NX_Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) #ifndef SharedLibICE #define SharedLibICE HasSharedLibraries @@ -3123,9 +3123,9 @@ ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir) #ifndef SharedICERev #define SharedICERev 6.4 #endif -SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev) +SharedLibReferences(ICE,NX_ICE,$(ICESRC),SOICEREV,SharedICERev) #else -ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir) +ProjectUnsharedLibReferences(ICE,NX_ICE,$(ICESRC),XBuildLibDir) #endif #ifndef SharedLibSM @@ -3145,9 +3145,9 @@ ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir) #ifndef SharedSMRev #define SharedSMRev 6.0 #endif -SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev) +SharedLibReferences(SM,NX_SM,$(SMSRC),SOSMREV,SharedSMRev) #else -ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir) +ProjectUnsharedLibReferences(SM,NX_SM,$(SMSRC),XBuildLibDir) #endif #ifndef SharedLibXkey @@ -3167,9 +3167,9 @@ ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir) #ifndef SharedXkeyRev #define SharedXkeyRev 6.0 #endif -SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev) +SharedLibReferences(XKEY,NX_Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev) #else -ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XKEY,NX_Xkey,$(XKEYSRC),XBuildLibDir) #endif #ifndef SharedLibFS @@ -3189,9 +3189,9 @@ ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir) #ifndef SharedFSRev #define SharedFSRev 6.0 #endif -SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev) +SharedLibReferences(FS,NX_FS,$(FSLIBSRC),SOFSREV,SharedFSRev) #else -ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(FS,NX_FS,$(FSLIBSRC),XBuildLibDir) #endif #ifndef SharedLibFont @@ -3212,14 +3212,14 @@ ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir) #define SharedFontRev 1.5 #endif SharedFontLibReferences() -XCOMM SharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev) +XCOMM SharedLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev) #else ProjectUnsharedFontLibReferences() -XCOMM ProjectUnsharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),XBuildLibDir) +XCOMM ProjectUnsharedLibReferences(XFONT,NX_Xfont,$(FONTLIBSRC),XBuildLibDir) #endif FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs -ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(FONTSTUB,NX_fntstubs,$(FONTSUBLIBSRC),XBuildLibDir) DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB) FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB) @@ -3241,9 +3241,9 @@ ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir) #ifndef SharedFontEncRev #define SharedFontEncRev 1.0 #endif -SharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev) +SharedLibReferences(XFONTENC,NX_fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev) #else -ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XFONTENC,NX_fontenc,$(FONTENCLIBSRC),XBuildLibDir) #endif #ifndef SharedLibXpm @@ -3263,9 +3263,9 @@ ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir) #ifndef SharedXpmRev #define SharedXpmRev 4.11 #endif -SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev) +SharedLibReferences(XPM,NX_Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev) #else -ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XPM,NX_Xpm,$(XPMLIBSRC),XBuildLibDir) #endif #if UseFreetype2 @@ -3313,9 +3313,9 @@ ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir) #define SharedFreetype2Rev 9.0 #endif #endif -SharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev) +SharedLibReferences(FREETYPE2,NX_freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev) #else -ProjectUnsharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(FREETYPE2,NX_freetype,$(FREETYPE2LIBSRC),XBuildLibDir) #endif #ifdef UseInstalled @@ -3470,9 +3470,9 @@ MOTIFINCLUDES = -I$(MOTIFINCDIR) #define SharedExpatRev 4.0 #endif #endif -SharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev) +SharedLibReferences(EXPAT,NX_expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev) #else -ProjectUnsharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(EXPAT,NX_expat,$(EXPATLIBSRC),XBuildLibDir) #endif #if UseExpat @@ -3552,9 +3552,9 @@ EXPATDEFINES = -DEXPAT #ifndef SharedXft1Rev #define SharedXft1Rev 1.1 #endif -SharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev) +SharedLibReferences(XFT1,NX_Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev) #else -ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XFT1,NX_Xft,$(XFT1LIBSRC),XBuildLibDir) #endif #ifndef Xft1ClientDepLibs @@ -3589,9 +3589,9 @@ ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir) #ifndef SharedXftRev #define SharedXftRev 2.1.2 #endif -SharedLibReferences(XFT,Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev) +SharedLibReferences(XFT,NX_Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev) #else -ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XFT,NX_Xft,$(XFTLIBSRC),XBuildLibDir) #endif #ifndef XftClientDepLibs @@ -3622,9 +3622,9 @@ ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir) #ifndef SharedFontconfigRev #define SharedFontconfigRev 1.0.4 #endif -SharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev) +SharedLibReferences(FONTCONFIG,NX_fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev) #else -ProjectUnsharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(FONTCONFIG,NX_fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir) #endif #ifdef UseInstalled @@ -3827,9 +3827,9 @@ LIBPNGLIB = -L$(LIBPNGLIBDIR) LinkerRuntimeLibraryPathFlag($(LIBPNGLIBDIR)) -lpn # ifndef SharedxkbfileRev # define SharedxkbfileRev 1.0 # endif -SharedLibReferences(XKBFILE,xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev) +SharedLibReferences(XKBFILE,NX_xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev) #else -ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XKBFILE,NX_xkbfile,$(XKBFILELIBSRC),XBuildLibDir) #endif #if BuildXKBlib @@ -3899,9 +3899,9 @@ ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir) # ifndef SharedxkbuiRev # define SharedxkbuiRev 1.0 # endif -SharedLibReferences(XKBUI,xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev) +SharedLibReferences(XKBUI,NX_xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev) #else -ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XKBUI,NX_xkbui,$(XKBUILIBSRC),XBuildLibDir) #endif #ifndef XkbuiLibs @@ -3974,9 +3974,9 @@ EXTRAXAWCLIENTLIBS = ExtraXawClientLibs #ifndef SharedXTrapRev #define SharedXTrapRev 6.4 #endif -SharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev) +SharedLibReferences(XTRAP,NX_XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev) #else -ProjectUnsharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),XBuildLibDir) +ProjectUnsharedLibReferences(XTRAP,NX_XTrap,$(XTRAPLIBSRC),XBuildLibDir) #endif #ifndef NeedDefaultDepLibs diff --git a/nx-X11/config/cf/lnxLib.rules b/nx-X11/config/cf/lnxLib.rules index 0cc71d3..4092031 100644 --- a/nx-X11/config/cf/lnxLib.rules +++ b/nx-X11/config/cf/lnxLib.rules @@ -389,7 +389,7 @@ JUMP_LDLIBS_libc = `$(CC) --print-libgcc-file-name` -lc XCOMM libX11.so (X11, SM, ICE) JUMP_ROOT_X11 = $(XLIBSRC) JUMP_IS_HOST_X11 = YES -JUMP_STUBLIBS_X11 = libX11.sa libSM.sa libICE.sa +JUMP_STUBLIBS_X11 = libNX_X11.sa libNX_SM.sa libNX_ICE.sa JUMP_SIBDIRS_X11 = $(JUMP_ROOT_SM) $(JUMP_ROOT_ICE) JUMP_DIR_X11 = $(JUMP_ROOT_X11)/shared JUMP_DEFS_X11 = $(XDMAUTHDEFS) $(XKB_DEFINES) @@ -400,9 +400,9 @@ JUMP_EXPORT_X11 = $(JUMP_DIR_X11)/jump.vars JUMP_ADDRESS_X11 = 0x60200000 JUMP_JUMPTABLESIZE_X11 = 0x4000 JUMP_GOTSIZE_X11 = 4096 -JUMP_STUBNAMES_X11 = libX11 libSM libICE +JUMP_STUBNAMES_X11 = libNX_X11 libNX_SM libNX_ICE JUMP_STUBS_IMPORT_X11 = $(LIBC_SA) -JUMP_SIBARS_X11 = jump/libSM.a~ jump/libICE.a~ +JUMP_SIBARS_X11 = jump/libNX_SM.a~ jump/libNX_ICE.a~ JUMP_LDLIBS_X11 = $(JUMP_SIBARS_X11) $(JUMP_LDLIBS_libc) XCOMM libSM (part of libX11.so) @@ -435,9 +435,9 @@ JUMP_JUMPTABLESIZE_Xt = 0x4000 JUMP_GOTSIZE_Xt = 4096 JUMP_STUBNAMES_Xt = libXt libXmu libXext libXi libXtst libXp JUMP_STUBS_IMPORT_Xt = $(JUMP_STUBS_IMPORT_X11) -JUMP_SIBARS_Xt = jump/libXmu.a~ jump/libXext.a~ jump/libXi.a~ jump/libXtst.a~ jump/libXp.a~ -JUMP_LDLIBS_Xt = $(JUMP_SIBARS_Xt) $(JUMP_ROOT_ICE)/libICE.sa \ - $(JUMP_ROOT_SM)/libSM.sa $(JUMP_ROOT_X11)/libX11.sa $(JUMP_LDLIBS_libc) +JUMP_SIBARS_Xt = jump/libNX_Xmu.a~ jump/libNX_Xext.a~ jump/libNX_Xi.a~ jump/libNX_Xtst.a~ jump/libNX_Xp.a~ +JUMP_LDLIBS_Xt = $(JUMP_SIBARS_Xt) $(JUMP_ROOT_ICE)/libNX_ICE.sa \ + $(JUMP_ROOT_SM)/libNX_SM.sa $(JUMP_ROOT_X11)/libNX_X11.sa $(JUMP_LDLIBS_libc) XCOMM libXmu (part of libXt.so) JUMP_ROOT_Xmu = $(XMUSRC) @@ -485,8 +485,8 @@ JUMP_JUMPTABLESIZE_Xaw = 0x4000 JUMP_GOTSIZE_Xaw = 4096 JUMP_STUBNAMES_Xaw = libXaw JUMP_STUBS_IMPORT_Xaw = $(JUMP_STUBS_IMPORT_X11) -JUMP_LDLIBS_Xaw = $(JUMP_ROOT_Xt)/libXt.sa $(JUMP_ROOT_Xt)/libXmu.sa \ - $(JUMP_ROOT_Xt)/libXext.sa $(JUMP_ROOT_X11)/libX11.sa \ +JUMP_LDLIBS_Xaw = $(JUMP_ROOT_Xt)/libNX_Xt.sa $(JUMP_ROOT_Xt)/libNX_Xmu.sa \ + $(JUMP_ROOT_Xt)/libNX_Xext.sa $(JUMP_ROOT_X11)/libNX_X11.sa \ $(JUMP_LDLIBS_libc) # endif /* !UseInstalled */ diff --git a/nx-X11/config/cf/lnxLib.tmpl b/nx-X11/config/cf/lnxLib.tmpl index f1eb5ac..788733c 100644 --- a/nx-X11/config/cf/lnxLib.tmpl +++ b/nx-X11/config/cf/lnxLib.tmpl @@ -9,7 +9,7 @@ XCOMM $XFree86: xc/config/cf/lnxLib.tmpl,v 3.19 2003/10/15 22:47:48 herrb Exp $ #ifndef FixupLibReferences #define FixupLibReferences() @@\ -XMULIBONLY = -lXmu @@\ +XMULIBONLY = -lNX_Xmu @@\ XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB) #endif @@ -66,7 +66,7 @@ XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB) #ifndef FixupLibReferences #define FixupLibReferences() @@\ -XMULIB = -lXmu $(XLIB) +XMULIB = -lNX_Xmu $(XLIB) #endif #endif /* UseElfFormat */ diff --git a/nx-X11/lib/X11/Imakefile b/nx-X11/lib/X11/Imakefile index c0ae810..9f0b682 100644 --- a/nx-X11/lib/X11/Imakefile +++ b/nx-X11/lib/X11/Imakefile @@ -82,7 +82,7 @@ NX_XCOMPEXTCONFIGTARGET = $(NX_XCOMPEXTLIBDIR)/config.status #define DoExtraLib SharedLibX11 #define DoDebugLib DebugLibX11 #define DoProfileLib ProfileLibX11 -#define LibName X11 +#define LibName NX_X11 #define SoRev SOXLIBREV #define HugeLibrary YES #define IncSubdir X11 diff --git a/nx-X11/lib/XRes/Imakefile b/nx-X11/lib/XRes/Imakefile index 410f57f..fbc067a 100644 --- a/nx-X11/lib/XRes/Imakefile +++ b/nx-X11/lib/XRes/Imakefile @@ -4,7 +4,7 @@ XCOMM $XFree86: xc/lib/XRes/Imakefile,v 1.3 2003/10/13 21:19:28 herrb Exp $ #define DoSharedLib SharedLibXRes #define DoDebugLib DebugLibXRes #define DoProfileLib ProfileLibXRes -#define LibName XRes +#define LibName NX_XRes #define SoRev SOXRESREV #define LibHeaders NO diff --git a/nx-X11/lib/Xau/Imakefile b/nx-X11/lib/Xau/Imakefile index 49cb7dc..331d29c 100644 --- a/nx-X11/lib/Xau/Imakefile +++ b/nx-X11/lib/Xau/Imakefile @@ -10,7 +10,7 @@ XCOMM $XFree86: xc/lib/Xau/Imakefile,v 3.5 1999/04/17 09:08:11 dawes Exp $ #define DoExtraLib SharedLibXau #define DoDebugLib DebugLibXau #define DoProfileLib ProfileLibXau -#define LibName Xau +#define LibName NX_Xau #define SoRev SOXAUTHREV #define IncSubdir X11 diff --git a/nx-X11/lib/Xcomposite/Imakefile b/nx-X11/lib/Xcomposite/Imakefile index 053df3d..a3b9414 100644 --- a/nx-X11/lib/Xcomposite/Imakefile +++ b/nx-X11/lib/Xcomposite/Imakefile @@ -14,7 +14,7 @@ SOXCOMPOSITEREV=1.0.0 #define DoDebugLib DebugLibXcomposite #define DoProfileLib ProfileLibXcomposite -#define LibName Xcomposite +#define LibName NX_Xcomposite #define SoRev SOXCOMPOSITEREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/lib/Xcomposite/xcomposite.pc.in b/nx-X11/lib/Xcomposite/xcomposite.pc.in index 770adf5..c319694 100644 --- a/nx-X11/lib/Xcomposite/xcomposite.pc.in +++ b/nx-X11/lib/Xcomposite/xcomposite.pc.in @@ -7,4 +7,4 @@ Name: Xcomposite Description: X Composite Library Version: @VERSION@ Cflags: -I${includedir} @XCOMPOSITE_CFLAGS@ @X_CFLAGS@ -Libs: -L${libdir} -lXcomposite @XCOMPOSITE_LIBS@ @X_LIBS@ +Libs: -L${libdir} -lNX_Xcomposite @XCOMPOSITE_LIBS@ @X_LIBS@ diff --git a/nx-X11/lib/Xcursor/Imakefile b/nx-X11/lib/Xcursor/Imakefile index 3e50841..53b41e8 100644 --- a/nx-X11/lib/Xcursor/Imakefile +++ b/nx-X11/lib/Xcursor/Imakefile @@ -15,7 +15,7 @@ SOXCURSORREV=1.0.2 #define DoDebugLib DebugLibXcursor #define DoProfileLib ProfileLibXcursor -#define LibName Xcursor +#define LibName NX_Xcursor #define SoRev SOXCURSORREV #define IncSubdir X11 #define IncSubSubdir Xcursor diff --git a/nx-X11/lib/Xcursor/xcursor.pc.in b/nx-X11/lib/Xcursor/xcursor.pc.in index c39fce7..87aba12 100644 --- a/nx-X11/lib/Xcursor/xcursor.pc.in +++ b/nx-X11/lib/Xcursor/xcursor.pc.in @@ -12,4 +12,4 @@ Description: X Cursor Library Version: @VERSION@ Requires: xrender Cflags: -I${includedir} ${xrendercflags} ${xcflags} -Libs: -L${libdir} -lXcursor ${xrenderlibs} ${xlibs} +Libs: -L${libdir} -lNX_Xcursor ${xrenderlibs} ${xlibs} diff --git a/nx-X11/lib/Xdamage/Imakefile b/nx-X11/lib/Xdamage/Imakefile index 260dfeb..d0d767a 100644 --- a/nx-X11/lib/Xdamage/Imakefile +++ b/nx-X11/lib/Xdamage/Imakefile @@ -14,7 +14,7 @@ SOXDAMAGEREV=1.0.1 #define DoDebugLib DebugLibXdamage #define DoProfileLib ProfileLibXdamage -#define LibName Xdamage +#define LibName NX_Xdamage #define SoRev SOXDAMAGEREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/lib/Xdamage/xdamage.pc.in b/nx-X11/lib/Xdamage/xdamage.pc.in index dbf77ac..d1c9f5d 100644 --- a/nx-X11/lib/Xdamage/xdamage.pc.in +++ b/nx-X11/lib/Xdamage/xdamage.pc.in @@ -7,4 +7,4 @@ Name: Xdamage Description: X Damage Library Version: @VERSION@ Cflags: -I${includedir} @XDAMAGE_CFLAGS@ @X_CFLAGS@ -Libs: -L${libdir} -lXdamage @XDAMAGE_LIBS@ @X_LIBS@ +Libs: -L${libdir} -lNX_Xdamage @XDAMAGE_LIBS@ @X_LIBS@ diff --git a/nx-X11/lib/Xdmcp/Imakefile b/nx-X11/lib/Xdmcp/Imakefile index 08b91cd..1fc7b6d 100644 --- a/nx-X11/lib/Xdmcp/Imakefile +++ b/nx-X11/lib/Xdmcp/Imakefile @@ -10,7 +10,7 @@ XCOMM $XFree86: xc/lib/Xdmcp/Imakefile,v 3.4 1999/04/17 09:08:12 dawes Exp $ #define DoExtraLib SharedLibXdmcp #define DoDebugLib DebugLibXdmcp #define DoProfileLib ProfileLibXdmcp -#define LibName Xdmcp +#define LibName NX_Xdmcp #define SoRev SOXDMCPREV #define IncSubdir X11 diff --git a/nx-X11/lib/Xext/Imakefile b/nx-X11/lib/Xext/Imakefile index b323dc7..c43361f 100644 --- a/nx-X11/lib/Xext/Imakefile +++ b/nx-X11/lib/Xext/Imakefile @@ -10,7 +10,7 @@ XCOMM $XFree86: xc/lib/Xext/Imakefile,v 1.12 2002/10/16 00:37:27 dawes Exp $ #define DoExtraLib SharedLibXext #define DoDebugLib DebugLibXext #define DoProfileLib ProfileLibXext -#define LibName Xext +#define LibName NX_Xext #define SoRev SOXEXTREV #define LibHeaders NO diff --git a/nx-X11/lib/Xfixes/Imakefile b/nx-X11/lib/Xfixes/Imakefile index c053aa2..bbf88e1 100644 --- a/nx-X11/lib/Xfixes/Imakefile +++ b/nx-X11/lib/Xfixes/Imakefile @@ -14,7 +14,7 @@ SOXFIXESREV=3.0.0 #define DoDebugLib DebugLibXfixes #define DoProfileLib ProfileLibXfixes -#define LibName Xfixes +#define LibName NX_Xfixes #define SoRev SOXFIXESREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/lib/Xfixes/xfixes.pc.in b/nx-X11/lib/Xfixes/xfixes.pc.in index 6180ea3..54e9ac7 100644 --- a/nx-X11/lib/Xfixes/xfixes.pc.in +++ b/nx-X11/lib/Xfixes/xfixes.pc.in @@ -7,4 +7,4 @@ Name: Xfixes Description: X Fixes Library Version: @VERSION@ Cflags: -I${includedir} @X_CFLAGS@ -Libs: -L${libdir} -lXfixes @X_LIBS@ +Libs: -L${libdir} -lNX_Xfixes @X_LIBS@ diff --git a/nx-X11/lib/Xinerama/Imakefile b/nx-X11/lib/Xinerama/Imakefile index 9927130..910f98d 100644 --- a/nx-X11/lib/Xinerama/Imakefile +++ b/nx-X11/lib/Xinerama/Imakefile @@ -4,7 +4,7 @@ XCOMM $XFree86: xc/lib/Xinerama/Imakefile,v 1.4 2002/10/16 00:37:31 dawes Exp $ #define DoSharedLib SharedLibXinerama #define DoDebugLib DebugLibXinerama #define DoProfileLib ProfileLibXinerama -#define LibName Xinerama +#define LibName NX_Xinerama #define SoRev SOXINERAMAREV #define LibHeaders NO diff --git a/nx-X11/lib/Xpm/Imakefile b/nx-X11/lib/Xpm/Imakefile index dd98b2f..35e9610 100644 --- a/nx-X11/lib/Xpm/Imakefile +++ b/nx-X11/lib/Xpm/Imakefile @@ -12,7 +12,7 @@ XCOMM $XFree86: xc/lib/Xpm/Imakefile,v 1.1 1999/01/11 14:40:02 dawes Exp $ #define DoDebugLib DebugLibXpm #define DoProfileLib ProfileLibXpm #define HasSharedData NO -#define LibName Xpm +#define LibName NX_Xpm #define SoRev SOXPMREV #define IncSubdir X11 diff --git a/nx-X11/lib/Xrandr/Imakefile b/nx-X11/lib/Xrandr/Imakefile index 15167a9..5cf70a5 100644 --- a/nx-X11/lib/Xrandr/Imakefile +++ b/nx-X11/lib/Xrandr/Imakefile @@ -5,7 +5,7 @@ XCOMM $XdotOrg: xc/lib/Xrandr/Imakefile,v 1.5 2005/10/24 23:30:21 alanc Exp $ #define DoSharedLib SharedLibXrandr #define DoDebugLib DebugLibXrandr #define DoProfileLib ProfileLibXrandr -#define LibName Xrandr +#define LibName NX_Xrandr #define SoRev SOXRANDRREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/lib/Xrender/Imakefile b/nx-X11/lib/Xrender/Imakefile index c690dc0..c4fd0aa 100644 --- a/nx-X11/lib/Xrender/Imakefile +++ b/nx-X11/lib/Xrender/Imakefile @@ -74,7 +74,7 @@ clean:: #define DoSharedLib SharedLibXrender #define DoDebugLib DebugLibXrender #define DoProfileLib ProfileLibXrender -#define LibName Xrender +#define LibName NX_Xrender #define SoRev SOXRENDERREV #ifdef XBuildIncDir diff --git a/nx-X11/lib/Xrender/xrender.pc.in b/nx-X11/lib/Xrender/xrender.pc.in index 5cc898b..ec8abb5 100644 --- a/nx-X11/lib/Xrender/xrender.pc.in +++ b/nx-X11/lib/Xrender/xrender.pc.in @@ -8,4 +8,4 @@ Description: X Render Library Version: @VERSION@ Requires: @X_REQUIRES@ Cflags: -I${includedir} @RENDER_CFLAGS@ @X_NON_PKG_CFLAGS@ -Libs: -L${libdir} -lXrender @X_NON_PKG_LIBS@ +Libs: -L${libdir} -lNX_Xrender @X_NON_PKG_LIBS@ diff --git a/nx-X11/lib/Xtst/Imakefile b/nx-X11/lib/Xtst/Imakefile index b3dd9f7..f321294 100644 --- a/nx-X11/lib/Xtst/Imakefile +++ b/nx-X11/lib/Xtst/Imakefile @@ -10,7 +10,7 @@ XCOMM $XFree86: xc/lib/Xtst/Imakefile,v 1.2 1998/12/20 11:57:12 dawes Exp $ #define DoExtraLib SharedLibXtst #define DoDebugLib DebugLibXtst #define DoProfileLib ProfileLibXtst -#define LibName Xtst +#define LibName NX_Xtst #define SoRev SOXTESTREV #define LibHeaders NO diff --git a/nx-X11/lib/font/Imakefile b/nx-X11/lib/font/Imakefile index 02ddd8e..f47fe96 100644 --- a/nx-X11/lib/font/Imakefile +++ b/nx-X11/lib/font/Imakefile @@ -31,7 +31,7 @@ XCOMM $XFree86: xc/lib/font/Imakefile,v 3.37 2003/10/24 16:21:12 tsi Exp $ STUBDIRS = stubs #endif -LIBNAME = Xfont +LIBNAME = NX_Xfont SOREV = $(SOFONTREV) #ifndef SeparateSharedCompile diff --git a/nx-X11/lib/oldX/Imakefile b/nx-X11/lib/oldX/Imakefile index ae80d26..663d110 100644 --- a/nx-X11/lib/oldX/Imakefile +++ b/nx-X11/lib/oldX/Imakefile @@ -10,7 +10,7 @@ XCOMM $XFree86: xc/lib/oldX/Imakefile,v 1.2 1998/12/20 11:57:19 dawes Exp $ #define DoExtraLib SharedOldX #define DoDebugLib DebugOldX #define DoProfileLib ProfileOldX -#define LibName oldX +#define LibName NX_oldX #define SoRev SOOLDXREV #define IncSubdir X11 diff --git a/nx-X11/lib/xkbfile/Imakefile b/nx-X11/lib/xkbfile/Imakefile index 7b751c9..d769381 100644 --- a/nx-X11/lib/xkbfile/Imakefile +++ b/nx-X11/lib/xkbfile/Imakefile @@ -11,7 +11,7 @@ XCOMM $XFree86: xc/lib/xkbfile/Imakefile,v 3.5 2003/10/15 21:23:38 herrb Exp $ #define DoDebugLib DebugLibxkbfile #define DoProfileLib ProfileLibxkbfile #define HasSharedData NO -#define LibName xkbfile +#define LibName NX_xkbfile #define SoRev SOXKBFILEREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/lib/xkbui/Imakefile b/nx-X11/lib/xkbui/Imakefile index f27bad6..a017d68 100644 --- a/nx-X11/lib/xkbui/Imakefile +++ b/nx-X11/lib/xkbui/Imakefile @@ -6,7 +6,7 @@ XCOMM $XFree86: xc/lib/xkbui/Imakefile,v 3.4 2003/10/15 21:23:38 herrb Exp $ #define DoDebugLib DebugLibxkbui #define DoProfileLib ProfileLibxkbui #define HasSharedData NO -#define LibName xkbui +#define LibName NX_xkbui #define SoRev SOXKBUIREV #define IncSubdir X11 #define IncSubSubdir extensions diff --git a/nx-X11/programs/Xserver/Imakefile b/nx-X11/programs/Xserver/Imakefile index c31102b..24e8850 100644 --- a/nx-X11/programs/Xserver/Imakefile +++ b/nx-X11/programs/Xserver/Imakefile @@ -313,7 +313,7 @@ XPFBLIBS = dix/LibraryTargetName(xpstubs) FONTBASE = $(FONTLIBSRC)/fontbase.o \ $(FONTLIBSRC)/LibraryTargetName(fontbase) #if XserverStaticFontLib - FONT = $(FONTLIBSRC)/LibraryTargetName(Xfont) $(FREETYPE2LIB) + FONT = $(FONTLIBSRC)/LibraryTargetName(NX_Xfont) $(FREETYPE2LIB) #else FONT = $(LDPRELIB) $(XFONTLIB) $(FREETYPE2LIB) #endif @@ -994,7 +994,7 @@ NXAGENTOBJS = hw/nxagent/miinitext.o \ dix/main.o #endif -XPMLIB = -lXpm +XPMLIB = -lNX_Xpm NXAGENT = hw/nxagent/LibraryTargetName(nxagent) NXAGENTLIBS = PreFbLibs $(NXAGENT) FbPostFbLibs $(NXAGENT) $(MI) NXAGENTSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XLIB) $(SYSLIBS) $(XPMLIB) @@ -1012,18 +1012,18 @@ $(NXAGENTOBJS) $(NXAGENTLIBS) $(NXAGENTSYSLIBS):: $(NXAGENTDIRS) #if defined(SunArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ - -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lXrender -lXfixes \ - -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXdmcp \ + -lXcomp -lXcompext -lXcompshad -lrt -L/usr/sfw/lib -lNX_Xrender -lNX_Xfixes \ + -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #elif defined(cygwinArchitecture) NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext \ - -lXcomp -lXcompext -lXrender -lX11 -lXext -lXcomposite -lXfixes \ - -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lXtst -lXdmcp \ + -lXcomp -lXcompext -lNX_Xrender -lX11 -lNX_Xext -lNX_Xcomposite -lNX_Xfixes \ + -L ../../../nxcompshad -lXcompshad -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #else NXAGENTNXLIBS = -L ../../../nxcomp -L ../../../nxcompext -L ../../../nxcompshad \ - -lXcomp -lXcompext -lXcompshad -lXrender -lX11 -lXext -lXfixes \ - -L../../../nx-X11/exports/lib -lXtst -lXdamage -lXrandr -lXcomposite -lXinerama -lXdmcp \ + -lXcomp -lXcompext -lXcompshad -lNX_Xrender -lNX_X11 -lNX_Xext -lNX_Xfixes \ + -L../../../nx-X11/exports/lib -lNX_Xtst -lNX_Xdamage -lNX_Xrandr -lNX_Xcomposite -lNX_Xinerama -lNX_Xdmcp \ `pkg-config --libs libxml-2.0` #endif @@ -1078,7 +1078,7 @@ nxagent_static_nolibs: nxagent else exit 0; fi $(CCLINK) -o nxagent_static_nolibs -Wl,-Bstatic $(LDOPTIONS) $(NXAGENTOBJS) \ $(NXAGENTLIBS) $(LOADABLEEXTS) $(LIBCWRAPPER) $(LDLIBS) $(FONTLIBS) \ - $(LDPRELIBS) $(SYSLIBS) -Wl,-Bdynamic -lXext -lX11 $(EXTRA_LOAD_FLAGS) + $(LDPRELIBS) $(SYSLIBS) -Wl,-Bdynamic -lNX_Xext -lNX_X11 $(EXTRA_LOAD_FLAGS) #endif /* NXAgentServer */ #if defined(XnonServer) && XnonServer diff --git a/nxcompext/Makefile.in b/nxcompext/Makefile.in index 9fd2c7d..7987c75 100644 --- a/nxcompext/Makefile.in +++ b/nxcompext/Makefile.in @@ -42,12 +42,12 @@ CCINCLUDES = -I. -I../nxcomp CCDEFINES = LDFLAGS = @LDFLAGS@ -L../nxcomp -LIBS = @LIBS@ -lz -lX11 -lXcomp +LIBS = @LIBS@ -lz -lNX_X11 -lXcomp # # Only if THREADS is defined # -# LIBS = @LIBS@ -lz -ljpeg -lpthread -lX11 -lXcomp +# LIBS = @LIBS@ -lz -ljpeg -lpthread -lNX_X11 -lXcomp # srcdir = @srcdir@ diff --git a/nxcompshad/Makefile.in b/nxcompshad/Makefile.in index 00bca25..f7e89a6 100644 --- a/nxcompshad/Makefile.in +++ b/nxcompshad/Makefile.in @@ -48,7 +48,7 @@ CCINCLUDES = CCDEFINES = LDFLAGS = @LDFLAGS@ -LIBS = @LIBS@ -lX11 +LIBS = @LIBS@ -lNX_X11 # # Only if THREADS is defined. @@ -139,7 +139,7 @@ all: depend $(LIBARCHIVE) $(LIBDLL) else -EXTRALIBS = -lXtst -lXrandr -lXdamage +EXTRALIBS = -lNX_Xtst -lNX_Xrandr -lNX_Xdamage all: depend $(LIBFULL) $(LIBLOAD) $(LIBSHARED) $(LIBARCHIVE) -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 456f887d95ca34974c1192a477dfca117827457f Author: Orion Poplawski <orion@nwra.com> Date: Fri Feb 13 13:30:31 2015 +0100 Do not build bundled libraries (601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch). This commit has been submitted by Orion in two portions. One was submitted to X2Go BTS and created on Wed, 10 Jul 2013. The other portion has been taken from the Fedora package by Mike Gabriel and worked into this patch on Fri, 06 Dec 2013. --- ...changes-to-not-use-bundled-libraries.full.patch | 99 -------------------- debian/patches/series | 1 - nx-X11/config/cf/host.def | 17 +++- nx-X11/lib/Imakefile | 6 -- nx-X11/lib/font/include/Imakefile | 2 +- 5 files changed, 14 insertions(+), 111 deletions(-) diff --git a/debian/patches/601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch b/debian/patches/601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch deleted file mode 100644 index dbb2e85..0000000 --- a/debian/patches/601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch +++ /dev/null @@ -1,99 +0,0 @@ -Description: Do not build bundled libraries. -Author: Orion Poplawski <orion@nwra.com> -Abstract: - This commit has been submitted by Orion in two - portions. One was submitted to X2Go BTS and created - on Wed, 10 Jul 2013. - . - The other portion has been taken from the Fedora - package by Mike Gabriel and worked into this - patch on Fri, 06 Dec 2013. ---- - nx-X11/config/cf/host.def | 10 +++++++--- - nx-X11/lib/font/include/Imakefile | 2 +- - 2 files changed, 8 insertions(+), 4 deletions(-) - ---- a/nx-X11/config/cf/host.def -+++ b/nx-X11/config/cf/host.def -@@ -311,6 +311,7 @@ - * - #define BuildFreeType NO - */ -+#define BuildFreeType NO - - /* - * To set non-default build options for the underlying FreeType libraries, -@@ -892,7 +893,7 @@ - * - #define HasFreetype2 NO - */ --#define HasFreetype2 NO -+#define HasFreetype2 YES - - /* - * To use a FreeType library already installed outside the default search -@@ -909,7 +910,7 @@ - * - #define HasFontconfig NO - */ --#define HasFontconfig NO -+#define HasFontconfig YES - - /* - * To use a Fontconfig library already installed outside the default search -@@ -925,7 +926,7 @@ - * - #define HasExpat NO - */ --#define HasExpat NO -+#define HasExpat YES - - /* - * To use a Expat library already installed outside the default search -@@ -961,7 +962,7 @@ - - #define SharedLibXdmcp YES - --#define BuildXaw7 YES -+#define BuildXaw7 NO - - #else /* #if !defined(NXZaurusXServer) && !defined(NXiPAQXServer) && !defined(DarwinArchitecture) */ - -@@ -1019,3 +1020,11 @@ - #endif - - #endif /* #if !defined(NXZaurusXServer) && !defined(NXiPAQXServer) && !defined(DarwinArchitecture) */ -+ -+#define BuildRman NO -+#define BuildFontEncLib NO -+#define BuildXcursorLibrary NO -+#define BuildXftLibrary NO -+#define BuildXft1Library NO -+#define SharedLibFont NO -+#define BuildLoadableXlibI18n NO ---- a/nx-X11/lib/font/include/Imakefile -+++ b/nx-X11/lib/font/include/Imakefile -@@ -1,5 +1,5 @@ - XCOMM $Xorg$ -- HEADERS = bitmap.h bufio.h fntfil.h fntfilio.h fntfilst.h fontenc.h \ -+ HEADERS = bitmap.h bufio.h fntfil.h fntfilio.h fntfilst.h \ - fontencc.h fontmisc.h fontmod.h fontshow.h fontutil.h \ - fontxlfd.h - all:: ---- a/nx-X11/lib/Imakefile -+++ b/nx-X11/lib/Imakefile -@@ -213,14 +213,8 @@ - - #if BuildLibraries - OLDXLIBDIR = oldX --ICELIBDIR = ICE --SMLIBDIR = SM --XTLIBDIR = Xt --XMULIBDIR = Xmu --XMUULIBDIR = Xmuu - XPMLIBDIR = Xpm - XTSTLIBDIR = Xtst --FSLIBDIR = FS - #endif - - diff --git a/debian/patches/series b/debian/patches/series index 6a20a8f..21cf21d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch 602_nx-X11_initgroups.full.patch 603_nx-X11_compilation_warnings.full.patch 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch diff --git a/nx-X11/config/cf/host.def b/nx-X11/config/cf/host.def index 2193a47..9b482c6 100644 --- a/nx-X11/config/cf/host.def +++ b/nx-X11/config/cf/host.def @@ -311,6 +311,7 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ * #define BuildFreeType NO */ +#define BuildFreeType NO /* * To set non-default build options for the underlying FreeType libraries, @@ -892,7 +893,7 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ * #define HasFreetype2 NO */ -#define HasFreetype2 NO +#define HasFreetype2 YES /* * To use a FreeType library already installed outside the default search @@ -909,7 +910,7 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ * #define HasFontconfig NO */ -#define HasFontconfig NO +#define HasFontconfig YES /* * To use a Fontconfig library already installed outside the default search @@ -925,7 +926,7 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ * #define HasExpat NO */ -#define HasExpat NO +#define HasExpat YES /* * To use a Expat library already installed outside the default search @@ -961,7 +962,7 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ #define SharedLibXdmcp YES -#define BuildXaw7 YES +#define BuildXaw7 NO #else /* #if !defined(NXZaurusXServer) && !defined(NXiPAQXServer) && !defined(DarwinArchitecture) */ @@ -1019,3 +1020,11 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $ #endif #endif /* #if !defined(NXZaurusXServer) && !defined(NXiPAQXServer) && !defined(DarwinArchitecture) */ + +#define BuildRman NO +#define BuildFontEncLib NO +#define BuildXcursorLibrary NO +#define BuildXftLibrary NO +#define BuildXft1Library NO +#define SharedLibFont NO +#define BuildLoadableXlibI18n NO diff --git a/nx-X11/lib/Imakefile b/nx-X11/lib/Imakefile index 240e8b3..cf4109b 100644 --- a/nx-X11/lib/Imakefile +++ b/nx-X11/lib/Imakefile @@ -213,14 +213,8 @@ XEXTLIBDIR = Xext #if BuildLibraries OLDXLIBDIR = oldX -ICELIBDIR = ICE -SMLIBDIR = SM -XTLIBDIR = Xt -XMULIBDIR = Xmu -XMUULIBDIR = Xmuu XPMLIBDIR = Xpm XTSTLIBDIR = Xtst -FSLIBDIR = FS #endif diff --git a/nx-X11/lib/font/include/Imakefile b/nx-X11/lib/font/include/Imakefile index 91c84e6..73e65a4 100644 --- a/nx-X11/lib/font/include/Imakefile +++ b/nx-X11/lib/font/include/Imakefile @@ -1,5 +1,5 @@ XCOMM $Xorg$ - HEADERS = bitmap.h bufio.h fntfil.h fntfilio.h fntfilst.h fontenc.h \ + HEADERS = bitmap.h bufio.h fntfil.h fntfilio.h fntfilst.h \ fontencc.h fontmisc.h fontmod.h fontshow.h fontutil.h \ fontxlfd.h all:: -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 415b20b6fbf562d4132fca90a00b6c32d94040ed Author: Orion Poplawski <orion@cora.nwra.com> Date: Fri Feb 13 13:32:17 2015 +0100 Be compliant with POS36-C: Observe correct revocation order while relinquishing privileges (602_nx-X11_initgroups.full.patch). The Fedora review of NX (redistributed) caught the following rpmlint issue: This executable is calling setuid and setgid without setgroups or initgroups. There is a high probability this mean it didn't relinquish all groups, and this would be a potential security issue to be fixed. Seek POS36-C on the web for details about the problem. Ref POS36-C: https://www.securecoding.cert.org/confluence/display/seccode/POS36-C.+Observ... This patch adds initgroups() calls to the code to initialize the supplemental group list. --- debian/patches/602_nx-X11_initgroups.full.patch | 67 ----------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/os/utils.c | 7 +++ nxcomp/Pipe.cpp | 3 + 4 files changed, 10 insertions(+), 68 deletions(-) diff --git a/debian/patches/602_nx-X11_initgroups.full.patch b/debian/patches/602_nx-X11_initgroups.full.patch deleted file mode 100644 index 182b378..0000000 --- a/debian/patches/602_nx-X11_initgroups.full.patch +++ /dev/null @@ -1,67 +0,0 @@ -Description: Be compliant with POS36-C: Observe correct revocation order while relinquishing privileges -Author: Orion Poplawski <orion@cora.nwra.com> -Abstract: - The Fedora review of NX (redistributed) caught the following rpmlint issue: - . - This executable is calling setuid and setgid without setgroups or initgroups. - There is a high probability this mean it didn't relinquish all groups, and this - would be a potential security issue to be fixed. Seek POS36-C on the web for - details about the problem. - . - Ref POS36-C: - https://www.securecoding.cert.org/confluence/display/seccode/POS36-C.+Observ... - . - This patch adds initgroups() calls to the code to initialize the supplemental group list. -diff --git a/nx-X11/programs/Xserver/os/utils.c b/nx-X11/programs/Xserver/os/utils.c -index 7e62654..9b2431a 100644 ---- a/nx-X11/programs/Xserver/os/utils.c -+++ b/nx-X11/programs/Xserver/os/utils.c -@@ -112,6 +112,9 @@ OR PERFORMANCE OF THIS SOFTWARE. - #include <sys/stat.h> - #include <ctype.h> /* for isspace */ - #include <stdarg.h> -+#include <sys/types.h> -+#include <grp.h> -+#include <pwd.h> - - #if defined(DGUX) - #include <sys/resource.h> -@@ -1770,6 +1773,7 @@ System(char *command) - void (*csig)(int); - #endif - int status; -+ struct passwd *pwent; - - if (!command) - return(1); -@@ -1791,6 +1795,9 @@ System(char *command) - case -1: /* error */ - p = -1; - case 0: /* child */ -+ pwent = getpwuid(getuid()); -+ if (initgroups(pwent->pw_name,getgid()) == -1) -+ _exit(127); - if (setgid(getgid()) == -1) - _exit(127); - if (setuid(getuid()) == -1) -diff --git a/nxcomp/Pipe.cpp b/nxcomp/Pipe.cpp -index 7238d0c..aacbbae 100644 ---- a/nxcomp/Pipe.cpp -+++ b/nxcomp/Pipe.cpp -@@ -21,6 +21,7 @@ - #include <pwd.h> - #include <sys/types.h> - #include <sys/wait.h> -+#include <grp.h> - - #include "Pipe.h" - #include "Misc.h" -@@ -234,6 +235,8 @@ FILE *Popen(char * const parameters[], const char *type) - // Child. - // - -+ struct passwd *pwent = getpwuid(getuid()); -+ if (pwent) initgroups(pwent->pw_name,getgid()); - setgid(getgid()); - setuid(getuid()); - diff --git a/debian/patches/series b/debian/patches/series index 21cf21d..c805706 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -602_nx-X11_initgroups.full.patch 603_nx-X11_compilation_warnings.full.patch 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch 606_nx-X11_build-on-aarch64.full.patch diff --git a/nx-X11/programs/Xserver/os/utils.c b/nx-X11/programs/Xserver/os/utils.c index 7e62654..9b2431a 100644 --- a/nx-X11/programs/Xserver/os/utils.c +++ b/nx-X11/programs/Xserver/os/utils.c @@ -112,6 +112,9 @@ OR PERFORMANCE OF THIS SOFTWARE. #include <sys/stat.h> #include <ctype.h> /* for isspace */ #include <stdarg.h> +#include <sys/types.h> +#include <grp.h> +#include <pwd.h> #if defined(DGUX) #include <sys/resource.h> @@ -1770,6 +1773,7 @@ System(char *command) void (*csig)(int); #endif int status; + struct passwd *pwent; if (!command) return(1); @@ -1791,6 +1795,9 @@ System(char *command) case -1: /* error */ p = -1; case 0: /* child */ + pwent = getpwuid(getuid()); + if (initgroups(pwent->pw_name,getgid()) == -1) + _exit(127); if (setgid(getgid()) == -1) _exit(127); if (setuid(getuid()) == -1) diff --git a/nxcomp/Pipe.cpp b/nxcomp/Pipe.cpp index 7238d0c..aacbbae 100644 --- a/nxcomp/Pipe.cpp +++ b/nxcomp/Pipe.cpp @@ -21,6 +21,7 @@ #include <pwd.h> #include <sys/types.h> #include <sys/wait.h> +#include <grp.h> #include "Pipe.h" #include "Misc.h" @@ -234,6 +235,8 @@ FILE *Popen(char * const parameters[], const char *type) // Child. // + struct passwd *pwent = getpwuid(getuid()); + if (pwent) initgroups(pwent->pw_name,getgid()); setgid(getgid()); setuid(getuid()); -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 96d5e74a30ea8571c3e403bd5d5b3080aaa193f1 Author: Mirraz Mirraz <mirraz1@rambler.ru> Date: Fri Feb 13 13:34:16 2015 +0100 Handle some serious compilation warnings (603_nx-X11_compilation_warnings.full.patch). --- .../603_nx-X11_compilation_warnings.full.patch | 38 -------------------- debian/patches/series | 1 - nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c | 1 - nx-X11/lib/X11/imLcPrs.c | 2 +- nx-X11/programs/Xserver/xkb/ddxLoad.c | 6 ++++ 5 files changed, 7 insertions(+), 41 deletions(-) diff --git a/debian/patches/603_nx-X11_compilation_warnings.full.patch b/debian/patches/603_nx-X11_compilation_warnings.full.patch deleted file mode 100644 index 3656461..0000000 --- a/debian/patches/603_nx-X11_compilation_warnings.full.patch +++ /dev/null @@ -1,38 +0,0 @@ -Description: Handle some serious compilation warnings -Author: Mirraz Mirraz <mirraz1@rambler.ru> ---- a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c 2013-08-30 20:18:40.000000000 +0600 -+++ b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c 2013-09-30 18:39:42.357560169 +0600 -@@ -3259,7 +3259,6 @@ - vp->SrcReg[0].Swizzle = SWIZZLE_NOOP; - vp->SrcReg[1].Swizzle = SWIZZLE_NOOP; - vp->SrcReg[2].Swizzle = SWIZZLE_NOOP; -- vp->SrcReg[3].Swizzle = SWIZZLE_NOOP; - vp->DstReg.WriteMask = 0xf; - - switch (type) { ---- a/nx-X11/lib/X11/imLcPrs.c 2013-08-30 20:18:40.000000000 +0600 -+++ b/nx-X11/lib/X11/imLcPrs.c 2013-09-30 19:02:56.925125678 +0600 -@@ -589,7 +589,7 @@ - - l = _Xmbstoutf8(local_utf8_buf, rhs_string_mb, LOCAL_UTF8_BUFSIZE - 1); - if (l == LOCAL_UTF8_BUFSIZE - 1) { -- local_wc_buf[l] = '\0'; -+ local_utf8_buf[l] = '\0'; - } - if( (rhs_string_utf8 = (char *)Xmalloc(l + 1)) == NULL ) { - Xfree( rhs_string_wc ); ---- a/nx-X11/programs/Xserver/xkb/ddxLoad.c 2013-08-30 20:18:40.000000000 +0600 -+++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c 2013-09-30 18:56:27.358995920 +0600 -@@ -37,6 +37,12 @@ - #include <errno.h> - #include <stdio.h> - #include <ctype.h> -+ -+/* stat() */ -+#include <sys/types.h> -+#include <sys/stat.h> -+#include <unistd.h> -+ - #define NEED_EVENTS 1 - #include <X11/X.h> - #include <X11/Xos.h> diff --git a/debian/patches/series b/debian/patches/series index c805706..1d0f53b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -603_nx-X11_compilation_warnings.full.patch 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch 606_nx-X11_build-on-aarch64.full.patch 607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch diff --git a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c index 57891b2..ed1cbd9 100644 --- a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c +++ b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c @@ -3259,7 +3259,6 @@ parse_vp_instruction (GLcontext * ctx, GLubyte ** inst, vp->SrcReg[0].Swizzle = SWIZZLE_NOOP; vp->SrcReg[1].Swizzle = SWIZZLE_NOOP; vp->SrcReg[2].Swizzle = SWIZZLE_NOOP; - vp->SrcReg[3].Swizzle = SWIZZLE_NOOP; vp->DstReg.WriteMask = 0xf; switch (type) { diff --git a/nx-X11/lib/X11/imLcPrs.c b/nx-X11/lib/X11/imLcPrs.c index fbad5a2..9736e13 100644 --- a/nx-X11/lib/X11/imLcPrs.c +++ b/nx-X11/lib/X11/imLcPrs.c @@ -589,7 +589,7 @@ parseline( l = _Xmbstoutf8(local_utf8_buf, rhs_string_mb, LOCAL_UTF8_BUFSIZE - 1); if (l == LOCAL_UTF8_BUFSIZE - 1) { - local_wc_buf[l] = '\0'; + local_utf8_buf[l] = '\0'; } if( (rhs_string_utf8 = (char *)Xmalloc(l + 1)) == NULL ) { Xfree( rhs_string_wc ); diff --git a/nx-X11/programs/Xserver/xkb/ddxLoad.c b/nx-X11/programs/Xserver/xkb/ddxLoad.c index 0b779b7..7caf9b1 100644 --- a/nx-X11/programs/Xserver/xkb/ddxLoad.c +++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c @@ -37,6 +37,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. #include <errno.h> #include <stdio.h> #include <ctype.h> + +/* stat() */ +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + #define NEED_EVENTS 1 #include <X11/X.h> #include <X11/Xos.h> -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit ab8d1276f5c7ebef6f959cfb691cce5fff6867b4 Author: Clemens Lang <cal@macports.org> Date: Fri Feb 13 13:35:40 2015 +0100 In Types.h, don't use STL internals on libc++ (605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch). The nx-libs-lite package does not compile on OS X Mavericks because Apple's clang compilers now default to compiling against the libc++ STL rather than (their outdated copy of) libstdc++. While the compiler still allows changing that, we should not rely on this being possible forever. The compiler chokes in Types.h, specifically the clear() methods in subclasses of vectors that use implementation details of the GNU STL. The attached patch fixes these compilation issues by not overriding the clear() method when compiling against libc++, since the libc++ headers seem to do essentially the same as the overriden method. --- ...ont-use-STL-internals-on-libc++.full+lite.patch | 52 -------------------- debian/patches/series | 1 - nxcomp/Types.h | 8 +++ 3 files changed, 8 insertions(+), 53 deletions(-) diff --git a/debian/patches/605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch b/debian/patches/605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch deleted file mode 100644 index 60f33ce..0000000 --- a/debian/patches/605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch +++ /dev/null @@ -1,52 +0,0 @@ -Description: In Types.h, don't use STL internals on libc++. -Author: Clemens Lang <cal@macports.org> -Abstract: - The nx-libs-lite package does not compile on OS X Mavericks because - Apple's clang compilers now default to compiling against the libc++ STL - rather than (their outdated copy of) libstdc++. - . - While the compiler still allows changing that, we should not rely on - this being possible forever. - . - The compiler chokes in Types.h, specifically the clear() methods in - subclasses of vectors that use implementation details of the GNU STL. - The attached patch fixes these compilation issues by not overriding the - clear() method when compiling against libc++, since the libc++ headers - seem to do essentially the same as the overriden method. ---- a/nxcomp/Types.h 2013-11-05 01:35:22.000000000 +0100 -+++ b/nxcomp/Types.h 2013-11-05 01:37:30.000000000 +0100 -@@ -55,6 +55,9 @@ - return &*(vector < unsigned char >::begin()); - } - -+ // Avoid overriding clear() when using libc++. Fiddling with STL internals -+ // doesn't really seem like a good idea to me anyway. -+ #ifndef _LIBCPP_VECTOR - void clear() - { - #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) -@@ -95,12 +98,16 @@ - - #endif /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */ - } -+ #endif /* #ifdef _LIBCPP_VECTOR */ - }; - - class T_messages : public vector < Message * > - { - public: - -+ // Avoid overriding clear() when using libc++. Fiddling with STL internals -+ // doesn't really seem like a good idea to me anyway. -+ #ifndef _LIBCPP_VECTOR - void clear() - { - #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) -@@ -141,6 +148,7 @@ - - #endif /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */ - } -+ #endif /* #ifndef _LIBCPP_VECTOR */ - }; - - typedef md5_byte_t * T_checksum; diff --git a/debian/patches/series b/debian/patches/series index 1d0f53b..ee95c5b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch 606_nx-X11_build-on-aarch64.full.patch 607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch 990_fix-DEBUG-and-TEST-builds.full.patch diff --git a/nxcomp/Types.h b/nxcomp/Types.h index 05f62bd..b3fe40e 100644 --- a/nxcomp/Types.h +++ b/nxcomp/Types.h @@ -55,6 +55,9 @@ class T_data : public vector < unsigned char > return &*(vector < unsigned char >::begin()); } + // Avoid overriding clear() when using libc++. Fiddling with STL internals + // doesn't really seem like a good idea to me anyway. + #ifndef _LIBCPP_VECTOR void clear() { #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) @@ -95,12 +98,16 @@ class T_data : public vector < unsigned char > #endif /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */ } + #endif /* #ifdef _LIBCPP_VECTOR */ }; class T_messages : public vector < Message * > { public: + // Avoid overriding clear() when using libc++. Fiddling with STL internals + // doesn't really seem like a good idea to me anyway. + #ifndef _LIBCPP_VECTOR void clear() { #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) @@ -141,6 +148,7 @@ class T_messages : public vector < Message * > #endif /* #if defined(__STL_USE_STD_ALLOCATORS) || defined(__GLIBCPP_INTERNAL_VECTOR_H) */ } + #endif /* #ifndef _LIBCPP_VECTOR */ }; typedef md5_byte_t * T_checksum; -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 31cdd874cf2ca5b5cfad699ff1d283f0747821e4 Author: Orion Poplawski <orion@cora.nwra.com> Date: Fri Feb 13 13:37:33 2015 +0100 Provide build support for aarch64 architecture (606_nx-X11_build-on-aarch64.full.patch). --- .../patches/606_nx-X11_build-on-aarch64.full.patch | 77 -------------------- debian/patches/series | 1 - nx-X11/config/cf/Imake.cf | 3 + nx-X11/config/cf/Imake.tmpl | 4 + nx-X11/config/cf/linux.cf | 10 +++ nx-X11/programs/Xserver/include/servermd.h | 22 ++++++ 6 files changed, 39 insertions(+), 78 deletions(-) diff --git a/debian/patches/606_nx-X11_build-on-aarch64.full.patch b/debian/patches/606_nx-X11_build-on-aarch64.full.patch deleted file mode 100644 index bda4339..0000000 --- a/debian/patches/606_nx-X11_build-on-aarch64.full.patch +++ /dev/null @@ -1,77 +0,0 @@ -Description: Provide build support for aarch64 architecture -Author: Orion Poplawski <orion@cora.nwra.com> ---- a/nx-X11/config/cf/Imake.cf -+++ b/nx-X11/config/cf/Imake.cf -@@ -908,6 +908,9 @@ - # endif - # undef __ARMEB__ - # endif -+# ifdef __aarch64__ -+# define Arm64Architecture -+# endif - # ifdef mc68000 - # define Mc68020Architecture - # undef mc68000 ---- a/nx-X11/config/cf/linux.cf -+++ b/nx-X11/config/cf/linux.cf -@@ -844,6 +844,16 @@ - # define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines - #endif /* Arm32Achitecture */ - -+#ifdef Arm64Architecture -+# define DefaultCCOptions -+# ifndef OptimizedCDebugFlags -+# define OptimizedCDebugFlags -O3 -+# endif -+# define LinuxMachineDefines -D__aarch64__ -U__arm -Uarm -+# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -+# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -+#endif /* Arm64Achitecture */ -+ - #ifdef HPArchitecture - # define OptimizedCDebugFlags -O2 GccAliasingArgs - # define LinuxMachineDefines -D__hppa__ ---- a/nx-X11/config/cf/Imake.tmpl -+++ b/nx-X11/config/cf/Imake.tmpl -@@ -526,6 +526,10 @@ - #define ByteOrder X_BIG_ENDIAN - #elif defined(Arm32Architecture) - #define ByteOrder X_LITTLE_ENDIAN -+#elif defined(Arm64ebArchitecture) -+#define ByteOrder X_BIG_ENDIAN -+#elif defined(Arm64Architecture) -+#define ByteOrder X_LITTLE_ENDIAN - #elif defined(RsArchitecture) - #define ByteOrder X_BIG_ENDIAN - #elif defined(PpcArchitecture) || defined(Ppc64Architecture) ---- a/nx-X11/programs/Xserver/include/servermd.h -+++ b/nx-X11/programs/Xserver/include/servermd.h -@@ -154,6 +154,28 @@ - - #endif /* __arm32__ */ - -+#ifdef __aarch64__ -+ -+#ifdef __AARCH64EL__ -+#define IMAGE_BYTE_ORDER LSBFirst -+#define BITMAP_BIT_ORDER LSBFirst -+#endif -+#ifdef __AARCH64EB__ -+#define IMAGE_BYTE_ORDER MSBFirst -+#define BITMAP_BIT_ORDER MSBFirst -+#endif -+ -+# if defined(XF86MONOVGA) || defined(XF86VGA16) -+# define BITMAP_SCANLINE_UNIT 8 -+# endif -+ -+#define GLYPHPADBYTES 4 -+#define GETLEFTBITS_ALIGNMENT 1 -+#define LARGE_INSTRUCTION_CACHE -+#define AVOID_MEMORY_READ -+ -+#endif /* __aarch64__ */ -+ - #if defined (hpux) || defined __hppa__ - - #define IMAGE_BYTE_ORDER MSBFirst diff --git a/debian/patches/series b/debian/patches/series index ee95c5b..e975e3c 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -606_nx-X11_build-on-aarch64.full.patch 607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch 990_fix-DEBUG-and-TEST-builds.full.patch 991_fix-hr-typos.full+lite.patch diff --git a/nx-X11/config/cf/Imake.cf b/nx-X11/config/cf/Imake.cf index 1be537b..16b79c8 100644 --- a/nx-X11/config/cf/Imake.cf +++ b/nx-X11/config/cf/Imake.cf @@ -908,6 +908,9 @@ XCOMM Keep cpp from replacing path elements containing i486/i586/i686 # endif # undef __ARMEB__ # endif +# ifdef __aarch64__ +# define Arm64Architecture +# endif # ifdef mc68000 # define Mc68020Architecture # undef mc68000 diff --git a/nx-X11/config/cf/Imake.tmpl b/nx-X11/config/cf/Imake.tmpl index 6ca974f..5956172 100644 --- a/nx-X11/config/cf/Imake.tmpl +++ b/nx-X11/config/cf/Imake.tmpl @@ -526,6 +526,10 @@ XCOMM the platform-specific parameters - edit site.def to change #define ByteOrder X_BIG_ENDIAN #elif defined(Arm32Architecture) #define ByteOrder X_LITTLE_ENDIAN +#elif defined(Arm64ebArchitecture) +#define ByteOrder X_BIG_ENDIAN +#elif defined(Arm64Architecture) +#define ByteOrder X_LITTLE_ENDIAN #elif defined(RsArchitecture) #define ByteOrder X_BIG_ENDIAN #elif defined(PpcArchitecture) || defined(Ppc64Architecture) diff --git a/nx-X11/config/cf/linux.cf b/nx-X11/config/cf/linux.cf index 25d2547..32b7a86 100644 --- a/nx-X11/config/cf/linux.cf +++ b/nx-X11/config/cf/linux.cf @@ -844,6 +844,16 @@ InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class # define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines #endif /* Arm32Achitecture */ +#ifdef Arm64Architecture +# define DefaultCCOptions +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O3 +# endif +# define LinuxMachineDefines -D__aarch64__ -U__arm -Uarm +# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines +#endif /* Arm64Achitecture */ + #ifdef HPArchitecture # define OptimizedCDebugFlags -O2 GccAliasingArgs # define LinuxMachineDefines -D__hppa__ diff --git a/nx-X11/programs/Xserver/include/servermd.h b/nx-X11/programs/Xserver/include/servermd.h index cce6b32..a04c2aa 100644 --- a/nx-X11/programs/Xserver/include/servermd.h +++ b/nx-X11/programs/Xserver/include/servermd.h @@ -154,6 +154,28 @@ SOFTWARE. #endif /* __arm32__ */ +#ifdef __aarch64__ + +#ifdef __AARCH64EL__ +#define IMAGE_BYTE_ORDER LSBFirst +#define BITMAP_BIT_ORDER LSBFirst +#endif +#ifdef __AARCH64EB__ +#define IMAGE_BYTE_ORDER MSBFirst +#define BITMAP_BIT_ORDER MSBFirst +#endif + +# if defined(XF86MONOVGA) || defined(XF86VGA16) +# define BITMAP_SCANLINE_UNIT 8 +# endif + +#define GLYPHPADBYTES 4 +#define GETLEFTBITS_ALIGNMENT 1 +#define LARGE_INSTRUCTION_CACHE +#define AVOID_MEMORY_READ + +#endif /* __aarch64__ */ + #if defined (hpux) || defined __hppa__ #define IMAGE_BYTE_ORDER MSBFirst -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit a8fb7d4f5149e28216ffd38838af1cbfd6527002 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Feb 13 13:38:39 2015 +0100 Detection for Mac OS X's launchd service on Mac OS X 10.10 and beyond (607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch). --- ...osx-X11-launcher-in-private-tmp.full+lite.patch | 14 -------------- debian/patches/series | 1 - nxcomp/Loop.cpp | 2 +- 3 files changed, 1 insertion(+), 16 deletions(-) diff --git a/debian/patches/607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch b/debian/patches/607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch deleted file mode 100644 index 535671f..0000000 --- a/debian/patches/607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch +++ /dev/null @@ -1,14 +0,0 @@ -Description: Detection for Mac OS X's launchd service on Mac OS X 10.10 and beyond -Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> - ---- a/nxcomp/Loop.cpp -+++ b/nxcomp/Loop.cpp -@@ -4183,7 +4183,7 @@ - - #ifdef __APPLE__ - -- if (strncasecmp(display, "/tmp/launch", 11) == 0) -+ if ((strncasecmp(display, "/tmp/launch", 11) == 0) || (strncasecmp(display, "/private/tmp/com.apple.launchd", 30) == 0)) - { - #ifdef TEST - *logofs << "Loop: Using launchd service on socket '" diff --git a/debian/patches/series b/debian/patches/series index e975e3c..0c9d343 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch 990_fix-DEBUG-and-TEST-builds.full.patch 991_fix-hr-typos.full+lite.patch 991_fix-hr-typos.full.patch diff --git a/nxcomp/Loop.cpp b/nxcomp/Loop.cpp index c8c95bd..7bc154f 100644 --- a/nxcomp/Loop.cpp +++ b/nxcomp/Loop.cpp @@ -4183,7 +4183,7 @@ int SetupDisplaySocket(int &xServerAddrFamily, sockaddr *&xServerAddr, #ifdef __APPLE__ - if (strncasecmp(display, "/tmp/launch", 11) == 0) + if ((strncasecmp(display, "/tmp/launch", 11) == 0) || (strncasecmp(display, "/private/tmp/com.apple.launchd", 30) == 0)) { #ifdef TEST *logofs << "Loop: Using launchd service on socket '" -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 6e662473126d0668493732ece7e3c3bb1b0ea72c Author: Mihai Moldovan <ionic@ionic.de> Date: Fri Feb 13 13:41:31 2015 +0100 Several fixes for building debug versions of NX (990_fix-DEBUG-and-TEST-builds.full.patch). (1) In nx-X11/programs/Xserver/dix: Fix several compile errors when specifying -DDEBUG globally. Previous GCC versions were more liberal and the code thus compiled. Also initialize/reset a count variable correctly. (2) In nx-X11/programs/Xserver/hw/nxagent/Render.c: Check for pSrc->pDrawable to exist instead of having nxagent segfault when it does not. This enables the possibility of compiling all nxagent modules in TEST mode. --- .../990_fix-DEBUG-and-TEST-builds.full.patch | 69 -------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/dix/dixfonts.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Render.c | 9 +-- nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c | 2 +- 6 files changed, 8 insertions(+), 77 deletions(-) diff --git a/debian/patches/990_fix-DEBUG-and-TEST-builds.full.patch b/debian/patches/990_fix-DEBUG-and-TEST-builds.full.patch deleted file mode 100644 index 23c8508..0000000 --- a/debian/patches/990_fix-DEBUG-and-TEST-builds.full.patch +++ /dev/null @@ -1,69 +0,0 @@ -Author: Mihai Moldovan <ionic@ionic.de> -Description: Several fixes for building debug versions of NX -Abstract: - (1) In nx-X11/programs/Xserver/dix: - . - Fix several compile errors when specifying -DDEBUG globally. Previous GCC - versions were more liberal and the code thus compiled. - . - Also initialize/reset a count variable correctly. - . - . - (2) In nx-X11/programs/Xserver/hw/nxagent/Render.c: - . - Check for pSrc->pDrawable to exist instead of having nxagent segfault when - it does not. - . - This enables the possibility of compiling all nxagent modules in TEST mode. - ---- a/nx-X11/programs/Xserver/dix/dixfonts.c -+++ b/nx-X11/programs/Xserver/dix/dixfonts.c -@@ -2203,7 +2203,7 @@ - byte = 0; - for (l = 0; l <= (cip->metrics.rightSideBearing - - cip->metrics.leftSideBearing); l++) { -- if (maskTab[l & 7] & row[l >> 3]) -+ if (maskTab[l & 7] & (((int*)row)[l >> 3])) - putchar('X'); - else - putchar('.'); ---- a/nx-X11/programs/Xserver/hw/nxagent/Render.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Render.c -@@ -1678,10 +1678,11 @@ - - #ifdef TEST - -- fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n", -- (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"), -- pSrc -> pDrawable -> width, pSrc -> pDrawable -> height); -- -+ if (pSrc->pDrawable) { -+ fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n", -+ (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"), -+ pSrc -> pDrawable -> width, pSrc -> pDrawable -> height); -+ } - if (pSrc ->pDrawable != pDst -> pDrawable) - { - fprintf(stderr, "nxagentTrapezoids: Destination is a [%s] of geometry [%d,%d].\n", ---- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c -@@ -735,7 +735,7 @@ - - client->sequence++; - #ifdef DEBUG -- if (client->requestLogIndex == MAX_REQUEST_LOG) -+ if ((client->requestLogIndex >= MAX_REQUEST_LOG) || (client->requestLogIndex <= 0)) - client->requestLogIndex = 0; - client->requestLog[client->requestLogIndex] = MAJOROP; - client->requestLogIndex++; ---- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c -@@ -2351,7 +2351,7 @@ - byte = 0; - for (l = 0; l <= (cip->metrics.rightSideBearing - - cip->metrics.leftSideBearing); l++) { -- if (maskTab[l & 7] & row[l >> 3]) -+ if (maskTab[l & 7] & (((int *)row)[l >> 3])) - putchar('X'); - else - putchar('.'); diff --git a/debian/patches/series b/debian/patches/series index 0c9d343..76709c4 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -990_fix-DEBUG-and-TEST-builds.full.patch 991_fix-hr-typos.full+lite.patch 991_fix-hr-typos.full.patch 999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch diff --git a/nx-X11/programs/Xserver/dix/dixfonts.c b/nx-X11/programs/Xserver/dix/dixfonts.c index b66fe23..193f555 100644 --- a/nx-X11/programs/Xserver/dix/dixfonts.c +++ b/nx-X11/programs/Xserver/dix/dixfonts.c @@ -2203,7 +2203,7 @@ dump_char_ascii(CharInfoPtr cip) byte = 0; for (l = 0; l <= (cip->metrics.rightSideBearing - cip->metrics.leftSideBearing); l++) { - if (maskTab[l & 7] & row[l >> 3]) + if (maskTab[l & 7] & (((int*)row)[l >> 3])) putchar('X'); else putchar('.'); diff --git a/nx-X11/programs/Xserver/hw/nxagent/Render.c b/nx-X11/programs/Xserver/hw/nxagent/Render.c index 41a1ec0..c5fd063 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Render.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Render.c @@ -1678,10 +1678,11 @@ FIXME: Is this useful or just a waste of bandwidth? #ifdef TEST - fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n", - (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"), - pSrc -> pDrawable -> width, pSrc -> pDrawable -> height); - + if (pSrc->pDrawable) { + fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n", + (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"), + pSrc -> pDrawable -> width, pSrc -> pDrawable -> height); + } if (pSrc ->pDrawable != pDst -> pDrawable) { fprintf(stderr, "nxagentTrapezoids: Destination is a [%s] of geometry [%d,%d].\n", diff --git a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c index f18c09f..3d9ee8c 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c +++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c @@ -735,7 +735,7 @@ Reply Total Cached Bits In Bits Out Bits/Reply Ratio client->sequence++; #ifdef DEBUG - if (client->requestLogIndex == MAX_REQUEST_LOG) + if ((client->requestLogIndex >= MAX_REQUEST_LOG) || (client->requestLogIndex <= 0)) client->requestLogIndex = 0; client->requestLog[client->requestLogIndex] = MAJOROP; client->requestLogIndex++; diff --git a/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c b/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c index 3234c99..2b64269 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c +++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c @@ -2351,7 +2351,7 @@ dump_char_ascii(CharInfoPtr cip) byte = 0; for (l = 0; l <= (cip->metrics.rightSideBearing - cip->metrics.leftSideBearing); l++) { - if (maskTab[l & 7] & row[l >> 3]) + if (maskTab[l & 7] & (((int *)row)[l >> 3])) putchar('X'); else putchar('.'); -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 23fb617551f7d89dbc1fc9e216b7f12d2936e1a2 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Feb 13 13:43:54 2015 +0100 Fix several typos in nxcomp. Former patch file names: 991_fix-hr-typos.full+lite.patch 991_fix-hr-typos.full.patch --- debian/patches/991_fix-hr-typos.full+lite.patch | 97 --------------------- debian/patches/991_fix-hr-typos.full.patch | 36 -------- debian/patches/series | 2 - nx-X11/ChangeLog.X.org | 2 +- nx-X11/extras/Mesa/src/mesa/main/debug.c | 2 +- nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c | 2 +- nxcomp/CHANGELOG | 2 +- nxcomp/ClientReadBuffer.cpp | 2 +- nxcomp/EncodeBuffer.cpp | 4 +- nxcomp/GenericChannel.cpp | 2 +- nxcomp/ProxyReadBuffer.cpp | 2 +- nxcomp/ServerReadBuffer.cpp | 2 +- nxcomp/Transport.h | 2 +- nxcomp/Types.h | 2 +- 14 files changed, 12 insertions(+), 147 deletions(-) diff --git a/debian/patches/991_fix-hr-typos.full+lite.patch b/debian/patches/991_fix-hr-typos.full+lite.patch deleted file mode 100644 index 4ff1846..0000000 --- a/debian/patches/991_fix-hr-typos.full+lite.patch +++ /dev/null @@ -1,97 +0,0 @@ -Description: Fix several typos in nxcomp -Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> - ---- a/nxcomp/CHANGELOG -+++ b/nxcomp/CHANGELOG -@@ -668,7 +668,7 @@ - - nxcomp-2.0.0-69 - --- Changed the format of the persistent cache to accomodate the new -+- Changed the format of the persistent cache to accommodate the new - encoding of the render opcodes. Caches from the 1.4.0 and 1.5.0 - should be still loaded and saved correctly when connected to and - old version of the library. ---- a/nxcomp/ClientReadBuffer.cpp -+++ b/nxcomp/ClientReadBuffer.cpp -@@ -29,7 +29,7 @@ - // - // Even if the pending data is not - // enough to make a complete message, -- // resize the buffer to accomodate -+ // resize the buffer to accommodate - // it all. - // - ---- a/nxcomp/EncodeBuffer.cpp -+++ b/nxcomp/EncodeBuffer.cpp -@@ -505,12 +505,12 @@ - { - #ifdef PANIC - *logofs << "EncodeBuffer: PANIC! Error in context [C] " -- << "growing buffer to accomodate " << numBytes -+ << "growing buffer to accommodate " << numBytes - << " bytes .\n" << logofs_flush; - #endif - - cerr << "Error" << ": Error in context [C] " -- << "growing encode buffer to accomodate " -+ << "growing encode buffer to accommodate " - << numBytes << " bytes.\n"; - - HandleAbort(); ---- a/nxcomp/GenericChannel.cpp -+++ b/nxcomp/GenericChannel.cpp -@@ -210,7 +210,7 @@ - // All data has been read from the read buffer. - // We still need to mark the end of the encode - // buffer just before sending the frame. This -- // allows us to accomodate multiple reads in -+ // allows us to accommodate multiple reads in - // a single frame. - // - ---- a/nxcomp/ProxyReadBuffer.cpp -+++ b/nxcomp/ProxyReadBuffer.cpp -@@ -50,7 +50,7 @@ - // - // Even if the readable data is not - // enough to make a complete message, -- // resize the buffer to accomodate -+ // resize the buffer to accommodate - // it all. - // - ---- a/nxcomp/ServerReadBuffer.cpp -+++ b/nxcomp/ServerReadBuffer.cpp -@@ -46,7 +46,7 @@ - // - // Even if the readable data is not - // enough to make a complete message, -- // resize the buffer to accomodate -+ // resize the buffer to accommodate - // it all. - // - ---- a/nxcomp/Transport.h -+++ b/nxcomp/Transport.h -@@ -226,7 +226,7 @@ - protected: - - // -- // Make room in the buffer to accomodate -+ // Make room in the buffer to accommodate - // at least size bytes. - // - ---- a/nxcomp/Types.h -+++ b/nxcomp/Types.h -@@ -179,7 +179,7 @@ - typedef list < int > T_list; - - // --// Used to accomodate data to be read and -+// Used to accommodate data to be read and - // written to a socket. - // - diff --git a/debian/patches/991_fix-hr-typos.full.patch b/debian/patches/991_fix-hr-typos.full.patch deleted file mode 100644 index 3836adf..0000000 --- a/debian/patches/991_fix-hr-typos.full.patch +++ /dev/null @@ -1,36 +0,0 @@ -Description: Fix several typos in nx-X11 -Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> - ---- a/nx-X11/extras/Mesa/src/mesa/main/debug.c -+++ b/nx-X11/extras/Mesa/src/mesa/main/debug.c -@@ -43,7 +43,7 @@ - "GL_QUAD_STRIP", - "GL_POLYGON", - "outside begin/end", -- "inside unkown primitive", -+ "inside unknown primitive", - "unknown state" - }; - ---- a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c -+++ b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c -@@ -4106,7 +4106,7 @@ - if (*inst++ != REVISION) { - _mesa_set_program_error (ctx, 0, "Grammar version mismatch"); - _mesa_error(ctx, GL_INVALID_OPERATION, -- "glProgramStringARB(Grammar verison mismatch)"); -+ "glProgramStringARB(Grammar version mismatch)"); - err = GL_TRUE; - } - else { ---- a/nx-X11/ChangeLog.X.org -+++ b/nx-X11/ChangeLog.X.org -@@ -12733,7 +12733,7 @@ - * programs/xkill/xkill.c: (get_window_id): - Changed cursor for the 'kill' action from XC_draped_box to - XC_Pirate. If you don't like it we can change it back -- (original author unkown). -+ (original author unknown). - - * programs/xman/vendor.h: - Added 'pic' to the man page rendering command pipeline diff --git a/debian/patches/series b/debian/patches/series index 76709c4..3ee62f3 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,6 +1,4 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -991_fix-hr-typos.full+lite.patch -991_fix-hr-typos.full.patch 999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch 016_nx-X11_install-location.debian.patch 102_xserver-xext_set-securitypolicy-path.debian.patch diff --git a/nx-X11/ChangeLog.X.org b/nx-X11/ChangeLog.X.org index bb0bbb0..5c49bba 100644 --- a/nx-X11/ChangeLog.X.org +++ b/nx-X11/ChangeLog.X.org @@ -12733,7 +12733,7 @@ Mon Jan 3 12:45:10 2005 Søren Sandmann <sandmann@redhat.com> * programs/xkill/xkill.c: (get_window_id): Changed cursor for the 'kill' action from XC_draped_box to XC_Pirate. If you don't like it we can change it back - (original author unkown). + (original author unknown). * programs/xman/vendor.h: Added 'pic' to the man page rendering command pipeline diff --git a/nx-X11/extras/Mesa/src/mesa/main/debug.c b/nx-X11/extras/Mesa/src/mesa/main/debug.c index edc32b1..43b1192 100644 --- a/nx-X11/extras/Mesa/src/mesa/main/debug.c +++ b/nx-X11/extras/Mesa/src/mesa/main/debug.c @@ -43,7 +43,7 @@ const char *_mesa_prim_name[GL_POLYGON+4] = { "GL_QUAD_STRIP", "GL_POLYGON", "outside begin/end", - "inside unkown primitive", + "inside unknown primitive", "unknown state" }; diff --git a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c index ed1cbd9..c998f7c 100644 --- a/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c +++ b/nx-X11/extras/Mesa/src/mesa/shader/arbprogparse.c @@ -4106,7 +4106,7 @@ _mesa_parse_arb_program (GLcontext * ctx, const GLubyte * str, GLsizei len, if (*inst++ != REVISION) { _mesa_set_program_error (ctx, 0, "Grammar version mismatch"); _mesa_error(ctx, GL_INVALID_OPERATION, - "glProgramStringARB(Grammar verison mismatch)"); + "glProgramStringARB(Grammar version mismatch)"); err = GL_TRUE; } else { diff --git a/nxcomp/CHANGELOG b/nxcomp/CHANGELOG index b7ef0d9..b0323d4 100644 --- a/nxcomp/CHANGELOG +++ b/nxcomp/CHANGELOG @@ -668,7 +668,7 @@ nxcomp-2.0.0-70 nxcomp-2.0.0-69 -- Changed the format of the persistent cache to accomodate the new +- Changed the format of the persistent cache to accommodate the new encoding of the render opcodes. Caches from the 1.4.0 and 1.5.0 should be still loaded and saved correctly when connected to and old version of the library. diff --git a/nxcomp/ClientReadBuffer.cpp b/nxcomp/ClientReadBuffer.cpp index b32033b..14aca32 100644 --- a/nxcomp/ClientReadBuffer.cpp +++ b/nxcomp/ClientReadBuffer.cpp @@ -29,7 +29,7 @@ unsigned int ClientReadBuffer::suggestedLength(unsigned int pendingLength) // // Even if the pending data is not // enough to make a complete message, - // resize the buffer to accomodate + // resize the buffer to accommodate // it all. // diff --git a/nxcomp/EncodeBuffer.cpp b/nxcomp/EncodeBuffer.cpp index 466a1d7..12a5718 100644 --- a/nxcomp/EncodeBuffer.cpp +++ b/nxcomp/EncodeBuffer.cpp @@ -505,12 +505,12 @@ void EncodeBuffer::growBuffer(unsigned int numBytes) { #ifdef PANIC *logofs << "EncodeBuffer: PANIC! Error in context [C] " - << "growing buffer to accomodate " << numBytes + << "growing buffer to accommodate " << numBytes << " bytes .\n" << logofs_flush; #endif cerr << "Error" << ": Error in context [C] " - << "growing encode buffer to accomodate " + << "growing encode buffer to accommodate " << numBytes << " bytes.\n"; HandleAbort(); diff --git a/nxcomp/GenericChannel.cpp b/nxcomp/GenericChannel.cpp index 641ad36..bf72bf0 100644 --- a/nxcomp/GenericChannel.cpp +++ b/nxcomp/GenericChannel.cpp @@ -210,7 +210,7 @@ int GenericChannel::handleRead(EncodeBuffer &encodeBuffer, const unsigned char * // All data has been read from the read buffer. // We still need to mark the end of the encode // buffer just before sending the frame. This - // allows us to accomodate multiple reads in + // allows us to accommodate multiple reads in // a single frame. // diff --git a/nxcomp/ProxyReadBuffer.cpp b/nxcomp/ProxyReadBuffer.cpp index b0de149..99c3cba 100644 --- a/nxcomp/ProxyReadBuffer.cpp +++ b/nxcomp/ProxyReadBuffer.cpp @@ -50,7 +50,7 @@ unsigned int ProxyReadBuffer::suggestedLength(unsigned int pendingLength) // // Even if the readable data is not // enough to make a complete message, - // resize the buffer to accomodate + // resize the buffer to accommodate // it all. // diff --git a/nxcomp/ServerReadBuffer.cpp b/nxcomp/ServerReadBuffer.cpp index 53c1dec..96c146b 100644 --- a/nxcomp/ServerReadBuffer.cpp +++ b/nxcomp/ServerReadBuffer.cpp @@ -46,7 +46,7 @@ unsigned int ServerReadBuffer::suggestedLength(unsigned int pendingLength) // // Even if the readable data is not // enough to make a complete message, - // resize the buffer to accomodate + // resize the buffer to accommodate // it all. // diff --git a/nxcomp/Transport.h b/nxcomp/Transport.h index 2f313b2..a2efa52 100644 --- a/nxcomp/Transport.h +++ b/nxcomp/Transport.h @@ -226,7 +226,7 @@ class Transport protected: // - // Make room in the buffer to accomodate + // Make room in the buffer to accommodate // at least size bytes. // diff --git a/nxcomp/Types.h b/nxcomp/Types.h index b3fe40e..b750612 100644 --- a/nxcomp/Types.h +++ b/nxcomp/Types.h @@ -179,7 +179,7 @@ typedef set < File *, T_older > T_files; typedef list < int > T_list; // -// Used to accomodate data to be read and +// Used to accommodate data to be read and // written to a socket. // -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 1fd8551f1632efbc2655c9293087bba08cf2f0c9 Author: Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> Date: Fri Feb 13 13:57:39 2015 +0100 Unbrand NX Agent Startup Screen / Brand X2Go Agent Startup Screen (999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch). When launched with NX Agent flavour, the startup screen gets unbranded by this patch (the !M logo does not get shown). When launched with X2Go Agent flavour, the startup screen gets branded with the X2GO logo. --- ...gent_unbrand-nxagent-brand-x2goagent.full.patch | 367 -------------------- debian/patches/series | 1 - nx-X11/programs/Xserver/hw/nxagent/Display.c | 40 +-- nx-X11/programs/Xserver/hw/nxagent/Keyboard.c | 18 +- nx-X11/programs/Xserver/hw/nxagent/Splash.c | 162 ++++++--- nx-X11/programs/Xserver/hw/nxagent/Splash.h | 1 + nx-X11/programs/Xserver/os/oscolor.c | 14 +- 7 files changed, 158 insertions(+), 445 deletions(-) diff --git a/debian/patches/999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch b/debian/patches/999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch deleted file mode 100644 index 62c85cf..0000000 --- a/debian/patches/999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch +++ /dev/null @@ -1,367 +0,0 @@ -Description: Unbrand NX Agent Startup Screen / Brand X2Go Agent Startup Screen - When launched with NX Agent flavour, the startup screen gets unbranded by - this patch (the !M logo does not get shown). - . - When launched with X2Go Agent flavour, the startup screen gets branded - with the X2GO logo. -Forwarded: not-needed -Author: Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> -Last-Update: 2012-01-11 ---- a/nx-X11/programs/Xserver/hw/nxagent/Splash.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Splash.c -@@ -35,6 +35,7 @@ - #include "Windows.h" - #include "Atoms.h" - #include "Trap.h" -+#include "Init.h" - - /* - * Set here the required log level. -@@ -53,6 +54,7 @@ - int nxagentLogoWhite; - int nxagentLogoRed; - int nxagentLogoBlack; -+int nxagentLogoGray; - - void nxagentPaintLogo(Window win, GC gc, int scale, int width, int height); - -@@ -166,6 +168,15 @@ - XPoint m[12]; - int w, h, c, w2, h2; - -+ /* -+ * Show only X2GO Logo when running as X2Go Agent -+ */ -+ if(! nxagentX2go) -+ { -+ nxagentPixmapLogo = 0L; -+ return; -+ } -+ - #ifdef DEBUG - fprintf(stderr, "nxagenShowtLogo: Got called.\n"); - #endif -@@ -218,75 +229,146 @@ - XSetForeground(nxagentDisplay, gc, nxagentLogoRed); - XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); - -- rect[0].x = w2-10*c; rect[0].y = h2-8*c; -- rect[1].x = w2-10*c; rect[1].y = h2+8*c; -- rect[2].x = w2+10*c; rect[2].y = h2+8*c; -- rect[3].x = w2+10*c; rect[3].y = h2-8*c; -+ /* -+ * Draw X2GO Logo -+ */ - -+ /* -+ * Begin 'X'. -+ */ -+ -+ XSetForeground(nxagentDisplay, gc, nxagentLogoGray); -+ XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); -+ rect[0].x = w2-7*c; rect[0].y = h2-5*c; -+ rect[1].x = w2-8*c; rect[1].y = h2-5*c; -+ rect[2].x = w2-4*c; rect[2].y = h2+3*c; -+ rect[3].x = w2-3*c; rect[3].y = h2+3*c; - XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -- #ifdef NXAGENT_LOGO_DEBUG -- fprintf(stderr, "filled red rect\n"); -- #endif -+ rect[0].x = w2-4*c; rect[0].y = h2-5*c; -+ rect[1].x = w2-3*c; rect[1].y = h2-5*c; -+ rect[2].x = w2-7*c; rect[2].y = h2+3*c; -+ rect[3].x = w2-8*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -- rect[0].x = w2-9*c; rect[0].y = h2-7*c; -- rect[1].x = w2-9*c; rect[1].y = h2+7*c; -- rect[2].x = w2+9*c; rect[2].y = h2+7*c; -- rect[3].x = w2+9*c; rect[3].y = h2-7*c; -+ /* -+ * End 'X'. -+ */ - -- XSetForeground(nxagentDisplay, gc, nxagentLogoWhite); -- XSetBackground(nxagentDisplay, gc, nxagentLogoRed); -+ /* -+ * Start '2'. -+ */ -+ -+ rect[0].x = w2-2*c; rect[0].y = h2-5*c; -+ rect[1].x = w2-1*c; rect[1].y = h2-5*c; -+ rect[2].x = w2-1*c; rect[2].y = h2-3*c; -+ rect[3].x = w2-2*c; rect[3].y = h2-3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); -+ -+ rect[0].x = w2-2*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+2*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+2*c; rect[2].y = h2-4*c; -+ rect[3].x = w2-2*c; rect[3].y = h2-4*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -+ rect[0].x = w2+1*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+2*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+2*c; rect[2].y = h2-2*c; -+ rect[3].x = w2+1*c; rect[3].y = h2-2*c; - XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -+ rect[0].x = w2+2*c; rect[0].y = h2-2*c; -+ rect[1].x = w2+1*c; rect[1].y = h2-2*c; -+ rect[2].x = w2-2*c; rect[2].y = h2+2*c; -+ rect[3].x = w2-1*c; rect[3].y = h2+2*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); -+ -+ -+ rect[0].x = w2-2*c; rect[0].y = h2+2*c; -+ rect[1].x = w2+2*c; rect[1].y = h2+2*c; -+ rect[2].x = w2+2*c; rect[2].y = h2+3*c; -+ rect[3].x = w2-2*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - /* -- * Begin 'M'. -+ * End '2'. - */ - -- m[0].x = w2-3*c; m[0].y = h2-5*c; -- m[1].x = w2+7*c; m[1].y = h2-5*c; -- m[2].x = w2+7*c; m[2].y = h2+5*c; -- m[3].x = w2+5*c; m[3].y = h2+5*c; -- m[4].x = w2+5*c; m[4].y = h2-3*c; -- m[5].x = w2+3*c; m[5].y = h2-3*c; -- m[6].x = w2+3*c; m[6].y = h2+5*c; -- m[7].x = w2+1*c; m[7].y = h2+5*c; -- m[8].x = w2+1*c; m[8].y = h2-3*c; -- m[9].x = w2-1*c; m[9].y = h2-3*c; -- m[10].x = w2-1*c; m[10].y = h2+5*c; -- m[11].x = w2-3*c; m[11].y = h2+5*c; -+ /* -+ * Start 'G'. -+ */ - -- XSetForeground(nxagentDisplay, gc, nxagentLogoRed); -- XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); -+ rect[0].x = w2+3*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+7*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+7*c; rect[2].y = h2-4*c; -+ rect[3].x = w2+3*c; rect[3].y = h2-4*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -- XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, m, 12, Nonconvex, CoordModeOrigin); -+ rect[0].x = w2+3*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+4*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+4*c; rect[2].y = h2+3*c; -+ rect[3].x = w2+3*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -+ rect[0].x = w2+3*c; rect[0].y = h2+2*c; -+ rect[1].x = w2+7*c; rect[1].y = h2+2*c; -+ rect[2].x = w2+7*c; rect[2].y = h2+3*c; -+ rect[3].x = w2+3*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); -+ -+ rect[0].x = w2+6*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+7*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+7*c; rect[2].y = h2-3*c; -+ rect[3].x = w2+6*c; rect[3].y = h2-3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); -+ -+ rect[0].x = w2+6*c; rect[0].y = h2-0*c; -+ rect[1].x = w2+7*c; rect[1].y = h2-0*c; -+ rect[2].x = w2+7*c; rect[2].y = h2+3*c; -+ rect[3].x = w2+6*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); -+ -+ rect[0].x = w2+5*c; rect[0].y = h2-1*c; -+ rect[1].x = w2+7*c; rect[1].y = h2-1*c; -+ rect[2].x = w2+7*c; rect[2].y = h2+0*c; -+ rect[3].x = w2+5*c; rect[3].y = h2+0*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - /* -- * End 'M'. -+ * End 'G'. - */ - - /* -- * Begin '!'. -+ * Start 'O'. - */ - -- rect[0].x = w2-7*c; rect[0].y = h2-5*c; -- rect[1].x = w2-5*c; rect[1].y = h2-5*c; -- rect[2].x = w2-5*c; rect[2].y = h2+2*c; -- rect[3].x = w2-7*c; rect[3].y = h2+2*c; -+ rect[0].x = w2+8*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+12*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+12*c; rect[2].y = h2-4*c; -+ rect[3].x = w2+8*c; rect[3].y = h2-4*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -+ rect[0].x = w2+8*c; rect[0].y = h2+3*c; -+ rect[1].x = w2+12*c; rect[1].y = h2+3*c; -+ rect[2].x = w2+12*c; rect[2].y = h2+2*c; -+ rect[3].x = w2+8*c; rect[3].y = h2+2*c; - XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -- rect[0].x = w2-7*c; rect[0].y = h2+3*c; -- rect[1].x = w2-5*c; rect[1].y = h2+3*c; -- rect[2].x = w2-5*c; rect[2].y = h2+5*c; -- rect[3].x = w2-7*c; rect[3].y = h2+5*c; -+ rect[0].x = w2+8*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+9*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+9*c; rect[2].y = h2+3*c; -+ rect[3].x = w2+8*c; rect[3].y = h2+3*c; -+ XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - -+ rect[0].x = w2+11*c; rect[0].y = h2-5*c; -+ rect[1].x = w2+12*c; rect[1].y = h2-5*c; -+ rect[2].x = w2+12*c; rect[2].y = h2+3*c; -+ rect[3].x = w2+11*c; rect[3].y = h2+3*c; - XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - - /* -- * End 'M'. -+ * End 'O'. - */ - -+ - XSetWindowBackgroundPixmap(nxagentDisplay, win, nxagentPixmapLogo); - - #ifdef NXAGENT_LOGO_DEBUG ---- a/nx-X11/programs/Xserver/hw/nxagent/Display.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Display.c -@@ -1430,22 +1430,10 @@ - g = pV.green_mask; - b = pV.blue_mask; - -- if (!pV.red_mask || !pV.green_mask || !pV.blue_mask) -- { -- nxagentLogoBlack = 0x000000; -- nxagentLogoRed = 0xff0000; -- nxagentLogoWhite = 0xffffff; -- } -- else -- { -- for (or=0, off=0x800000; (r&(off>>or)) == 0; or++); -- for (og=0, off=0x800000; (g&(off>>og)) == 0; og++); -- for (ob=0, off=0x800000; (b&(off>>ob)) == 0; ob++); -- -- nxagentLogoRed = nxagentLogoColor(0xff0000); -- nxagentLogoBlack = nxagentLogoColor(0x000000); -- nxagentLogoWhite = 0xffffff; -- } -+ nxagentLogoBlack = 0x000000; -+ nxagentLogoRed = 0xff0000; -+ nxagentLogoWhite = 0xffffff; -+ nxagentLogoGray = 0x222222; - - #ifdef WATCH - -@@ -2696,22 +2684,10 @@ - g = pV.green_mask; - b = pV.blue_mask; - -- if (!pV.red_mask || !pV.green_mask || !pV.blue_mask) -- { -- nxagentLogoBlack = 0x000000; -- nxagentLogoRed = 0xff0000; -- nxagentLogoWhite = 0xffffff; -- } -- else -- { -- for (or=0, off=0x800000; (r&(off>>or)) == 0; or++); -- for (og=0, off=0x800000; (g&(off>>og)) == 0; og++); -- for (ob=0, off=0x800000; (b&(off>>ob)) == 0; ob++); -- -- nxagentLogoRed = nxagentLogoColor(0xff0000); -- nxagentLogoBlack = nxagentLogoColor(0x000000); -- nxagentLogoWhite = 0xffffff; -- } -+ nxagentLogoBlack = 0x000000; -+ nxagentLogoRed = 0xff0000; -+ nxagentLogoWhite = 0xffffff; -+ nxagentLogoGray = 0x222222; - - useXpmIcon = nxagentMakeIcon(nxagentDisplay, &nxagentIconPixmap, &nxagentIconShape); - ---- a/nx-X11/programs/Xserver/hw/nxagent/Splash.h -+++ b/nx-X11/programs/Xserver/hw/nxagent/Splash.h -@@ -33,6 +33,7 @@ - extern int nxagentLogoWhite; - extern int nxagentLogoRed; - extern int nxagentLogoBlack; -+extern int nxagentLogoGray; - - extern Window nxagentSplashWindow; - ---- a/nx-X11/programs/Xserver/os/oscolor.c -+++ b/nx-X11/programs/Xserver/os/oscolor.c -@@ -53,7 +53,19 @@ - #include <sys/stat.h> - #include <unistd.h> - --static char* nxAltRgbPaths[] = {"/etc/nxagent/rgb", "/usr/share/nx/rgb", "/usr/local/share/nx/rgb", "/usr/NX/share/rgb", "/usr/share/X11/rgb", "/etc/X11/rgb"}; -+/* FIXME: we need more intelligent code (like provided by the nxagentX2go -+ * var in hw/nxagent/Init.h) to detect our current runtime mode (running -+ * as x2goagent, running as nxagent) -+ */ -+static char* nxAltRgbPaths[] = {"/etc/x2go/rgb", \ -+ "/usr/share/x2go/rgb", \ -+ "/usr/local/share/x2go/rgb", \ -+ "/etc/nxagent/rgb", \ -+ "/usr/share/nx/rgb", \ -+ "/usr/local/share/nx/rgb", \ -+ "/usr/NX/share/rgb", \ -+ "/usr/share/X11/rgb", \ -+ "/etc/X11/rgb"}; - static char _NXRgbPath[1024]; - - #endif ---- a/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c -+++ b/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c -@@ -62,6 +62,7 @@ - - #include "globals.h" - #include "property.h" -+#include "Init.h" - - #include <X11/extensions/XKB.h> - -@@ -138,8 +139,11 @@ - #ifndef XKB_ALTERNATE_BASE_DIRECTORY - #define XKB_ALTERNATE_BASE_DIRECTORY "/usr/X11R6/lib/X11/xkb" - #endif --#ifndef XKB_CONFIG_FILE --#define XKB_CONFIG_FILE "/etc/nxagent/nxagent.keyboard" -+#ifndef XKB_CONFIG_FILE_NX -+#define XKB_CONFIG_FILE_NX "/etc/nxagent/nxagent.keyboard" -+#endif -+#ifndef XKB_CONFIG_FILE_X2GO -+#define XKB_CONFIG_FILE_X2GO "/etc/x2go/x2goagent.keyboard" - #endif - #ifndef XKB_DFLT_RULES_FILE - #define XKB_DFLT_RULES_FILE "xfree86" -@@ -988,7 +992,10 @@ - - XkbGetControls(nxagentDisplay, XkbAllControlsMask, xkb); - -- nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE); -+ if (nxagentX2go) -+ nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_X2GO); -+ else -+ nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_NX); - - nxagentXkbConfigFilePath = malloc((nxagentXkbConfigFilePathSize + 1) * sizeof(char)); - -@@ -997,7 +1004,10 @@ - FatalError("nxagentKeyboardProc: malloc failed."); - } - -- strcpy(nxagentXkbConfigFilePath, XKB_CONFIG_FILE); -+ if (nxagentX2go) -+ nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_X2GO); -+ else -+ nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_NX); - - #ifdef TEST - fprintf(stderr, "nxagentKeyboardProc: nxagentXkbConfigFilePath [%s].\n", diff --git a/debian/patches/series b/debian/patches/series index 3ee62f3..1a94059 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ #401_nxcomp_bigrequests-and-genericevent-extensions.full+lite.patch -999_nxagent_unbrand-nxagent-brand-x2goagent.full.patch 016_nx-X11_install-location.debian.patch 102_xserver-xext_set-securitypolicy-path.debian.patch diff --git a/nx-X11/programs/Xserver/hw/nxagent/Display.c b/nx-X11/programs/Xserver/hw/nxagent/Display.c index 201d9dd..b01d66c 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Display.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Display.c @@ -1430,22 +1430,10 @@ FIXME: Use of nxagentParentWindow is strongly deprecated. g = pV.green_mask; b = pV.blue_mask; - if (!pV.red_mask || !pV.green_mask || !pV.blue_mask) - { - nxagentLogoBlack = 0x000000; - nxagentLogoRed = 0xff0000; - nxagentLogoWhite = 0xffffff; - } - else - { - for (or=0, off=0x800000; (r&(off>>or)) == 0; or++); - for (og=0, off=0x800000; (g&(off>>og)) == 0; og++); - for (ob=0, off=0x800000; (b&(off>>ob)) == 0; ob++); - - nxagentLogoRed = nxagentLogoColor(0xff0000); - nxagentLogoBlack = nxagentLogoColor(0x000000); - nxagentLogoWhite = 0xffffff; - } + nxagentLogoBlack = 0x000000; + nxagentLogoRed = 0xff0000; + nxagentLogoWhite = 0xffffff; + nxagentLogoGray = 0x222222; #ifdef WATCH @@ -2696,22 +2684,10 @@ Bool nxagentReconnectDisplay(void *p0) g = pV.green_mask; b = pV.blue_mask; - if (!pV.red_mask || !pV.green_mask || !pV.blue_mask) - { - nxagentLogoBlack = 0x000000; - nxagentLogoRed = 0xff0000; - nxagentLogoWhite = 0xffffff; - } - else - { - for (or=0, off=0x800000; (r&(off>>or)) == 0; or++); - for (og=0, off=0x800000; (g&(off>>og)) == 0; og++); - for (ob=0, off=0x800000; (b&(off>>ob)) == 0; ob++); - - nxagentLogoRed = nxagentLogoColor(0xff0000); - nxagentLogoBlack = nxagentLogoColor(0x000000); - nxagentLogoWhite = 0xffffff; - } + nxagentLogoBlack = 0x000000; + nxagentLogoRed = 0xff0000; + nxagentLogoWhite = 0xffffff; + nxagentLogoGray = 0x222222; useXpmIcon = nxagentMakeIcon(nxagentDisplay, &nxagentIconPixmap, &nxagentIconShape); diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c b/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c index 1637f0c..a51d19e 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Keyboard.c @@ -62,6 +62,7 @@ is" without express or implied warranty. #include "globals.h" #include "property.h" +#include "Init.h" #include <X11/extensions/XKB.h> @@ -138,8 +139,11 @@ extern Status XkbGetControls( #ifndef XKB_ALTERNATE_BASE_DIRECTORY #define XKB_ALTERNATE_BASE_DIRECTORY "/usr/X11R6/lib/X11/xkb" #endif -#ifndef XKB_CONFIG_FILE -#define XKB_CONFIG_FILE "/etc/nxagent/nxagent.keyboard" +#ifndef XKB_CONFIG_FILE_NX +#define XKB_CONFIG_FILE_NX "/etc/nxagent/nxagent.keyboard" +#endif +#ifndef XKB_CONFIG_FILE_X2GO +#define XKB_CONFIG_FILE_X2GO "/etc/x2go/x2goagent.keyboard" #endif #ifndef XKB_DFLT_RULES_FILE #define XKB_DFLT_RULES_FILE "xfree86" @@ -988,7 +992,10 @@ XkbError: XkbGetControls(nxagentDisplay, XkbAllControlsMask, xkb); - nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE); + if (nxagentX2go) + nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_X2GO); + else + nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_NX); nxagentXkbConfigFilePath = malloc((nxagentXkbConfigFilePathSize + 1) * sizeof(char)); @@ -997,7 +1004,10 @@ XkbError: FatalError("nxagentKeyboardProc: malloc failed."); } - strcpy(nxagentXkbConfigFilePath, XKB_CONFIG_FILE); + if (nxagentX2go) + nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_X2GO); + else + nxagentXkbConfigFilePathSize = strlen(XKB_CONFIG_FILE_NX); #ifdef TEST fprintf(stderr, "nxagentKeyboardProc: nxagentXkbConfigFilePath [%s].\n", diff --git a/nx-X11/programs/Xserver/hw/nxagent/Splash.c b/nx-X11/programs/Xserver/hw/nxagent/Splash.c index 235c48c..abb0872 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Splash.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Splash.c @@ -35,6 +35,7 @@ #include "Windows.h" #include "Atoms.h" #include "Trap.h" +#include "Init.h" /* * Set here the required log level. @@ -53,6 +54,7 @@ int nxagentLogoDepth; int nxagentLogoWhite; int nxagentLogoRed; int nxagentLogoBlack; +int nxagentLogoGray; void nxagentPaintLogo(Window win, GC gc, int scale, int width, int height); @@ -166,6 +168,15 @@ void nxagentPaintLogo(Window win, GC gc, int scale, int width, int height) XPoint m[12]; int w, h, c, w2, h2; + /* + * Show only X2GO Logo when running as X2Go Agent + */ + if(! nxagentX2go) + { + nxagentPixmapLogo = 0L; + return; + } + #ifdef DEBUG fprintf(stderr, "nxagenShowtLogo: Got called.\n"); #endif @@ -218,75 +229,146 @@ void nxagentPaintLogo(Window win, GC gc, int scale, int width, int height) XSetForeground(nxagentDisplay, gc, nxagentLogoRed); XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); - rect[0].x = w2-10*c; rect[0].y = h2-8*c; - rect[1].x = w2-10*c; rect[1].y = h2+8*c; - rect[2].x = w2+10*c; rect[2].y = h2+8*c; - rect[3].x = w2+10*c; rect[3].y = h2-8*c; + /* + * Draw X2GO Logo + */ + /* + * Begin 'X'. + */ + + XSetForeground(nxagentDisplay, gc, nxagentLogoGray); + XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); + rect[0].x = w2-7*c; rect[0].y = h2-5*c; + rect[1].x = w2-8*c; rect[1].y = h2-5*c; + rect[2].x = w2-4*c; rect[2].y = h2+3*c; + rect[3].x = w2-3*c; rect[3].y = h2+3*c; XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - #ifdef NXAGENT_LOGO_DEBUG - fprintf(stderr, "filled red rect\n"); - #endif + rect[0].x = w2-4*c; rect[0].y = h2-5*c; + rect[1].x = w2-3*c; rect[1].y = h2-5*c; + rect[2].x = w2-7*c; rect[2].y = h2+3*c; + rect[3].x = w2-8*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - rect[0].x = w2-9*c; rect[0].y = h2-7*c; - rect[1].x = w2-9*c; rect[1].y = h2+7*c; - rect[2].x = w2+9*c; rect[2].y = h2+7*c; - rect[3].x = w2+9*c; rect[3].y = h2-7*c; + /* + * End 'X'. + */ - XSetForeground(nxagentDisplay, gc, nxagentLogoWhite); - XSetBackground(nxagentDisplay, gc, nxagentLogoRed); + /* + * Start '2'. + */ + + rect[0].x = w2-2*c; rect[0].y = h2-5*c; + rect[1].x = w2-1*c; rect[1].y = h2-5*c; + rect[2].x = w2-1*c; rect[2].y = h2-3*c; + rect[3].x = w2-2*c; rect[3].y = h2-3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + + rect[0].x = w2-2*c; rect[0].y = h2-5*c; + rect[1].x = w2+2*c; rect[1].y = h2-5*c; + rect[2].x = w2+2*c; rect[2].y = h2-4*c; + rect[3].x = w2-2*c; rect[3].y = h2-4*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + rect[0].x = w2+1*c; rect[0].y = h2-5*c; + rect[1].x = w2+2*c; rect[1].y = h2-5*c; + rect[2].x = w2+2*c; rect[2].y = h2-2*c; + rect[3].x = w2+1*c; rect[3].y = h2-2*c; XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + rect[0].x = w2+2*c; rect[0].y = h2-2*c; + rect[1].x = w2+1*c; rect[1].y = h2-2*c; + rect[2].x = w2-2*c; rect[2].y = h2+2*c; + rect[3].x = w2-1*c; rect[3].y = h2+2*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + + + rect[0].x = w2-2*c; rect[0].y = h2+2*c; + rect[1].x = w2+2*c; rect[1].y = h2+2*c; + rect[2].x = w2+2*c; rect[2].y = h2+3*c; + rect[3].x = w2-2*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); /* - * Begin 'M'. + * End '2'. */ - m[0].x = w2-3*c; m[0].y = h2-5*c; - m[1].x = w2+7*c; m[1].y = h2-5*c; - m[2].x = w2+7*c; m[2].y = h2+5*c; - m[3].x = w2+5*c; m[3].y = h2+5*c; - m[4].x = w2+5*c; m[4].y = h2-3*c; - m[5].x = w2+3*c; m[5].y = h2-3*c; - m[6].x = w2+3*c; m[6].y = h2+5*c; - m[7].x = w2+1*c; m[7].y = h2+5*c; - m[8].x = w2+1*c; m[8].y = h2-3*c; - m[9].x = w2-1*c; m[9].y = h2-3*c; - m[10].x = w2-1*c; m[10].y = h2+5*c; - m[11].x = w2-3*c; m[11].y = h2+5*c; + /* + * Start 'G'. + */ - XSetForeground(nxagentDisplay, gc, nxagentLogoRed); - XSetBackground(nxagentDisplay, gc, nxagentLogoWhite); + rect[0].x = w2+3*c; rect[0].y = h2-5*c; + rect[1].x = w2+7*c; rect[1].y = h2-5*c; + rect[2].x = w2+7*c; rect[2].y = h2-4*c; + rect[3].x = w2+3*c; rect[3].y = h2-4*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, m, 12, Nonconvex, CoordModeOrigin); + rect[0].x = w2+3*c; rect[0].y = h2-5*c; + rect[1].x = w2+4*c; rect[1].y = h2-5*c; + rect[2].x = w2+4*c; rect[2].y = h2+3*c; + rect[3].x = w2+3*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + rect[0].x = w2+3*c; rect[0].y = h2+2*c; + rect[1].x = w2+7*c; rect[1].y = h2+2*c; + rect[2].x = w2+7*c; rect[2].y = h2+3*c; + rect[3].x = w2+3*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + + rect[0].x = w2+6*c; rect[0].y = h2-5*c; + rect[1].x = w2+7*c; rect[1].y = h2-5*c; + rect[2].x = w2+7*c; rect[2].y = h2-3*c; + rect[3].x = w2+6*c; rect[3].y = h2-3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + + rect[0].x = w2+6*c; rect[0].y = h2-0*c; + rect[1].x = w2+7*c; rect[1].y = h2-0*c; + rect[2].x = w2+7*c; rect[2].y = h2+3*c; + rect[3].x = w2+6*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + + rect[0].x = w2+5*c; rect[0].y = h2-1*c; + rect[1].x = w2+7*c; rect[1].y = h2-1*c; + rect[2].x = w2+7*c; rect[2].y = h2+0*c; + rect[3].x = w2+5*c; rect[3].y = h2+0*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); /* - * End 'M'. + * End 'G'. */ /* - * Begin '!'. + * Start 'O'. */ - rect[0].x = w2-7*c; rect[0].y = h2-5*c; - rect[1].x = w2-5*c; rect[1].y = h2-5*c; - rect[2].x = w2-5*c; rect[2].y = h2+2*c; - rect[3].x = w2-7*c; rect[3].y = h2+2*c; + rect[0].x = w2+8*c; rect[0].y = h2-5*c; + rect[1].x = w2+12*c; rect[1].y = h2-5*c; + rect[2].x = w2+12*c; rect[2].y = h2-4*c; + rect[3].x = w2+8*c; rect[3].y = h2-4*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + rect[0].x = w2+8*c; rect[0].y = h2+3*c; + rect[1].x = w2+12*c; rect[1].y = h2+3*c; + rect[2].x = w2+12*c; rect[2].y = h2+2*c; + rect[3].x = w2+8*c; rect[3].y = h2+2*c; XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); - rect[0].x = w2-7*c; rect[0].y = h2+3*c; - rect[1].x = w2-5*c; rect[1].y = h2+3*c; - rect[2].x = w2-5*c; rect[2].y = h2+5*c; - rect[3].x = w2-7*c; rect[3].y = h2+5*c; + rect[0].x = w2+8*c; rect[0].y = h2-5*c; + rect[1].x = w2+9*c; rect[1].y = h2-5*c; + rect[2].x = w2+9*c; rect[2].y = h2+3*c; + rect[3].x = w2+8*c; rect[3].y = h2+3*c; + XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); + rect[0].x = w2+11*c; rect[0].y = h2-5*c; + rect[1].x = w2+12*c; rect[1].y = h2-5*c; + rect[2].x = w2+12*c; rect[2].y = h2+3*c; + rect[3].x = w2+11*c; rect[3].y = h2+3*c; XFillPolygon(nxagentDisplay, nxagentPixmapLogo, gc, rect, 4, Convex, CoordModeOrigin); /* - * End 'M'. + * End 'O'. */ + XSetWindowBackgroundPixmap(nxagentDisplay, win, nxagentPixmapLogo); #ifdef NXAGENT_LOGO_DEBUG diff --git a/nx-X11/programs/Xserver/hw/nxagent/Splash.h b/nx-X11/programs/Xserver/hw/nxagent/Splash.h index f7ba6c2..39becaa 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Splash.h +++ b/nx-X11/programs/Xserver/hw/nxagent/Splash.h @@ -33,6 +33,7 @@ extern int nxagentLogoDepth; extern int nxagentLogoWhite; extern int nxagentLogoRed; extern int nxagentLogoBlack; +extern int nxagentLogoGray; extern Window nxagentSplashWindow; diff --git a/nx-X11/programs/Xserver/os/oscolor.c b/nx-X11/programs/Xserver/os/oscolor.c index d18e7b6..e8692a9 100644 --- a/nx-X11/programs/Xserver/os/oscolor.c +++ b/nx-X11/programs/Xserver/os/oscolor.c @@ -53,7 +53,19 @@ SOFTWARE. #include <sys/stat.h> #include <unistd.h> -static char* nxAltRgbPaths[] = {"/etc/nxagent/rgb", "/usr/share/nx/rgb", "/usr/local/share/nx/rgb", "/usr/NX/share/rgb", "/usr/share/X11/rgb", "/etc/X11/rgb"}; +/* FIXME: we need more intelligent code (like provided by the nxagentX2go + * var in hw/nxagent/Init.h) to detect our current runtime mode (running + * as x2goagent, running as nxagent) + */ +static char* nxAltRgbPaths[] = {"/etc/x2go/rgb", \ + "/usr/share/x2go/rgb", \ + "/usr/local/share/x2go/rgb", \ + "/etc/nxagent/rgb", \ + "/usr/share/nx/rgb", \ + "/usr/local/share/nx/rgb", \ + "/usr/NX/share/rgb", \ + "/usr/share/X11/rgb", \ + "/etc/X11/rgb"}; static char _NXRgbPath[1024]; #endif -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git