summaryrefslogtreecommitdiffstats
path: root/x11
diff options
context:
space:
mode:
authorVlad Glagolev2019-05-24 02:35:36 +0000
committerVlad Glagolev2019-05-24 14:52:24 +0000
commit02e2893d22815a56729dae3017325670813c1ceb (patch)
treea87eab8ce4650748f462c01d3ca4040f1e6b002a /x11
parentc04308fa088ed694b5547412e0c3929c381f75ad (diff)
turbovnc: new spell, optimized version of TightVNC
Diffstat (limited to 'x11')
-rwxr-xr-xx11/turbovnc/BUILD3
-rwxr-xr-xx11/turbovnc/CONFIGURE18
-rwxr-xr-xx11/turbovnc/CONFLICTS2
-rwxr-xr-xx11/turbovnc/DEPENDS56
-rwxr-xr-xx11/turbovnc/DETAILS30
-rw-r--r--x11/turbovnc/HISTORY3
-rwxr-xr-xx11/turbovnc/PRE_BUILD4
-rw-r--r--x11/turbovnc/libressl.patch11
-rw-r--r--x11/turbovnc/virtualgl.gpgbin0 -> 1217 bytes
9 files changed, 127 insertions, 0 deletions
diff --git a/x11/turbovnc/BUILD b/x11/turbovnc/BUILD
new file mode 100755
index 0000000000..f519016dd6
--- /dev/null
+++ b/x11/turbovnc/BUILD
@@ -0,0 +1,3 @@
+OPTS="-DTVNC_BUILDJAVA=OFF ${TURBOVNC_OPTS} ${OPTS}" &&
+
+cmake_build
diff --git a/x11/turbovnc/CONFIGURE b/x11/turbovnc/CONFIGURE
new file mode 100755
index 0000000000..64b9105fa6
--- /dev/null
+++ b/x11/turbovnc/CONFIGURE
@@ -0,0 +1,18 @@
+config_query_option TURBOVNC_OPTS "Build TurboVNC server components?" y \
+ "-DTVNC_BUILDSERVER=ON" \
+ "-DTVNC_BUILDSERVER=OFF" &&
+
+if list_find "${TURBOVNC_OPTS}" "-DTVNC_BUILDSERVER=ON"; then
+ config_query_list TURBOVNC_TLS "Which TLS implementation to use?" \
+ SSL \
+ gnutls \
+ none &&
+
+ config_query_option TURBOVNC_OPTS "Build the TurboVNC Server against the system-supplied versions of zlib, bzip2, and FreeType rather than the in-tree versions?" n \
+ "-DTVNC_SYSTEMLIBS=ON" \
+ "-DTVNC_SYSTEMLIBS=OFF" &&
+
+ config_query_option TURBOVNC_OPTS "Build the TurboVNC Server against the system-supplied X11 and OpenGL headers and libraries rather than the in-tree versions?" n \
+ "-DTVNC_SYSTEMX11=ON" \
+ "-DTVNC_SYSTEMX11=OFF"
+fi
diff --git a/x11/turbovnc/CONFLICTS b/x11/turbovnc/CONFLICTS
new file mode 100755
index 0000000000..f575bcef96
--- /dev/null
+++ b/x11/turbovnc/CONFLICTS
@@ -0,0 +1,2 @@
+conflicts vnc &&
+conflicts tightvnc
diff --git a/x11/turbovnc/DEPENDS b/x11/turbovnc/DEPENDS
new file mode 100755
index 0000000000..38a625036b
--- /dev/null
+++ b/x11/turbovnc/DEPENDS
@@ -0,0 +1,56 @@
+depends cmake &&
+depends libjpeg-turbo &&
+
+optional_depends JAVA \
+ "-DTVNC_BUILDNATIVE=ON" \
+ "-DTVNC_BUILDNATIVE=OFF" \
+ "to build Java/Native Hybrid TurboVNC Viewer" &&
+
+# requires JAVA sub-dependency in libjpeg-turbo which doesn't exist yet
+#optional_depends JDK
+# "-DTVNC_BUILDJAVA=ON" \
+# "-DTVNC_BUILDJAVA=OFF" \
+# "to build Java version of the TurboVNC Viewer" &&
+
+if list_find "${TURBOVNC_OPTS}" "-DTVNC_BUILDSERVER=ON"; then
+ depends libsm &&
+ depends libice &&
+ depends libx11 &&
+ depends libxext &&
+
+ case "${TURBOVNC_TLS}" in
+ SSL)
+ depends SSL "-DTVNC_USETLS=openssl"
+ ;;
+ gnutls)
+ depends gnutls "-DTVNC_USETLS=gnutls"
+ ;;
+ none)
+ list_add TURBOTLS_OPTS "-DTVNC_USETLS=none"
+ ;;
+ esac &&
+
+ if list_find "${TURBOVNC_OPTS}" "-DTVNC_SYSTEMLIBS=ON"; then
+ depends zlib &&
+ depends bzip2 &&
+ depends freetype2
+ fi &&
+
+ if list_find "${TURBOVNC_OPTS}" "-DTVNC_SYSTEMX11=ON"; then
+ depends libxau &&
+ depends libxdmcp &&
+ depends libxfont2 &&
+ depends libfontenc &&
+ depends pixman
+ fi &&
+
+ optional_depends OPENGL \
+ "-DTVNC_GLX=ON" \
+ "-DTVNC_GLX=OFF" \
+ "to include GLX extension in Xvnc" &&
+
+ optional_depends linux-pam \
+ "-DTVNC_USEPAM=ON" \
+ "-DTVNC_USEPAM=OFF" \
+ "to include PAM authentication support in the TurboVNC Server"
+fi
diff --git a/x11/turbovnc/DETAILS b/x11/turbovnc/DETAILS
new file mode 100755
index 0000000000..728daebd86
--- /dev/null
+++ b/x11/turbovnc/DETAILS
@@ -0,0 +1,30 @@
+ SPELL=turbovnc
+ VERSION=2.2.2
+ SOURCE=${SPELL}-${VERSION}.tar.gz
+ SOURCE2=${SOURCE}.sig
+ SOURCE_URL[0]=https://downloads.sourceforge.net/sourceforge/${SPELL}/${SOURCE}
+ SOURCE2_URL[0]=${SOURCE_URL}.sig
+ SOURCE_GPG=virtualgl.gpg:${SOURCE2}:UPSTREAM_KEY
+ SOURCE2_IGNORE=signature
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELL}-${VERSION}"
+ DOC_DIRS=""
+ WEB_SITE=https://turbovnc.org/
+ LICENSE[0]=GPL
+ ENTERED=20190523
+ SHORT="optimized version of TightVNC"
+cat << EOF
+TurboVNC is a derivative of VNC (Virtual Network Computing) that is tuned to
+provide peak performance for 3D and video workloads.
+
+TurboVNC was originally a fork of TightVNC 1.3.x.
+
+The current version of TurboVNC contains a much more modern X server code base
+(based on X.org 7.7) and a variety of other features and fixes not present in
+TightVNC, including a high-performance Java viewer. In addition, TurboVNC
+compresses 3D and video workloads significantly better than the “tightest”
+compression mode in TightVNC 1.3.x while using only typically 15-20% of the
+CPU time of the latter. Using non-default settings, TurboVNC can also match
+the best compression ratios produced by TightVNC 1.3.x for 2D workloads.
+Furthermore, TurboVNC contains some unique features that are designed
+specifically for visualization applications.
+EOF
diff --git a/x11/turbovnc/HISTORY b/x11/turbovnc/HISTORY
new file mode 100644
index 0000000000..1a93e159cf
--- /dev/null
+++ b/x11/turbovnc/HISTORY
@@ -0,0 +1,3 @@
+2019-05-23 Vlad Glagolev <stealth@sourcemage.org>
+ * DETAILS, DEPENDS, CONFIGURE, {PRE_,}BUILD, CONFLICTS, libressl.patch,
+ virtualgl.gpg: created spell, version 2.2.2
diff --git a/x11/turbovnc/PRE_BUILD b/x11/turbovnc/PRE_BUILD
new file mode 100755
index 0000000000..2c03a54fca
--- /dev/null
+++ b/x11/turbovnc/PRE_BUILD
@@ -0,0 +1,4 @@
+default_pre_build &&
+cd "${SOURCE_DIRECTORY}" &&
+
+patch -p0 < "${SPELL_DIRECTORY}/libressl.patch"
diff --git a/x11/turbovnc/libressl.patch b/x11/turbovnc/libressl.patch
new file mode 100644
index 0000000000..5ba4bb2d1b
--- /dev/null
+++ b/x11/turbovnc/libressl.patch
@@ -0,0 +1,11 @@
+--- unix/Xvnc/programs/Xserver/hw/vnc/rfbssl_openssl.c.orig 2019-05-22 11:23:51.000000000 -0700
++++ unix/Xvnc/programs/Xserver/hw/vnc/rfbssl_openssl.c 2019-05-23 18:59:11.599311213 -0700
+@@ -52,7 +52,7 @@
+ #else
+ #define CONST
+ #endif
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || !defined(LIBRESSL_VERSION)
+ typedef struct ossl_init_settings_st OPENSSL_INIT_SETTINGS;
+ #endif
+
diff --git a/x11/turbovnc/virtualgl.gpg b/x11/turbovnc/virtualgl.gpg
new file mode 100644
index 0000000000..097b601c96
--- /dev/null
+++ b/x11/turbovnc/virtualgl.gpg
Binary files differ