Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Mar 2017 10:15:59 +0000 (UTC)
From:      Kurt Jaeger <pi@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r435325 - in head/net/xrdp-devel: . files
Message-ID:  <201703031015.v23AFxX2009381@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pi
Date: Fri Mar  3 10:15:59 2017
New Revision: 435325
URL: https://svnweb.freebsd.org/changeset/ports/435325

Log:
  net/xrdp-devel: update 0.7.0.b20130912 -> 0.9.1
  
  PR:		216420
  Changes:	https://github.com/neutrinolabs/xrdp/wiki/NEWS
  Submitted by:	Koichiro IWAO <meta+ports@vmeta.jp> (maintainer)

Added:
  head/net/xrdp-devel/files/patch-configure.ac   (contents, props changed)
  head/net/xrdp-devel/files/patch-sesman_sesman.ini   (contents, props changed)
  head/net/xrdp-devel/files/patch-xrdp_xrdp.ini   (contents, props changed)
  head/net/xrdp-devel/files/pkg-install.in   (contents, props changed)
Deleted:
  head/net/xrdp-devel/files/km-0411.ini
  head/net/xrdp-devel/files/km-e0010411.ini
  head/net/xrdp-devel/files/km-e0200411.ini
  head/net/xrdp-devel/files/km-e0210411.ini
  head/net/xrdp-devel/files/patch-common__os_calls.c
  head/net/xrdp-devel/files/patch-fix-autologin
  head/net/xrdp-devel/files/patch-instfiles__Makefile.am
  head/net/xrdp-devel/files/patch-sesman__Makefile.am
  head/net/xrdp-devel/files/patch-sesman__session.c
  head/net/xrdp-devel/files/patch-xrdp__Makefile.am
  head/net/xrdp-devel/files/xrdp.in
Modified:
  head/net/xrdp-devel/Makefile
  head/net/xrdp-devel/distinfo
  head/net/xrdp-devel/pkg-plist

Modified: head/net/xrdp-devel/Makefile
==============================================================================
--- head/net/xrdp-devel/Makefile	Fri Mar  3 09:08:51 2017	(r435324)
+++ head/net/xrdp-devel/Makefile	Fri Mar  3 10:15:59 2017	(r435325)
@@ -2,92 +2,105 @@
 # $FreeBSD$
 
 PORTNAME=	xrdp
-PORTVERSION=	0.7.0.b20130912
-PORTREVISION=	4
+PORTVERSION=	0.9.1
+DISTVERSIONPREFIX=	v
 PORTEPOCH=	1
 CATEGORIES=	net
 PKGNAMESUFFIX=	-devel
+DIST_SUBDIR?=	${PORTNAME}
 
 MAINTAINER=	meta+ports@vmeta.jp
 COMMENT=	Open source Remote Desktop Protocol (RDP) server
 
-LICENSE=	GPLv2
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+# pulseaudio's built source is required for audio redirection
+BUILD_DEPENDS=	${NONEXISTENT}:audio/pulseaudio:configure \
+		${LOCALBASE}/bin/nasm:devel/nasm
+RUN_DEPENDS=	${LOCALBASE}/lib/xorg/modules/libxorgxrdp.so:x11-drivers/xorgxrdp
 
 USES=		autoreconf:build jpeg libtool pkgconfig ssl
-USE_XORG=	x11 xfixes
+USE_XORG=	ice pixman sm x11 xfixes xrandr
 GNU_CONFIGURE=	yes
-USE_RC_SUBR=	xrdp
 USE_LDCONFIG=	${PREFIX}/lib/xrdp
 USE_GITHUB=	yes
 GH_ACCOUNT=	neutrinolabs
-GH_TAGNAME=	64e2291
+GH_PROJECT=	xrdp librfxcodec:librfxcodec libpainter:libpainter
+GH_TAGNAME=	v0.1.0:librfxcodec v0.1.0:libpainter
 
 CONFIGURE_ARGS=	--localstatedir=/var \
