Skip to content

Commit

Permalink
Merge pull request #3 from sunweaver/feature/nxagent-version-v2
Browse files Browse the repository at this point in the history
Make nxagent aware of its NX'ish version string (and number).
  • Loading branch information
sunweaver committed Feb 17, 2015
2 parents 65deb86 + 203d971 commit c910bf7
Show file tree
Hide file tree
Showing 8 changed files with 93 additions and 6 deletions.
19 changes: 19 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ NXLIBDIR ?= $(PREFIX)/lib/nx
X2GOLIBDIR ?= $(PREFIX)/lib/x2go
CONFIGURE ?= ./configure

NX_VERSION_MAJOR=$(shell ./version.sh 1)
NX_VERSION_MINOR=$(shell ./version.sh 2)
NX_VERSION_MICRO=$(shell ./version.sh 3)
NX_VERSION_PATCH=$(shell ./version.sh 4)

SHELL:=/bin/bash

%:
Expand All @@ -44,7 +49,21 @@ build-full:
cd nxcomp && autoconf
cd nxcompext && autoconf
cd nxcompshad && autoconf

# prepare nx-X11/config/cf/nxversion.def
sed \
-e 's/###NX_VERSION_MAJOR###/$(NX_VERSION_MAJOR)/' \
-e 's/###NX_VERSION_MINOR###/$(NX_VERSION_MINOR)/' \
-e 's/###NX_VERSION_MICRO###/$(NX_VERSION_MICRO)/' \
-e 's/###NX_VERSION_PATCH###/$(NX_VERSION_PATCH)/' \
nx-X11/config/cf/nxversion.def.in \
> nx-X11/config/cf/nxversion.def

cd nx-X11 && ${MAKE} World

# clean directly after build
rm -f nx-X11/config/cf/nxversion.def

cd nxproxy && autoconf && (${CONFIGURE}) && ${MAKE}

build:
Expand Down
3 changes: 2 additions & 1 deletion nx-X11/config/cf/Imakefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ xorgsite.def \
$(VERSIONDEFFILES) \
$(HOSTDEFFILES) \
site.def \
xorgversion.def
xorgversion.def \
nxversion.def

RULEFILES = \
Imake.rules \
Expand Down
4 changes: 4 additions & 0 deletions nx-X11/config/cf/nxversion.def.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#define NX_VERSION_MAJOR ###NX_VERSION_MAJOR###
#define NX_VERSION_MINOR ###NX_VERSION_MINOR###
#define NX_VERSION_MICRO ###NX_VERSION_MICRO###
#define NX_VERSION_PATCH ###NX_VERSION_PATCH###
26 changes: 25 additions & 1 deletion nx-X11/config/cf/xorg.cf
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,31 @@ XCOMM $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
XORG_VERSION_CURRENT = XorgVersion
RELEASE_VERSION = ReleaseVersion

#if NXAgentServer
#include "nxversion.def"

#if !defined(nxVersionString) && \
defined(NX_VERSION_MAJOR) && defined(NX_VERSION_MINOR) && \
defined(NX_VERSION_MICRO) && defined(NX_VERSION_PATCH)
# define nxVersionString `echo NX_VERSION_MAJOR NX_VERSION_MINOR NX_VERSION_MICRO NX_VERSION_PATCH | sed 's/ /./g'`
#endif

/*
* NX versions are M.m.µ.p, and NXVersion is:
*
* M * 10000000 + m * 100000 + µ * 1000 + p
*
*/

#if !defined(nxVersion) && defined(nxVersionString)
# define nxVersion (((NX_VERSION_MAJOR) * 10000000) + ((NX_VERSION_MINOR) * 100000) + ((NX_VERSION_MICRO) * 1000) + NX_VERSION_PATCH)

NX_VERSION_CURRENT = nxVersion
NX_VERSION_CURRENT_STRING = nxVersionString

#endif
#endif /* NXAgentServer */

#if !defined(XorgManVersionString) && \
defined(XORG_VERSION_MAJOR) && defined(XORG_VERSION_MINOR) && \
defined(XORG_VERSION_PATCH) && defined(XORG_VERSION_SNAP)
Expand Down Expand Up @@ -1686,4 +1711,3 @@ XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
#include <cross.def>
#endif
#include <xf86.rules>

7 changes: 6 additions & 1 deletion nx-X11/programs/Xserver/hw/nxagent/Imakefile
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,12 @@ UPG_DEFINES=-DNXAGENT_UPGRADE
UPG_DEFINES=
#endif

DEFINES = -g $(OS_DEFINES) $(EXT_DEFINES) $(UPG_DEFINES) \
#if nxVersion
NX_DEFINES=-DNX_VERSION_CURRENT="$(NX_VERSION_CURRENT)" \
-DNX_VERSION_CURRENT_STRING="\"$(NX_VERSION_CURRENT_STRING)\""
#endif

DEFINES = -g $(OS_DEFINES) $(EXT_DEFINES) $(UPG_DEFINES) $(NX_DEFINES) \
-UXF86VIDMODE -UXFreeXDGA -UXF86MISC -UXF86DRI -UXFree86LOADER \
-DNXAGENT_SERVER \
-DNXAGENT_CONSTRAINCURSOR \
Expand Down
5 changes: 3 additions & 2 deletions nx-X11/programs/Xserver/hw/nxagent/Init.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,8 @@ is" without express or implied warranty.
#undef DEBUG
#undef DUMP

#define NXAGENT_VERSION "3.5.0"
#define NXAGENT_VERSION NX_VERSION_CURRENT
#define NXAGENT_VERSION_STRING NX_VERSION_CURRENT_STRING

/*
* ProcVector array defined in tables.c.
Expand Down Expand Up @@ -226,7 +227,7 @@ void InitOutput(ScreenInfo *screenInfo, int argc, char *argv[])

if (serverGeneration <= 1)
{
fprintf(stderr, "\nNXAGENT - Version " NXAGENT_VERSION "\n\n");
fprintf(stderr, "\nNXAGENT - Version " NXAGENT_VERSION_STRING "\n\n");
fprintf(stderr, "Copyright (C) 2001, 2011 NoMachine.\n");
fprintf(stderr, "See http://www.nomachine.com/ for more information.\n\n");

Expand Down
1 change: 0 additions & 1 deletion nx-X11/programs/Xserver/hw/nxagent/VERSION

This file was deleted.

34 changes: 34 additions & 0 deletions version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/bin/sh

# Copyright (C) 2015 Mihai Moldovan <ionic@ionic.de>
# Copyright (C) 2015 Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
#
# 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 2 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, write to the
# Free Software Foundation, Inc.,
# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.

COMPONENT="$1"
VERSION_FILE="VERSION"

case "${COMPONENT}" in
(1|2|3|4) :;;
(*) echo "usage: $(basename ${0}) <position-in-version-number>" >&2; exit 1;;
esac

# More than one line is not supported.
VER="$(head -n "1" "${VERSION_FILE}" | cut -d"." -f"${COMPONENT}")"

[ "x${VER}" = "x" ] && VER="0"

printf "${VER}"

0 comments on commit c910bf7

Please sign in to comment.