commit:     c421fb9e8c2826b925b3adc0d17b6f70a23c809c
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 24 10:32:41 2019 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Feb 24 10:53:07 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c421fb9e

x11-misc/x11vnc: Fix dependencies and build issues

Closes: https://bugs.gentoo.org/675596
Closes: https://bugs.gentoo.org/648898
Closes: https://bugs.gentoo.org/611088
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 x11-misc/x11vnc/files/x11vnc-0.9.16-crypto.patch | 23 ++++++++
 x11-misc/x11vnc/metadata.xml                     |  6 ++
 x11-misc/x11vnc/x11vnc-0.9.16-r1.ebuild          | 75 ++++++++++++++++++++++++
 3 files changed, 104 insertions(+)

diff --git a/x11-misc/x11vnc/files/x11vnc-0.9.16-crypto.patch 
b/x11-misc/x11vnc/files/x11vnc-0.9.16-crypto.patch
new file mode 100644
index 00000000000..21872e73cb7
--- /dev/null
+++ b/x11-misc/x11vnc/files/x11vnc-0.9.16-crypto.patch
@@ -0,0 +1,23 @@
+From 3024af3685be9eb618352bd17ba37953d8076946 Mon Sep 17 00:00:00 2001
+From: Christian Beier <[email protected]>
+Date: Thu, 17 Jan 2019 14:05:53 +0100
+Subject: [PATCH] unixpw: don't try to use crypt() when it isn't available
+
+Closes #86
+---
+ src/unixpw.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/unixpw.c b/src/unixpw.c
+index 9a43cec..e2cb016 100644
+--- a/src/unixpw.c
++++ b/src/unixpw.c
+@@ -757,7 +757,7 @@ int unixpw_list_match(char *user) {
+ }
+ 
+ int crypt_verify(char *user, char *pass) {
+-#ifndef UNIXPW_CRYPT
++#if !defined UNIXPW_CRYPT || !defined HAVE_LIBCRYPT
+       return 0;
+ #else
+       struct passwd *pwd;

diff --git a/x11-misc/x11vnc/metadata.xml b/x11-misc/x11vnc/metadata.xml
index f25d54c1912..4ad5dbb6d54 100644
--- a/x11-misc/x11vnc/metadata.xml
+++ b/x11-misc/x11vnc/metadata.xml
@@ -7,6 +7,12 @@
                simple command-line server utility that allows a VNC viewer
                to connect to an actual X display.
        </longdescription>
+       <use>
+               <flag name="xdamage">Enable support for the Xdamage 
library</flag>
+               <flag name="xfixes">Enable support for the Xfixes library</flag>
+               <flag name="xrandr">Enable support for the X xrandr 
extension</flag>
+               <flag name="xtrap">Enable support for the XTrap library</flag>
+       </use>
        <upstream>
                <remote-id type="sourceforge">libvncserver</remote-id>
                <remote-id type="github">LibVNC/x11vnc</remote-id>

diff --git a/x11-misc/x11vnc/x11vnc-0.9.16-r1.ebuild 
b/x11-misc/x11vnc/x11vnc-0.9.16-r1.ebuild
new file mode 100644
index 00000000000..b34c657ccd3
--- /dev/null
+++ b/x11-misc/x11vnc/x11vnc-0.9.16-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools vcs-snapshot
+
+DESCRIPTION="A VNC server for real X displays"
+HOMEPAGE="https://libvnc.github.io/";
+SRC_URI="https://github.com/LibVNC/x11vnc/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh 
~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris 
~x86-solaris"
+IUSE="crypt fbcon libressl ssl +xcomposite +xdamage +xfixes xinerama +xrandr 
xtrap zeroconf"
+
+COMMON_DEPEND="
+       >=net-libs/libvncserver-0.9.8[ssl?]
+       x11-libs/libX11
+       x11-libs/libXcursor
+       x11-libs/libXext
+       >=x11-libs/libXtst-1.1.0
+       ssl? (
+               !libressl? ( dev-libs/openssl:0= )
+               libressl? ( dev-libs/libressl:= )
+       )
+       xcomposite? ( x11-libs/libXcomposite )
+       xdamage? ( x11-libs/libXdamage )
+       xfixes? ( x11-libs/libXfixes )
+       xinerama? ( x11-libs/libXinerama )
+       xrandr? ( x11-libs/libXrandr )
+       xtrap? ( x11-libs/libXTrap )
+       zeroconf? ( >=net-dns/avahi-0.6.4 )
+"
+DEPEND="${COMMON_DEPEND}
+       x11-base/xorg-proto
+       x11-libs/libXt
+"
+# https://bugzilla.redhat.com/show_bug.cgi?id=920554
+RDEPEND="dev-lang/tk:0"
+
+PATCHES=(
+       # https://github.com/LibVNC/x11vnc/issues/86
+       "${FILESDIR}"/${P}-crypto.patch
+)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       # --without-v4l because of missing video4linux 2.x support wrt #389079
+       econf \
+               --without-v4l \
+               --without-xkeyboard \
+               --without-fbpm \
+               --without-dpms \
+               $(use_with crypt) \
+               $(use_with fbcon fbdev) \
+               $(use_with ssl) \
+               $(use_with ssl crypto) \
+               $(use_with xcomposite) \
+               $(use_with xdamage) \
+               $(use_with xfixes) \
+               $(use_with xinerama) \
+               $(use_with xrandr) \
+               $(use_with xtrap) \
+               $(use_with zeroconf avahi)
+}
+
+src_install() {
+       default
+       newinitd "${FILESDIR}/x11vnc.init.d" x11vnc
+       newconfd "${FILESDIR}/x11vnc.conf.d" x11vnc
+}

Reply via email to