-		--enable-jpeg
-CPPFLAGS+=	-I${LOCALBASE}/include -I${OPENSSLINC}
-LIBS+=		-L${LOCALBASE}/lib -L${OPENSSLLIB}
+		--with-pkgconfigdir=${LOCALBASE}/libdata/pkgconfig \
+		--enable-jpeg --enable-pixman --enable-rfxcodec --enable-painter
+LDFLAGS+=	-L${LOCALBASE}/lib -L${OPENSSLLIB} -lssl
+CFLAGS+=	-I${LOCALBASE}/include -L${OPENSSLINC}
 CONFLICTS=	xrdp-[0-9]*
-# xrdp v0.7 is not compatible with current net/freerdp (1.0.2)
-#BUILD_DEPENDS+=	freerdp>=1.0.2:net/freerdp
-#CONFIGURE_ARGS+=	--enable-freerdp1
-
-OPTIONS_DEFINE=	DEBUG SOUND
-OPTIONS_DEFAULT=	TIGERVNC JP106
-OPTIONS_GROUP=	KEYMAP
-OPTIONS_GROUP_KEYMAP= JP106
-OPTIONS_RADIO=	XVNC
-OPTIONS_RADIO_XVNC=	TIGERVNC TIGHTVNC TRIDIAVNC
-TIGERVNC_DESC=	Use TigerVNC (recommended)
-TIGHTVNC_DESC=	Use TightVNC
-TRIDIAVNC_DESC=	Use TridiaVNC
-SOUND_DESC=	Enable sound support via pulseaudio (experimental)
-JP106_DESC=	Install Japanese JP106 keymap
+INSTALL_TARGET=	install-strip
+SUB_FILES=	pkg-install pkg-message
+SUB_LIST=	OPENSSLBASE=${OPENSSLBASE}
+
+OPTIONS_DEFINE=	DEBUG FUSE IPV6 MP3LAME OPUS
+OPTIONS_DEFAULT=	OPUS MP3LAME
+FUSE_DESC=	Enable drive redirection via FUSE (experimental)
+MP3LAME_DESC=	Enable MP3 Lame for audio redirection
+OPUS_DESC=	Enable Opus for audio redirection
+
+IPV6_CONFIGURE_ENABLE=	ipv6
+DEBUG_CONFIGURE_ENABLE=	xrdpdebug
+FUSE_CONFIGURE_ENABLE=	fuse
+MP3LAME_CONFIGURE_ENABLE=	mp3lame
+MP3LAME_LIB_DEPENDS=	libmp3lame.so:audio/lame
+OPUS_CONFIGURE_ENABLE=	opus
+OPUS_LIB_DEPENDS=	libopus.so:audio/opus
+
+# don't forget to increase PORTREVISION after pulseaudio update
+PULSE_VERSION=	${MAKE} -C ${PORTSDIR}/audio/pulseaudio -VPORTVERSION
+PULSE_WRKSRC=	${MAKE} -C ${PORTSDIR}/audio/pulseaudio -VWRKSRC
 
 .include <bsd.port.options.mk>
 
-# Which Xserver to use
-.if ${PORT_OPTIONS:MTIGERVNC}
-RUN_DEPENDS=	Xvnc:net/tigervnc
-.endif
-.if ${PORT_OPTIONS:MTIGHTVNC}
-RUN_DEPENDS=	Xvnc:net/tightvnc
-.endif
-.if ${PORT_OPTIONS:MTRIDIAVNC}
-RUN_DEPENDS=	Xvnc:net/tridiavnc
+.if ${PORT_OPTIONS:MFUSE}
+USES+=	fuse
 .endif
 
