diff --git a/package/libvncserver/0001-CMakeLists.txt-fix-build-without-C.patch b/package/libvncserver/0001-CMakeLists.txt-fix-build-without-C.patch new file mode 100644 index 0000000..591c97f --- /dev/null +++ b/package/libvncserver/0001-CMakeLists.txt-fix-build-without-C.patch @@ -0,0 +1,33 @@ +From 868f0a9fa60bb45ee6cf762f323c5b3964b2ee69 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 23 Jun 2019 10:18:59 +0200 +Subject: [PATCH] CMakeLists.txt: fix build without C++ + +Specify that libvncserver is a C project file otherwise build will fail +if no C++ compiler is found by cmake + +Fixes: + - http://autobuild.buildroot.org/results/16aaa4e86a2dbf1acf95f10d5131b0f7b8a3d61a + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/LibVNC/libvncserver/pull/317] +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0d3b4dc..ad609ae 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,7 +1,7 @@ + cmake_minimum_required(VERSION 3.4) + cmake_policy(SET CMP0037 NEW) + +-project(LibVNCServer) ++project(LibVNCServer C) + include(CheckFunctionExists) + include(CheckSymbolExists) + include(CheckIncludeFile) +-- +2.20.1 + diff --git a/package/libvncserver/Config.in b/package/libvncserver/Config.in index 460aa78..2d5bf8a 100644 --- a/package/libvncserver/Config.in +++ b/package/libvncserver/Config.in @@ -3,10 +3,12 @@ config BR2_PACKAGE_LIBVNCSERVER depends on BR2_USE_MMU # VNCommand.c uses fork() # binutils issue (bad expression) depends on !BR2_nios2 + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LZO help libvncserver is a VNC server/client library. - http://libvncserver.sourceforge.net/ + https://libvnc.github.io/ if BR2_PACKAGE_LIBVNCSERVER @@ -21,3 +23,8 @@ config BR2_PACKAGE_LIBVNCSERVER_TIGHTPNG http://wiki.qemu.org/VNC_Tight_PNG endif + +comment "libvncserver needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on !BR2_nios + depends on BR2_STATIC_LIBS diff --git a/package/libvncserver/libvncserver.hash b/package/libvncserver/libvncserver.hash index 8d994e4..d98d78d 100644 --- a/package/libvncserver/libvncserver.hash +++ b/package/libvncserver/libvncserver.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 193d630372722a532136fd25c5326b2ca1a636cbb8bf9bb115ef869c804d2894 LibVNCServer-0.9.11.tar.gz +sha256 33cbbb4e15bb390f723c311b323cef4a43bcf781984f92d92adda3243a116136 LibVNCServer-0.9.12.tar.gz +sha256 4d23c8c814e5baf007d854f01d8502e77dc56a41144934e003fb32c4e052d20f COPYING diff --git a/package/libvncserver/libvncserver.mk b/package/libvncserver/libvncserver.mk index d3f0657..b024c31 100644 --- a/package/libvncserver/libvncserver.mk +++ b/package/libvncserver/libvncserver.mk @@ -4,66 +4,74 @@ # ################################################################################ -LIBVNCSERVER_VERSION = 0.9.11 +LIBVNCSERVER_VERSION = 0.9.12 LIBVNCSERVER_SOURCE = LibVNCServer-$(LIBVNCSERVER_VERSION).tar.gz LIBVNCSERVER_SITE = https://github.com/LibVNC/libvncserver/archive -LIBVNCSERVER_LICENSE = GPLv2+ +LIBVNCSERVER_LICENSE = GPL-2.0+ LIBVNCSERVER_LICENSE_FILES = COPYING LIBVNCSERVER_INSTALL_STAGING = YES -LIBVNCSERVER_CONFIG_SCRIPTS = libvncserver-config -LIBVNCSERVER_DEPENDENCIES = host-pkgconf - -# Upstream decided to remove generated autotools files from the -# tarball, so we need to generate them. -LIBVNCSERVER_AUTORECONF = YES - -# libvncserver does not get along with newer libva versions -# https://github.com/LibVNC/libvncserver/issues/11 -LIBVNCSERVER_CONF_OPTS += --without-libva +LIBVNCSERVER_DEPENDENCIES = host-pkgconf lzo +LIBVNCSERVER_CONF_OPTS = -DWITH_LZO=ON # only used for examples -LIBVNCSERVER_CONF_OPTS += --with-sdl-config=/bin/false +LIBVNCSERVER_CONF_OPTS += \ + -DWITH_FFMPEG=OFF \ + -DWITH_SDL=OFF ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y) -LIBVNCSERVER_CONF_OPTS += --without-pthread +LIBVNCSERVER_CONF_OPTS += -DWITH_THREADS=ON +else +LIBVNCSERVER_CONF_OPTS += -DWITH_THREADS=OFF endif # openssl supports needs NPTL thread support ifeq ($(BR2_PACKAGE_OPENSSL)$(BR2_TOOLCHAIN_HAS_THREADS_NPTL),yy) +LIBVNCSERVER_CONF_OPTS += -DWITH_OPENSSL=ON LIBVNCSERVER_DEPENDENCIES += openssl else -LIBVNCSERVER_CONF_OPTS += --without-crypto --without-ssl +LIBVNCSERVER_CONF_OPTS += -DWITH_OPENSSL=OFF endif ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) -LIBVNCSERVER_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +LIBVNCSERVER_CONF_OPTS += -DWITH_GCRYPT=ON LIBVNCSERVER_DEPENDENCIES += libgcrypt else -LIBVNCSERVER_CONF_OPTS += --without-gcrypt +LIBVNCSERVER_CONF_OPTS += -DWITH_GCRYPT=OFF endif ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy) -LIBVNCSERVER_DEPENDENCIES += gnutls host-pkgconf +LIBVNCSERVER_CONF_OPTS += -DWITH_GNUTLS=ON +LIBVNCSERVER_DEPENDENCIES += gnutls else -LIBVNCSERVER_CONF_OPTS += --without-gnutls +LIBVNCSERVER_CONF_OPTS += -DWITH_GNUTLS=OFF endif ifeq ($(BR2_PACKAGE_JPEG),y) +LIBVNCSERVER_CONF_OPTS += -DWITH_JPEG=ON LIBVNCSERVER_DEPENDENCIES += jpeg else -LIBVNCSERVER_CONF_OPTS += --without-jpeg +LIBVNCSERVER_CONF_OPTS += -DWITH_JPEG=OFF endif ifeq ($(BR2_PACKAGE_LIBPNG),y) +LIBVNCSERVER_CONF_OPTS += -DWITH_PNG=ON LIBVNCSERVER_DEPENDENCIES += libpng else -LIBVNCSERVER_CONF_OPTS += --without-png +LIBVNCSERVER_CONF_OPTS += -DWITH_PNG=OFF +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +LIBVNCSERVER_CONF_OPTS += -DWITH_SYSTEMD=ON +LIBVNCSERVER_DEPENDENCIES += systemd +else +LIBVNCSERVER_CONF_OPTS += -DWITH_SYSTEMD=OFF endif ifeq ($(BR2_PACKAGE_ZLIB),y) +LIBVNCSERVER_CONF_OPTS += -DWITH_ZLIB=ON LIBVNCSERVER_DEPENDENCIES += zlib else -LIBVNCSERVER_CONF_OPTS += --without-zlib +LIBVNCSERVER_CONF_OPTS += -DWITH_ZLIB=OFF endif -$(eval $(autotools-package)) +$(eval $(cmake-package))