summaryrefslogtreecommitdiff
path: root/net-misc/tigervnc
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2021-12-22 14:08:05 +0000
committerV3n3RiX <venerix@koprulu.sector>2021-12-22 14:08:05 +0000
commit93a93e9a3b53c1a73142a305ea1f8136846942ee (patch)
treeb9791a06ab3284e27b568412c59316c66240c682 /net-misc/tigervnc
parent2771f79232c273bc2a57d23bf335dd81ccf6af28 (diff)
gentoo resync : 22.12.2021
Diffstat (limited to 'net-misc/tigervnc')
-rw-r--r--net-misc/tigervnc/Manifest6
-rw-r--r--net-misc/tigervnc/files/tigervnc-1.12.0-xorg-1.21.patch55
-rw-r--r--net-misc/tigervnc/tigervnc-1.12.0-r1.ebuild187
-rw-r--r--net-misc/tigervnc/tigervnc-9999.ebuild184
4 files changed, 432 insertions, 0 deletions
diff --git a/net-misc/tigervnc/Manifest b/net-misc/tigervnc/Manifest
index 9ba84e9e1268..3347322cc1b1 100644
--- a/net-misc/tigervnc/Manifest
+++ b/net-misc/tigervnc/Manifest
@@ -1,4 +1,5 @@
AUX tigervnc-1.11.0-install-java-viewer.patch 788 BLAKE2B b3da744d21030bf988dc21bca66a17811b1180ad89fcbc6e3ca8b70b8803c284456cc14393dddf5f2f395d9044d90e8ac8ee50d155be7779b08c14d7bbcb270b SHA512 5f9650a6f8589ab952506cbf6a67f603fc720a70dd76a505da69812c039fb9a0a4137c9667ce11e253a35bade056a18d2fa584ac23cda8111ff1fe17e90f025a
+AUX tigervnc-1.12.0-xorg-1.21.patch 1756 BLAKE2B c872216f03b595f61e91d876546c573ed572b20e9ead1e4ded7d830c739dc172a016784902d447dbe8aa78bb5a2e69c4ef6a4357f446af53f7bc569d56108dac SHA512 533ff06e9619cd63ee83dcb3e6a5a35f02f092b32b194f89e2c06f2f17aaf59a3c2adab27d3e87c4a0773f3f82cfec82492d6b031b3a9050d5f0ad4fcf0a0da0
AUX tigervnc-1.9.0-030_manpages.patch 1978 BLAKE2B c9054f599b503d68d19dab1bd5c588ed19e96f3d547482c10acf84acc81fb59089497d1a282d6f8108132c8ed2fc412af9153c1305d6b04fdecf227c4ad42180 SHA512 dd58ab7987e2e619cc544cae77d7234575dbb812073f730ca0abda24e05c95fcc62449f96472a7962202725d2c9277432cf2289ff930d9841852c858977bf44e
AUX tigervnc-1.9.0-055_xstartup.patch 1188 BLAKE2B 99f9371fffd6fdddef86b821152833ea7b24b9d121a51e85e04f1b25411a14f629513ed211b1c13f38f60dc48708db40891f1c36eea6b24e7b239f1e480540fe SHA512 b16cbd2360c6eba6210362d138ff5406f472bd4d81277def69460b846169f49cb3f98d29193c4fbc89d7ab06fb04052c2b94f7ceab6003f2b9b17c5b6c51151c
AUX tigervnc.confd 346 BLAKE2B b21fe4537e186cd4de89f54b42006f0adbe4d6968c87dcb81981b02af27eec5ce06ad3aa76d9a747aeda481a5e422dfc8a122bc266660a240833863043cf81b0 SHA512 204ab170de8b76d72d6fd2c3fcfab19cb2750eca231956f53cdfc81270baaef9ae31b08ce53b103a737045ccca8ce0b7f9649fb7cbd582ee0acff437ff5c85b4
@@ -6,8 +7,13 @@ AUX tigervnc.initd 1974 BLAKE2B bb909f75ecbb7f33db4a0e3a7a1ee59bf9c60d5cbef4d432
AUX xserver120-drmfourcc-header.patch 1300 BLAKE2B d1be2072020a4eff663e56e1210b8ffadacd7c394f0bd5ac82a0d5b6a023c020a5125112807762b5260f07180f591009bd22eeb6d9a1324bae64caca7dd6aaba SHA512 aa980e28568df01f4589c258e293df1499c8d7d8d2e37a0bb52c240efb0fcb45f862f382633c389ba60283b6776e33e642acf3544bb89832bd2980bb80908e30
AUX xserver120.patch 3699 BLAKE2B f85933c025dc0347040261710e820232fbb21a572cf311bf8b37e8e1873046919fbecf1023f0178793e939ba33e834b55c6e8277f88bd2b145716badc8b4a5c4 SHA512 bf69a4b65742c5f2351b7d0f0b7ad44f44050dd8f54972d9545ea873f27f8fe88314b016b07746b31ac75bde6648b249f523a1f3d9948a9cb26001d6096d4f3d
DIST tigervnc-1.11.0.tar.gz 1346992 BLAKE2B 4935f78154ea1567d58f542962f1a87688cd195e9d1aff8295e99aedc91a87cea7b686e9ef34e68f4abb1e3ce7a93122baff1d6f3564e4cc60b967a7bca6f8ac SHA512 262676f065de6dfb72b1482c0ef1e6d8b764f53360ae6114debbe0986eede45d27e283e1452a72cb9b7540657ab347fd36df5b30b72d6db4a0f8cbea5b591025
+DIST tigervnc-1.12.0-xserver-21.patch 3642 BLAKE2B 690860c51d9d2e4606b16318237f86e5a042410dd5778e3d99a01df3fedd7f1993b4fc1eaeb9d193ef9e54d5b25b1d99bfb0bedc8cfb6673983625d9b45c2f92 SHA512 8e9a667557d22e908b1f4e58017f822e98bc608d1e27a09e6b8cfb3b01fe0c5cf9bf484fa634e4109eb7a32234df67fcfdeaca92d4ff982de0e83778c359034d
+DIST tigervnc-1.12.0.tar.gz 1561898 BLAKE2B 891934e48e3c4f2c36c280ad1562874d3c22ca3118e8eda2f68f9ad7cca978c76b8825100f540774b7a6553e981bd9264e0f717c8313585553741d31706cafad SHA512 a16b15e9cda552a49a3934e4174e49d186d06494d90d11582599ab82559014332662aed7760619a6dfb32a8c95f7d63c68ac7d632c29dd662a6b713f036672bb
DIST tigervnc-1.9.0.tar.gz 1506520 BLAKE2B 292c2e5fb9ffe2573e216257e889d259abfdca5964559492c318e24ea00563211e7477a4f1b2b09d0e962343d4aeb2c12dcfdd6857a3282882ee9f91fdf8103a SHA512 333910f567e6b5e4a5a22d898b2d4c3f4b834cb4cc8fc13ff55d31401894c0d5122a127692ec5eb51e412c945ff3ea5b8146f9ab22cbe1e47541e09239ec8c9d
DIST xorg-server-1.20.0.tar.bz2 6096838 BLAKE2B 34ee6d6dbbde54d54e082a0791e85ad52d728e239a7d8fadb75ebcbdbaab8752b90ca6d075f096d971db7ec68ce4ecac5c70fcf536ce23c20b8dce8f32e2c046 SHA512 1489e8511c9da682ef0460182dfeeddd241c72d4ef4d206d9706f1e39572c09953df851fab18cefb65a1ee4c6710c6ba13c63c9c9fc0bc1b5f12c50780412cde
+DIST xorg-server-21.1.1.tar.xz 4958508 BLAKE2B fadac208773700b91003ef18d46e6f2c6b501e59b7491c943f406641e9ff3837a8126034c023e9b6d2d4131ee438c1ef94fa458af1828d4be325519b47069a79 SHA512 8608ed9c1537c95e8a3adea5e3e372a3c5eb841f8e27c84283093f22fb1909e16a800006510da684b13f8f237f33b8a4be3e2537f5f9ab9af4c5ad12770eef0d
EBUILD tigervnc-1.11.0-r4.ebuild 4203 BLAKE2B 6e0640b1a200348f3301485410bfb0c85928efa2729d40a76de2be27e5c7d14115fc775528dd0482dd8fb2d7e16eea4d30c6f5f6b5e09c11e655bea8791f76f8 SHA512 7f91cbac0fecc548d7067c54530de96939d081f7297478cad7f006e72648f2dab2156151250dfa5324fcae50226b1a51300c259564830f84e8dd67325db71748
+EBUILD tigervnc-1.12.0-r1.ebuild 4351 BLAKE2B 94a56781ab0d53c915beb70e2838c1252850e6ddb6b26bd90fe9cf75da6c833d80151a50606a3e427133e371cbebc28c06a38f2a547aff3819a9bd3b26bbcf79 SHA512 26e47d615a53ac060893a62b8410bfe81c4d3321d65a810d956f7f0d06091f90eafef465825c879a166556e3f5495fa39554b556225e4cd644468412632bf203
EBUILD tigervnc-1.9.0-r2.ebuild 4274 BLAKE2B 976aaba3766e4bbec266086c4e7d6b1e197a810bea4e2e0391d986162aeec60373a7358ec2d951f87aab83ecf6a0b4ba4fcc65a92ace997437e47b5fc015d75c SHA512 bc988f43bf23dde99a675f4510946731a5a896a32a043d08a755fd9a6dc94abc3c347abf496066edd2989bf150f5cd995cb2582354b63e885ed9e6d3fe98c5bf
+EBUILD tigervnc-9999.ebuild 4124 BLAKE2B b42f5598fb104540af2635ef7047bc165b6f03eeac365d40e592717edc0bed4ea8e085f675ea6049bc6660e0e23fdcf8b8a66a6cfb55fe6d34489f11bf36a64b SHA512 1201929cb06af2cdc4eef70b4ac4b6b483c566c795a370b365f81ff03af02979f4993fa17ab7e10d11f6e0a18fb13115aaf617fe8238b1ce5959658fb0e03361
MISC metadata.xml 471 BLAKE2B 450ab613da6c09763bd4d8ccd873b0c808617e5f9c4a95ecbba0bde24601ffc877db8b81a4290cb7574589329d654ea05eecf77195ac481c209000b7ec314773 SHA512 f6811c2155dc2079293bd335d9c6182a2ebe1853ff666f2c28dfba1141cf4d92e845ee8a99da9799aa08fd8f752e9d1d0fd0de8effac1fda9b19c8e464ee2435
diff --git a/net-misc/tigervnc/files/tigervnc-1.12.0-xorg-1.21.patch b/net-misc/tigervnc/files/tigervnc-1.12.0-xorg-1.21.patch
new file mode 100644
index 000000000000..c3e003d328a6
--- /dev/null
+++ b/net-misc/tigervnc/files/tigervnc-1.12.0-xorg-1.21.patch
@@ -0,0 +1,55 @@
+https://github.com/TigerVNC/tigervnc/commit/736b50d04e1ba965696cd15d456dc2b7fc123150.patch
+https://github.com/TigerVNC/tigervnc/commit/f2577107f7f55382c524d8c738a777e5cdd80f60.patch
+
+From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
+Date: Wed, 24 Nov 2021 21:09:36 +0100
+Subject: [PATCH] xorg-version.h: Increase supported Xorg version to 1.21
+
+--- a/unix/xserver/hw/vnc/xorg-version.h
++++ b/unix/xserver/hw/vnc/xorg-version.h
+@@ -33,8 +33,8 @@
+ #error "X.Org older than 1.16 is not supported"
+ #endif
+
+-#if XORG_AT_LEAST(1, 21, 0)
+-#error "X.Org newer than 1.20 is not supported"
++#if XORG_AT_LEAST(1, 22, 0)
++#error "X.Org newer than 1.21 is not supported"
+ #endif
+
+ #endif
+
+From: Joakim Tjernlund <joakim.tjernlund@infinera.com>
+Date: Wed, 24 Nov 2021 21:10:56 +0100
+Subject: [PATCH] xvnc: adapt for 1.21
+
+VENDOR_STRING is gone as is DEFAULT_LOG_VERBOSITY
+site.h has been removed and is not needed.
+--- a/unix/xserver/hw/vnc/xvnc.c
++++ b/unix/xserver/hw/vnc/xvnc.c
+@@ -69,7 +69,6 @@ extern char buildtime[];
+ #undef VENDOR_RELEASE
+ #undef VENDOR_STRING
+ #include "version-config.h"
+-#include "site.h"
+
+ #define XVNCVERSION "TigerVNC 1.12.80"
+ #define XVNCCOPYRIGHT ("Copyright (C) 1999-2021 TigerVNC Team and many others (see README.rst)\n" \
+@@ -111,14 +110,13 @@ static Bool Render = TRUE;
+ static Bool displaySpecified = FALSE;
+ static char displayNumStr[16];
+
+-static int vncVerbose = DEFAULT_LOG_VERBOSITY;
++static int vncVerbose = 0;
+
+ static void
+ vncPrintBanner(void)
+ {
+ ErrorF("\nXvnc %s - built %s\n%s", XVNCVERSION, buildtime, XVNCCOPYRIGHT);
+- ErrorF("Underlying X server release %d, %s\n\n", VENDOR_RELEASE,
+- VENDOR_STRING);
++ ErrorF("Underlying X server release %d\n\n", VENDOR_RELEASE);
+ }
+
+ static void
+
diff --git a/net-misc/tigervnc/tigervnc-1.12.0-r1.ebuild b/net-misc/tigervnc/tigervnc-1.12.0-r1.ebuild
new file mode 100644
index 000000000000..a00c4d13860f
--- /dev/null
+++ b/net-misc/tigervnc/tigervnc-1.12.0-r1.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_IN_SOURCE_BUILD=1
+inherit autotools cmake flag-o-matic java-pkg-opt-2 systemd xdg
+
+XSERVER_VERSION="21.1.1"
+
+DESCRIPTION="Remote desktop viewer display system"
+HOMEPAGE="http://www.tigervnc.org"
+SRC_URI="https://github.com/TigerVNC/tigervnc/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ server? (
+ ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${XSERVER_VERSION}.tar.xz
+ https://github.com/TigerVNC/tigervnc/commit/0c5a2b2e7759c2829c07186cfce4d24aa9b5274e.patch -> ${P}-xserver-21.patch
+ )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="dri3 +drm gnutls java nls +opengl server xinerama +xorgmodule"
+
+CDEPEND="
+ virtual/jpeg:0
+ sys-libs/zlib:=
+ >=x11-libs/fltk-1.3.1
+ sys-libs/pam
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/pixman
+ gnutls? ( net-libs/gnutls:= )
+ nls? ( virtual/libiconv )
+ server? (
+ x11-libs/libXau
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXfont2
+ x11-libs/libXtst
+ >=x11-libs/pixman-0.27.2
+ >=x11-apps/xauth-1.0.3
+ x11-apps/xsetroot
+ >=x11-misc/xkeyboard-config-2.4.1-r3
+ xorgmodule? ( =x11-base/xorg-server-${XSERVER_VERSION%.*}* )
+ drm? ( x11-libs/libdrm )
+ dev-libs/openssl:0=
+ )
+ xinerama? ( x11-libs/libXinerama )
+ "
+
+RDEPEND="${CDEPEND}
+ !net-misc/tightvnc
+ !net-misc/vnc
+ !net-misc/xf4vnc
+ java? ( virtual/jre:1.8 )"
+
+DEPEND="${CDEPEND}
+ nls? ( sys-devel/gettext )
+ java? ( virtual/jdk:1.8 )
+ x11-base/xorg-proto
+ media-libs/fontconfig
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXcursor
+ x11-libs/libXfixes
+ x11-libs/libXft
+ x11-libs/libXi
+ server? (
+ dev-libs/libbsd
+ x11-libs/libxkbfile
+ x11-libs/libxshmfence
+ virtual/pkgconfig
+ media-fonts/font-util
+ x11-misc/util-macros
+ >=x11-libs/xtrans-1.3.3
+ opengl? ( >=media-libs/mesa-10.3.4-r1 )
+ )"
+
+PATCHES=(
+ # Restore Java viewer
+ "${FILESDIR}"/${PN}-1.11.0-install-java-viewer.patch
+)
+
+src_prepare() {
+ if use server; then
+ cp -r "${WORKDIR}"/xorg-server-${XSERVER_VERSION}/. unix/xserver || die
+ eapply "${FILESDIR}"/${P}-xorg-1.21.patch
+ eapply "${DISTDIR}"/${P}-xserver-21.patch
+ fi
+
+ cmake_src_prepare
+
+ if use server; then
+ cd unix/xserver || die
+ eapply ../xserver${XSERVER_VERSION}.patch
+ eautoreconf
+ sed -i 's:\(present.h\):../present/\1:' os/utils.c || die
+ sed -i '/strcmp.*-fakescreenfps/,/^ \}/d' os/utils.c || die
+ fi
+}
+
+src_configure() {
+ if use arm || use hppa; then
+ append-flags "-fPIC"
+ fi
+
+ local mycmakeargs=(
+ -DENABLE_GNUTLS=$(usex gnutls)
+ -DENABLE_NLS=$(usex nls)
+ -DBUILD_JAVA=$(usex java)
+ )
+
+ cmake_src_configure
+
+ if use server; then
+ cd unix/xserver || die
+ econf \
+ $(use_enable opengl glx) \
+ $(use_enable drm libdrm) \
+ --disable-config-hal \
+ --disable-config-udev \
+ --disable-devel-docs \
+ --disable-dri \
+ $(use_enable dri3) \
+ --disable-glamor \
+ --disable-kdrive \
+ --disable-libunwind \
+ --disable-linux-acpi \
+ --disable-record \
+ --disable-selective-werror \
+ --disable-static \
+ --disable-unit-tests \
+ --disable-xephyr \
+ $(use_enable xinerama) \
+ --disable-xnest \
+ --disable-xorg \
+ --disable-xvfb \
+ --disable-xwin \
+ --enable-dri2 \
+ --with-pic \
+ --without-dtrace \
+ --disable-present \
+ --with-sha1=libcrypto
+ fi
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use server; then
+ # deps of the vnc module and the module itself
+ local d subdirs=(
+ fb xfixes Xext dbe $(usex opengl glx "") $(usev dri3) randr render
+ damageext miext Xi xkb composite dix mi os hw/vnc
+ )
+ for d in "${subdirs[@]}"; do
+ emake -C unix/xserver/"${d}"
+ done
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ if use server; then
+ emake -C unix/xserver/hw/vnc DESTDIR="${D}" install
+ if ! use xorgmodule; then
+ rm -rv "${ED}"/usr/$(get_libdir)/xorg || die
+ else
+ rm -v "${ED}"/usr/$(get_libdir)/xorg/modules/extensions/libvnc.la || die
+ fi
+
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ systemd_douserunit unix/vncserver/vncserver@.service
+ else
+ local f
+ for f in x0vncserver vncconfig; do
+ rm "${ED}"/usr/bin/${f} || die
+ rm "${ED}"/usr/share/man/man1/${f}.1 || die
+ done
+ rm -r "${ED}"/usr/{sbin,libexec} || die
+ rm -r "${ED}"/usr/share/man/man8 || die
+ fi
+}
diff --git a/net-misc/tigervnc/tigervnc-9999.ebuild b/net-misc/tigervnc/tigervnc-9999.ebuild
new file mode 100644
index 000000000000..8b91a1a47c46
--- /dev/null
+++ b/net-misc/tigervnc/tigervnc-9999.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CMAKE_IN_SOURCE_BUILD=1
+
+inherit autotools cmake flag-o-matic git-r3 systemd xdg
+
+XSERVER_VERSION="21.1.1"
+
+DESCRIPTION="Remote desktop viewer display system"
+HOMEPAGE="http://www.tigervnc.org"
+SRC_URI="server? ( ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${XSERVER_VERSION}.tar.xz )"
+EGIT_REPO_URI="https://github.com/TigerVNC/tigervnc/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="dri3 +drm gnutls nls +opengl server xinerama +xorgmodule"
+
+CDEPEND="
+ virtual/jpeg:0
+ sys-libs/zlib:=
+ >=x11-libs/fltk-1.3.1
+ sys-libs/pam
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrender
+ x11-libs/libxcvt
+ x11-libs/pixman
+ gnutls? ( net-libs/gnutls:= )
+ nls? ( virtual/libiconv )
+ server? (
+ x11-libs/libXau
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXfont2
+ x11-libs/libXtst
+ >=x11-libs/pixman-0.27.2
+ >=x11-apps/xauth-1.0.3
+ x11-apps/xsetroot
+ >=x11-misc/xkeyboard-config-2.4.1-r3
+ xorgmodule? ( =x11-base/xorg-server-${XSERVER_VERSION%.*}* )
+ drm? ( x11-libs/libdrm )
+ dev-libs/openssl:0=
+ )
+ xinerama? ( x11-libs/libXinerama )
+ "
+
+RDEPEND="${CDEPEND}
+ !net-misc/tightvnc
+ !net-misc/vnc
+ !net-misc/xf4vnc"
+
+DEPEND="${CDEPEND}
+ nls? ( sys-devel/gettext )
+ x11-base/xorg-proto
+ media-libs/fontconfig
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXcursor
+ x11-libs/libXfixes
+ x11-libs/libXft
+ x11-libs/libXi
+ server? (
+ dev-libs/libbsd
+ x11-libs/libxkbfile
+ x11-libs/libxshmfence
+ virtual/pkgconfig
+ media-fonts/font-util
+ x11-misc/util-macros
+ >=x11-libs/xtrans-1.3.3
+ opengl? ( >=media-libs/mesa-10.3.4-r1 )
+ )"
+
+src_unpack() {
+ git-r3_src_unpack
+ unpack xorg-server-${XSERVER_VERSION}.tar.xz
+}
+
+src_prepare() {
+ if use server; then
+ cp -r "${WORKDIR}"/xorg-server-${XSERVER_VERSION}/. unix/xserver || die
+ fi
+
+ cmake_src_prepare
+
+ if use server; then
+ cd unix/xserver || die
+ eapply ../xserver${XSERVER_VERSION}.patch
+ eautoreconf
+ sed -i 's:\(present.h\):../present/\1:' os/utils.c || die
+ sed -i '/strcmp.*-fakescreenfps/,/^ \}/d' os/utils.c || die
+ fi
+ cd "${WORKDIR}" && sed -i 's:\(drm_fourcc.h\):libdrm/\1:' $(grep drm_fourcc.h -rl .) || die
+}
+
+src_configure() {
+ if use arm || use hppa; then
+ append-flags "-fPIC"
+ fi
+
+ local mycmakeargs=(
+ -DENABLE_GNUTLS=$(usex gnutls)
+ -DENABLE_NLS=$(usex nls)
+ -DBUILD_JAVA=no
+ )
+
+ cmake_src_configure
+
+ if use server; then
+ cd unix/xserver || die
+ econf \
+ $(use_enable opengl glx) \
+ $(use_enable drm libdrm) \
+ --disable-config-hal \
+ --disable-config-udev \
+ --disable-devel-docs \
+ --disable-dmx \
+ --disable-dri \
+ $(use_enable dri3) \
+ --disable-glamor \
+ --disable-kdrive \
+ --disable-libunwind \
+ --disable-linux-acpi \
+ --disable-record \
+ --disable-selective-werror \
+ --disable-static \
+ --disable-unit-tests \
+ --disable-xephyr \
+ $(use_enable xinerama) \
+ --disable-xnest \
+ --disable-xorg \
+ --disable-xvfb \
+ --disable-xwin \
+ --disable-xwayland \
+ --enable-dri2 \
+ --with-pic \
+ --without-dtrace \
+ --disable-present \
+ --with-sha1=libcrypto
+ fi
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use server; then
+ # deps of the vnc module and the module itself
+ local d subdirs=(
+ fb xfixes Xext dbe $(usex opengl glx "") $(usev dri3) randr render
+ damageext miext Xi xkb composite dix mi os hw/vnc
+ )
+ for d in "${subdirs[@]}"; do
+ emake -C unix/xserver/"${d}"
+ done
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ if use server; then
+ emake -C unix/xserver/hw/vnc DESTDIR="${D}" install
+ if ! use xorgmodule; then
+ rm -rv "${ED}"/usr/$(get_libdir)/xorg || die
+ else
+ rm -v "${ED}"/usr/$(get_libdir)/xorg/modules/extensions/libvnc.la || die
+ fi
+
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ systemd_douserunit unix/vncserver/vncserver@.service
+ else
+ local f
+ for f in x0vncserver vncconfig; do
+ rm "${ED}"/usr/bin/${f} || die
+ rm "${ED}"/usr/share/man/man1/${f}.1 || die
+ done
+ rm -r "${ED}"/usr/{sbin,libexec} || die
+ rm -r "${ED}"/usr/share/man/man8 || die
+ fi
+}