1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-20 04:02:27 +00:00

net/freerdp: Update to 2.0.0-rc1

- Enable 64 bit file support in winpr
- Remove unneeded patches (added upstream)
- Add support for ICU for unicode conversion
- Add support for KERBEROS
- Add MANPAGES option and fix man pages installation in /usr/local/man
- Fix WWW in pkg-descr
- Pet portlint

Changelog: https://github.com/FreeRDP/FreeRDP/blob/2.0.0-rc1/ChangeLog

PR:		224658
Submitted by:	cpm
Reviewed by:	kevans
Approved by:	kevans (maintainer)
This commit is contained in:
Carlos J. Puga Medina 2018-01-04 19:37:58 +00:00
parent e5b07eeb28
commit 6937c98e2b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=458051
12 changed files with 134 additions and 83 deletions

View File

@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= freerdp
DISTVERSION= 2.0.0-rc0
PORTREVISION= 3
DISTVERSION= 2.0.0-rc1
CATEGORIES= net comms ipv6
MAINTAINER= kevans@FreeBSD.org
@ -12,21 +11,22 @@ COMMENT= Free implementation of Remote Desktop Protocol
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
USE_GITHUB= yes
GH_ACCOUNT= FreeRDP
GH_PROJECT= ${GH_ACCOUNT}
USES= alias cmake:outsource compiler:c++11-lib cpe gettext localbase pathfix pkgconfig ssl
USE_LDCONFIG= yes
CPE_VENDOR= freerdp_project
USE_GITHUB= yes
GH_ACCOUNT= FreeRDP
GH_PROJECT= ${GH_ACCOUNT}
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 WAYLAND X11
OPTIONS_DEFAULT= CUPS GSTREAMER WAYLAND X11
OPTIONS_DEFINE= ALSA CUPS FFMPEG GSTREAMER ICU KERBEROS MANPAGES \
PULSEAUDIO WAYLAND X11
OPTIONS_DEFAULT= CUPS GSTREAMER ICU KERBEROS MANPAGES WAYLAND X11
OPTIONS_SUB= yes
OPTIONS_DEFINE_armv6= NEON
@ -49,6 +49,15 @@ GSTREAMER_CMAKE_BOOL= WITH_GSTREAMER_1_0
GSTREAMER_USE= gnome=glib20 gstreamer1=yes xorg=x11,xext,xextproto,xrandr
GSTREAMER_LIB_DEPENDS= libgstbase-1.0.so:multimedia/gstreamer1
ICU_LIB_DEPENDS= libicuuc.so:devel/icu
ICU_CMAKE_BOOL= WITH_ICU
KERBEROS_CMAKE_BOOL= WITH_GSSAPI_HEIMDAL
MANPAGES_BUILD_DEPENDS= xsltproc:textproc/libxslt
MANPAGES_CMAKE_BOOL= WITH_MANPAGES
MANPAGES_CMAKE_OFF= -DWITH_MANPAGES=OFF
NEON_DESC= Enable Media Processing Engine instructions
NEON_CMAKE_BOOL= WITH_NEON
.if ! ${CFLAGS:M-march*}
@ -69,7 +78,6 @@ WAYLAND_LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \
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,xcursor,xext,xextproto,xfixes,xi,xinerama,xkbfile,xrandr,xrender,xv
@ -88,9 +96,8 @@ BROKEN= Fails to build on ARMv6 (libm bug). See: r305380 (HEAD), r305971 (stable
post-patch:
@${REINPLACE_CMD} -e '/CMAKE_INSTALL_RPATH /d' \
${WRKSRC}/CMakeLists.txt
@${REINPLACE_CMD} -e 's/OPENBSD/BSD/' \
${WRKSRC}/winpr/CMakeLists.txt \
${WRKSRC}/client/X11/CMakeLists.txt
@${REINPLACE_CMD} -e 's/Linux/Linux|FreeBSD/' \
${WRKSRC}/winpr/CMakeLists.txt
@${REINPLACE_CMD} -e 's/NetBSD__)/NetBSD__) || defined(__FreeBSD__)/' \
${WRKSRC}/winpr/libwinpr/utils/trio/triodef.h
@${RM} ${WRKSRC}/cmake/FindOpenSSL.cmake

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1501924476
SHA256 (FreeRDP-FreeRDP-2.0.0-rc0_GH0.tar.gz) = b432d92f529646f3e914513c8202c66ce167405082ee5b9e6d15ba4321ff6664
SIZE (FreeRDP-FreeRDP-2.0.0-rc0_GH0.tar.gz) = 6486533
TIMESTAMP = 1514888037
SHA256 (FreeRDP-FreeRDP-2.0.0-rc1_GH0.tar.gz) = a2c1c83072489d56da78bbe76c29729022f5c35a3ec3a1ce26cea8823de043c2
SIZE (FreeRDP-FreeRDP-2.0.0-rc1_GH0.tar.gz) = 6530403

View File

@ -0,0 +1,16 @@
--- client/Wayland/CMakeLists.txt.orig 2017-11-28 14:26:30 UTC
+++ client/Wayland/CMakeLists.txt
@@ -39,5 +39,12 @@ target_link_libraries(${MODULE_NAME} ${$
install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT client)
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Client/Wayland")
+
+if(WITH_MANPAGES)
configure_file(wlfreerdp.1.in ${CMAKE_CURRENT_BINARY_DIR}/wlfreerdp.1)
-install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/wlfreerdp.1 1)
+ if(BSD)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/wlfreerdp.1 DESTINATION man/man1)
+ else()
+ install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/wlfreerdp.1 1)
+ endif()
+endif(WITH_MANPAGES)

