]> source.dussan.org Git - tigervnc.git/commitdiff
contrib: Add ubuntu-xenial debian source package to build on xenial. 293/head
authorDominik Muth <dominik.muth@gmx.de>
Wed, 13 Apr 2016 22:17:09 +0000 (00:17 +0200)
committerDominik Muth <dominik.muth@gmx.de>
Wed, 13 Apr 2016 22:17:09 +0000 (00:17 +0200)
The package is based on the contrib ubuntu-trusty debian package. The
following modifications have been made:

The current tigervnc sources can be used unmodified as the .orig
tarball for the debian package, so get-orig-source.sh is gone.

The ubuntu xorg-server-sources package provides the xorg sources used
to build tigervnc. The two small patches which where in the trusty
quilt series are now applied to the xorg sources after they have been
extracted. There is no quilt series anymore at this point.

Fltk 1.3.3 is available in the xenial repositories and it is used to build
xtigervncviewer. No need to get the fltk sources. patch_fltk.sh is gone.

Fixed some dependencies to reflect changes between trusty and xenial.

Removed configure options not recognized by configure.

The install target is not called a second time for the viewer package,
but the viewer files are moved from the server installation. (Eliminate
file conflicts during binary package installation.)

Note: Some dependencies (including libfltk1.3 and xorg-server-source) are
found in the xenial universe repository only.

