summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-libs/libvncserver/files/libvncserver-0.9.12-libgcrypt.patch40
-rw-r--r--net-libs/libvncserver/libvncserver-0.9.12-r1.ebuild16
2 files changed, 47 insertions, 9 deletions
diff --git a/net-libs/libvncserver/files/libvncserver-0.9.12-libgcrypt.patch b/net-libs/libvncserver/files/libvncserver-0.9.12-libgcrypt.patch
new file mode 100644
index 000000000000..a0313562ff1b
--- /dev/null
+++ b/net-libs/libvncserver/files/libvncserver-0.9.12-libgcrypt.patch
@@ -0,0 +1,40 @@
+From 57be637006a95091119f7a49b4232e461116520f Mon Sep 17 00:00:00 2001
+From: Alexander Tsoy <alexander@tsoy.me>
+Date: Sat, 25 May 2019 02:02:47 +0300
+Subject: [PATCH] crypto: rfbcrypto_gnutls is actually libgcrypt-based
+
+Long time ago gnutls used libgcrypt as a cryptographic backend. Perhaps
+that was what caused the confusion.
+---
+ CMakeLists.txt | 9 ++++-----
+ common/{rfbcrypto_gnutls.c => rfbcrypto_libgcrypt.c} | 0
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+ rename common/{rfbcrypto_gnutls.c => rfbcrypto_libgcrypt.c} (100%)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b9ca4ba..0d3b4dc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -226,11 +226,10 @@ if(SYSTEMD_FOUND)
+ endif(SYSTEMD_FOUND)
+
+ if(LIBVNCSERVER_HAVE_SYS_UIO_H)
+- if(GNUTLS_FOUND)
+- message(STATUS "Building crypto with GnuTLS")
+- set(CRYPTO_LIBRARIES ${GNUTLS_LIBRARIES})
+- set(CRYPTO_SOURCES ${COMMON_DIR}/rfbcrypto_gnutls)
+- include_directories(${GNUTLS_INCLUDE_DIR})
++ if(WITH_GCRYPT AND LIBGCRYPT_LIBRARIES)
++ message(STATUS "Building crypto with Libgcrypt")
++ set(CRYPTO_LIBRARIES ${LIBGCRYPT_LIBRARIES})
++ set(CRYPTO_SOURCES ${COMMON_DIR}/rfbcrypto_libgcrypt)
+ elseif(OPENSSL_FOUND)
+ message(STATUS "Building crypto with OpenSSL")
+ set(CRYPTO_LIBRARIES ${OPENSSL_LIBRARIES})
+diff --git a/common/rfbcrypto_gnutls.c b/common/rfbcrypto_libgcrypt.c
+similarity index 100%
+rename from common/rfbcrypto_gnutls.c
+rename to common/rfbcrypto_libgcrypt.c
+--
+2.21.0
+
diff --git a/net-libs/libvncserver/libvncserver-0.9.12-r1.ebuild b/net-libs/libvncserver/libvncserver-0.9.12-r1.ebuild
index c8c0be485e31..8f97ef15b984 100644
--- a/net-libs/libvncserver/libvncserver-0.9.12-r1.ebuild
+++ b/net-libs/libvncserver/libvncserver-0.9.12-r1.ebuild
@@ -17,19 +17,16 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~spa
IUSE="+24bpp gcrypt gnutls ipv6 +jpeg libressl lzo +png sasl ssl systemd +threads +zlib"
# https://bugs.gentoo.org/435326
# https://bugs.gentoo.org/550916
-REQUIRED_USE="!gnutls? ( ssl? ( threads ) ) png? ( zlib )"
+REQUIRED_USE="ssl? ( !gnutls? ( threads ) ) png? ( zlib )"
DEPEND="
gcrypt? ( >=dev-libs/libgcrypt-1.5.3:0= )
- gnutls? (
- >=net-libs/gnutls-2.12.23-r6:0=
- >=dev-libs/libgcrypt-1.5.3:0=
- )
- !gnutls? (
- ssl? (
+ ssl? (
+ !gnutls? (
!libressl? ( >=dev-libs/openssl-1.0.2:0= )
libressl? ( >=dev-libs/libressl-2.7.0:0= )
)
+ gnutls? ( >=net-libs/gnutls-2.12.23-r6:0= )
)
jpeg? ( >=virtual/jpeg-0-r2:0 )
lzo? ( dev-libs/lzo )
@@ -45,6 +42,7 @@ DOCS=( AUTHORS ChangeLog NEWS README.md TODO )
PATCHES=(
"${FILESDIR}"/${P}-cmake-libdir.patch
+ "${FILESDIR}"/${P}-libgcrypt.patch
)
src_configure() {
@@ -54,9 +52,9 @@ src_configure() {
-DWITH_JPEG=$(usex jpeg ON OFF)
-DWITH_PNG=$(usex png ON OFF)
-DWITH_THREADS=$(usex threads ON OFF)
- -DWITH_GNUTLS=$(usex gnutls ON OFF)
+ -DWITH_GNUTLS=$(usex gnutls $(usex ssl ON OFF) OFF)
-DWITH_OPENSSL=$(usex gnutls OFF $(usex ssl ON OFF))
- -DWITH_GCRYPT=$(usex gnutls ON $(usex gcrypt ON OFF))
+ -DWITH_GCRYPT=$(usex gcrypt ON OFF)
-DWITH_SYSTEMD=$(usex systemd ON OFF)
-DWITH_FFMPEG=OFF
-DWITH_24BPP=$(usex 24bpp ON OFF)