View File

@ -0,0 +1,15 @@
--- client/X11/CMakeLists.txt.orig 2017-11-28 14:26:30 UTC
+++ client/X11/CMakeLists.txt
@@ -111,7 +111,11 @@ if(WITH_MANPAGES)
add_custom_target(xfreerdp.manpage ALL
DEPENDS xfreerdp.1)
- install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/xfreerdp.1 1)
+ if(BSD)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/xfreerdp.1 DESTINATION man/man1)
+ else()
+ install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/xfreerdp.1 1)
+ endif()
else()
message(WARNING "WITH_MANPAGES was set, but xsltproc was not found. man-pages will not be installed")
endif()

View File

@ -0,0 +1,18 @@
--- winpr/CMakeLists.txt.orig 2017-11-28 14:26:30 UTC
+++ winpr/CMakeLists.txt
@@ -180,7 +180,14 @@ if(BUILD_TESTING)
add_subdirectory(test)
endif()
-install_freerdp_man(wlog.7 7)
+if(WITH_MANPAGES)
+ if(BSD)
+ install(FILES wlog.7 DESTINATION man/man7)
+ else()
+ install_freerdp_man(wlog.7 7)
+ endif()
+endif(WITH_MANPAGES)
+
# Exporting
if(${CMAKE_VERSION} VERSION_GREATER "2.8.10")

View File

