Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Jan 2018 19:57:37 +0000 (UTC)
From:      "Carlos J. Puga Medina" <cpm@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r457792 - in head/net/freerdp: . files
Message-ID:  <201801011957.w01JvbTU018206@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cpm
Date: Mon Jan  1 19:57:37 2018
New Revision: 457792
URL: https://svnweb.freebsd.org/changeset/ports/457792

Log:
  net/freerdp: enable Wayland client, wlfreerdp
  
  - Add WAYLAND support option and enabled it by default
  - Sort options helpers
  - Bump PORTREVISION
  
  PR:		223913
  Submitted by:	Greg V <greg@unrelenting.technology>
  Reviewed by:	cpm, kevans
  Approved by:	kevans (maintainer)

Added:
  head/net/freerdp/files/patch-uwac_libuwac_CMakeLists.txt   (contents, props changed)
  head/net/freerdp/files/patch-uwac_libuwac_uwac-os.c   (contents, props changed)
Modified:
  head/net/freerdp/Makefile
  head/net/freerdp/pkg-plist

Modified: head/net/freerdp/Makefile
==============================================================================
--- head/net/freerdp/Makefile	Mon Jan  1 19:06:34 2018	(r457791)
+++ head/net/freerdp/Makefile	Mon Jan  1 19:57:37 2018	(r457792)
@@ -3,7 +3,7 @@
 
 PORTNAME=	freerdp
 DISTVERSION=	2.0.0-rc0
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	net comms ipv6
 
 MAINTAINER=	kevans@FreeBSD.org
@@ -20,13 +20,13 @@ USES=		alias cmake:outsource compiler:c++11-lib cpe ge
 USE_LDCONFIG=	yes
 CPE_VENDOR=	freerdp_project
 
-CMAKE_ARGS+=	-DWITH_LIBSYSTEMD=OFF -DWITH_WAYLAND=OFF -DWITH_GSTREAMER_0_10=OFF ${CMAKE_ARGS_${ARCH}}
+CMAKE_ARGS+=	-DWITH_LIBSYSTEMD=OFF -DWITH_GSTREAMER_0_10=OFF ${CMAKE_ARGS_${ARCH}}
 
 CMAKE_ARGS_aarch64=	-DWITH_NEON=ON
 CFLAGS_aarch64=		-D__ARM_NEON__=__ARM_NEON # clang
 
-OPTIONS_DEFINE=		ALSA CUPS FFMPEG GSTREAMER PULSEAUDIO X11
-OPTIONS_DEFAULT=	CUPS GSTREAMER X11
+OPTIONS_DEFINE=		ALSA CUPS FFMPEG GSTREAMER PULSEAUDIO WAYLAND X11
+OPTIONS_DEFAULT=	CUPS GSTREAMER WAYLAND X11
 OPTIONS_SUB=		yes
 
 OPTIONS_DEFINE_armv6=	NEON
@@ -46,7 +46,7 @@ FFMPEG_LIB_DEPENDS=	libavcodec.so:multimedia/ffmpeg \
 FFMPEG_CMAKE_BOOL=	WITH_FFMPEG
 
 GSTREAMER_CMAKE_BOOL=	WITH_GSTREAMER_1_0
-GSTREAMER_USE=		gnome=glib20 gstreamer1=yes xorg=x11,xextproto,xext,xrandr
+GSTREAMER_USE=		gnome=glib20 gstreamer1=yes xorg=x11,xext,xextproto,xrandr
 GSTREAMER_LIB_DEPENDS=	libgstbase-1.0.so:multimedia/gstreamer1
 
 NEON_DESC=		Enable	Media Processing Engine instructions
@@ -60,11 +60,19 @@ PULSEAUDIO_CMAKE_BOOL=	WITH_PULSE
 
 SSE_CMAKE_BOOL=		WITH_SSE2
 