-.if ${PORT_OPTIONS:MDEBUG}
-CONFIGURE_ARGS+=	--enable-xrdpdebug
-CFLAGS+=	-DXRDP_DEBUG
-.endif
-
-.if ${PORT_OPTIONS:MJP106}
-KEYMAP_FILES+=	km-0411.ini km-e0010411.ini \
-		km-e0200411.ini km-e0210411.ini
-PLIST_SUB+=	JP106=""
-.else
-PLIST_SUB+=	JP106="@comment "
-.endif
-
-.if ${PORT_OPTIONS:MSOUND}
-BUILD_DEPENDS+=	${LOCALBASE}/include/pulse/simple.h:audio/pulseaudio \
-		${LOCALBASE}/include/pulse/error.h:audio/pulseaudio
-CONFIGURE_ARGS+=	--enable-simplesound
-.endif
-
-SUB_FILES=	pkg-message
+post-extract:
+	# librfxcodec is provided as git submodule
+	@${CP} -r ${WRKSRC_librfxcodec}/ ${WRKSRC}/librfxcodec/
+	@${CP} -r ${WRKSRC_libpainter}/ ${WRKSRC}/libpainter/
 
 post-patch:
-.for f in sesman/sesman.ini sesman/startwm.sh xrdp/rsakeys.ini xrdp/xrdp.ini
-	@${MV} ${WRKSRC}/$f ${WRKSRC}/$f.sample
-.endfor
+	@${REINPLACE_CMD} \
+		-e "s|^PULSE_SCRIPT=/etc/xrdp/pulse/default.pa|PULSE_SCRIPT=${PREFIX}/etc/xrdp/pulse/default.pa|" \
+		${WRKSRC}/sesman/sesman.ini
+	@${REINPLACE_CMD} \
+		-e "s|^PULSE_DIR = .*|PULSE_DIR = `${PULSE_WRKSRC}`|" \
+		-e "s|-Wall -O2|-Wall -O2 -I${LOCALBASE}/include|" \
+		${WRKSRC}/sesman/chansrv/pulse/Makefile
 
 pre-configure:
-	@cd ${WRKSRC} && ./bootstrap
+	@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./bootstrap
+
+post-build:
+	# build pulseaudio module
+	@${CP} -r "`${PULSE_WRKSRC}`" ${WRKDIR}
+	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} -C sesman/chansrv/pulse
 
 post-install:
-.for f in ${KEYMAP_FILES}
-	${INSTALL_DATA} ${FILESDIR}/$f ${STAGEDIR}${PREFIX}/etc/xrdp
+	# install pulseaudio module
+	${MKDIR} "${STAGEDIR}${PREFIX}/lib/pulse-`${PULSE_VERSION}`/modules/"
+.for f in module-xrdp-sink.so module-xrdp-source.so
+	${INSTALL_LIB} -m 0755 ${WRKSRC}/sesman/chansrv/pulse/$f \
+		"${STAGEDIR}${PREFIX}/lib/pulse-`${PULSE_VERSION}`/modules/"
+.endfor
+	# substitute pkg-plist not using PLIST_SUB
+	${REINPLACE_CMD} -e "s|%%PULSE_VERSION%%|`${PULSE_VERSION}`|g" ${TMPPLIST}
+
+post-stage:
+	@${RM} ${STAGEDIR}${PREFIX}/etc/xrdp/rsakeys.ini
+	@${RM} ${STAGEDIR}${PREFIX}/etc/xrdp/cert.pem
+	@${RM} ${STAGEDIR}${PREFIX}/etc/xrdp/key.pem
+.for f in sesman.ini startwm.sh xrdp.ini xrdp_keyboard.ini
+	@${MV} ${STAGEDIR}${PREFIX}/etc/xrdp/$f ${STAGEDIR}${PREFIX}/etc/xrdp/$f.sample
 .endfor
 
 .include <bsd.port.mk>