@ -1,6 +1,6 @@
--- winpr/libwinpr/crypto/hash.c.orig 2017-08-05 09:37:24 UTC
--- winpr/libwinpr/crypto/hash.c.orig 2017-11-28 14:26:30 UTC
+++ winpr/libwinpr/crypto/hash.c
@@ -178,7 +178,7 @@ BOOL winpr_HMAC_Init(WINPR_HMAC_CTX* ctx, WINPR_MD_TYP
@@ -179,7 +179,7 @@ BOOL winpr_HMAC_Init(WINPR_HMAC_CTX* ctx
if (!evp || !hmac)
return FALSE;
@ -9,16 +9,16 @@
HMAC_Init_ex(hmac, key, keylen, evp, NULL); /* no return value on OpenSSL 0.9.x */
return TRUE;
#else
@@ -214,7 +214,7 @@ BOOL winpr_HMAC_Update(WINPR_HMAC_CTX* ctx, const BYTE
@@ -215,7 +215,7 @@ BOOL winpr_HMAC_Update(WINPR_HMAC_CTX* c
{
#if defined(WITH_OPENSSL)
HMAC_CTX* hmac = (HMAC_CTX*) ctx;
-#if (OPENSSL_VERSION_NUMBER < 0x10000000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10000000L) || defined(LIBRESSL_VERSION_NUMBER)
HMAC_Update(hmac, input, ilen); /* no return value on OpenSSL 0.9.x */
return TRUE;
#else
@@ -244,7 +244,7 @@ BOOL winpr_HMAC_Final(WINPR_HMAC_CTX* ctx, BYTE* outpu
@@ -247,7 +247,7 @@ BOOL winpr_HMAC_Final(WINPR_HMAC_CTX* ct
#if defined(WITH_OPENSSL)
hmac = (HMAC_CTX*) ctx;

View File

@ -1,4 +1,4 @@
--- winpr/libwinpr/utils/ssl.c.orig 2017-07-24 08:46:54 UTC
--- winpr/libwinpr/utils/ssl.c.orig 2017-11-28 14:26:30 UTC
+++ winpr/libwinpr/utils/ssl.c
@@ -58,7 +58,7 @@ struct CRYPTO_dynlock_value
};
@ -9,7 +9,7 @@
static unsigned long _winpr_openssl_id(void)
{
return (unsigned long)GetCurrentThreadId();
@@ -172,7 +172,7 @@ static BOOL _winpr_openssl_initialize_locking(void)
@@ -174,7 +174,7 @@ static BOOL _winpr_openssl_initialize_lo
}
/* Use the deprecated CRYPTO_get_id_callback() if building against OpenSSL < 1.0.0 */
@ -18,7 +18,7 @@
if (CRYPTO_get_id_callback())
{
@@ -222,7 +222,7 @@ static BOOL _winpr_openssl_cleanup_locking(void)
@@ -224,7 +224,7 @@ static BOOL _winpr_openssl_cleanup_locki
CRYPTO_set_dynlock_destroy_callback(NULL);
}
@ -27,30 +27,21 @@
if (CRYPTO_get_id_callback() == _winpr_openssl_id)
{
@@ -255,7 +255,7 @@ static BOOL CALLBACK _winpr_openssl_initialize(PINIT_O
}
#endif
/* SSL_load_error_strings() is void */
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
SSL_load_error_strings();
/* SSL_library_init() always returns "1" */
SSL_library_init();
@@ -296,7 +296,7 @@ BOOL winpr_CleanupSSL(DWORD flags)
#ifdef WINPR_OPENSSL_LOCKING_REQUIRED
_winpr_openssl_cleanup_locking();
#endif
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
CRYPTO_cleanup_all_ex_data();
ERR_free_strings();
EVP_cleanup();
@@ -307,7 +307,7 @@ BOOL winpr_CleanupSSL(DWORD flags)
#ifdef WINPR_OPENSSL_LOCKING_REQUIRED
if (flags & WINPR_SSL_CLEANUP_THREAD)
@@ -279,7 +279,7 @@ static BOOL CALLBACK _winpr_openssl_init
if (flags & WINPR_SSL_INIT_ENABLE_FIPS)
{
-#if (OPENSSL_VERSION_NUMBER < 0x10000000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10000000L) || defined(LIBRESSL_VERSION_NUMBER)
ERR_remove_state(0);
-#if (OPENSSL_VERSION_NUMBER < 0x10001000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10001000L) || defined(LIBRESSL_VERSION_NUMBER)
WLog_ERR(TAG, "Openssl fips mode ENable not available on openssl versions less than 1.0.1!");
#else
ERR_remove_thread_state(NULL);
WLog_DBG(TAG, "Ensuring openssl fips mode is ENabled");
@@ -348,7 +348,7 @@ BOOL winpr_CleanupSSL(DWORD flags)
BOOL winpr_FIPSMode(void)
{
-#if (OPENSSL_VERSION_NUMBER < 0x10001000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10001000L) || defined(LIBRESSL_VERSION_NUMBER)
return FALSE;
#else
return (FIPS_mode() == 1);

View File

@ -0,0 +1,15 @@
--- winpr/tools/hash-cli/CMakeLists.txt.orig 2017-11-28 14:26:30 UTC
+++ winpr/tools/hash-cli/CMakeLists.txt
@@ -50,5 +50,11 @@ if (WITH_DEBUG_SYMBOLS AND MSVC)
endif()
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "WinPR/Tools")
+if(WITH_MANPAGES)
configure_file(winpr-hash.1.in ${CMAKE_CURRENT_BINARY_DIR}/winpr-hash.1)
-install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/winpr-hash.1 1)
+ if(BSD)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/winpr-hash.1 DESTINATION man/man1)
+ else()
+ install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/winpr-hash.1 1)
+ endif()
+endif(WITH_MANPAGES)

View File

@ -0,0 +1,15 @@
--- winpr/tools/makecert-cli/CMakeLists.txt.orig 2017-11-28 14:26:30 UTC
+++ winpr/tools/makecert-cli/CMakeLists.txt
@@ -51,5 +51,11 @@ if (WITH_DEBUG_SYMBOLS AND MSVC)
install(FILES ${CMAKE_PDB_BINARY_DIR}/${MODULE_NAME}.pdb DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT symbols)
endif()
+if(WITH_MANPAGES)
configure_file(winpr-makecert.1.in ${CMAKE_CURRENT_BINARY_DIR}/winpr-makecert.1)
-install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/winpr-makecert.1 1)
+ if(BSD)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/winpr-makecert.1 DESTINATION man/man1)
+ else()
+ install_freerdp_man(${CMAKE_CURRENT_BINARY_DIR}/winpr-makecert.1 1)
+ endif()
+endif(WITH_MANPAGES)

View File

@ -1,33 +1,6 @@
--- winpr/tools/makecert/makecert.c.orig 2017-07-24 08:46:54 UTC
--- winpr/tools/makecert/makecert.c.orig 2017-11-28 14:26:30 UTC
+++ winpr/tools/makecert/makecert.c
@@ -620,7 +620,7 @@ int makecert_context_output_certificate_file(MAKECERT_
printf("Using default export password \"password\"\n");
}
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
OpenSSL_add_all_algorithms();
OpenSSL_add_all_ciphers();
OpenSSL_add_all_digests();
@@ -1008,7 +1008,7 @@ int makecert_context_process(MAKECERT_CONTEXT* context
key_length = atoi(arg->Value);
}
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
context->rsa = RSA_generate_key(key_length, RSA_F4, NULL, NULL);
#else
{
@@ -1043,7 +1043,7 @@ int makecert_context_process(MAKECERT_CONTEXT* context
{
ASN1_TIME* before;
ASN1_TIME* after;
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
before = X509_get_notBefore(context->x509);
after = X509_get_notAfter(context->x509);
#else
@@ -1242,7 +1242,7 @@ void makecert_context_free(MAKECERT_CONTEXT* context)
@@ -1275,7 +1275,7 @@ void makecert_context_free(MAKECERT_CONT
#ifdef WITH_OPENSSL
X509_free(context->x509);
EVP_PKEY_free(context->pkey);

View File

@ -3,4 +3,4 @@ released under the Apache license. Enjoy the freedom of using your
software wherever you want, the way you want it, in a world where
interoperability can finally liberate your computing experience.
WWW: http://www.freerdp.com/
WWW: http://www.freerdp.com

View File

@ -43,6 +43,7 @@ include/freerdp2/freerdp/client/rdpei.h
include/freerdp2/freerdp/client/rdpgfx.h
include/freerdp2/freerdp/client/rdpsnd.h
include/freerdp2/freerdp/client/remdesk.h
include/freerdp2/freerdp/client/sshagent.h
include/freerdp2/freerdp/client/tsmf.h
include/freerdp2/freerdp/codec/audio.h
include/freerdp2/freerdp/codec/bitmap.h
@ -229,8 +230,8 @@ 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
%%MANPAGES%%man/man1/winpr-hash.1.gz
%%MANPAGES%%man/man1/winpr-makecert.1.gz
%%WAYLAND%%%%MANPAGES%%man/man1/wlfreerdp.1.gz
%%X11%%%%MANPAGES%%man/man1/xfreerdp.1.gz
%%MANPAGES%%man/man7/wlog.7.gz