15 files changed:
contrib/packages/deb/ubuntu-xenial/debian/changelog [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/compat [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/control [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/copyright [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/rules [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/source/format [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst [new file with mode: 0644]
contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm [new file with mode: 0644]

diff --git a/contrib/packages/deb/ubuntu-xenial/debian/changelog b/contrib/packages/deb/ubuntu-xenial/debian/changelog
new file mode 100644 (file)
index 0000000..bb73e15
--- /dev/null
@@ -0,0 +1,38 @@
+tigervnc (1.6.80-4) xenial; urgency=low
+
+  * Build using libfltk1.3-dev as provided by ubuntu.
+  * Build using xorg-server-source as provided by ubuntu.
+
+ -- Dominik Muth <dominik.muth@gmx.de>  Thu, 07 Apr 2016 22:17:09 +0200
+
+tigervnc (1.3.0-3ubuntu1) precise; urgency=low
+
+  * Build Xvnc against native upstream xorg sources, using native config
+    options. Use distro-specific fltk1.3 sources.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 14 Jul 2013 15:22:28 -0400
+
+tigervnc (1.3.0-3) precise; urgency=low
+
+  * Additional dependencies (derived from ldd | dpkg -S).
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 11:01:33 -0400
+
+tigervnc (1.3.0-2) precise; urgency=low
+
+  * Added build dependencies to improve font support in viewer.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 10:44:05 -0400
+
+tigervnc (1.3.0-1) precise; urgency=low
+
+  * Removed java viewer from server package. Fixed typo in server
+    dependencies.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 09:55:44 -0400
+
+tigervnc (1.3.0) precise; urgency=low
+
+  * Initial release.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Fri, 05 Jul 2013 00:47:02 -0400
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/compat b/contrib/packages/deb/ubuntu-xenial/debian/compat
new file mode 100644 (file)
index 0000000..ec63514
--- /dev/null
@@ -0,0 +1 @@
+9
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/control b/contrib/packages/deb/ubuntu-xenial/debian/control
new file mode 100644 (file)
index 0000000..87a78d6
--- /dev/null
@@ -0,0 +1,70 @@
+Source: tigervnc
+Section: x11
+Priority: optional
+Maintainer: Brian P. Hinz <bphinz@users.sourceforge.net>
+Standards-Version: 3.8.4
+Build-Depends: debhelper (>> 7.1), zlib1g-dev, libjpeg-turbo8-dev, libxaw7-dev (>> 4.1.0), perl-modules, xfonts-base, xutils-dev, libx11-dev, libxau-dev, libxext-dev, libxi-dev, libxkbfile-dev, libxmu-dev, libxt-dev, x11proto-core-dev, cmake (>> 2.8), libgnutls-dev, libpam0g-dev, libpng12-dev, automake, autoconf, libtool, pkg-config, libpixman-1-dev, x11proto-bigreqs-dev, x11proto-composite-dev, x11proto-damage-dev, x11proto-dri2-dev, x11proto-fixes-dev, x11proto-fonts-dev, x11proto-gl-dev, x11proto-input-dev, x11proto-kb-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-resource-dev, x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xext-dev, x11proto-xf86bigfont-dev, x11proto-xf86dga-dev, x11proto-xf86dri-dev, x11proto-xf86vidmode-dev, x11proto-xinerama-dev, libosmesa6-dev, libgl1-mesa-dev, libgl1-mesa-dri, libgl1-mesa-glx, libxfont-dev, x11proto-record-dev, default-jdk, libxtst-dev, libxft-dev, libexpat1-dev, libfontconfig1-dev, libxrender-dev, libpciaccess-dev, curl, bzip2, quilt, libglu1-mesa-dev, libxcursor-dev, libxinerama-dev, libxfixes-dev, libcairo2-dev, x11proto-dri3-dev, libgcrypt20-dev, x11proto-xcmisc-dev, x11proto-present-dev, xorg-server-source, libfltk1.3-dev
+Homepage: http://www.tigervnc.com
+
+Package: tigervncserver
+Architecture: any
+Provides: xserver, vnc-server
+Depends: x11-common | xserver-common, x11-utils, xauth, libbz2-1.0, libc6, libfontenc1, libfreetype6, libgcc1, libgl1-mesa-dri, libgnutls30, libjpeg-turbo8, libp11-kit0, libpam0g, libpixman-1-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxfont1, libxtst6, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, x11-xkb-utils
+Recommends: xfonts-base, x11-xserver-utils
+Suggests: xtigervncviewer, tigervnc-java
+Description: virtual network computing server software
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
+Package: xtigervncviewer
+Architecture: any
+Provides: vncviewer, vnc-viewer
+Depends: libc6, libexpat1, libfontconfig1, libfreetype6, libgcc1, libgnutls30, libjpeg-turbo8, libp11-kit0, libpng12-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxft2, libxrender1, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, libfltk1.3
+Recommends: xfonts-base
+Suggests: tigervncserver, ssh
+Description: virtual network computing client software for X
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
+Package: tigervnc-java
+Architecture: any
+Suggests: tigervncserver
+Provides: vncviewer, vnc-viewer
+Depends:  default-jre
+Description: TigerVNC java applet
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/copyright b/contrib/packages/deb/ubuntu-xenial/debian/copyright
new file mode 100644 (file)
index 0000000..003dcc4
--- /dev/null
@@ -0,0 +1,116 @@
+This package was packaged for Debian by Brian P. Hinz <bphinz@users.sourceforge.net>
+on Tue, 02 Jul 2013 21:33:24 +0500 using the tightvnc package as a base.
+
+It was downloaded from:
+       http://www.tigervnc.org/
+
+COPYRIGHT:
+==========
+
+TigerVNC is
+
+        Copyright (C) 1999 AT&T Laboratories Cambridge
+        Copyright (C) 2002-2005 RealVNC Ltd.
+        Copyright (C) 2000-2006 TightVNC Group
+        Copyright (C) 2005-2006 Martin Koegler
+        Copyright (C) 2005-2006 Sun Microsystems, Inc.
+        Copyright (C) 2006 OCCAM Financial Technology
+        Copyright (C) 2000-2008 Constantin Kaplinsky
+        Copyright (C) 2004-2009 Peter Astrand for Cendio AB
+        Copyright (C) 2010 Antoine Martin
+        Copyright (C) 2010 m-privacy GmbH
+        Copyright (C) 2009-2011 D. R. Commander
+        Copyright (C) 2009-2011 Pierre Ossman for Cendio AB
+        Copyright (C) 2004, 2009-2011 Red Hat, Inc.
+        Copyright (C) 2009-2011 TigerVNC Team
+        All Rights Reserved.
+
+This software is distributed under the GNU General Public Licence as published
+by the Free Software Foundation.  See the file LICENCE.TXT for the conditions
+under which this software is made available.  TigerVNC also contains code from
+other sources.  See the Acknowledgements section below, and the individual
+source files, for details of the conditions under which they are made
+available.
+
+ACKNOWLEDGEMENTS
+================
+
+This distribution contains zlib compression software.  This is:
+
+  Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+  The data format used by the zlib library is described by RFCs (Request for
+  Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
+  (zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
+
+
+This distribution contains public domain DES software by Richard Outerbridge.
+This is:
+
+    Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
+    (GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
+
+
+This distribution contains software from the X Window System.  This is:
+
+ Copyright 1987, 1988, 1998  The Open Group
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation.
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+ OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ Except as contained in this notice, the name of The Open Group shall not be
+ used in advertising or otherwise to promote the sale, use or other dealings
+ in this Software without prior written authorization from The Open Group.
+ Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
+                         All Rights Reserved
+ Permission to use, copy, modify, and distribute this software and its 
+ documentation for any purpose and without fee is hereby granted, 
+ provided that the above copyright notice appear in all copies and that
+ both that copyright notice and this permission notice appear in 
+ supporting documentation, and that the name of Digital not be
+ used in advertising or publicity pertaining to distribution of the
+ software without specific, written prior permission.  
+ DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+ DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+ SOFTWARE.
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service
new file mode 100644 (file)
index 0000000..86a8a91
--- /dev/null
@@ -0,0 +1,94 @@
+#!/bin/bash
+#
+# Init file for TigerVNC Server
+#
+# chkconfig: - 91 35
+# description: TigerVNC remote X administration daemon.
+#
+# processname: Xvnc
+
+### BEGIN INIT INFO
+# Provides: vncservers
+# Required-Start: networking
+# Required-Stop: networking
+# Default-Start:
+# Default-Stop: 0 1 2 3 4 5 6
+# Short-Description: Starts and stops vncserver
+# Description: Used to provide remote X administration services.
+### END INIT INFO
+
+# Source function library.
+. /lib/lsb/init-functions
+
+### Default variables
+SYSCONFIG="/etc/default/vncservers"
+VNCSERVERS=""
+
+### Read configuration
+[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"
+
+RETVAL=0
+prog=$"VNC server"
+
+start() {
+  echo -n $"Starting $prog: "
+  ulimit -S -c 0 >/dev/null 2>&1
+  for display in ${VNCSERVERS}; do
+    echo -n "${display} "
+    if [ -r $(eval echo ~${display##*:})/.vnc/passwd ]; then
+      unset BASH_ENV ENV
+      log_begin_msg "Starting VNC Server for user ${display##*:}:"
+      su ${display##*:} -c "cd ~${display##*:} && [ -f .vnc/passwd ] && vncserver :${display%%:*} ${VNCSERVERARGS[${display%:*}]}"
+      RETVAL="$?"
+      if [ "$RETVAL" -ne 0 ]; then
+        log_end_msg 1
+        break
+      else
+        log_end_msg 0
+      fi
+    else
+      log_begin_msg "Not starting VNC Server for user ${display##*:}.\n   File \"~${display##*:}/.vnc/passwd\" not found.\n   Create a password file for the VNC server with vncpasswd"
+      log_end_msg 1
+         fi
+  done
+  echo
+  [ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
+  return $RETVAL
+}
+
+stop() {
+    echo -n $"Shutting down $desc: "
+    for display in ${VNCSERVERS}; do
+      echo -n "${display} "
+      unset BASH_ENV ENV
+      log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
+      su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
+      RETVAL="$?"
+      [ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
+    done
+    echo
+    [ "$RETVAL" -eq 0 ] && rm -f "/var/lock/vncserver"
+    return $RETVAL
+}
+
+restart() {
+    stop
+    start
+}
+
+case "$1" in
+  start)
+    start
+    ;;
+  stop)
+    stop
+    ;;
+  restart|reload)
+    restart
+    ;;
+  *)
+    echo $"Usage: $0 {start|stop|restart}"
+    RETVAL=1
+esac
+
+exit $RETVAL
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig
new file mode 100644 (file)
index 0000000..d18d0f1
--- /dev/null
@@ -0,0 +1,19 @@
+# The VNCSERVERS variable is a list of display:user pairs.
+#
+# Uncomment the lines below to start a VNC server on display :2
+# as my 'myusername' (adjust this to your own).  You will also
+# need to set a VNC password; run 'man vncpasswd' to see how
+# to do that.
+#
+# DO NOT RUN THIS SERVICE if your local area network is
+# untrusted!  For a secure way of using VNC, see this URL:
+# http://kbase.redhat.com/faq/docs/DOC-7028
+
+# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
+
+# Use "-localhost" to prevent remote VNC clients connecting except when
+# doing so through a secure tunnel.  See the "-via" option in the
+# `man vncviewer' manual page.
+
+# VNCSERVERS="2:myusername"
+# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/rules b/contrib/packages/deb/ubuntu-xenial/debian/rules
new file mode 100644 (file)
index 0000000..e0606b3
--- /dev/null
@@ -0,0 +1,284 @@
+#!/usr/bin/make -f
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 by Joey Hess.
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+CFLAGS   := $(shell dpkg-buildflags --get CFLAGS)
+CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
+CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
+LDFLAGS  := $(shell dpkg-buildflags --get LDFLAGS)
+
+export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+DEB_HOST_ARCH      ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
+DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+DEB_HOST_ARCH_OS   ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
+ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
+       confflags += --build=$(DEB_HOST_GNU_TYPE)
+else
+       confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
+endif
+SOURCE_NAME    := tigervnc
+SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
+BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
+libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
+
+
+ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -g -O2 -fPIC
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+       INSTALL_PROGRAM += -s
+endif
+
+export CC = gcc
+
+# use xorg sources as shipped in xorg-server-source package
+XORG_SOURCE_ARCHIVE = /usr/src/xorg-server.tar.xz
+
+xorg-source-stamp: $(XORG_SOURCE_ARCHIVE)
+       tar -C unix/xserver -axf $(XORG_SOURCE_ARCHIVE) --strip-components=1
+       cd unix/xserver && patch -p1 < ../xserver118.patch
+       patch -p1 < debian/xorg-source-patches/100_rethrow_signals.patch
+       patch -p1 < debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
+       touch xorg-source-stamp
+
+configure: config-stamp
+config-stamp: xorg-source-stamp
+       dh_testdir
+       # Add here commands to configure the package.
+       cmake -G"Unix Makefiles" \
+               -DBUILD_STATIC=off \
+               -DCMAKE_INSTALL_PREFIX=/usr
+       (cd unix/xserver; \
+       export PIXMANINCDIR=/usr/include/pixman-1; \
+       autoreconf -fiv; \
+       ./configure --prefix=/usr \
+               --disable-silent-rules \
+               --disable-static \
+               --without-dtrace \
+               --disable-strict-compilation \
+               --disable-debug \
+               --disable-unit-tests \
+               --with-int10=x86emu \
+               --with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
+               --with-os-vendor="$(VENDOR)" \
+               --with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
+               --with-xkb-path=/usr/share/X11/xkb \
+               --with-xkb-output=/var/lib/xkb \
+               --with-default-xkb-rules=evdev \
+               --disable-devel-docs \
+               --enable-mitshm \
+               --enable-xres \
+               --disable-xcsecurity \
+               --disable-tslib \
+               --enable-dbe \
+               --disable-xf86bigfont \
+               --disable-dpms \
+               --disable-config-hal \
+               --disable-config-udev \
+               --disable-xorg \
+               --disable-xquartz \
+               --disable-xwin \
+               --disable-xfake \
+               --disable-install-setuid \
+               --with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
+               --enable-aiglx \
+               --enable-composite \
+               --enable-record \
+               --enable-xv \
+               --enable-xvmc \
+               --enable-dga \
+               --enable-screensaver \
+               --enable-xdmcp \
+               --enable-xdm-auth-1 \
+               --enable-glx \
+               --disable-dri --enable-dri2 --enable-dri3 \
+               --enable-xinerama \
+               --enable-xf86vidmode \
+               --enable-xace \
+               --enable-xfree86-utils \
+               --disable-dmx \
+               --disable-xvfb \
+               --disable-xnest \
+               --disable-kdrive \
+               --disable-xephyr \
+               --enable-xfbdev \
+               --with-sha1=libgcrypt \
+               --enable-xcsecurity \
+               --disable-docs \
+               --disable-selective-werror)
+       touch config-stamp
+
+build-arch: config-stamp build-arch-stamp
+build-arch-stamp:
+       dh_testdir
+
+       # Add here command to compile/build the package.
+       # Build first things.
+       # Build Xvnc
+       make LDFLAGS="-lpng"
+       (cd unix/xserver;make)
+
+       touch build-arch-stamp
+
+build-indep: config-stamp  build-indep-stamp
+build-indep-stamp:
+       dh_testdir
+
+       # Add here command to compile/build the arch indep package.
+       # It's ok not to do anything here, if you don't need to build
+       #  anything for this package.
+       #/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
+       (cd media;make)
+       (cd java;cmake -G"Unix Makefiles";JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" make)
+
+       touch build-indep-stamp
+
+build: build-arch build-indep
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-arch-stamp build-indep-stamp config-stamp
+
+       # Add here commands to clean up after the build process.
+       dh_clean
+
+install: DH_OPTIONS=
+install: build
+       dh_testdir
+       dh_testroot
+       dh_clean -k
+       dh_prep
+       dh_installdirs
+       # Add here commands to install the package into debian/vnc.
+       make install DESTDIR=$(CURDIR)/debian/tigervncserver
+       (cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
+       # rename server files to tigervnc specific names
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
+               $(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
+               $(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
+               $(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
+               $(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
+               $(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
+               $(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
+               $(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
+               $(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
+               $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
+               $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
+       # delete development files
+       rm -f $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
+       # install server service
+       install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
+               $(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
+       install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
+               $(CURDIR)/debian/tigervncserver/etc/default/vncservers
+       # move viewer files to viewer package, rename on the fly
+       mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/bin
+       mv $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer \
+               $(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
+       mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1
+       mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1 \
+               $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
+       mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
+       mv $(CURDIR)/debian/tigervncserver/usr/share/applications \
+               $(CURDIR)/debian/xtigervncviewer/usr/share/
+       mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
+       mv $(CURDIR)/debian/tigervncserver/usr/share/icons \
+               $(CURDIR)/debian/xtigervncviewer/usr/share/
+       # tigervnc-java
+       mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
+       (cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
+       # install additional license files
+       mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer
+       cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+               $(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer/
+       mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java
+       cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+               $(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java/
+       mkdir -p $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
+       mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+               $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver/
+       rm -rf $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/
+#      dh_movefiles
+
+# Build architecture-independent files here.
+# Pass -i to all debhelper commands in this target to reduce clutter.
+binary-indep: build install
+
+binary-indep-keep:
+       dh_testdir -i
+       dh_testroot -i
+#      dh_installdebconf -i
+       dh_install
+       dh_installdocs -i
+       dh_installexamples -i
+       dh_installmenu -i
+#      dh_installlogrotate -i
+#      dh_installemacsen -i
+#      dh_installpam -i
+#      dh_installmime -i
+#      dh_installinit -i
+       dh_installcron -i
+       dh_installman -i
+       dh_installinfo -i
+#      dh_undocumented -i
+       dh_installchangelogs  -i
+       dh_link -i
+       dh_compress -i
+       dh_fixperms -i
+       dh_installdeb -i
+       dh_perl -i
+       dh_gencontrol -i
+       dh_md5sums -i
+       dh_builddeb -i
+
+# Build architecture-dependent files here.
+binary-arch: build install
+       dh_testdir -a
+       dh_testroot -a
+#      dh_installdebconf -a
+       dh_installdocs -a
+#      dh_installexamples -a
+       dh_installmenu -a
+#      dh_installlogrotate -a
+#      dh_installemacsen -a
+#      dh_installpam -a
+#      dh_installmime -a
+       dh_install
+       dh_installinit -a
+#      dh_installcron -a
+       dh_installman -a
+       dh_installinfo -a
+#      dh_undocumented -a
+       dh_installchangelogs  -a
+       # Remove empty directories
+       dh_strip -a
+       dh_link -a
+       dh_compress -a
+       dh_fixperms -a
+       dh_makeshlibs -a
+       dh_installdeb -a
+       dh_perl -a
+       dh_shlibdeps -a
+       dh_gencontrol -a
+       dh_md5sums -a
+       dh_builddeb -a
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/source/format b/contrib/packages/deb/ubuntu-xenial/debian/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst
new file mode 100644 (file)
index 0000000..32e7ea7
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "configure" ]; then
+    MAN=/usr/share/man/man1
+    BIN=/usr/bin
+    update-alternatives --install \
+       $BIN/vncserver       vncserver       $BIN/tigervncserver 64 \
+       --slave \
+       $MAN/vncserver.1.gz  vncserver.1.gz  $MAN/tigervncserver.1.gz
+    update-alternatives --install \
+       $BIN/Xvnc            Xvnc            $BIN/Xtigervnc 74 \
+       --slave \
+       $MAN/Xvnc.1.gz       Xvnc.1.gz       $MAN/Xtigervnc.1.gz
+    update-alternatives --install \
+       $BIN/x0vncserver     x0vncserver     $BIN/x0tigervncserver 74 \
+       --slave \
+       $MAN/x0vncserver.1.gz x0vncserver.1.gz $MAN/x0tigervncserver.1.gz
+    update-alternatives --install \
+       $BIN/vncpasswd        vncpasswd            $BIN/tigervncpasswd 74 \
+       --slave \
+       $MAN/vncpasswd.1.gz   vncpasswd.1.gz       $MAN/tigervncpasswd.1.gz
+    update-alternatives --install \
+       $BIN/vncconfig       vncconfig       $BIN/tigervncconfig 64 \
+       --slave \
+       $MAN/vncconfig.1.gz  vncconfig.1.gz  $MAN/tigervncconfig.1.gz
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm
new file mode 100644 (file)
index 0000000..26608e3
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "remove" ] ; then
+    BIN=/usr/bin
+    update-alternatives --remove \
+       vncserver $BIN/tigervncserver
+    update-alternatives --remove \
+       Xvnc $BIN/Xtigervnc
+    update-alternatives --remove \
+       x0vncserver $BIN/x0tigervncserver
+    update-alternatives --remove \
+       vncpasswd $BIN/tigervncpasswd
+    update-alternatives --remove \
+       tigervncconfig $BIN/tigervncconfig
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch
new file mode 100644 (file)
index 0000000..b40b148
--- /dev/null
@@ -0,0 +1,26 @@
+--- a/unix/xserver/hw/vnc/xvnc.c       2013-07-14 14:05:29.963390223 -0400
++++ b/unix/xserver/hw/vnc/xvnc.c       2013-07-14 14:04:12.840357191 -0400
+@@ -250,7 +250,7 @@
+ #if XORG < 111
+ AbortDDX()
+ #else
+-AbortDDX(enum ExitCode error)
++SigAbortDDX(int signo, enum ExitCode error)
+ #endif
+ {
+ #if XORG < 111
+@@ -260,6 +260,14 @@
+ #endif
+ }
++#if XORG >= 111
++void
++AbortDDX(enum ExitCode error)
++{
++    SigAbortDDX(0, error);
++}
++#endif
++
+ #ifdef __DARWIN__
+ void
+ DarwinHandleGUI(int argc, char *argv[])
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
new file mode 100644 (file)
index 0000000..4575f6a
--- /dev/null
@@ -0,0 +1,10 @@
+--- a/unix/xserver/man/Makefile.am     2013-03-30 17:51:01.707258746 -0400
++++ b/unix/xserver/man/Makefile.am     2013-03-30 17:51:47.606569692 -0400
+@@ -2,5 +2,7 @@
+ # (i.e. those handled in the os/utils.c options processing instead of in
+ #  the DDX-level options processing)
++if ENABLE_DOCS
+ include $(top_srcdir)/manpages.am
+ appman_PRE = Xserver.man
++endif ENABLE_DOCS 
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu
new file mode 100644 (file)
index 0000000..aac942c
--- /dev/null
@@ -0,0 +1,5 @@
+?package(xtigervncviewer):needs="x11" \
+  section="Applications/Network/Communication" \
+  hints="VNC,remote-control"\
+  title="xtigervncviewer" \
+  command="/usr/bin/xtigervncviewer"
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst
new file mode 100644 (file)
index 0000000..4df0c65
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+if [ "$1" = "configure" ]; then
+    MAN=/usr/share/man/man1
+    BIN=/usr/bin
+    update-alternatives --install \
+       $BIN/vncviewer       vncviewer       $BIN/xtigervncviewer 74 \
+       --slave \
+       $MAN/vncviewer.1.gz  vncviewer.1.gz  $MAN/xtigervncviewer.1.gz \
+       --slave \
+       $MAN/xvncviewer.1.gz xvncviewer.1.gz $MAN/xtigervncviewer.1.gz \
+       --slave \
+       $BIN/xvncviewer      xvncviewer      $BIN/xtigervncviewer
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm
new file mode 100644 (file)
index 0000000..7a51fd2
--- /dev/null
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+if [ "$1" = "remove" ] ; then
+    BIN=/usr/bin
+    update-alternatives --remove \
+       vncviewer $BIN/xtigervncviewer
+fi
+
+#DEBHELPER#
+
+exit 0