+WAYLAND_DESC=		Build FreeRDP Wayland client
+WAYLAND_BUILD_DEPENDS=	${LOCALBASE}/include/linux/input.h:multimedia/v4l_compat
+WAYLAND_LIB_DEPENDS=	libepoll-shim.so:devel/libepoll-shim \
+			libwayland-client.so:graphics/wayland \
+			libwayland-cursor.so:graphics/wayland \
+			libxkbcommon.so:x11/libxkbcommon
+WAYLAND_CMAKE_BOOL=	WITH_WAYLAND
+
 X11_DESC=		Build FreeRDP X11 client
 X11_BUILD_DEPENDS=	xmlto:textproc/xmlto
 X11_CMAKE_BOOL=		WITH_X11
 X11_CMAKE_OFF=		-DWITH_XKBFILE=OFF
-X11_USE=		xorg=x11,xkbfile,xcursor,xextproto,xv,xinerama,xext,xrandr,xi,xfixes,xrender
+X11_USE=		xorg=x11,xcursor,xext,xextproto,xfixes,xi,xinerama,xkbfile,xrandr,xrender,xv
 
 .include <bsd.port.pre.mk>
 

Added: head/net/freerdp/files/patch-uwac_libuwac_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/freerdp/files/patch-uwac_libuwac_CMakeLists.txt	Mon Jan  1 19:57:37 2018	(r457792)
@@ -0,0 +1,21 @@
+--- uwac/libuwac/CMakeLists.txt.orig	2017-11-27 16:59:34 UTC
++++ uwac/libuwac/CMakeLists.txt
+@@ -40,6 +40,9 @@ generate_protocol_file(xdg-shell)
+ generate_protocol_file(ivi-application)
+ generate_protocol_file(fullscreen-shell)
+ 
++find_path(EPOLLSHIM_INCLUDE_DIR NAMES sys/epoll.h sys/timerfd.h HINTS /usr/local/include/libepoll-shim)
++find_library(EPOLLSHIM_LIBS NAMES epoll-shim libepoll-shim HINTS /usr/local/lib)
++include_directories(${EPOLLSHIM_INCLUDE_DIR})
+ include_directories(${WAYLAND_INCLUDE_DIR})
+ include_directories(${XKBCOMMON_INCLUDE_DIR})
+ include_directories("${CMAKE_SOURCE_DIR}/uwac/include")
+@@ -69,7 +72,7 @@ if (WITH_LIBRARY_VERSIONING)
+ 	set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${UWAC_VERSION} SOVERSION ${UWAC_API_VERSION})
+ endif()
+ 
+-target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS} ${PRIVATE_KEYWORD} ${WAYLAND_LIBS} ${XKBCOMMON_LIBS} freerdp)
++target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS} ${PRIVATE_KEYWORD} ${WAYLAND_LIBS} ${XKBCOMMON_LIBS} ${EPOLLSHIM_LIBS} freerdp)
+ 
+ install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} EXPORT uwac)
+ 

Added: head/net/freerdp/files/patch-uwac_libuwac_uwac-os.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/freerdp/files/patch-uwac_libuwac_uwac-os.c	Mon Jan  1 19:57:37 2018	(r457792)
@@ -0,0 +1,29 @@
+--- uwac/libuwac/uwac-os.c.orig	2017-11-27 16:54:50 UTC
++++ uwac/libuwac/uwac-os.c
+@@ -31,6 +31,7 @@
+ 
+ #include <sys/types.h>
+ #include <sys/socket.h>
++#include <sys/mman.h>
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <errno.h>
+@@ -153,17 +154,7 @@ static int create_tmpfile_cloexec(char *tmpname)
+ {
+ 	int fd;
+ 
+-#ifdef HAVE_MKOSTEMP
+-	fd = mkostemp(tmpname, O_CLOEXEC);
+-	if (fd >= 0)
+-		unlink(tmpname);
+-#else
+-	fd = mkstemp(tmpname);
+-	if (fd >= 0) {
+-		fd = set_cloexec_or_close(fd);
+-		unlink(tmpname);
+-	}
+-#endif
++	fd = shm_open(SHM_ANON, O_CREAT | O_RDWR, 0600);
+ 
+ 	return fd;
+ }