Modified: head/net/xrdp-devel/distinfo
==============================================================================
--- head/net/xrdp-devel/distinfo	Fri Mar  3 09:08:51 2017	(r435324)
+++ head/net/xrdp-devel/distinfo	Fri Mar  3 10:15:59 2017	(r435325)
@@ -1,2 +1,7 @@
-SHA256 (neutrinolabs-xrdp-0.7.0.b20130912-64e2291_GH0.tar.gz) = 2e21006a2bb09f706a5a63e999487a5eab45ab0c7bfcc3a3e056d288d525d06c
-SIZE (neutrinolabs-xrdp-0.7.0.b20130912-64e2291_GH0.tar.gz) = 2892771
+TIMESTAMP = 1482726509
+SHA256 (xrdp/neutrinolabs-xrdp-v0.9.1_GH0.tar.gz) = 9bfafb0277b07e8242bfdbede2928423d28c5714efb0c226118759fab06c42ab
+SIZE (xrdp/neutrinolabs-xrdp-v0.9.1_GH0.tar.gz) = 1885192
+SHA256 (xrdp/neutrinolabs-librfxcodec-v0.1.0_GH0.tar.gz) = b05c1812e2daef373bf5e647bc86ee11f136adbe7ea999b5109180f406071f0a
+SIZE (xrdp/neutrinolabs-librfxcodec-v0.1.0_GH0.tar.gz) = 38590
+SHA256 (xrdp/neutrinolabs-libpainter-v0.1.0_GH0.tar.gz) = 9fd2a3a85ba4f3e311cea34e9824bd38f3673e60951906c06744cf6b8f73397a
+SIZE (xrdp/neutrinolabs-libpainter-v0.1.0_GH0.tar.gz) = 9859