Modified: head/net/freerdp/pkg-plist
==============================================================================
--- head/net/freerdp/pkg-plist	Mon Jan  1 19:06:34 2018	(r457791)
+++ head/net/freerdp/pkg-plist	Mon Jan  1 19:57:37 2018	(r457792)
@@ -1,5 +1,6 @@
 bin/winpr-hash
 bin/winpr-makecert
+%%WAYLAND%%bin/wlfreerdp
 %%X11%%bin/xfreerdp
 include/freerdp2/freerdp/addin.h
 include/freerdp2/freerdp/altsec.h
@@ -123,6 +124,8 @@ include/freerdp2/freerdp/utils/signal.h
 include/freerdp2/freerdp/utils/stopwatch.h
 include/freerdp2/freerdp/version.h
 include/freerdp2/freerdp/window.h
+%%WAYLAND%%include/uwac0/uwac/uwac-tools.h
+%%WAYLAND%%include/uwac0/uwac/uwac.h
 include/winpr2/winpr/asn1.h
 include/winpr2/winpr/bcrypt.h
 include/winpr2/winpr/bitstream.h
@@ -196,6 +199,9 @@ lib/libfreerdp-client2.so.2.0.0
 lib/libfreerdp2.so
 lib/libfreerdp2.so.2
 lib/libfreerdp2.so.2.0.0
+%%WAYLAND%%lib/libuwac0.so
+%%WAYLAND%%lib/libuwac0.so.0
+%%WAYLAND%%lib/libuwac0.so.0.0.1
 lib/libwinpr-tools2.so
 lib/libwinpr-tools2.so.2
 lib/libwinpr-tools2.so.2.0.0
@@ -204,6 +210,7 @@ lib/libwinpr2.so.2
 lib/libwinpr2.so.2.0.0
 libdata/pkgconfig/freerdp-client2.pc
 libdata/pkgconfig/freerdp2.pc
+%%WAYLAND%%libdata/pkgconfig/uwac0.pc
 libdata/pkgconfig/winpr-tools2.pc
 libdata/pkgconfig/winpr2.pc
 share/cmake/Modules/FreeRDP-Client2/FreeRDP-ClientConfig.cmake
@@ -214,11 +221,16 @@ share/cmake/Modules/FreeRDP2/FreeRDPConfig.cmake
 share/cmake/Modules/FreeRDP2/FreeRDPConfigVersion.cmake
 share/cmake/Modules/FreeRDP2/FreeRDPTargets-%%CMAKE_BUILD_TYPE%%.cmake
 share/cmake/Modules/FreeRDP2/FreeRDPTargets.cmake
+%%WAYLAND%%share/cmake/Modules/uwac0/uwac-%%CMAKE_BUILD_TYPE%%.cmake
+%%WAYLAND%%share/cmake/Modules/uwac0/uwac.cmake
+%%WAYLAND%%share/cmake/Modules/uwac0/uwacConfig.cmake
+%%WAYLAND%%share/cmake/Modules/uwac0/uwacConfigVersion.cmake
 share/cmake/Modules/WinPR2/WinPRConfig.cmake
 share/cmake/Modules/WinPR2/WinPRConfigVersion.cmake
 share/cmake/Modules/WinPR2/WinPRTargets-%%CMAKE_BUILD_TYPE%%.cmake
 share/cmake/Modules/WinPR2/WinPRTargets.cmake
 share/man/man1/winpr-hash.1
 share/man/man1/winpr-makecert.1
+%%WAYLAND%%share/man/man1/wlfreerdp.1
 %%X11%%share/man/man1/xfreerdp.1
 share/man/man7/wlog.7



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801011957.w01JvbTU018206>