Added: head/net/xrdp-devel/files/patch-configure.ac
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/xrdp-devel/files/patch-configure.ac	Fri Mar  3 10:15:59 2017	(r435325)
@@ -0,0 +1,22 @@
+diff --git configure.ac configure.ac
+index 5c73168a..abbf4135 100644
+--- configure.ac
++++ configure.ac
+@@ -138,8 +138,15 @@ AC_CHECK_FUNC(dlopen, [],
+ AC_SUBST(DLOPEN_LIBS)
+
+ # checking for openssl
+-PKG_CHECK_MODULES([OPENSSL], [openssl >= 0], [],
+-  [AC_MSG_ERROR([please install libssl-dev or openssl-devel])])
++if test "x$freebsd" = "xyes"; then
++  # FreeBSD base doesn't supply "*.pc"
++  AC_CHECK_HEADER([openssl/rc4.h], [],
++    [AC_MSG_ERROR([please install libssl-dev or openssl-devel])],
++    [#include <stdlib.h>])
++else
++  PKG_CHECK_MODULES([OPENSSL], [openssl >= 0], [],
++    [AC_MSG_ERROR([please install libssl-dev or openssl-devel])])
++fi
+
+ # checking for pam variation
+ # Linux-PAM is used in Linux systems

Added: head/net/xrdp-devel/files/patch-sesman_sesman.ini
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/xrdp-devel/files/patch-sesman_sesman.ini	Fri Mar  3 10:15:59 2017	(r435325)
@@ -0,0 +1,15 @@
+diff --git sesman/sesman.ini sesman/sesman.ini
+index 674665e9..45929d6d 100644
+--- sesman/sesman.ini
++++ sesman/sesman.ini
+@@ -84,8 +84,8 @@ param=xrdp/xorg.conf
+ param=-noreset
+ param=-nolisten
+ param=tcp
+-param=-logfile
+-param=.xorgxrdp.%s.log
++#param=-logfile
++#param=.xorgxrdp.%s.log
+
+ [Chansrv]
+ ; drive redirection, defaults to xrdp_client if not set

Added: head/net/xrdp-devel/files/patch-xrdp_xrdp.ini
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/xrdp-devel/files/patch-xrdp_xrdp.ini	Fri Mar  3 10:15:59 2017	(r435325)
@@ -0,0 +1,34 @@
+--- xrdp/xrdp.ini.orig	2016-12-22 17:04:29 UTC
++++ xrdp/xrdp.ini
+@@ -147,24 +147,24 @@ tcutils=true
+ ; Session types
+ ;
+ 
+-[X11rdp]
+-name=X11rdp
++[Xorg]
++name=Xorg
+ lib=libxup.so
+ username=ask
+ password=ask
+ ip=127.0.0.1
+ port=-1
+-xserverbpp=24
+-code=10
++code=20
+ 
+-[Xorg]
+-name=Xorg
++[X11rdp]
++name=X11rdp
+ lib=libxup.so
+ username=ask
+ password=ask
+ ip=127.0.0.1
+ port=-1
+-code=20
++xserverbpp=24
++code=10
+ 
+ [Xvnc]
+ name=Xvnc

Added: head/net/xrdp-devel/files/pkg-install.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/xrdp-devel/files/pkg-install.in	Fri Mar  3 10:15:59 2017	(r435325)
@@ -0,0 +1,39 @@
+#!/bin/sh
+# vim:ts=4:sw=4:et
+
+if [ $# -ne 2 ]; then
+    echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
+    exit 1
+fi
+
+case $2 in
+    PRE-INSTALL)
+        : nothing to do here
+        ;;
+    POST-INSTALL)
+        RSAKEYS=%%PREFIX%%/etc/xrdp/rsakeys.ini
+        PRIVATEKEY=%%PREFIX%%/etc/xrdp/key.pem
+        CERTIFICATE=%%PREFIX%%/etc/xrdp/cert.pem
+        # make sure rsakeys and certificates are private
+        umask 077
+        # generate rsakeys.ini
+        [ -e "$RSAKEYS" ] || %%PREFIX%%/bin/xrdp-keygen xrdp "$RSAKEYS"
+        # generate self-signed certificate
+        [ -e "$PRIVATEKEY" -a -e "$CERTIFICATE" ] || \
+            %%OPENSSLBASE%%/bin/openssl req \
+                 -x509 \
+                 -newkey rsa:4096 \
+                 -keyout "$PRIVATEKEY" \
+                 -sha256 \
+                 -nodes \
+                 -out "$CERTIFICATE" \
+                 -days 365 \
+                 -subj "/CN=$(hostname)"
+        ;;
+    *)
+        echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
+        exit 1
+        ;;
+esac
+
+exit 0

Modified: head/net/xrdp-devel/pkg-plist
==============================================================================
--- head/net/xrdp-devel/pkg-plist	Fri Mar  3 09:08:51 2017	(r435324)
+++ head/net/xrdp-devel/pkg-plist	Fri Mar  3 10:15:59 2017	(r435325)
@@ -1,11 +1,29 @@
-@stopdaemon xrdp
-bin/xrdp-xcon
 bin/xrdp-dis
 bin/xrdp-genkeymap
 bin/xrdp-keygen
 bin/xrdp-sesadmin
 bin/xrdp-sesrun
-bin/xrdp-sestest
+bin/rfxcodectest
+lib/libpainter.a
+lib/libpainter.so
+lib/libpainter.so.0
+lib/libpainter.so.0.0.0
+lib/librfxencode.so
+lib/librfxencode.so.0.0.0
+lib/librfxencode.a
+lib/librfxencode.so.0
+include/painter.h
+include/rfxcodec_common.h
+include/rfxcodec_decode.h
+include/rfxcodec_encode.h
+include/xrdp_client_info.h
+include/xrdp_constants.h
+include/xrdp_rail.h
+lib/pulse-%%PULSE_VERSION%%/modules/module-xrdp-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-xrdp-source.so
+libdata/pkgconfig/libpainter.pc
+libdata/pkgconfig/rfxcodec.pc
+libdata/pkgconfig/xrdp.pc
 lib/xrdp/libcommon.a
 lib/xrdp/libcommon.so
 lib/xrdp/libcommon.so.0
@@ -39,33 +57,55 @@ lib/xrdp/libxrdpapi.a
 lib/xrdp/libxrdpapi.so.0
 lib/xrdp/libxrdpapi.so.0.0.0
 etc/pam.d/xrdp-sesman
-etc/xrdp/km-0407.ini
-etc/xrdp/km-0409.ini
-etc/xrdp/km-040c.ini
-etc/xrdp/km-0410.ini
-etc/xrdp/km-0419.ini
-etc/xrdp/km-041d.ini
-%%JP106%%etc/xrdp/km-0411.ini
-%%JP106%%etc/xrdp/km-e0010411.ini
-%%JP106%%etc/xrdp/km-e0200411.ini
-%%JP106%%etc/xrdp/km-e0210411.ini
-@sample etc/xrdp/rsakeys.ini.sample
-@sample etc/xrdp/sesman.ini.sample
-@sample etc/xrdp/startwm.sh.sample
-@sample etc/xrdp/xrdp.ini.sample
+etc/rc.d/xrdp
+%%ETCDIR%%/km-00000407.ini
+%%ETCDIR%%/km-00000409.ini
+%%ETCDIR%%/km-0000040a.ini
+%%ETCDIR%%/km-0000040b.ini
+%%ETCDIR%%/km-0000040c.ini
+%%ETCDIR%%/km-00000410.ini
+%%ETCDIR%%/km-00000411.ini
+%%ETCDIR%%/km-00000412.ini
+%%ETCDIR%%/km-00000414.ini
+%%ETCDIR%%/km-00000415.ini
+%%ETCDIR%%/km-00000416.ini
+%%ETCDIR%%/km-00000419.ini
+%%ETCDIR%%/km-0000041d.ini
+%%ETCDIR%%/km-00000807.ini
+%%ETCDIR%%/km-00000809.ini
+%%ETCDIR%%/km-0000080c.ini
+%%ETCDIR%%/km-00000813.ini
+%%ETCDIR%%/km-00000816.ini
+%%ETCDIR%%/km-0000100c.ini
+%%ETCDIR%%/pulse/default.pa
+@postunexec if cmp -s %D/etc/xrdp/sesman.ini.sample %D/etc/xrdp/sesman.ini; then rm -f %D/etc/xrdp/sesman.ini; fi
+@postunexec if cmp -s %D/etc/xrdp/startwm.sh.sample %D/etc/xrdp/startwm.sh; then rm -f %D/etc/xrdp/startwm.sh; fi
+@postunexec if cmp -s %D/etc/xrdp/xrdp.ini.sample %D/etc/xrdp/xrdp.ini; then rm -f %D/etc/xrdp/xrdp.ini; fi
+@postunexec if cmp -s %D/etc/xrdp/xrdp_keyboard.ini.sample %D/etc/xrdp/xrdp_keyboard.ini; then rm -f %D/etc/xrdp/xrdp_keyboard.ini; fi
+@sample %%ETCDIR%%/sesman.ini.sample
+@sample %%ETCDIR%%/startwm.sh.sample
+@sample %%ETCDIR%%/xrdp.ini.sample
+@sample %%ETCDIR%%/xrdp_keyboard.ini.sample
+man/man1/xrdp-dis.1.gz
 man/man5/sesman.ini.5.gz
+man/man8/xrdp.8.gz
 man/man5/xrdp.ini.5.gz
+man/man8/xrdp-chansrv.8.gz
+man/man8/xrdp-genkeymap.8.gz
+man/man8/xrdp-keygen.8.gz
+man/man8/xrdp-sesadmin.8.gz
 man/man8/xrdp-sesman.8.gz
 man/man8/xrdp-sesrun.8.gz
-man/man8/xrdp.8.gz
+man/man8/xrdp-sessvc.8.gz
 sbin/xrdp
 sbin/xrdp-chansrv
 sbin/xrdp-sesman
 sbin/xrdp-sessvc
-share/xrdp/ad24b.bmp
-share/xrdp/ad256.bmp
-share/xrdp/cursor0.cur
-share/xrdp/cursor1.cur
-share/xrdp/sans-10.fv1
-share/xrdp/xrdp24b.bmp
-share/xrdp/xrdp256.bmp
+%%DATADIR%%/ad24b.bmp
+%%DATADIR%%/ad256.bmp
+%%DATADIR%%/cursor0.cur
+%%DATADIR%%/cursor1.cur
+%%DATADIR%%/sans-10.fv1
+%%DATADIR%%/xrdp24b.bmp
+%%DATADIR%%/xrdp256.bmp
+%%DATADIR%%/xrdp_logo.bmp



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