aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortijl <tijl@FreeBSD.org>2018-10-18 21:31:00 +0800
committertijl <tijl@FreeBSD.org>2018-10-18 21:31:00 +0800
commitd682665b280aeb256debb9df83866609a53e861f (patch)
treec4d6461e6b7ba3ce0cc3319a892ddb2d78a6030f
parente7bef28b90a430e8aa0bd6523889fb13b004a6f4 (diff)
downloadfreebsd-ports-gnome-d682665b280aeb256debb9df83866609a53e861f.tar.gz
freebsd-ports-gnome-d682665b280aeb256debb9df83866609a53e861f.tar.zst
freebsd-ports-gnome-d682665b280aeb256debb9df83866609a53e861f.zip
Update the Linphone stack and drop maintainership.
Linphone uses Qt5 now instead of GTK2. audio/bcg729: - switch to cmake, required by net/mediastreamer - download distfile instead of using gitlab - fix license: source code allows later GPL version audio/msbcg729: deleted, net/mediastreamer contains a G.729 codec now audio/msilbc: deleted, superseded by multimedia/mswebrtc deskutils/belcard: version 1.0.2 multimedia/bcmatroska2: version 0.23 multimedia/msopenh264: version 1.2.1 multimedia/mswebrtc: version 1.1.1 multimedia/msx264: deleted, superseded by msopenh264 net/bctoolbox: version 0.6.0 net/belle-sip: version 1.6.3 net/liblinphone: version 3.12.0 net/linphone: version 4.1.1 + upstream Qt 5.11 patches net/mediastreamer: version 2.16.1 + upstream libsrtp2 patch net/ortp: version 1.0.2 + bump dependent port devel/libosmo-abis security/bzrtp: version 1.0.6 textproc/belr: version 0.1.3
-rw-r--r--MOVED3
-rw-r--r--audio/Makefile2
-rw-r--r--audio/bcg729/Makefile15
-rw-r--r--audio/bcg729/distinfo6
-rw-r--r--audio/bcg729/pkg-plist7
-rw-r--r--audio/msbcg729/Makefile32
-rw-r--r--audio/msbcg729/distinfo3
-rw-r--r--audio/msbcg729/pkg-descr12
-rw-r--r--audio/msbcg729/pkg-plist4
-rw-r--r--audio/msilbc/Makefile22
-rw-r--r--audio/msilbc/distinfo2
-rw-r--r--audio/msilbc/pkg-descr3
-rw-r--r--audio/msilbc/pkg-plist3
-rw-r--r--deskutils/Makefile1
-rw-r--r--deskutils/belcard/Makefile23
-rw-r--r--deskutils/belcard/distinfo3
-rw-r--r--deskutils/belcard/pkg-descr3
-rw-r--r--deskutils/belcard/pkg-plist25
-rw-r--r--devel/libosmo-abis/Makefile1
-rw-r--r--multimedia/Makefile3
-rw-r--r--multimedia/bcmatroska2/Makefile16
-rw-r--r--multimedia/bcmatroska2/distinfo3
-rw-r--r--multimedia/bcmatroska2/files/patch-corec-corec-helpers-file-file_libc.c11
-rw-r--r--multimedia/bcmatroska2/pkg-descr3
-rw-r--r--multimedia/bcmatroska2/pkg-plist43
-rw-r--r--multimedia/msopenh264/Makefile23
-rw-r--r--multimedia/msopenh264/distinfo6
-rw-r--r--multimedia/msopenh264/pkg-descr2
-rw-r--r--multimedia/msopenh264/pkg-plist3
-rw-r--r--multimedia/mswebrtc/Makefile23
-rw-r--r--multimedia/mswebrtc/distinfo3
-rw-r--r--multimedia/mswebrtc/pkg-descr (renamed from multimedia/msx264/pkg-descr)2
-rw-r--r--multimedia/msx264/Makefile23
-rw-r--r--multimedia/msx264/distinfo2
-rw-r--r--multimedia/msx264/pkg-plist3
-rw-r--r--net/Makefile1
-rw-r--r--net/bctoolbox/Makefile22
-rw-r--r--net/bctoolbox/distinfo6
-rw-r--r--net/bctoolbox/files/patch-configure19
-rw-r--r--net/bctoolbox/files/patch-src-CMakeLists.txt10
-rw-r--r--net/bctoolbox/files/patch-src-Makefile.in11
-rw-r--r--net/bctoolbox/files/patch-src-utils-port.c12
-rw-r--r--net/bctoolbox/pkg-plist15
-rw-r--r--net/belle-sip/Makefile26
-rw-r--r--net/belle-sip/distinfo6
-rw-r--r--net/belle-sip/files/patch-configure44
-rw-r--r--net/belle-sip/pkg-plist7
-rw-r--r--net/liblinphone/Makefile46
-rw-r--r--net/liblinphone/distinfo3
-rw-r--r--net/liblinphone/files/patch-cmake-FindIntl.cmake11
-rw-r--r--net/liblinphone/files/patch-coreapi__presence.c (renamed from net/linphone/files/patch-coreapi__presence.c)0
-rw-r--r--net/liblinphone/files/patch-wrappers-cpp-genwrapper.py11
-rw-r--r--net/liblinphone/pkg-descr4
-rw-r--r--net/liblinphone/pkg-plist144
-rw-r--r--net/linphone/Makefile64
-rw-r--r--net/linphone/distinfo6
-rw-r--r--net/linphone/files/patch-00-ecaab0f93
-rw-r--r--net/linphone/files/patch-01-5dd016174
-rw-r--r--net/linphone/files/patch-02-c840bba216
-rw-r--r--net/linphone/files/patch-03-85c216523
-rw-r--r--net/linphone/files/patch-04-872093168
-rw-r--r--net/linphone/files/patch-05-4f908ef25
-rw-r--r--net/linphone/files/patch-06-70f47b090
-rw-r--r--net/linphone/files/patch-07-7f62ae939
-rw-r--r--net/linphone/files/patch-configure50
-rw-r--r--net/linphone/files/patch-console-Makefile.in10
-rw-r--r--net/linphone/files/patch-coreapi-Makefile.in10
-rw-r--r--net/linphone/files/patch-daemon-Makefile.in10
-rw-r--r--net/linphone/files/patch-gtk-Makefile.in10
-rw-r--r--net/linphone/files/patch-gtk-main.c26
-rw-r--r--net/linphone/files/patch-tools-Makefile.in20
-rw-r--r--net/linphone/pkg-plist198
-rw-r--r--net/mediastreamer/Makefile98
-rw-r--r--net/mediastreamer/distinfo6
-rw-r--r--net/mediastreamer/files/patch-00-9790349139
-rw-r--r--net/mediastreamer/files/patch-CMakeLists.txt11
-rw-r--r--net/mediastreamer/files/patch-cmake-FindGLX.cmake13
-rw-r--r--net/mediastreamer/files/patch-src-CMakeLists.txt22
-rw-r--r--net/mediastreamer/files/patch-src-base-msfactory.c20
-rw-r--r--net/mediastreamer/files/patch-src_videofilters_nowebcam.c24
-rw-r--r--net/mediastreamer/pkg-descr30
-rw-r--r--net/mediastreamer/pkg-plist34
-rw-r--r--net/ortp/Makefile19
-rw-r--r--net/ortp/distinfo6
-rw-r--r--net/ortp/files/patch-configure10
-rw-r--r--net/ortp/pkg-plist8
-rw-r--r--security/bzrtp/Makefile18
-rw-r--r--security/bzrtp/distinfo6
-rw-r--r--security/bzrtp/pkg-plist6
-rw-r--r--textproc/Makefile1
-rw-r--r--textproc/belr/Makefile22
-rw-r--r--textproc/belr/distinfo3
-rw-r--r--textproc/belr/pkg-descr5
-rw-r--r--textproc/belr/pkg-plist11
94 files changed, 1461 insertions, 820 deletions
diff --git a/MOVED b/MOVED
index 06adce34a1fa..29934a688ef2 100644
--- a/MOVED
+++ b/MOVED
@@ -10579,3 +10579,6 @@ deskutils/tagutils||2018-10-16|Has expired: Unmaintained upstream
devel/libleaftag||2018-10-16|Has expired: Unmaintained upstream
net-im/jabber||2018-10-16|Has expired: Unmaintained upstream
cad/gmsh-occ||2018-10-17|To match upstream, cad/gmsh now builds with OCC
+audio/msbcg729||2018-10-18|Obsolete: net/mediastreamer has built-in G.729 codec
+audio/msilbc|multimedia/mswebrtc|2018-10-18|Deprecated upstream
+multimedia/msx264|multimedia/msopenh264|2018-10-18|Deprecated upstream
diff --git a/audio/Makefile b/audio/Makefile
index 672e7383e459..e060b165d9bf 100644
--- a/audio/Makefile
+++ b/audio/Makefile
@@ -563,8 +563,6 @@
SUBDIR += mpg321
SUBDIR += mpiosh
SUBDIR += mps
- SUBDIR += msbcg729
- SUBDIR += msilbc
SUBDIR += mumble
SUBDIR += murmur
SUBDIR += musepack
diff --git a/audio/bcg729/Makefile b/audio/bcg729/Makefile
index 06755b49b64d..a09715e11bec 100644
--- a/audio/bcg729/Makefile
+++ b/audio/bcg729/Makefile
@@ -3,24 +3,19 @@
PORTNAME= bcg729
PORTVERSION= 1.0.4
+PORTREVISION= 1
CATEGORIES= audio
+MASTER_SITES= https://linphone.org/releases/sources/bcg729/
MAINTAINER= madpilot@FreeBSD.org
COMMENT= Software G729A encoder and decoder library written in C
-LICENSE= GPLv2
+LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-msplugin --disable-strict
-INSTALL_TARGET= install-strip
-USES= autoreconf libtool pathfix pkgconfig
+USES= cmake:outsource
USE_LDCONFIG= yes
-USE_GITLAB= yes
-GL_SITE= https://gitlab.linphone.org
-GL_ACCOUNT= BC/public
-GL_PROJECT= bcg729
-GL_COMMIT= 9ada79d7ff53815e85432e7442810a2fd49dbd0e
+CMAKE_ARGS= -DENABLE_STATIC=NO
.include <bsd.port.mk>
diff --git a/audio/bcg729/distinfo b/audio/bcg729/distinfo
index 8457633d0e64..22cd2b1bf186 100644
--- a/audio/bcg729/distinfo
+++ b/audio/bcg729/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1531294135
-SHA256 (BC/public-bcg729-9ada79d7ff53815e85432e7442810a2fd49dbd0e_GL0.tar.gz) = 128e8dd0abe87baa45f0a49b1188cb6cc51893391cc36dc79624a2b9671ffe12
-SIZE (BC/public-bcg729-9ada79d7ff53815e85432e7442810a2fd49dbd0e_GL0.tar.gz) = 115407
+TIMESTAMP = 1529869611
+SHA256 (bcg729-1.0.4.tar.gz) = 1a0fbf1ff91470037e83fa67976f940ebb601e4cc525859c754f4e7ffc24c307
+SIZE (bcg729-1.0.4.tar.gz) = 121994
diff --git a/audio/bcg729/pkg-plist b/audio/bcg729/pkg-plist
index 5fcf3b9f1f35..dfcc19056c6c 100644
--- a/audio/bcg729/pkg-plist
+++ b/audio/bcg729/pkg-plist
@@ -1,7 +1,8 @@
include/bcg729/decoder.h
include/bcg729/encoder.h
-lib/libbcg729.a
lib/libbcg729.so
lib/libbcg729.so.0
-lib/libbcg729.so.0.0.0
-libdata/pkgconfig/libbcg729.pc
+share/Bcg729/cmake/Bcg729Config.cmake
+share/Bcg729/cmake/Bcg729ConfigVersion.cmake
+share/Bcg729/cmake/Bcg729Targets-%%CMAKE_BUILD_TYPE%%.cmake
+share/Bcg729/cmake/Bcg729Targets.cmake
diff --git a/audio/msbcg729/Makefile b/audio/msbcg729/Makefile
deleted file mode 100644
index ae4fafa5295f..000000000000
--- a/audio/msbcg729/Makefile
+++ /dev/null
@@ -1,32 +0,0 @@
-# $FreeBSD$
-
-PORTNAME= msbcg729
-PORTVERSION= 1.0.2
-PORTREVISION= 1
-CATEGORIES= audio
-MASTER_SITES= SAVANNAH/linphone/plugins/sources
-DISTNAME= bcg729-${DISTVERSION}
-
-MAINTAINER= tijl@FreeBSD.org
-COMMENT= Software G729A codec plugin for Mediastreamer
-
-LICENSE= GPLv2
-LICENSE_FILE= ${WRKSRC}/COPYING
-
-LIB_DEPENDS= libortp.so:net/ortp \
- libmediastreamer_base.so:net/mediastreamer
-
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-static --disable-strict
-INSTALL_TARGET= install-strip
-USES= libtool pkgconfig
-
-post-patch:
-# Don't install libbcg729 (provided by audio/bcg729).
- @${REINPLACE_CMD} \
- -e '/^LTLIBRARIES =/s/lib_LTLIBRARIES/noinst_LTLIBRARIES/' \
- -e 's/^lib_LTLIBRARIES/noinst_LTLIBRARIES/' \
- -e 's/-rpath $$(libdir)//' \
- ${WRKSRC}/src/Makefile.in
-
-.include <bsd.port.mk>
diff --git a/audio/msbcg729/distinfo b/audio/msbcg729/distinfo
deleted file mode 100644
index 291107ef503d..000000000000
--- a/audio/msbcg729/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1476528468
-SHA256 (bcg729-1.0.2.tar.gz) = 77c923edc57a53014da5f31788b63efbabfc7277c06deaeada06574628e4b03f
-SIZE (bcg729-1.0.2.tar.gz) = 474851
diff --git a/audio/msbcg729/pkg-descr b/audio/msbcg729/pkg-descr
deleted file mode 100644
index 590324041bfb..000000000000
--- a/audio/msbcg729/pkg-descr
+++ /dev/null
@@ -1,12 +0,0 @@
-Bcg729 is a software G729A encoder and decoder library written in C, developed
-by Belledonne Communications, the company supporting the Linphone project.
-It was written from scratch and is NOT a derivative work of ITU reference
-source code in any kind.
-
-It can be executed on many platforms, including both ARM and x86 with very
-decent performances. libbcg729 supports concurrent channel encoding/decoding
-for multi-call applications such as conferencing.
-
-This package provides a plugin for Mediastreamer.
-
-WWW: https://www.linphone.org/technical-corner/bcg729.html
diff --git a/audio/msbcg729/pkg-plist b/audio/msbcg729/pkg-plist
deleted file mode 100644
index 7e73b828f645..000000000000
--- a/audio/msbcg729/pkg-plist
+++ /dev/null
@@ -1,4 +0,0 @@
-lib/mediastreamer/plugins/libmsbcg729.so
-lib/mediastreamer/plugins/libmsbcg729.so.0
-lib/mediastreamer/plugins/libmsbcg729.so.0.0.0
-@comment libdata/pkgconfig/libbcg729.pc
diff --git a/audio/msilbc/Makefile b/audio/msilbc/Makefile
deleted file mode 100644
index 19472718670f..000000000000
--- a/audio/msilbc/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-# $FreeBSD$
-
-PORTNAME= msilbc
-PORTVERSION= 2.1.2
-PORTREVISION= 2
-CATEGORIES= audio net
-MASTER_SITES= SAVANNAH/linphone/plugins/sources/
-
-MAINTAINER= tijl@FreeBSD.org
-COMMENT= Mediastreamer plugin for the iLBC audio codec
-
-LIB_DEPENDS= libortp.so:net/ortp \
- libmediastreamer_base.so:net/mediastreamer \
- libilbc.so:net/ilbc
-
-USES= libtool pkgconfig
-GNU_CONFIGURE= yes
-CONFIGURE_ENV= ILBC_CFLAGS=-I${LOCALBASE}/include/ilbc \
- ILBC_LIBS="-L${LOCALBASE}/lib -lilbc"
-INSTALL_TARGET= install-strip
-
-.include <bsd.port.mk>
diff --git a/audio/msilbc/distinfo b/audio/msilbc/distinfo
deleted file mode 100644
index 8265dae6ba08..000000000000
--- a/audio/msilbc/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (msilbc-2.1.2.tar.gz) = d73144d6009973e6e495bc593298f0644073e296cd9febc8117079929217401e
-SIZE (msilbc-2.1.2.tar.gz) = 343286
diff --git a/audio/msilbc/pkg-descr b/audio/msilbc/pkg-descr
deleted file mode 100644
index f688ab7d9be8..000000000000
--- a/audio/msilbc/pkg-descr
+++ /dev/null
@@ -1,3 +0,0 @@
-Mediastreamer plugin for using the iLBC(TM) codec with Linphone.
-
-WWW: https://www.linphone.org/technical-corner/mediastreamer2.html
diff --git a/audio/msilbc/pkg-plist b/audio/msilbc/pkg-plist
deleted file mode 100644
index de6b68ea055f..000000000000
--- a/audio/msilbc/pkg-plist
+++ /dev/null
@@ -1,3 +0,0 @@
-lib/mediastreamer/plugins/libmsilbc.so
-lib/mediastreamer/plugins/libmsilbc.so.0
-lib/mediastreamer/plugins/libmsilbc.so.0.0.0
diff --git a/deskutils/Makefile b/deskutils/Makefile
index 96301fa2c863..27115246fb0d 100644
--- a/deskutils/Makefile
+++ b/deskutils/Makefile
@@ -16,6 +16,7 @@
SUBDIR += autocutsel
SUBDIR += baobab
SUBDIR += basket
+ SUBDIR += belcard
SUBDIR += bigyear
SUBDIR += bijiben
SUBDIR += bitcollider
diff --git a/deskutils/belcard/Makefile b/deskutils/belcard/Makefile
new file mode 100644
index 000000000000..738daf015ae4
--- /dev/null
+++ b/deskutils/belcard/Makefile
@@ -0,0 +1,23 @@
+# $FreeBSD$
+
+PORTNAME= belcard
+PORTVERSION= 1.0.2
+CATEGORIES= deskutils
+MASTER_SITES= https://www.linphone.org/releases/sources/belcard/
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= vCard support library
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
+ libbelr.so:textproc/belr
+
+USES= cmake:outsource
+USE_LDCONFIG= yes
+
+CMAKE_ARGS= -DENABLE_STATIC=NO -DENABLE_STRICT=NO -DENABLE_UNIT_TESTS=NO
+WRKSRC= ${WRKDIR}/${DISTNAME}-0
+
+.include <bsd.port.mk>
diff --git a/deskutils/belcard/distinfo b/deskutils/belcard/distinfo
new file mode 100644
index 000000000000..78caaebf8ebf
--- /dev/null
+++ b/deskutils/belcard/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1539599261
+SHA256 (belcard-1.0.2.tar.gz) = 1350f63bd183e5d8b05afa7673726362a55e196e7bde600a58cb421d28cd3e46
+SIZE (belcard-1.0.2.tar.gz) = 197955
diff --git a/deskutils/belcard/pkg-descr b/deskutils/belcard/pkg-descr
new file mode 100644
index 000000000000..19d32d2fea21
--- /dev/null
+++ b/deskutils/belcard/pkg-descr
@@ -0,0 +1,3 @@
+Belcard is a C++ library to manipulate vCard files.
+
+WWW: https://www.linphone.org/
diff --git a/deskutils/belcard/pkg-plist b/deskutils/belcard/pkg-plist
new file mode 100644
index 000000000000..d921abcbf802
--- /dev/null
+++ b/deskutils/belcard/pkg-plist
@@ -0,0 +1,25 @@
+bin/belcard-folder
+bin/belcard-parser
+bin/belcard-unfolder
+include/belcard/belcard.hpp
+include/belcard/belcard_addressing.hpp
+include/belcard/belcard_calendar.hpp
+include/belcard/belcard_communication.hpp
+include/belcard/belcard_explanatory.hpp
+include/belcard/belcard_general.hpp
+include/belcard/belcard_generic.hpp
+include/belcard/belcard_geographical.hpp
+include/belcard/belcard_identification.hpp
+include/belcard/belcard_organizational.hpp
+include/belcard/belcard_params.hpp
+include/belcard/belcard_parser.hpp
+include/belcard/belcard_property.hpp
+include/belcard/belcard_rfc6474.hpp
+include/belcard/belcard_security.hpp
+include/belcard/belcard_utils.hpp
+include/belcard/vcard_grammar.hpp
+lib/libbelcard.so
+lib/libbelcard.so.1
+share/Belcard/cmake/BelcardConfig.cmake
+share/Belcard/cmake/BelcardTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/Belcard/cmake/BelcardTargets.cmake
diff --git a/devel/libosmo-abis/Makefile b/devel/libosmo-abis/Makefile
index 619fda6c07bf..0e72082aef82 100644
--- a/devel/libosmo-abis/Makefile
+++ b/devel/libosmo-abis/Makefile
@@ -2,6 +2,7 @@
PORTNAME= libosmo-abis
PORTVERSION= 0.5.1
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= http://git.osmocom.org/libosmo-abis/snapshot/ \
http://chaosophia.net/downloads/osmocom/${PORTNAME}/
diff --git a/multimedia/Makefile b/multimedia/Makefile
index 36c2473025ab..a2c9341e73cc 100644
--- a/multimedia/Makefile
+++ b/multimedia/Makefile
@@ -26,6 +26,7 @@
SUBDIR += avidemux-qt4
SUBDIR += avinfo
SUBDIR += baka-mplayer
+ SUBDIR += bcmatroska2
SUBDIR += bino
SUBDIR += bitstream
SUBDIR += blind
@@ -283,7 +284,7 @@
SUBDIR += mpv
SUBDIR += msdl
SUBDIR += msopenh264
- SUBDIR += msx264
+ SUBDIR += mswebrtc
SUBDIR += mxflib
SUBDIR += mythtv
SUBDIR += mythtv-frontend
diff --git a/multimedia/bcmatroska2/Makefile b/multimedia/bcmatroska2/Makefile
new file mode 100644
index 000000000000..eee40b87ee84
--- /dev/null
+++ b/multimedia/bcmatroska2/Makefile
@@ -0,0 +1,16 @@
+# $FreeBSD$
+
+PORTNAME= bcmatroska2
+PORTVERSION= 0.23
+CATEGORIES= multimedia
+MASTER_SITES= https://www.linphone.org/releases/sources/bcmatroska2/
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= Belledonne Communications Matroska media container support
+
+USES= cmake:outsource
+USE_LDCONFIG= yes
+
+CMAKE_ARGS= -DENABLE_STATIC=NO
+
+.include <bsd.port.mk>
diff --git a/multimedia/bcmatroska2/distinfo b/multimedia/bcmatroska2/distinfo
new file mode 100644
index 000000000000..1591e626483d
--- /dev/null
+++ b/multimedia/bcmatroska2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1529855371
+SHA256 (bcmatroska2-0.23.tar.gz) = 2540e2d39785004060688218df2d33ddefc2561f6cf1fcdd4d2840e8c8a41ba8
+SIZE (bcmatroska2-0.23.tar.gz) = 959058
diff --git a/multimedia/bcmatroska2/files/patch-corec-corec-helpers-file-file_libc.c b/multimedia/bcmatroska2/files/patch-corec-corec-helpers-file-file_libc.c
new file mode 100644
index 000000000000..8b2c85260201
--- /dev/null
+++ b/multimedia/bcmatroska2/files/patch-corec-corec-helpers-file-file_libc.c
@@ -0,0 +1,11 @@
+--- corec/corec/helpers/file/file_libc.c.orig 2017-07-20 13:52:29 UTC
++++ corec/corec/helpers/file/file_libc.c
+@@ -40,7 +40,7 @@
+ #include <unistd.h>
+ #include <dirent.h>
+ #include <errno.h>
+-#if defined(TARGET_OSX)
++#if defined(TARGET_OSX) || defined(__FreeBSD__)
+ #include <sys/mount.h>
+ #elif defined(TARGET_QNX)
+ #include <sys/statvfs.h>
diff --git a/multimedia/bcmatroska2/pkg-descr b/multimedia/bcmatroska2/pkg-descr
new file mode 100644
index 000000000000..5d52f78c70b6
--- /dev/null
+++ b/multimedia/bcmatroska2/pkg-descr
@@ -0,0 +1,3 @@
+This library provides support for Matroska, a media container format.
+
+WWW: https://www.linphone.org/
diff --git a/multimedia/bcmatroska2/pkg-plist b/multimedia/bcmatroska2/pkg-plist
new file mode 100644
index 000000000000..621a87a1b307
--- /dev/null
+++ b/multimedia/bcmatroska2/pkg-plist
@@ -0,0 +1,43 @@
+include/corec/array/array.h
+include/corec/banned.h
+include/corec/confhelper.h
+include/corec/config.h
+include/corec/corec.h
+include/corec/err.h
+include/corec/helper.h
+include/corec/helpers/charconvert/charconvert.h
+include/corec/helpers/date/date.h
+include/corec/helpers/file/file.h
+include/corec/helpers/file/streams.h
+include/corec/helpers/md5/md5.h
+include/corec/helpers/parser/buffer.h
+include/corec/helpers/parser/dataheap.h
+include/corec/helpers/parser/hotkey.h
+include/corec/helpers/parser/nodelookup.h
+include/corec/helpers/parser/parser.h
+include/corec/helpers/parser/strtab.h
+include/corec/helpers/parser/strtypes.h
+include/corec/helpers/parser/urlpart.h
+include/corec/helpers/system/ccsystem.h
+include/corec/memalloc.h
+include/corec/memheap.h
+include/corec/multithread/multithread.h
+include/corec/node/node.h
+include/corec/node/node_internal.h
+include/corec/node/nodebase.h
+include/corec/node/nodetools.h
+include/corec/node/nodetree.h
+include/corec/portab.h
+include/corec/str/str.h
+include/ebml/ebml.h
+include/ebml/ebml_internal.h
+include/matroska/matroska.h
+include/matroska/matroska_internal.h
+include/matroska/matroska_sem.h
+lib/libbcmatroska2.so
+lib/libbcmatroska2.so.0
+lib/libbcmatroska2.so.0.0.0
+%%DATADIR%%/cmake/BcMatroska2Config.cmake
+%%DATADIR%%/cmake/BcMatroska2ConfigVersion.cmake
+%%DATADIR%%/cmake/BcMatroska2Targets-%%CMAKE_BUILD_TYPE%%.cmake
+%%DATADIR%%/cmake/BcMatroska2Targets.cmake
diff --git a/multimedia/msopenh264/Makefile b/multimedia/msopenh264/Makefile
index 766dc8e1630a..fc37670a2e4c 100644
--- a/multimedia/msopenh264/Makefile
+++ b/multimedia/msopenh264/Makefile
@@ -1,20 +1,23 @@
# $FreeBSD$
PORTNAME= msopenh264
-PORTVERSION= 1.1.2
-PORTREVISION= 2
+PORTVERSION= 1.2.1
CATEGORIES= multimedia net
-MASTER_SITES= SAVANNAH/linphone/plugins/sources/
+MASTER_SITES= https://www.linphone.org/releases/sources/plugins/msopenh264/
-MAINTAINER= tijl@FreeBSD.org
-COMMENT= Mediastreamer plugin for H264 encoding/decoding
+MAINTAINER= ports@FreeBSD.org
+COMMENT= Mediastreamer plugin with H.264 codec
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libmediastreamer_base.so:net/mediastreamer \
- libopenh264.so:multimedia/openh264
+ libopenh264.so:multimedia/openh264 \
+ libortp.so:net/ortp
+
+USES= cmake:outsource
-USES= libtool pkgconfig
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-strict
-INSTALL_TARGET= install-strip
+CMAKE_ARGS= -DENABLE_STATIC=NO
+PLIST_FILES= lib/mediastreamer/plugins/libmsopenh264.so
.include <bsd.port.mk>
diff --git a/multimedia/msopenh264/distinfo b/multimedia/msopenh264/distinfo
index 2ec90aba377a..293e468388c3 100644
--- a/multimedia/msopenh264/distinfo
+++ b/multimedia/msopenh264/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476614735
-SHA256 (msopenh264-1.1.2.tar.gz) = 57e9d82540624afc42149fad8b2c52afddc996b418e61b9f6f7954749d59f8f3
-SIZE (msopenh264-1.1.2.tar.gz) = 373065
+TIMESTAMP = 1539620002
+SHA256 (msopenh264-1.2.1.tar.gz) = a8622752fcc8a3cbbcfb3ffa2fe0f8419aceebb8d5dc2bca03a68852bf7abd65
+SIZE (msopenh264-1.2.1.tar.gz) = 29665
diff --git a/multimedia/msopenh264/pkg-descr b/multimedia/msopenh264/pkg-descr
index 8ad878f8a6e0..636a20d8eb3f 100644
--- a/multimedia/msopenh264/pkg-descr
+++ b/multimedia/msopenh264/pkg-descr
@@ -1,3 +1,3 @@
-H264 encoder and decoder plugin for Mediastreamer based on OpenH264 codec.
+H.264 codec for Mediastreamer based on OpenH264.
WWW: https://www.linphone.org/technical-corner/mediastreamer2.html
diff --git a/multimedia/msopenh264/pkg-plist b/multimedia/msopenh264/pkg-plist
deleted file mode 100644
index 524afa419d75..000000000000
--- a/multimedia/msopenh264/pkg-plist
+++ /dev/null
@@ -1,3 +0,0 @@
-lib/mediastreamer/plugins/libmsopenh264.so
-lib/mediastreamer/plugins/libmsopenh264.so.0
-lib/mediastreamer/plugins/libmsopenh264.so.0.0.0
diff --git a/multimedia/mswebrtc/Makefile b/multimedia/mswebrtc/Makefile
new file mode 100644
index 000000000000..e93d049253ac
--- /dev/null
+++ b/multimedia/mswebrtc/Makefile
@@ -0,0 +1,23 @@
+# $FreeBSD$
+
+PORTNAME= mswebrtc
+PORTVERSION= 1.1.1
+CATEGORIES= multimedia net
+MASTER_SITES= https://www.linphone.org/releases/sources/plugins/mswebrtc/
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= Mediastreamer plugin with WebRTC codecs
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
+ libmediastreamer_base.so:net/mediastreamer \
+ libortp.so:net/ortp
+
+USES= cmake:outsource
+
+CMAKE_ARGS= -DENABLE_STATIC=NO
+PLIST_FILES= lib/mediastreamer/plugins/libmswebrtc.so
+
+.include <bsd.port.mk>
diff --git a/multimedia/mswebrtc/distinfo b/multimedia/mswebrtc/distinfo
new file mode 100644
index 000000000000..1125cfe06161
--- /dev/null
+++ b/multimedia/mswebrtc/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1539620822
+SHA256 (mswebrtc-1.1.1.tar.gz) = 19d7836aec6db16c9ccb65d168eb2b87ab039c04af13632b861afa9a284442f2
+SIZE (mswebrtc-1.1.1.tar.gz) = 2360979
diff --git a/multimedia/msx264/pkg-descr b/multimedia/mswebrtc/pkg-descr
index 59164264358d..48622daf2767 100644
--- a/multimedia/msx264/pkg-descr
+++ b/multimedia/mswebrtc/pkg-descr
@@ -1,3 +1,3 @@
-H264 encoder plugin for Mediastreamer based on libx264.
+WebRTC codecs for Mediastreamer (iSAC, AEC, iLBC).
WWW: https://www.linphone.org/technical-corner/mediastreamer2.html
diff --git a/multimedia/msx264/Makefile b/multimedia/msx264/Makefile
deleted file mode 100644
index dbc608132ac5..000000000000
--- a/multimedia/msx264/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-# $FreeBSD$
-
-PORTNAME= msx264
-PORTVERSION= 1.5.2
-PORTREVISION= 5
-CATEGORIES= multimedia net
-MASTER_SITES= SAVANNAH/linphone/plugins/sources/
-
-MAINTAINER= tijl@FreeBSD.org
-COMMENT= Mediastreamer plugin for H264 encoding
-
-LICENSE= GPLv2
-LICENSE_FILE= ${WRKSRC}/COPYING
-
-LIB_DEPENDS= libmediastreamer_base.so:net/mediastreamer \
- libx264.so:multimedia/libx264
-
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-strict
-INSTALL_TARGET= install-strip
-USES= libtool pkgconfig
-
-.include <bsd.port.mk>
diff --git a/multimedia/msx264/distinfo b/multimedia/msx264/distinfo
deleted file mode 100644
index 5d9b2bbdf00a..000000000000
--- a/multimedia/msx264/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (msx264-1.5.2.tar.gz) = e82e5142b479f331d09dfe858857d6311ccd149ff8f6c5c63b03151fb7b5a88a
-SIZE (msx264-1.5.2.tar.gz) = 359877
diff --git a/multimedia/msx264/pkg-plist b/multimedia/msx264/pkg-plist
deleted file mode 100644
index 5f410948abd9..000000000000
--- a/multimedia/msx264/pkg-plist
+++ /dev/null
@@ -1,3 +0,0 @@
-lib/mediastreamer/plugins/libmsx264.so
-lib/mediastreamer/plugins/libmsx264.so.0
-lib/mediastreamer/plugins/libmsx264.so.0.0.0
diff --git a/net/Makefile b/net/Makefile
index 9b4b6eb500e5..92489b6504cd 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -383,6 +383,7 @@
SUBDIR += libksieve
SUBDIR += libkvkontakte
SUBDIR += libkvkontakte-kde4
+ SUBDIR += liblinphone
SUBDIR += libmaia
SUBDIR += libmateweather
SUBDIR += libmaxminddb
diff --git a/net/bctoolbox/Makefile b/net/bctoolbox/Makefile
index 6d2cc398263c..1d1073d873e8 100644
--- a/net/bctoolbox/Makefile
+++ b/net/bctoolbox/Makefile
@@ -1,13 +1,11 @@
-# Created by: Maxim Sobolev <sobomax@FreeBSD.org>
# $FreeBSD$
PORTNAME= bctoolbox
-PORTVERSION= 0.2.0
-PORTREVISION= 6
+PORTVERSION= 0.6.0
CATEGORIES= net
-MASTER_SITES= SAVANNAH/linphone/bctoolbox
+MASTER_SITES= https://www.linphone.org/releases/sources/bctoolbox/
-MAINTAINER= tijl@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= Belledonne Communications utility library
LICENSE= GPLv2+
@@ -16,14 +14,14 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= mbedtls>=2.3.0_2:security/mbedtls
LIB_DEPENDS= libmbedtls.so:security/mbedtls
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-strict
-CPPFLAGS+= -DHAVE_ARC4RANDOM -DHAVE_DTLS_SRTP
-INSTALL_TARGET= install-strip
-USES= libtool pathfix pkgconfig
+USES= cmake:outsource
USE_LDCONFIG= yes
-post-install:
- ${RM} ${STAGEDIR}${PREFIX}/libdata/pkgconfig/bctoolbox-tester.pc
+CFLAGS+= -DHAVE_ARC4RANDOM
+CMAKE_ARGS= -DENABLE_STATIC=NO -DENABLE_STRICT=NO \
+ -DENABLE_TESTS_COMPONENT=NO
+
+post-patch:
+ @${REINPLACE_CMD} '/clock_gettime/d' ${WRKSRC}/CMakeLists.txt
.include <bsd.port.mk>
diff --git a/net/bctoolbox/distinfo b/net/bctoolbox/distinfo
index 01346451a443..551da5d7beaf 100644
--- a/net/bctoolbox/distinfo
+++ b/net/bctoolbox/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476352142
-SHA256 (bctoolbox-0.2.0.tar.gz) = a5d37036169dbf51bb67c705dacd300d1d9e3cd3642cef8df6dc630397d93b92
-SIZE (bctoolbox-0.2.0.tar.gz) = 439179
+TIMESTAMP = 1505998461
+SHA256 (bctoolbox-0.6.0.tar.gz) = 4657e1970df262f77e47dee63b1135a5e063b63b0c42cfe7f41642b22e3831a8
+SIZE (bctoolbox-0.6.0.tar.gz) = 111344
diff --git a/net/bctoolbox/files/patch-configure b/net/bctoolbox/files/patch-configure
deleted file mode 100644
index 6fe21d268482..000000000000
--- a/net/bctoolbox/files/patch-configure
+++ /dev/null
@@ -1,19 +0,0 @@
---- configure.orig 2016-08-11 12:03:20 UTC
-+++ configure
-@@ -16340,7 +16340,7 @@ fi
-
-
- if test "$mbedtls_prefix" != "/usr" ; then
-- MBEDTLS_CFLAGS="-I${mbedtls_prefix}"
-+ MBEDTLS_CFLAGS="-I${mbedtls_prefix}/include"
- MBEDTLS_LIBS="-L${mbedtls_prefix}/lib"
- fi
-
-@@ -16408,7 +16408,6 @@ fi
-
-
- if test "$cunit_found" != "true" ; then
-- as_fn_error $? "\"CUnit not found\"" "$LINENO" 5
- else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CU_get_suite in -lcunit" >&5
diff --git a/net/bctoolbox/files/patch-src-CMakeLists.txt b/net/bctoolbox/files/patch-src-CMakeLists.txt
new file mode 100644
index 000000000000..c8969d2f44a8
--- /dev/null
+++ b/net/bctoolbox/files/patch-src-CMakeLists.txt
@@ -0,0 +1,10 @@
+--- src/CMakeLists.txt.orig 2017-07-17 12:16:03 UTC
++++ src/CMakeLists.txt
+@@ -119,6 +119,7 @@ if(ENABLE_SHARED)
+ )
+ endif()
+ endif()
++ target_link_libraries(bctoolbox PRIVATE execinfo)
+ if(HAVE_LIBRT)
+ target_link_libraries(bctoolbox PRIVATE rt)
+ endif()
diff --git a/net/bctoolbox/files/patch-src-Makefile.in b/net/bctoolbox/files/patch-src-Makefile.in
deleted file mode 100644
index 5481f452ca49..000000000000
--- a/net/bctoolbox/files/patch-src-Makefile.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/Makefile.in.orig 2016-08-11 12:03:19 UTC
-+++ src/Makefile.in
-@@ -378,7 +378,7 @@ target_vendor = @target_vendor@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--lib_LTLIBRARIES = libbctoolbox.la libbctoolbox-tester.la
-+lib_LTLIBRARIES = libbctoolbox.la
- libbctoolbox_la_SOURCES = vfs.c utils/port.c logging/logging.c \
- containers/list.c containers/map.cc $(am__append_1) \
- $(am__append_2) $(am__append_3)
diff --git a/net/bctoolbox/files/patch-src-utils-port.c b/net/bctoolbox/files/patch-src-utils-port.c
index 40186898ca93..755fd32a214c 100644
--- a/net/bctoolbox/files/patch-src-utils-port.c
+++ b/net/bctoolbox/files/patch-src-utils-port.c
@@ -1,11 +1,11 @@
---- src/utils/port.c.orig 2016-08-11 09:23:51 UTC
+--- src/utils/port.c.orig 2017-07-17 12:16:03 UTC
+++ src/utils/port.c
-@@ -1238,7 +1238,7 @@ void bctbx_sockaddr_remove_nat64_mapping
+@@ -1331,7 +1331,7 @@ void bctbx_sockaddr_remove_nat64_mapping(const struct
+ if (htonl(0x0064ff9b) ==
#ifdef _MSC_VER
- if ((((in6->sin6_addr.u.Word[0] << 16) & in6->sin6_addr.u.Word[1]) == htonl(0x0064))
- && (((in6->sin6_addr.u.Word[2] << 16) & in6->sin6_addr.u.Word[3]) == htonl(0xff9b))) {
+ ((in6->sin6_addr.u.Word[0] << 16) & in6->sin6_addr.u.Word[1])
-#elif __APPLE__
+#elif __APPLE__ || __FreeBSD__
- if ((in6->sin6_addr.__u6_addr.__u6_addr32[0] == htonl(0x0064)) && (in6->sin6_addr.__u6_addr.__u6_addr32[1] == htonl(0xff9b))) {
+ in6->sin6_addr.__u6_addr.__u6_addr32[0]
#else
- if ((in6->sin6_addr.s6_addr32[0] == htonl(0x0064)) && (in6->sin6_addr.s6_addr32[1] == htonl(0xff9b))) {
+ in6->sin6_addr.s6_addr32[0]
diff --git a/net/bctoolbox/pkg-plist b/net/bctoolbox/pkg-plist
index 4344c00c8e1d..afbada4891d4 100644
--- a/net/bctoolbox/pkg-plist
+++ b/net/bctoolbox/pkg-plist
@@ -1,11 +1,20 @@
include/bctoolbox/crypto.h
+include/bctoolbox/defs.h
+include/bctoolbox/exception.hh
include/bctoolbox/list.h
include/bctoolbox/logging.h
include/bctoolbox/map.h
+include/bctoolbox/parser.h
include/bctoolbox/port.h
-include/bctoolbox/tester.h
+include/bctoolbox/vconnect.h
include/bctoolbox/vfs.h
lib/libbctoolbox.so
-lib/libbctoolbox.so.0
-lib/libbctoolbox.so.0.0.0
+lib/libbctoolbox.so.1
libdata/pkgconfig/bctoolbox.pc
+%%DATADIR%%/cmake/BcGitVersion.cmake
+%%DATADIR%%/cmake/BcToolboxCMakeUtils.cmake
+%%DATADIR%%/cmake/BcToolboxConfig.cmake
+%%DATADIR%%/cmake/BcToolboxConfigVersion.cmake
+%%DATADIR%%/cmake/BcToolboxTargets-%%CMAKE_BUILD_TYPE%%.cmake
+%%DATADIR%%/cmake/BcToolboxTargets.cmake
+%%DATADIR%%/cmake/gitversion.h.in
diff --git a/net/belle-sip/Makefile b/net/belle-sip/Makefile
index dceacbc31fb0..4dda0546c34d 100644
--- a/net/belle-sip/Makefile
+++ b/net/belle-sip/Makefile
@@ -1,10 +1,9 @@
# $FreeBSD$
PORTNAME= belle-sip
-PORTVERSION= 1.5.0
-PORTREVISION= 4
+PORTVERSION= 1.6.3
CATEGORIES= net java
-MASTER_SITES= SAVANNAH/linphone/${PORTNAME}/ \
+MASTER_SITES= https://www.linphone.org/releases/sources/belle-sip/ \
http://www.antlr3.org/download/:source2
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
antlr-3.4-complete.jar:source2
@@ -13,7 +12,7 @@ EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= bofh@FreeBSD.org
COMMENT= Belle-sip is a SIP (RFC3261) implementation written in C
-LICENSE= GPLv2
+LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
BROKEN_aarch64= fails to build: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
@@ -21,23 +20,20 @@ BROKEN_aarch64= fails to build: Exception in thread "main" java.lang.OutOfMemor
LIB_DEPENDS= libantlr3c.so:devel/libantlr3c \
libbctoolbox.so:net/bctoolbox
-GNU_CONFIGURE= yes
-CPPFLAGS+= -I${LOCALBASE}/include
-LIBS+= -L${LOCALBASE}/lib
-CONFIGURE_ARGS= --disable-strict --disable-tests \
- --with-antlr=${LOCALBASE}
-INSTALL_TARGET= install-strip
-USES= compiler:c11 gmake libtool pathfix pkgconfig
+USES= cmake
USE_JAVA= yes
+USE_LDCONFIG= yes
+
+CMAKE_ARGS= -DENABLE_STATIC=NO -DENABLE_STRICT=NO -DENABLE_TESTS=NO \
+ -DANTLR3_JAR_PATH:FILEPATH=${WRKDIR}/antlr3.jar
JAVA_BUILD= jre
JAVA_VERSION= 1.6+
-USE_LDCONFIG= yes
+WRKSRC= ${WRKDIR}/${DISTNAME}-0
post-extract:
- @${CP} ${DISTDIR}/antlr-3.4-complete.jar ${WRKDIR}/antlr-complete.jar
+ @${CP} ${DISTDIR}/antlr-3.4-complete.jar ${WRKDIR}/antlr3.jar
post-patch:
- @${REINPLACE_CMD} -e 's|%%WRKDIR%%|${WRKDIR}|' -e 's|-lrt||' \
- ${WRKSRC}/configure
+ @${REINPLACE_CMD} '/clock_gettime/d' ${WRKSRC}/CMakeLists.txt
.include <bsd.port.mk>
diff --git a/net/belle-sip/distinfo b/net/belle-sip/distinfo
index a7aad5d72509..dbadde2f8d91 100644
--- a/net/belle-sip/distinfo
+++ b/net/belle-sip/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1476371157
-SHA256 (belle-sip-1.5.0.tar.gz) = 4bc44ee83f8455fb6248d3b3045c38ab6e71e6699cde3f0cc5d67493bb38a43a
-SIZE (belle-sip-1.5.0.tar.gz) = 756785
+TIMESTAMP = 1506002640
+SHA256 (belle-sip-1.6.3.tar.gz) = 3f3807078b177e50a5ed97aaf8d7f6e77532df3205153e1b2957f557df9ba568
+SIZE (belle-sip-1.6.3.tar.gz) = 610200
SHA256 (antlr-3.4-complete.jar) = 9d3e866b610460664522520f73b81777b5626fb0a282a5952b9800b751550bf7
SIZE (antlr-3.4-complete.jar) = 2388361
diff --git a/net/belle-sip/files/patch-configure b/net/belle-sip/files/patch-configure
deleted file mode 100644
index 23888e984985..000000000000
--- a/net/belle-sip/files/patch-configure
+++ /dev/null
@@ -1,44 +0,0 @@
---- configure.orig 2015-11-02 13:36:49 UTC
-+++ configure
-@@ -16787,10 +16787,10 @@ libresolv_have_res_get_servers=no
- resolv_h_hav_res_ndestroy=no
- LIBS_save=$LIBS
-
--LIBS="$LIBS -lresolv"
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h. */
-+#include <netinet/in.h>
- #include <resolv.h>
- int
- main ()
-@@ -16814,7 +16814,8 @@ fi
- rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
--ac_fn_c_check_decl "$LINENO" "res_ndestroy" "ac_cv_have_decl_res_ndestroy" "#include <resolv.h>
-+ac_fn_c_check_decl "$LINENO" "res_ndestroy" "ac_cv_have_decl_res_ndestroy" "#include <netinet/in.h>
-+#include <resolv.h>
- "
- if test "x$ac_cv_have_decl_res_ndestroy" = xyes; then :
- resolv_h_hav_res_ndestroy=yes
-@@ -16877,17 +16878,11 @@ fi
-
-
- if test $ANTLR = "no" ; then
--antlr_java_prefixes="$antlr_prefix/share/java /usr/local/share/java /usr/share/java /opt/local/share/java"
-+antlr_java_prefixes="%%WRKDIR%%"
-
- for antlr_java_prefix in $antlr_java_prefixes
- do
-- antlr_jar=$antlr_java_prefix/antlr.jar
-- if test -f $antlr_jar ; then
-- break
-- else
-- antlr_jar=no
-- fi
-- antlr_jar=$antlr_java_prefix/antlr3.jar
-+ antlr_jar=$antlr_java_prefix/antlr-complete.jar
- if test -f $antlr_jar ; then
- break
- else
diff --git a/net/belle-sip/pkg-plist b/net/belle-sip/pkg-plist
index e00d8f5519bb..edce3a9205d7 100644
--- a/net/belle-sip/pkg-plist
+++ b/net/belle-sip/pkg-plist
@@ -25,8 +25,11 @@ include/belle-sip/sipstack.h
include/belle-sip/transaction.h
include/belle-sip/types.h
include/belle-sip/utils.h
-lib/libbellesip.a
+include/belle-sip/wakelock.h
lib/libbellesip.so
lib/libbellesip.so.0
-lib/libbellesip.so.0.0.0
libdata/pkgconfig/belle-sip.pc
+share/BelleSIP/cmake/BelleSIPConfig.cmake
+share/BelleSIP/cmake/BelleSIPConfigVersion.cmake
+share/BelleSIP/cmake/BelleSIPTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/BelleSIP/cmake/BelleSIPTargets.cmake
diff --git a/net/liblinphone/Makefile b/net/liblinphone/Makefile
new file mode 100644
index 000000000000..3c541ca843c7
--- /dev/null
+++ b/net/liblinphone/Makefile
@@ -0,0 +1,46 @@
+# $FreeBSD$
+
+PORTNAME= linphone
+PORTVERSION= 3.12.0
+CATEGORIES= net
+MASTER_SITES= https://www.linphone.org/releases/sources/linphone/
+PKGNAMEPREFIX= lib
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= SIP library supporting voice/video calls and text messaging
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= doxygen:devel/doxygen \
+ ${PYTHON_PKGNAMEPREFIX}pystache>=0:textproc/py-pystache@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR}
+LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
+ libbelcard.so:deskutils/belcard \
+ libbellesip.so:net/belle-sip \
+ libbzrtp.so:security/bzrtp \
+ libmediastreamer_base.so:net/mediastreamer \
+ libortp.so:net/ortp \
+ libsqlite3.so:databases/sqlite3
+
+USES= cmake:outsource gnome iconv pkgconfig python:build
+USE_GNOME= libxml2
+USE_LDCONFIG= yes
+
+CMAKE_ARGS= -DENABLE_NLS=NO -DENABLE_STATIC=NO -DENABLE_STRICT=NO \
+ -DENABLE_UNIT_TESTS=NO
+
+OPTIONS_DEFINE= LDAP VIDEO
+OPTIONS_DEFAULT=LDAP VIDEO
+OPTIONS_SUB= yes
+
+LDAP_CMAKE_BOOL= ENABLE_LDAP
+LDAP_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2
+LDAP_USE= OPENLDAP=yes
+
+VIDEO_CMAKE_BOOL= ENABLE_VIDEO
+
+post-install:
+ ${RM} -r ${STAGEDIR}${PREFIX}/share/doc/${DISTNAME}
+
+.include <bsd.port.mk>
diff --git a/net/liblinphone/distinfo b/net/liblinphone/distinfo
new file mode 100644
index 000000000000..84e930f63c4e
--- /dev/null
+++ b/net/liblinphone/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1538743344
+SHA256 (linphone-3.12.0.tar.gz) = 3da4fa55c01aa4a04923a8f028eb7fadeaed094614594e1a12cfb75e4a9f105e
+SIZE (linphone-3.12.0.tar.gz) = 18667484
diff --git a/net/liblinphone/files/patch-cmake-FindIntl.cmake b/net/liblinphone/files/patch-cmake-FindIntl.cmake
new file mode 100644
index 000000000000..1dac60e2d7af
--- /dev/null
+++ b/net/liblinphone/files/patch-cmake-FindIntl.cmake
@@ -0,0 +1,11 @@
+--- cmake/FindIntl.cmake.orig 2017-04-06 09:25:59 UTC
++++ cmake/FindIntl.cmake
+@@ -41,7 +41,7 @@ if(INTL_INCLUDE_DIRS)
+ endif()
+
+ set(INTL_ARGS INTL_INCLUDE_DIRS HAVE_LIBINTL_H)
+-if(NOT UNIX OR APPLE)
++if(NOT UNIX OR APPLE OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly")
+ find_library(INTL_LIBRARIES
+ NAMES intl
+ HINTS ${_INTL_ROOT_PATHS}
diff --git a/net/linphone/files/patch-coreapi__presence.c b/net/liblinphone/files/patch-coreapi__presence.c
index 6037b65a5f66..6037b65a5f66 100644
--- a/net/linphone/files/patch-coreapi__presence.c
+++ b/net/liblinphone/files/patch-coreapi__presence.c
diff --git a/net/liblinphone/files/patch-wrappers-cpp-genwrapper.py b/net/liblinphone/files/patch-wrappers-cpp-genwrapper.py
new file mode 100644
index 000000000000..038b8172b77f
--- /dev/null
+++ b/net/liblinphone/files/patch-wrappers-cpp-genwrapper.py
@@ -0,0 +1,11 @@
+--- wrappers/cpp/genwrapper.py.orig 2017-06-20 10:03:59 UTC
++++ wrappers/cpp/genwrapper.py
+@@ -650,6 +650,8 @@ class ClassHeader(object):
+ self._add_include(includes, 'external', 'cstdint')
+ elif _type.name == 'string':
+ self._add_include(includes, 'external', 'string')
++ elif _type.name == 'time':
++ self._add_include(includes, 'external', 'time.h')
+ elif isinstance(_type, AbsApi.ListType):
+ self._add_include(includes, 'external', 'list')
+ self._needed_includes_from_type(_type.containedTypeDesc, includes)
diff --git a/net/liblinphone/pkg-descr b/net/liblinphone/pkg-descr
new file mode 100644
index 000000000000..9846bb70fa84
--- /dev/null
+++ b/net/liblinphone/pkg-descr
@@ -0,0 +1,4 @@
+Liblinphone is a high level library integrating all the SIP call and instant
+messaging features into a single easy to use API.
+
+WWW: https://www.linphone.org/technical-corner/liblinphone.html
diff --git a/net/liblinphone/pkg-plist b/net/liblinphone/pkg-plist
new file mode 100644
index 000000000000..f6d22c4ff8f1
--- /dev/null
+++ b/net/liblinphone/pkg-plist
@@ -0,0 +1,144 @@
+bin/buddy_status
+bin/chatroom
+bin/filetransfer
+bin/helloworld
+bin/linphone-daemon
+bin/linphone-daemon-pipetest
+bin/linphonec
+bin/linphonecsh
+bin/lp-auto-answer
+bin/lp-sendmsg
+bin/lp-test-ecc
+bin/lpc2xml_test
+bin/notify
+bin/realtimetext_receiver
+bin/realtimetext_sender
+bin/registration
+bin/xml2lpc_test
+include/linphone++/account_creator.hh
+include/linphone++/account_creator_listener.hh
+include/linphone++/address.hh
+include/linphone++/auth_info.hh
+include/linphone++/buffer.hh
+include/linphone++/call.hh
+include/linphone++/call_listener.hh
+include/linphone++/call_log.hh
+include/linphone++/call_params.hh
+include/linphone++/call_stats.hh
+include/linphone++/chat_message.hh
+include/linphone++/chat_message_listener.hh
+include/linphone++/chat_room.hh
+include/linphone++/conference.hh
+include/linphone++/conference_params.hh
+include/linphone++/config.hh
+include/linphone++/content.hh
+include/linphone++/core.hh
+include/linphone++/core_listener.hh
+include/linphone++/enums.hh
+include/linphone++/error_info.hh
+include/linphone++/event.hh
+include/linphone++/factory.hh
+include/linphone++/friend.hh
+include/linphone++/friend_list.hh
+include/linphone++/friend_list_listener.hh
+include/linphone++/headers.hh
+include/linphone++/im_encryption_engine.hh
+include/linphone++/im_encryption_engine_listener.hh
+include/linphone++/im_notif_policy.hh
+include/linphone++/info_message.hh
+include/linphone++/linphone.hh
+include/linphone++/nat_policy.hh
+include/linphone++/object.hh
+include/linphone++/payload_type.hh
+include/linphone++/player.hh
+include/linphone++/player_listener.hh
+include/linphone++/presence_activity.hh
+include/linphone++/presence_model.hh
+include/linphone++/presence_note.hh
+include/linphone++/presence_person.hh
+include/linphone++/presence_service.hh
+include/linphone++/proxy_config.hh
+include/linphone++/range.hh
+include/linphone++/transports.hh
+include/linphone++/tunnel.hh
+include/linphone++/vcard.hh
+include/linphone++/video_activation_policy.hh
+include/linphone++/video_definition.hh
+include/linphone++/xml_rpc_request.hh
+include/linphone++/xml_rpc_request_listener.hh
+include/linphone++/xml_rpc_session.hh
+include/linphone/account_creator.h
+include/linphone/account_creator_service.h
+include/linphone/address.h
+include/linphone/auth_info.h
+include/linphone/buffer.h
+include/linphone/call.h
+include/linphone/call_log.h
+include/linphone/call_params.h
+include/linphone/call_stats.h
+include/linphone/callbacks.h
+include/linphone/chat.h
+include/linphone/conference.h
+include/linphone/contactprovider.h
+include/linphone/content.h
+include/linphone/core.h
+include/linphone/core_utils.h
+include/linphone/defs.h
+include/linphone/dictionary.h
+include/linphone/error_info.h
+include/linphone/event.h
+include/linphone/factory.h
+include/linphone/friend.h
+include/linphone/friendlist.h
+include/linphone/headers.h
+include/linphone/im_encryption_engine.h
+include/linphone/im_notif_policy.h
+include/linphone/info_message.h
+include/linphone/ldapprovider.h
+include/linphone/linphone_proxy_config.h
+include/linphone/linphone_tunnel.h
+include/linphone/linphonecore.h
+include/linphone/linphonecore_utils.h
+include/linphone/linphonefriend.h
+include/linphone/linphonepresence.h
+include/linphone/lpconfig.h
+include/linphone/misc.h
+include/linphone/nat_policy.h
+include/linphone/payload_type.h
+include/linphone/player.h
+include/linphone/presence.h
+include/linphone/proxy_config.h
+include/linphone/ringtoneplayer.h
+include/linphone/sipsetup.h
+include/linphone/tunnel.h
+include/linphone/types.h
+include/linphone/vcard.h
+include/linphone/video_definition.h
+include/linphone/wrapper_utils.h
+include/linphone/xmlrpc.h
+lib/liblinphone++.so
+lib/liblinphone++.so.9
+lib/liblinphone.so
+lib/liblinphone.so.9
+share/Linphone/cmake/LinphoneConfig.cmake
+share/Linphone/cmake/LinphoneConfigVersion.cmake
+share/Linphone/cmake/LinphoneTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/Linphone/cmake/LinphoneTargets.cmake
+share/LinphoneCxx/cmake/LinphoneCxxConfig.cmake
+share/LinphoneCxx/cmake/LinphoneCxxTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/LinphoneCxx/cmake/LinphoneCxxTargets.cmake
+share/LinphoneCxx/cmake/LinphoneCxxVersion.cmake
+%%DATADIR%%/rootca.pem
+share/sounds/linphone/dont_wait_too_long.mkv
+share/sounds/linphone/hello16000.wav
+share/sounds/linphone/hello8000.wav
+share/sounds/linphone/incoming_chat.wav
+share/sounds/linphone/ringback.wav
+share/sounds/linphone/rings/four_hands_together.mkv
+share/sounds/linphone/rings/house_keeping.mkv
+share/sounds/linphone/rings/its_a_game.mkv
+share/sounds/linphone/rings/leaving_dreams.mkv
+share/sounds/linphone/rings/notes_of_the_optimistic.mkv
+share/sounds/linphone/rings/oldphone-mono.wav
+share/sounds/linphone/rings/soft_as_snow.mkv
+share/sounds/linphone/toy-mono.wav
diff --git a/net/linphone/Makefile b/net/linphone/Makefile
index 78f53fd604d9..2448bcd59b17 100644
--- a/net/linphone/Makefile
+++ b/net/linphone/Makefile
@@ -1,65 +1,25 @@
# $FreeBSD$
PORTNAME= linphone
-PORTVERSION= 3.10.2
-PORTREVISION= 2
+PORTVERSION= 4.1.1
PORTEPOCH= 1
CATEGORIES= net
-MASTER_SITES= SAVANNAH/linphone/3.10.x/sources
+MASTER_SITES= https://www.linphone.org/releases/sources/linphoneqt/
+DISTNAME= linphoneqt-${PORTVERSION}
-MAINTAINER= tijl@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= SIP client supporting voice/video calls and text messaging
LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
- libbellesip.so:net/belle-sip \
- libmediastreamer_base.so:net/mediastreamer \
- libortp.so:net/ortp \
- libsqlite3.so:databases/sqlite3
+ libbelcard.so:deskutils/belcard \
+ liblinphone++.so:net/liblinphone
-CONFLICTS_INSTALL= linphone-base-[0-9]*
+USES= cmake:outsource pkgconfig qt:5
+USE_QT= concurrent core gui linguisttools network qml quick \
+ quickcontrols2 speech svg testlib widgets
-GNU_CONFIGURE= yes
-CONFIGURE_ENV= OBJC="${CC}"
-CONFIGURE_ARGS= --disable-deplibs-link --disable-documentation \
- --disable-speex --disable-strict \
- --disable-tutorials \
- --enable-external-mediastreamer --enable-external-ortp \
- --enable-lime \
- --with-readline=${LOCALBASE}
-CPPFLAGS+= -I${LOCALBASE}/include
-LIBS+= -L${LOCALBASE}/lib
-INSTALLS_ICONS= yes
-INSTALL_TARGET= install-strip
-USES= gettext-tools gmake gnome iconv libtool pathfix pkgconfig \
- readline:port
-USE_GNOME= gtk20 intltool libxml2
-USE_LDCONFIG= yes
-USE_XORG= x11
-
-OPTIONS_DEFINE= LDAP NLS NOTIFY UPNP VIDEO
-OPTIONS_DEFAULT=NOTIFY UPNP VIDEO
-OPTIONS_SUB= yes
-
-LDAP_CONFIGURE_ENABLE= ldap
-LDAP_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2
-LDAP_USE= OPENLDAP=yes
-
-NLS_CONFIGURE_ENABLE= nls
-NLS_USES= gettext-runtime
-
-NOTIFY_CONFIGURE_ENABLE=notify
-NOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify
-
-UPNP_CONFIGURE_ENABLE= upnp
-UPNP_LIB_DEPENDS= libupnp.so:devel/upnp
-
-VIDEO_CONFIGURE_ENABLE= video
-
-.if defined(WITH_DEBUG)
-CONFIGURE_ARGS+=--enable-debug
-.endif
-
-post-install:
- ${RM} -r ${STAGEDIR}${PREFIX}/share/gnome
+post-patch:
+ @${REINPLACE_CMD} 's/LINPHONE_QT_GIT_VERSION/"${PORTVERSION}"/' \
+ ${WRKSRC}/src/app/AppController.cpp
.include <bsd.port.mk>
diff --git a/net/linphone/distinfo b/net/linphone/distinfo
index eabd63efafe9..9c4875b94baf 100644
--- a/net/linphone/distinfo
+++ b/net/linphone/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476459045
-SHA256 (linphone-3.10.2.tar.gz) = 37cac1f4daa55fcd395b7b49925c01d1638b9d941c66d626ca36a9679332384c
-SIZE (linphone-3.10.2.tar.gz) = 25017003
+TIMESTAMP = 1538765035
+SHA256 (linphoneqt-4.1.1.tar.gz) = 4a00c0cc2861089f8d3a1d0af1cde8ad4094f23640fb6df483e1814853ce5fbc
+SIZE (linphoneqt-4.1.1.tar.gz) = 1820252
diff --git a/net/linphone/files/patch-00-ecaab0f b/net/linphone/files/patch-00-ecaab0f
new file mode 100644
index 000000000000..daad35e8c955
--- /dev/null
+++ b/net/linphone/files/patch-00-ecaab0f
@@ -0,0 +1,93 @@
+From ecaab0f73d0b74bbfbf150286305fa6e12970037 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Fri, 19 Jan 2018 14:42:01 +0100
+Subject: [PATCH] fix(SettingsWindow): rename icon property of TabButton to
+ iconName (issue with Qt 5.10 and new icon property)
+
+---
+ ui/modules/Common/Form/Tab/TabButton.qml | 8 ++++----
+ ui/views/App/Settings/SettingsWindow.qml | 14 +++++++-------
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/ui/modules/Common/Form/Tab/TabButton.qml b/ui/modules/Common/Form/Tab/TabButton.qml
+index ad220ab2..a47bb20b 100644
+--- ui/modules/Common/Form/Tab/TabButton.qml
++++ ui/modules/Common/Form/Tab/TabButton.qml
+@@ -12,8 +12,8 @@ Controls.TabButton {
+
+ // ---------------------------------------------------------------------------
+
+- property string icon
+ property int iconSize: TabButtonStyle.icon.size
++ property string iconName
+
+ readonly property bool _isSelected: parent.parent.currentItem === button
+
+@@ -66,9 +66,9 @@ Controls.TabButton {
+ Layout.leftMargin: TabButtonStyle.text.leftPadding
+
+ icon: {
+- var icon = button.icon
+- return icon.length
+- ? (icon + '_' + (button._isSelected ? 'selected' : 'normal'))
++ var iconName = button.iconName
++ return iconName.length
++ ? (iconName + '_' + (button._isSelected ? 'selected' : 'normal'))
+ : ''
+ }
+ iconSize: button.iconSize
+diff --git a/ui/views/App/Settings/SettingsWindow.qml b/ui/views/App/Settings/SettingsWindow.qml
+index b8f5a80f..58909544 100644
+--- ui/views/App/Settings/SettingsWindow.qml
++++ ui/views/App/Settings/SettingsWindow.qml
+@@ -48,43 +48,43 @@ ApplicationWindow {
+ id: tabBar
+
+ TabButton {
+- icon: 'settings_sip_accounts'
++ iconName: 'settings_sip_accounts'
+ text: qsTr('sipAccountsTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_audio'
++ iconName: 'settings_audio'
+ text: qsTr('audioTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_video'
++ iconName: 'settings_video'
+ text: qsTr('videoTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_call'
++ iconName: 'settings_call'
+ text: qsTr('callsAndChatTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_network'
++ iconName: 'settings_network'
+ text: qsTr('networkTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_advanced'
++ iconName: 'settings_advanced'
+ text: qsTr('uiTab')
+ width: implicitWidth
+ }
+
+ TabButton {
+- icon: 'settings_advanced'
++ iconName: 'settings_advanced'
+ text: qsTr('uiAdvanced')
+ width: implicitWidth
+ }
diff --git a/net/linphone/files/patch-01-5dd0161 b/net/linphone/files/patch-01-5dd0161
new file mode 100644
index 000000000000..a920b8567761
--- /dev/null
+++ b/net/linphone/files/patch-01-5dd0161
@@ -0,0 +1,74 @@
+From 5dd0161a68db97dd1bb1c367630821e61eae3584 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Mon, 22 Jan 2018 11:04:26 +0100
+Subject: [PATCH] feat(app): try to support menu bar between qt 5.9 and qt 5.10
+
+---
+ resources.qrc | 2 +
+ src/app/App.cpp | 12 ++-
+ ui/views/App/Main/+5.9/MainWindowMenuBar.qml | 79 ++++++++++++++++++++
+ ui/views/App/Main/+mac/MainWindowMenuBar.qml | 79 ++++++++++++++++++++
+ ui/views/App/Main/MainWindowMenuBar.qml | 37 ++++-----
+ 5 files changed, 184 insertions(+), 25 deletions(-)
+ create mode 100644 ui/views/App/Main/+5.9/MainWindowMenuBar.qml
+ create mode 100644 ui/views/App/Main/+mac/MainWindowMenuBar.qml
+
+diff --git a/ui/views/App/Main/MainWindowMenuBar.qml b/ui/views/App/Main/MainWindowMenuBar.qml
+index 48a0dde3..e32b8fe3 100644
+--- ui/views/App/Main/MainWindowMenuBar.qml
++++ ui/views/App/Main/MainWindowMenuBar.qml
+@@ -1,7 +1,5 @@
+ import QtQuick 2.7
+-
+-// Experimental.
+-import Qt.labs.platform 1.0
++import QtQuick.Controls 2.3
+
+ import Linphone 1.0
+
+@@ -48,32 +46,25 @@ Item {
+ // Menu.
+ // ---------------------------------------------------------------------------
+
+- MenuBar {
+- Menu {
+- id: menu
++ Menu {
++ id: menu
+
+- MenuItem {
+- role: MenuItem.PreferencesRole
+- shortcut: settingsShortcut.sequence
+- text: qsTr('settings')
++ MenuItem {
++ text: qsTr('settings')
+
+- onTriggered: settingsShortcut.onActivated()
+- }
++ onTriggered: settingsShortcut.onActivated()
++ }
+
+- MenuItem {
+- role: MenuItem.AboutRole
+- text: qsTr('about')
++ MenuItem {
++ text: qsTr('about')
+
+- onTriggered: aboutShortcut.onActivated()
+- }
++ onTriggered: aboutShortcut.onActivated()
++ }
+
+- MenuItem {
+- role: MenuItem.QuitRole
+- shortcut: quitShortcut.sequence
+- text: qsTr('quit')
++ MenuItem {
++ text: qsTr('quit')
+
+- onTriggered: quitShortcut.onActivated()
+- }
++ onTriggered: quitShortcut.onActivated()
+ }
+ }
+ }
diff --git a/net/linphone/files/patch-02-c840bba b/net/linphone/files/patch-02-c840bba
new file mode 100644
index 000000000000..1f0df996faca
--- /dev/null
+++ b/net/linphone/files/patch-02-c840bba
@@ -0,0 +1,216 @@
+From c840bbab8ca823f4cca0b70f6e692a38933449d8 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Fri, 15 Jun 2018 11:55:59 +0200
+Subject: [PATCH] fix(Timeline.qml): do not anchors rectangle in ColumnLayout
+ (Qt5.11)
+
+---
+ ui/modules/Linphone/Timeline/Timeline.qml | 168 +++++++++++-----------
+ 1 file changed, 83 insertions(+), 85 deletions(-)
+
+diff --git a/ui/modules/Linphone/Timeline/Timeline.qml b/ui/modules/Linphone/Timeline/Timeline.qml
+index d260bd7b..95205458 100644
+--- ui/modules/Linphone/Timeline/Timeline.qml
++++ ui/modules/Linphone/Timeline/Timeline.qml
+@@ -9,7 +9,7 @@ import 'Timeline.js' as Logic
+
+ // =============================================================================
+
+-ColumnLayout {
++Rectangle {
+ id: timeline
+
+ // ---------------------------------------------------------------------------
+@@ -35,110 +35,108 @@ ColumnLayout {
+
+ // ---------------------------------------------------------------------------
+
+- spacing: 0
++ color: TimelineStyle.color
+
+- // ---------------------------------------------------------------------------
++ ColumnLayout {
++ anchors.fill: parent
++ spacing: 0
+
+- Connections {
+- target: model
++ // -------------------------------------------------------------------------
+
+- onDataChanged: Logic.handleDataChanged(topLeft, bottomRight, roles)
+- onRowsAboutToBeRemoved: Logic.handleRowsAboutToBeRemoved (parent, first, last)
+- }
++ Connections {
++ target: model
+
+- // ---------------------------------------------------------------------------
+-
+- Rectangle {
+- anchors.fill: parent
+- color: TimelineStyle.color
+- }
++ onDataChanged: Logic.handleDataChanged(topLeft, bottomRight, roles)
++ onRowsAboutToBeRemoved: Logic.handleRowsAboutToBeRemoved(parent, first, last)
++ }
+
+- // ---------------------------------------------------------------------------
+- // Legend.
+- // ---------------------------------------------------------------------------
++ // -------------------------------------------------------------------------
++ // Legend.
++ // -------------------------------------------------------------------------
+
+- Rectangle {
+- Layout.fillWidth: true
+- Layout.preferredHeight: TimelineStyle.legend.height
+- color: TimelineStyle.legend.backgroundColor
++ Rectangle {
++ Layout.fillWidth: true
++ Layout.preferredHeight: TimelineStyle.legend.height
++ color: TimelineStyle.legend.backgroundColor
+
+- Row {
+- anchors {
+- fill: parent
+- leftMargin: TimelineStyle.legend.leftMargin
+- rightMargin: TimelineStyle.legend.rightMargin
+- }
+- spacing: TimelineStyle.legend.spacing
++ Row {
++ anchors {
++ fill: parent
++ leftMargin: TimelineStyle.legend.leftMargin
++ rightMargin: TimelineStyle.legend.rightMargin
++ }
++ spacing: TimelineStyle.legend.spacing
+
+- Icon {
+- anchors.verticalCenter: parent.verticalCenter
+- icon: 'history'
+- iconSize: TimelineStyle.legend.iconSize
+- }
++ Icon {
++ anchors.verticalCenter: parent.verticalCenter
++ icon: 'history'
++ iconSize: TimelineStyle.legend.iconSize
++ }
+
+- Text {
+- color: TimelineStyle.legend.color
+- font.pointSize: TimelineStyle.legend.pointSize
+- height: parent.height
+- text: qsTr('timelineTitle')
+- verticalAlignment: Text.AlignVCenter
++ Text {
++ color: TimelineStyle.legend.color
++ font.pointSize: TimelineStyle.legend.pointSize
++ height: parent.height
++ text: qsTr('timelineTitle')
++ verticalAlignment: Text.AlignVCenter
++ }
+ }
+ }
+- }
+
+- // ---------------------------------------------------------------------------
+- // History.
+- // ---------------------------------------------------------------------------
++ // -------------------------------------------------------------------------
++ // History.
++ // -------------------------------------------------------------------------
++
++ ScrollableListView {
++ id: view
++
++ Layout.fillHeight: true
++ Layout.fillWidth: true
++ currentIndex: -1
+
+- ScrollableListView {
+- id: view
+-
+- Layout.fillHeight: true
+- Layout.fillWidth: true
+- currentIndex: -1
+-
+- delegate: Item {
+- height: TimelineStyle.contact.height
+- width: parent ? parent.width : 0
+-
+- Contact {
+- anchors.fill: parent
+- color: view.currentIndex === index
+- ? TimelineStyle.contact.backgroundColor.selected
+- : (
+- index % 2 == 0
+- ? TimelineStyle.contact.backgroundColor.a
+- : TimelineStyle.contact.backgroundColor.b
+- )
+- displayUnreadMessagesCount: view.currentIndex !== index
+- entry: $timelineEntry
+- sipAddressColor: view.currentIndex === index
+- ? TimelineStyle.contact.sipAddress.color.selected
+- : TimelineStyle.contact.sipAddress.color.normal
+- usernameColor: view.currentIndex === index
+- ? TimelineStyle.contact.username.color.selected
+- : TimelineStyle.contact.username.color.normal
+-
+- Loader {
++ delegate: Item {
++ height: TimelineStyle.contact.height
++ width: parent ? parent.width : 0
++
++ Contact {
+ anchors.fill: parent
+- sourceComponent: TooltipArea {
+- text: $timelineEntry.timestamp.toLocaleString(
+- Qt.locale(App.locale),
+- Locale.ShortFormat
++ color: view.currentIndex === index
++ ? TimelineStyle.contact.backgroundColor.selected
++ : (
++ index % 2 == 0
++ ? TimelineStyle.contact.backgroundColor.a
++ : TimelineStyle.contact.backgroundColor.b
+ )
++ displayUnreadMessagesCount: view.currentIndex !== index
++ entry: $timelineEntry
++ sipAddressColor: view.currentIndex === index
++ ? TimelineStyle.contact.sipAddress.color.selected
++ : TimelineStyle.contact.sipAddress.color.normal
++ usernameColor: view.currentIndex === index
++ ? TimelineStyle.contact.username.color.selected
++ : TimelineStyle.contact.username.color.normal
++
++ Loader {
++ anchors.fill: parent
++ sourceComponent: TooltipArea {
++ text: $timelineEntry.timestamp.toLocaleString(
++ Qt.locale(App.locale),
++ Locale.ShortFormat
++ )
++ }
+ }
+ }
+- }
+
+- MouseArea {
+- anchors.fill: parent
+- onClicked: {
+- view.currentIndex = index
+- timeline.entrySelected($timelineEntry.sipAddress)
++ MouseArea {
++ anchors.fill: parent
++ onClicked: {
++ view.currentIndex = index
++ timeline.entrySelected($timelineEntry.sipAddress)
++ }
+ }
+ }
+- }
+
+- onCountChanged: Logic.handleCountChanged(count)
++ onCountChanged: Logic.handleCountChanged(count)
++ }
+ }
+ }
diff --git a/net/linphone/files/patch-03-85c2165 b/net/linphone/files/patch-03-85c2165
new file mode 100644
index 000000000000..e542b57e4ce9
--- /dev/null
+++ b/net/linphone/files/patch-03-85c2165
@@ -0,0 +1,23 @@
+From 85c2165dd2cfaa051f2b5079406cccf363cdc0c8 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Fri, 15 Jun 2018 14:26:54 +0200
+Subject: [PATCH] fix(TabContainer.qml): do not anchors rectangle in
+ StackLayout (Qt5.11)
+
+---
+ ui/modules/Common/Form/Tab/TabContainer.qml | 1 -
+ ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml | 2 ++
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/ui/modules/Common/Form/Tab/TabContainer.qml b/ui/modules/Common/Form/Tab/TabContainer.qml
+index 1ddbcc18..1706849a 100644
+--- ui/modules/Common/Form/Tab/TabContainer.qml
++++ ui/modules/Common/Form/Tab/TabContainer.qml
+@@ -11,7 +11,6 @@ import Utils 1.0
+ Rectangle {
+ default property alias _content: content.data
+
+- anchors.fill: parent
+ color: TabContainerStyle.color
+
+ ColumnLayout {
diff --git a/net/linphone/files/patch-04-8720931 b/net/linphone/files/patch-04-8720931
new file mode 100644
index 000000000000..d55c025ae04f
--- /dev/null
+++ b/net/linphone/files/patch-04-8720931
@@ -0,0 +1,68 @@
+From 872093116f2b8cee869f38cdccf527b22d1f1ea1 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Fri, 15 Jun 2018 15:20:35 +0200
+Subject: [PATCH] fix(ExclusiveButtons.spec.qml): do not use SignalSpy in Qt
+ 5.11, click is emitted twice instead of one
+
+---
+ .../Form/Buttons/ExclusiveButtons.spec.qml | 28 ++++++++++---------
+ 1 file changed, 15 insertions(+), 13 deletions(-)
+
+diff --git a/ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml b/ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml
+index be92a1c4..0154fa95 100644
+--- ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml
++++ ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml
+@@ -27,13 +27,6 @@ Item {
+
+ texts: ['A', 'B', 'C', 'D', 'E']
+ }
+-
+- SignalSpy {
+- id: spy
+-
+- signalName: 'clicked'
+- target: exclusiveButtons
+- }
+ }
+ }
+
+@@ -54,24 +47,33 @@ Item {
+
+ function test_signals (data) {
+ var container = buildExclusiveButtons(data.defaultSelectedButton)
+- var spy = container.data[1]
+ var exclusiveButtons = container.data[0]
+-
+ var buttonToClick = data.buttonToClick
+
+ // Test default selected button.
+ compare(exclusiveButtons.selectedButton, data.defaultSelectedButton)
+
++ var button = -1
++ var count = 0
++
++ exclusiveButtons.clicked.connect(function (_button) {
++ button = _button;
++ count += 1
++ })
++
+ // Test a click to change the selected button.
+ mouseClick(exclusiveButtons.data[buttonToClick])
+- spy.wait(100)
+- compare(spy.signalArguments[0][0], buttonToClick)
++
++ compare(button, buttonToClick)
+ compare(exclusiveButtons.selectedButton, buttonToClick)
++ compare(count, 1)
+
+ // No signal must be emitted.
+ mouseClick(exclusiveButtons.data[buttonToClick])
+- wait(100)
+- compare(spy.count, 1)
++
++ compare(button, buttonToClick)
++ compare(exclusiveButtons.selectedButton, buttonToClick)
++ compare(count, 1)
+
+ container.destroy()
+ }
diff --git a/net/linphone/files/patch-05-4f908ef b/net/linphone/files/patch-05-4f908ef
new file mode 100644
index 000000000000..0a03271d9323
--- /dev/null
+++ b/net/linphone/files/patch-05-4f908ef
@@ -0,0 +1,25 @@
+From 4f908efd12647d9e603c9c6247170e127129c71a Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Wed, 20 Jun 2018 14:32:53 +0200
+Subject: [PATCH] fix(Calls): avoid a crash with a bad binding (Qt 5.11) on
+ ConferenceControls
+
+---
+ ui/modules/Linphone/Calls/Calls.qml | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/ui/modules/Linphone/Calls/Calls.qml b/ui/modules/Linphone/Calls/Calls.qml
+index 89309129..b6f95bae 100644
+--- ui/modules/Linphone/Calls/Calls.qml
++++ ui/modules/Linphone/Calls/Calls.qml
+@@ -93,9 +93,7 @@ ListView {
+ // ---------------------------------------------------------------------------
+
+ header: ConferenceControls {
+- readonly property bool isSelected: calls.currentIndex === -1 &&
+- calls._selectedCall == null &&
+- visible
++ readonly property bool isSelected: calls.currentIndex === -1 && calls._selectedCall == null
+
+ height: visible ? ConferenceControlsStyle.height : 0
+ width: parent.width
diff --git a/net/linphone/files/patch-06-70f47b0 b/net/linphone/files/patch-06-70f47b0
new file mode 100644
index 000000000000..36df71bf6395
--- /dev/null
+++ b/net/linphone/files/patch-06-70f47b0
@@ -0,0 +1,90 @@
+From 70f47b01d375ab1d3687b2d448c601fdc15fab20 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Wed, 20 Jun 2018 14:56:53 +0200
+Subject: [PATCH] fix(App): do not create windows later to avoid warning and
+ abort (QQmlComponent: Cannot create new component instance before completing
+ the previous)
+
+---
+ src/app/App.cpp | 40 +++++++++++++++++++---------------------
+ src/app/App.hpp | 4 ++--
+ 2 files changed, 21 insertions(+), 23 deletions(-)
+
+diff --git a/src/app/App.cpp b/src/app/App.cpp
+index 36b68590..12661dd4 100644
+--- src/app/App.cpp.orig
++++ src/app/App.cpp
+@@ -147,8 +147,6 @@
+ qInfo() << QStringLiteral("Restarting app...");
+ delete mEngine;
+
+- mCallsWindow = nullptr;
+- mSettingsWindow = nullptr;
+
+ CoreManager::uninit();
+
+@@ -232,10 +230,7 @@
+
+ // -----------------------------------------------------------------------------
+
+-QQuickWindow *App::getCallsWindow () {
+- if (!mCallsWindow)
+- mCallsWindow = ::createSubWindow(mEngine, QML_VIEW_CALLS_WINDOW);
+-
++QQuickWindow *App::getCallsWindow () const {
+ return mCallsWindow;
+ }
+
+@@ -245,18 +240,7 @@
+ );
+ }
+
+-QQuickWindow *App::getSettingsWindow () {
+- if (!mSettingsWindow) {
+- mSettingsWindow = ::createSubWindow(mEngine, QML_VIEW_SETTINGS_WINDOW);
+- QObject::connect(mSettingsWindow, &QWindow::visibilityChanged, this, [](QWindow::Visibility visibility) {
+- if (visibility == QWindow::Hidden) {
+- qInfo() << QStringLiteral("Update nat policy.");
+- shared_ptr<linphone::Core> core = CoreManager::getInstance()->getCore();
+- core->setNatPolicy(core->getNatPolicy());
+- }
+- });
+- }
+-
++QQuickWindow *App::getSettingsWindow () const {
+ return mSettingsWindow;
+ }
+
+@@ -504,6 +488,17 @@
+
+ void App::openAppAfterInit () {
+ qInfo() << QStringLiteral("Open linphone app.");
++
++ // Create other windows.
++ mCallsWindow = createSubWindow(mEngine, QML_VIEW_CALLS_WINDOW);
++ mSettingsWindow = createSubWindow(mEngine, QML_VIEW_SETTINGS_WINDOW);
++ QObject::connect(mSettingsWindow, &QWindow::visibilityChanged, this, [](QWindow::Visibility visibility) {
++ if (visibility == QWindow::Hidden) {
++ qInfo() << QStringLiteral("Update nat policy.");
++ shared_ptr<linphone::Core> core = CoreManager::getInstance()->getCore();
++ core->setNatPolicy(core->getNatPolicy());
++ }
++ });
+
+ QQuickWindow *mainWindow = getMainWindow();
+
+diff --git a/src/app/App.hpp b/src/app/App.hpp
+index cdae4a06..21ad9617 100644
+--- src/app/App.hpp.orig
++++ src/app/App.hpp
+@@ -79,8 +79,8 @@
+ exit(APP_CODE_RESTART);
+ }
+
+- Q_INVOKABLE QQuickWindow *getCallsWindow ();
+- Q_INVOKABLE QQuickWindow *getSettingsWindow ();
++ Q_INVOKABLE QQuickWindow *getCallsWindow () const;
++ Q_INVOKABLE QQuickWindow *getSettingsWindow () const;
+
+ Q_INVOKABLE static void smartShowWindow (QQuickWindow *window);
+
diff --git a/net/linphone/files/patch-07-7f62ae9 b/net/linphone/files/patch-07-7f62ae9
new file mode 100644
index 000000000000..cd31e792f99f
--- /dev/null
+++ b/net/linphone/files/patch-07-7f62ae9
@@ -0,0 +1,39 @@
+From 7f62ae905a92507c078ca6e43a2e5474b60baec8 Mon Sep 17 00:00:00 2001
+From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
+Date: Thu, 21 Jun 2018 11:31:33 +0200
+Subject: [PATCH] fix(ComboBox): import named QtQuick.Controls, avoid
+ `QQmlComponent: Component is not Ready` with Qt 5.11.1
+
+---
+ ui/modules/Common/Form/ComboBox.qml | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/ui/modules/Common/Form/ComboBox.qml b/ui/modules/Common/Form/ComboBox.qml
+index 9d6a93bd..2e25d01b 100644
+--- ui/modules/Common/Form/ComboBox.qml
++++ ui/modules/Common/Form/ComboBox.qml
+@@ -1,5 +1,5 @@
+ import QtQuick 2.7
+-import QtQuick.Controls 2.1
++import QtQuick.Controls 2.1 as Controls
+ import QtQuick.Layouts 1.3
+
+ import Common 1.0
+@@ -10,7 +10,7 @@ import 'ComboBox.js' as Logic
+
+ // =============================================================================
+
+-ComboBox {
++Controls.ComboBox {
+ id: comboBox
+
+ // ---------------------------------------------------------------------------
+@@ -82,7 +82,7 @@ ComboBox {
+
+ // ---------------------------------------------------------------------------
+
+- delegate: ItemDelegate {
++ delegate: Controls.ItemDelegate {
+ id: item
+
+ readonly property var flattenedModel: comboBox.textRole.length &&
diff --git a/net/linphone/files/patch-configure b/net/linphone/files/patch-configure
deleted file mode 100644
index c13221eb60ba..000000000000
--- a/net/linphone/files/patch-configure
+++ /dev/null
@@ -1,50 +0,0 @@
---- configure.orig 2016-08-30 14:20:13 UTC
-+++ configure
-@@ -20308,12 +20308,6 @@ $as_echo "#define HAVE_NOTIFY1 1" >>conf
- fi
- fi
-
--case "$host_os" in
-- *freebsd*)
-- LDFLAGS="$LDFLAGS -pthread"
-- ;;
--esac
--
- case "$host_cpu" in
- *arm*)
-
-@@ -21198,17 +21192,10 @@ fi
-
-
- if test "$lime" != "false" ; then
-- if test "x$found_polarssl" != "xyes" ; then
-- if test "$lime" = "true" ; then
-- as_fn_error $? "\"LIME requires POLARSSL in version >= 1.3\"" "$LINENO" 5
-- fi
-- lime=false
-- else
-
- $as_echo "#define HAVE_LIME 1" >>confdefs.h
-
- lime=true
-- fi
- fi
-
- if test x$console_ui = xtrue; then
-@@ -22153,14 +22140,14 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sqlite3_sqlite3_open" >&5
- $as_echo "$ac_cv_lib_sqlite3_sqlite3_open" >&6; }
- if test "x$ac_cv_lib_sqlite3_sqlite3_open" = xyes; then :
-- SQLITE3_LIBS+=" -lsqlite3 "; found_sqlite=yes
-+ SQLITE3_LIBS="$SQLITE3_LIBS -lsqlite3 "; found_sqlite=yes
- else
- foo=bar
- fi
-
- fi
- if test "$found_sqlite" = "yes"; then
-- SQLITE3_CFLAGS+=" -DSQLITE_STORAGE_ENABLED"
-+ SQLITE3_CFLAGS="$SQLITE3_CFLAGS -DSQLITE_STORAGE_ENABLED"
- if test "$build_macos" = "yes" -o "$ios_found" = "yes"; then
- SQLITE3_LIBS+=" -liconv"
- fi
diff --git a/net/linphone/files/patch-console-Makefile.in b/net/linphone/files/patch-console-Makefile.in
deleted file mode 100644
index 368924982353..000000000000
--- a/net/linphone/files/patch-console-Makefile.in
+++ /dev/null
@@ -1,10 +0,0 @@
---- console/Makefile.in.orig 2016-08-30 14:20:12 UTC
-+++ console/Makefile.in
-@@ -464,6 +464,7 @@ COMMON_CFLAGS = \
- @BUILD_CONSOLE_TRUE@linphonec_CFLAGS = $(COMMON_CFLAGS) $(CONSOLE_FLAGS) $(BELLESIP_CFLAGS)
- @BUILD_CONSOLE_TRUE@linphonec_LDADD = $(top_builddir)/coreapi/liblinphone.la \
- @BUILD_CONSOLE_TRUE@ $(READLINE_LIBS) \
-+@BUILD_CONSOLE_TRUE@ $(MEDIASTREAMER_LIBS) -lbctoolbox \
- @BUILD_CONSOLE_TRUE@ $(SQLITE3_LIBS) \
- @BUILD_CONSOLE_TRUE@ $(X11_LIBS) \
- @BUILD_CONSOLE_TRUE@ $(BELLESIP_LIBS) \
diff --git a/net/linphone/files/patch-coreapi-Makefile.in b/net/linphone/files/patch-coreapi-Makefile.in
deleted file mode 100644
index 055df309e342..000000000000
--- a/net/linphone/files/patch-coreapi-Makefile.in
+++ /dev/null
@@ -1,10 +0,0 @@
---- coreapi/Makefile.in.orig 2016-10-14 19:03:24 UTC
-+++ coreapi/Makefile.in
-@@ -640,6 +640,7 @@ liblinphone_la_LIBADD = \
- $(LDAP_LIBS) \
- $(SASL_LIBS) \
- $(BELCARD_LIBS) \
-+ $(LTLIBICONV) -lbctoolbox \
- $(ZLIB_LIBS)
-
- AM_CPPFLAGS = \
diff --git a/net/linphone/files/patch-daemon-Makefile.in b/net/linphone/files/patch-daemon-Makefile.in
deleted file mode 100644
index 51e92dc3a895..000000000000
--- a/net/linphone/files/patch-daemon-Makefile.in
+++ /dev/null
@@ -1,10 +0,0 @@
---- daemon/Makefile.in.orig 2016-08-30 14:20:12 UTC
-+++ daemon/Makefile.in
-@@ -538,6 +538,7 @@ linphone_daemon_pipetest_LDADD = $(ORTP_
- linphone_daemon_LDADD = $(top_builddir)/coreapi/liblinphone.la $(READLINE_LIBS) \
- $(MEDIASTREAMER_LIBS) \
- $(ORTP_LIBS) \
-+ -lbctoolbox \
- $(SPEEX_LIBS) \
- $(LIBXML2_LIBS)
-
diff --git a/net/linphone/files/patch-gtk-Makefile.in b/net/linphone/files/patch-gtk-Makefile.in
deleted file mode 100644
index debf522c01d4..000000000000
--- a/net/linphone/files/patch-gtk-Makefile.in
+++ /dev/null
@@ -1,10 +0,0 @@
---- gtk/Makefile.in.orig 2016-08-30 14:20:12 UTC
-+++ gtk/Makefile.in
-@@ -543,6 +543,7 @@ EXTRA_DIST = \
- @BUILD_GTK_UI_TRUE@ $(am__append_4)
- @BUILD_GTK_UI_TRUE@linphone_LDADD = \
- @BUILD_GTK_UI_TRUE@ $(top_builddir)/coreapi/liblinphone.la \
-+@BUILD_GTK_UI_TRUE@ $(MEDIASTREAMER_LIBS) -lbctoolbox \
- @BUILD_GTK_UI_TRUE@ $(LIBGTK_LIBS) $(NOTIFY1_LIBS) \
- @BUILD_GTK_UI_TRUE@ $(NOTIFY4_LIBS) $(LIBGTKMAC_LIBS) \
- @BUILD_GTK_UI_TRUE@ $(INTLLIBS) $(SQLITE3_LIBS) \
diff --git a/net/linphone/files/patch-gtk-main.c b/net/linphone/files/patch-gtk-main.c
deleted file mode 100644
index cb511cc2e03c..000000000000
--- a/net/linphone/files/patch-gtk-main.c
+++ /dev/null
@@ -1,26 +0,0 @@
---- gtk/main.c.orig 2015-05-13 14:47:31 UTC
-+++ gtk/main.c
-@@ -1919,9 +1919,7 @@ void linphone_gtk_log_handler(OrtpLogLev
- if (verbose){
- const char *lname="undef";
- char *msg;
--#if defined(__linux) || defined(__APPLE__)
- va_list cap;/*copy of our argument list: a va_list cannot be re-used (SIGSEGV on linux 64 bits)*/
--#endif
- switch(lev){
- case ORTP_DEBUG:
- lname="debug";
-@@ -1941,13 +1939,9 @@ void linphone_gtk_log_handler(OrtpLogLev
- default:
- g_error("Bad level !");
- }
--#if defined(__linux) || defined(__APPLE__)
- va_copy(cap,args);
- msg=g_strdup_vprintf(fmt,cap);
- va_end(cap);
--#else
-- msg=g_strdup_vprintf(fmt,args);
--#endif
- fprintf(stdout,"linphone-%s : %s\n",lname,msg);
- ortp_free(msg);
- }
diff --git a/net/linphone/files/patch-tools-Makefile.in b/net/linphone/files/patch-tools-Makefile.in
deleted file mode 100644
index 2fa9791c3fea..000000000000
--- a/net/linphone/files/patch-tools-Makefile.in
+++ /dev/null
@@ -1,20 +0,0 @@
---- tools/Makefile.in.orig 2016-10-14 20:18:07 UTC
-+++ tools/Makefile.in
-@@ -539,14 +539,15 @@ EXTRA_DIST = xml2lpc_jni.cc lpc2xml_jni.
- @BUILD_TOOLS_TRUE@lp_autoanswer_CFLAGS = $(COMMON_CFLAGS)
- @BUILD_TOOLS_TRUE@lp_autoanswer_LDADD = \
- @BUILD_TOOLS_TRUE@ $(top_builddir)/coreapi/liblinphone.la \
-+@BUILD_TOOLS_TRUE@ -lbctoolbox \
- @BUILD_TOOLS_TRUE@ $(MEDIASTREAMER_LIBS)
-
- @BUILD_TOOLS_TRUE@lp_test_ecc_SOURCES = test_ecc.c
- @BUILD_TOOLS_TRUE@lp_test_ecc_CFLAGS = $(COMMON_CFLAGS)
--@BUILD_TOOLS_TRUE@lp_test_ecc_LDADD = $(top_builddir)/coreapi/liblinphone.la
-+@BUILD_TOOLS_TRUE@lp_test_ecc_LDADD = $(top_builddir)/coreapi/liblinphone.la $(MEDIASTREAMER_LIBS)
- @BUILD_TOOLS_TRUE@lp_sendmsg_SOURCES = lpsendmsg.c
- @BUILD_TOOLS_TRUE@lp_sendmsg_CFLAGS = $(COMMON_CFLAGS)
--@BUILD_TOOLS_TRUE@lp_sendmsg_LDADD = $(top_builddir)/coreapi/liblinphone.la
-+@BUILD_TOOLS_TRUE@lp_sendmsg_LDADD = $(top_builddir)/coreapi/liblinphone.la $(MEDIASTREAMER_LIBS)
- @ENABLE_TESTS_TRUE@test_lsd_SOURCES = test_lsd.c
- @ENABLE_TESTS_TRUE@test_lsd_CFLAGS = $(COMMON_CFLAGS)
- @ENABLE_TESTS_TRUE@test_lsd_LDADD = $(top_builddir)/coreapi/liblinphone.la
diff --git a/net/linphone/pkg-plist b/net/linphone/pkg-plist
index b18f8d2d4dc6..5352913f71c4 100644
--- a/net/linphone/pkg-plist
+++ b/net/linphone/pkg-plist
@@ -1,194 +1,8 @@
bin/linphone
-bin/linphone-daemon
-bin/linphone-daemon-pipetest
-bin/linphonec
-bin/linphonecsh
-bin/lp-autoanswer
-bin/lp-gen-wrappers
-bin/lp-sendmsg
-bin/lp-test-ecc
-bin/lpc2xml_test
-bin/xml2lpc_test
-include/linphone/account_creator.h
-include/linphone/buffer.h
-include/linphone/call_log.h
-include/linphone/call_params.h
-include/linphone/carddav.h
-include/linphone/conference.h
-include/linphone/content.h
-include/linphone/event.h
-include/linphone/friendlist.h
-include/linphone/linphone_proxy_config.h
-include/linphone/linphone_tunnel.h
-include/linphone/linphonecore.h
-include/linphone/linphonecore_utils.h
-include/linphone/linphonefriend.h
-include/linphone/linphonepresence.h
-include/linphone/lpc2xml.h
-include/linphone/lpconfig.h
-include/linphone/nat_policy.h
-include/linphone/ringtoneplayer.h
-include/linphone/sipsetup.h
-include/linphone/sqlite3_bctbx_vfs.h
-include/linphone/vcard.h
-include/linphone/xml2lpc.h
-include/linphone/xmlrpc.h
-lib/liblinphone.so
-lib/liblinphone.so.9
-lib/liblinphone.so.9.0.0
-libdata/pkgconfig/linphone.pc
-man/cs/man1/linphone.1.gz
-man/cs/man1/linphonec.1.gz
-man/cs/man1/sipomatic.1.gz
-man/man1/linphone.1.gz
-man/man1/linphonec.1.gz
-man/man1/linphonecsh.1.gz
-man/man1/sipomatic.1.gz
-share/appdata/linphone.appdata.xml
-share/applications/audio-assistant.desktop
+bin/linphone-tester
share/applications/linphone.desktop
-share/icons/hicolor/48x48/actions/linphone-add-call.png
-share/icons/hicolor/48x48/actions/linphone-call-transfer.png
-share/icons/hicolor/48x48/actions/linphone-chat-send.png
-share/icons/hicolor/48x48/actions/linphone-conference-start.png
-share/icons/hicolor/48x48/actions/linphone-contact-add.png
-share/icons/hicolor/48x48/actions/linphone-delete.png
-share/icons/hicolor/48x48/actions/linphone-edit.png
-share/icons/hicolor/48x48/actions/linphone-history.png
-share/icons/hicolor/48x48/actions/linphone-hold-off.png
-share/icons/hicolor/48x48/actions/linphone-hold-on.png
-share/icons/hicolor/48x48/actions/linphone-record.png
-share/icons/hicolor/48x48/actions/linphone-start-call.png
-share/icons/hicolor/48x48/actions/linphone-start-call2.png
-share/icons/hicolor/48x48/actions/linphone-start-chat.png
-share/icons/hicolor/48x48/actions/linphone-stop-call.png
-share/icons/hicolor/48x48/apps/linphone.png
-share/icons/hicolor/48x48/status/linphone-call-status-incoming.png
-share/icons/hicolor/48x48/status/linphone-call-status-missed.png
-share/icons/hicolor/48x48/status/linphone-call-status-outgoing.png
-share/icons/hicolor/48x48/status/linphone-camera-disabled.png
-share/icons/hicolor/48x48/status/linphone-camera-enabled.png
-share/icons/hicolor/48x48/status/linphone-chat-new-message-and-writing.png
-share/icons/hicolor/48x48/status/linphone-chat-new-message.png
-share/icons/hicolor/48x48/status/linphone-chat-nothing.png
-share/icons/hicolor/48x48/status/linphone-chat-writing.png
-share/icons/hicolor/48x48/status/linphone-failed.png
-share/icons/hicolor/48x48/status/linphone-inprogress.png
-share/icons/hicolor/48x48/status/linphone-media-pause.png
-share/icons/hicolor/48x48/status/linphone-media-play.png
-share/icons/hicolor/48x48/status/linphone-micro-enabled.png
-share/icons/hicolor/48x48/status/linphone-micro-muted.png
-share/icons/hicolor/48x48/status/linphone-ok.png
-share/icons/hicolor/48x48/status/linphone-security-ok.png
-share/icons/hicolor/48x48/status/linphone-security-pending.png
-share/icons/hicolor/48x48/status/linphone-speaker-enabled.png
-share/icons/hicolor/48x48/status/linphone-speaker-muted.png
-share/icons/hicolor/48x48/status/linphone-status-away.png
-share/icons/hicolor/48x48/status/linphone-status-donotdisturb.png
-share/icons/hicolor/48x48/status/linphone-status-offline.png
-share/icons/hicolor/48x48/status/linphone-status-online.png
-share/icons/hicolor/48x48/status/linphone-take-screenshot.png
-share/icons/hicolor/48x48/status/linphone-warning.png
-share/icons/hicolor/scalable/actions/linphone-add-call.svg
-share/icons/hicolor/scalable/actions/linphone-call-transfer.svg
-share/icons/hicolor/scalable/actions/linphone-chat-send.svg
-share/icons/hicolor/scalable/actions/linphone-conference-start.svg
-share/icons/hicolor/scalable/actions/linphone-contact-add.svg
-share/icons/hicolor/scalable/actions/linphone-delete.svg
-share/icons/hicolor/scalable/actions/linphone-edit.svg
-share/icons/hicolor/scalable/actions/linphone-history.svg
-share/icons/hicolor/scalable/actions/linphone-hold-off.svg
-share/icons/hicolor/scalable/actions/linphone-hold-on.svg
-share/icons/hicolor/scalable/actions/linphone-record.svg
-share/icons/hicolor/scalable/actions/linphone-start-call.svg
-share/icons/hicolor/scalable/actions/linphone-start-call2.svg
-share/icons/hicolor/scalable/actions/linphone-start-chat.svg
-share/icons/hicolor/scalable/status/linphone-call-status-incoming.svg
-share/icons/hicolor/scalable/status/linphone-call-status-missed.svg
-share/icons/hicolor/scalable/status/linphone-call-status-outgoing.svg
-share/icons/hicolor/scalable/status/linphone-camera-disabled.svg
-share/icons/hicolor/scalable/status/linphone-camera-enabled.svg
-share/icons/hicolor/scalable/status/linphone-chat-new-message-and-writing.svg
-share/icons/hicolor/scalable/status/linphone-chat-new-message.svg
-share/icons/hicolor/scalable/status/linphone-chat-nothing.svg
-share/icons/hicolor/scalable/status/linphone-chat-writing.svg
-share/icons/hicolor/scalable/status/linphone-failed.svg
-share/icons/hicolor/scalable/status/linphone-inprogress.svg
-share/icons/hicolor/scalable/status/linphone-media-pause.svg
-share/icons/hicolor/scalable/status/linphone-media-play.svg
-share/icons/hicolor/scalable/status/linphone-micro-enabled.svg
-share/icons/hicolor/scalable/status/linphone-micro-muted.svg
-share/icons/hicolor/scalable/status/linphone-ok.svg
-share/icons/hicolor/scalable/status/linphone-security-ok.svg
-share/icons/hicolor/scalable/status/linphone-security-pending.svg
-share/icons/hicolor/scalable/status/linphone-speaker-enabled.svg
-share/icons/hicolor/scalable/status/linphone-speaker-muted.svg
-share/icons/hicolor/scalable/status/linphone-status-away.svg
-share/icons/hicolor/scalable/status/linphone-status-donotdisturb.svg
-share/icons/hicolor/scalable/status/linphone-status-offline.svg
-share/icons/hicolor/scalable/status/linphone-status-online.svg
-share/icons/hicolor/scalable/status/linphone-warning.svg
-%%DATADIR%%/COPYING
-%%DATADIR%%/about.ui
-%%DATADIR%%/audio_assistant.ui
-%%DATADIR%%/buddylookup.ui
-%%DATADIR%%/call_logs.ui
-%%DATADIR%%/call_statistics.ui
-%%DATADIR%%/callee_frame.ui
-%%DATADIR%%/chatroom_frame.ui
-%%DATADIR%%/conf_frame.ui
-%%DATADIR%%/config-uri.ui
-%%DATADIR%%/contact.ui
-%%DATADIR%%/dscp_settings.ui
-%%DATADIR%%/in_call_frame.ui
-%%DATADIR%%/keypad.ui
-%%DATADIR%%/ldap.ui
-%%DATADIR%%/log.ui
-%%DATADIR%%/login_frame.ui
-%%DATADIR%%/main.ui
-%%DATADIR%%/parameters.ui
-%%DATADIR%%/password.ui
-%%DATADIR%%/provisioning-fetch.ui
-%%DATADIR%%/rootca.pem
-%%DATADIR%%/setup_wizard.ui
-%%DATADIR%%/sip_account.ui
-%%DATADIR%%/stock_people.png
-%%DATADIR%%/tunnel_config.ui
-%%DATADIR%%/waiting.ui
-%%NLS%%share/locale/ar/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/cs/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/de/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/es/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/fi/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/fr/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/he/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/hu/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/it/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/ja/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/lt/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/nb_NO/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/nl/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/pl/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/pt_BR/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/ru/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/sr/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/sv/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/tr/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/zh_CN/LC_MESSAGES/linphone.mo
-%%NLS%%share/locale/zh_TW/LC_MESSAGES/linphone.mo
-share/pixmaps/linphone/linphone-banner.png
-share/pixmaps/linphone/linphone.icns
-share/sounds/linphone/dont_wait_too_long.mkv
-share/sounds/linphone/hello16000.wav
-share/sounds/linphone/hello8000.wav
-share/sounds/linphone/incoming_chat.wav
-share/sounds/linphone/ringback.wav
-share/sounds/linphone/rings/four_hands_together.mkv
-share/sounds/linphone/rings/house_keeping.mkv
-share/sounds/linphone/rings/its_a_game.mkv
-share/sounds/linphone/rings/leaving_dreams.mkv
-share/sounds/linphone/rings/notes_of_the_optimistic.mkv
-share/sounds/linphone/rings/oldphone-mono-30s.caf
-share/sounds/linphone/rings/oldphone-mono.wav
-share/sounds/linphone/rings/soft_as_snow.mkv
-share/sounds/linphone/toy-mono.wav
+share/icons/hicolor/scalable/apps/linphone.svg
+%%DATADIR%%/assistant/create-linphone-sip-account.rc
+%%DATADIR%%/assistant/use-linphone-sip-account.rc
+%%DATADIR%%/assistant/use-other-sip-account.rc
+%%DATADIR%%/linphonerc-factory
diff --git a/net/mediastreamer/Makefile b/net/mediastreamer/Makefile
index 97611cb50db7..31825a638805 100644
--- a/net/mediastreamer/Makefile
+++ b/net/mediastreamer/Makefile
@@ -2,104 +2,92 @@
# $FreeBSD$
PORTNAME= mediastreamer
-PORTVERSION= 2.14.0
-PORTREVISION= 10
+PORTVERSION= 2.16.1
CATEGORIES= net
-MASTER_SITES= SAVANNAH/linphone/mediastreamer
+MASTER_SITES= https://www.linphone.org/releases/sources/mediastreamer/
-MAINTAINER= tijl@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= Real-time audio and video streaming and processing
-LICENSE= GPLv2
+LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
libortp.so:net/ortp \
- libsrtp.so:net/libsrtp \
+ libspeexdsp.so:audio/speexdsp \
+ libsrtp2.so:net/libsrtp2 \
libbzrtp.so:security/bzrtp
-CONFLICTS_INSTALL= linphone-base-[0-9]*
-
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-alsa --disable-documentation --disable-matroska \
- --disable-pulseaudio --disable-strict \
- --with-gsm=${LOCALBASE} --with-srtp=${LOCALBASE} \
- xxd_found=yes
-CPPFLAGS+= -I${LOCALBASE}/include
-LIBS+= -L${LOCALBASE}/lib
-INSTALL_TARGET= install-strip
-USES= gettext-tools gmake libtool pathfix pkgconfig
-USE_GNOME= intlhack
+USES= cmake:outsource python:build
USE_LDCONFIG= yes
-OPTIONS_DEFINE= NLS UPNP VIDEO
+CMAKE_ARGS= -DENABLE_ALSA=NO -DENABLE_BV16=NO -DENABLE_DOC=NO \
+ -DENABLE_JPEG=NO -DENABLE_OSS=YES -DENABLE_PULSEAUDIO=NO \
+ -DENABLE_STATIC=NO -DENABLE_STRICT=NO -DENABLE_TOOLS=NO \
+ -DENABLE_UNIT_TESTS=NO
+
+OPTIONS_DEFINE= MATROSKA VIDEO
OPTIONS_GROUP= AUDIOOPT VIDEOOPT
-OPTIONS_GROUP_AUDIOOPT= GSM OPUS SPANDSP SPEEX
+OPTIONS_GROUP_AUDIOOPT= G726 G729 GSM OPUS SPEEX
OPTIONS_GROUP_VIDEOOPT= FFMPEG GLX THEORA V4L VPX XVIDEO
-OPTIONS_DEFAULT= UPNP VIDEO \
- GSM OPUS SPANDSP SPEEX \
+OPTIONS_DEFAULT= MATROSKA VIDEO \
+ G729 GSM OPUS SPEEX \
FFMPEG GLX THEORA V4L VPX XVIDEO
OPTIONS_SUB= yes
AUDIOOPT_DESC= Audio options
-FFMPEG_CONFIGURE_ENABLE=ffmpeg
+FFMPEG_IMPLIES= VIDEO
+FFMPEG_CMAKE_BOOL= ENABLE_FFMPEG
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
-GLX_CONFIGURE_ENABLE= glx
+G726_CMAKE_BOOL= ENABLE_G726
+G726_DESC= G.726 codec support
+G726_LIB_DEPENDS= libspandsp.so:comms/spandsp
+
+G729_CMAKE_BOOL= ENABLE_G729
+G729_DESC= G.729 codec support
+G729_LIB_DEPENDS= libbcg729.so:audio/bcg729
+
+GLX_IMPLIES= VIDEO
+GLX_CMAKE_BOOL= ENABLE_GL ENABLE_GLX
GLX_USE= GL=glew
-GSM_CONFIGURE_ENABLE= gsm
+GSM_CMAKE_BOOL= ENABLE_GSM
GSM_LIB_DEPENDS= libgsm.so:audio/gsm
-NLS_CONFIGURE_ENABLE= nls
-NLS_USES= gettext-runtime
+MATROSKA_CMAKE_BOOL= ENABLE_MKV
+MATROSKA_LIB_DEPENDS= libbcmatroska2.so:multimedia/bcmatroska2
-OPUS_CONFIGURE_ENABLE= opus
+OPUS_CMAKE_BOOL= ENABLE_OPUS
OPUS_LIB_DEPENDS= libopus.so:audio/opus
-SPANDSP_CONFIGURE_ENABLE= spandsp
-SPANDSP_LIB_DEPENDS= libspandsp.so:comms/spandsp
-
-SPEEX_CONFIGURE_ENABLE= speex
+SPEEX_CMAKE_BOOL= ENABLE_SPEEX_CODEC
SPEEX_LIB_DEPENDS= libspeex.so:audio/speex
-THEORA_CONFIGURE_ENABLE=theora
+THEORA_IMPLIES= VIDEO
+THEORA_CMAKE_BOOL= ENABLE_THEORA
THEORA_LIB_DEPENDS= libtheora.so:multimedia/libtheora
-UPNP_CONFIGURE_ENABLE= upnp
-UPNP_LIB_DEPENDS= libupnp.so:devel/upnp
-
-V4L_CONFIGURE_ENABLE= v4l
+V4L_IMPLIES= VIDEO
+V4L_CMAKE_BOOL= ENABLE_V4L
V4L_BUILD_DEPENDS= v4l_compat>=1.0.20120501:multimedia/v4l_compat
V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l
VIDEOOPT_DESC= Video options
-VIDEO_CONFIGURE_ENABLE= video
+VIDEO_CMAKE_BOOL= ENABLE_VIDEO
-VPX_CONFIGURE_ENABLE= vp8
+VPX_IMPLIES= VIDEO
+VPX_CMAKE_BOOL= ENABLE_VPX
VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx
-XVIDEO_CONFIGURE_ENABLE=x11 xv
+XVIDEO_IMPLIES= VIDEO
+XVIDEO_CMAKE_BOOL= ENABLE_X11 ENABLE_XV
XVIDEO_USE= XORG=xorgproto,x11,xv
-.if defined(WITH_DEBUG)
-CONFIGURE_ARGS+=--enable-debug
-.endif
-
post-patch:
@${REINPLACE_CMD} 's,gsm/gsm\.h,gsm.h,' \
- ${WRKSRC}/configure ${WRKSRC}/src/audiofilters/gsm.c
-
-pre-build:
-# Transform file to C array (similar to xxd -i from editors/vim)
-.for i in yuv2rgb.fs yuv2rgb.vs
- (cd ${WRKSRC}/src && { \
- ${ECHO_CMD} 'unsigned char ${i:S/./_/}[] = {' && \
- /usr/bin/hexdump -v -e '" " 12/1 " 0x%02x," "\n" \
- " 0x00 };\nunsigned int ${i:S/./_/}_len = %_Ad;"' ${i} | \
- ${SED} 's/ 0x ,//g' ; } > ${i}.h)
-.endfor
+ ${WRKSRC}/cmake/FindGSM.cmake ${WRKSRC}/src/audiofilters/gsm.c
.include <bsd.port.mk>
diff --git a/net/mediastreamer/distinfo b/net/mediastreamer/distinfo
index 7276b3fe969a..29e4baacfb5e 100644
--- a/net/mediastreamer/distinfo
+++ b/net/mediastreamer/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476373165
-SHA256 (mediastreamer-2.14.0.tar.gz) = 1144849c0c96abafb1153adf56109f0f195a9e4a53cf28cb611bbca7a9012c1a
-SIZE (mediastreamer-2.14.0.tar.gz) = 6388303
+TIMESTAMP = 1506006953
+SHA256 (mediastreamer-2.16.1.tar.gz) = 33351f9409e229a00aaf831930916e1934d8e972773e95f7b7177c9e4cc61772
+SIZE (mediastreamer-2.16.1.tar.gz) = 18904458
diff --git a/net/mediastreamer/files/patch-00-9790349 b/net/mediastreamer/files/patch-00-9790349
new file mode 100644
index 000000000000..8e3d04a0adf0
--- /dev/null
+++ b/net/mediastreamer/files/patch-00-9790349
@@ -0,0 +1,139 @@
+diff --git a/cmake/FindSRTP.cmake b/cmake/FindSRTP.cmake
+index 988b846a..f720ce7e 100644
+--- cmake/FindSRTP.cmake
++++ cmake/FindSRTP.cmake
+@@ -31,20 +31,36 @@ set(_SRTP_ROOT_PATHS
+ )
+
+ find_path(SRTP_INCLUDE_DIRS
+- NAMES srtp/srtp.h
++ NAMES srtp2/srtp.h
+ HINTS _SRTP_ROOT_PATHS
+ PATH_SUFFIXES include
+ )
+
+ if(SRTP_INCLUDE_DIRS)
+ set(HAVE_SRTP_SRTP_H 1)
+-endif()
+-
+-find_library(SRTP_LIBRARIES
++ set(SRTP_VERSION 2)
++ find_library(SRTP_LIBRARIES
++ NAMES srtp2
++ HINTS ${_SRTP_ROOT_PATHS}
++ PATH_SUFFIXES bin lib
++ )
++else()
++ find_path(SRTP_INCLUDE_DIRS
++ NAMES srtp/srtp.h
++ HINTS _SRTP_ROOT_PATHS
++ PATH_SUFFIXES include
++ )
++ if(SRTP_INCLUDE_DIRS)
++ set(HAVE_SRTP_SRTP_H 1)
++ set(SRTP_VERSION 1)
++ endif()
++ find_library(SRTP_LIBRARIES
+ NAMES srtp
+ HINTS ${_SRTP_ROOT_PATHS}
+ PATH_SUFFIXES bin lib
+ )
++endif()
++
+
+ include(FindPackageHandleStandardArgs)
+ find_package_handle_standard_args(SRTP
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index da429764..c46faa62 100644
+--- src/CMakeLists.txt
++++ src/CMakeLists.txt
+@@ -183,6 +183,7 @@ set(VOIP_SOURCE_FILES_C
+ utils/pcap_sender.c
+ utils/pcap_sender.h
+ utils/stream_regulator.c
++ utils/srtp_prefix.h
+ voip/audioconference.c
+ voip/audiostream.c
+ voip/bandwidthcontroller.c
+diff --git a/src/crypto/ms_srtp.c b/src/crypto/ms_srtp.c
+index 5a510c99..67810316 100644
+--- src/crypto/ms_srtp.c
++++ src/crypto/ms_srtp.c
+@@ -25,6 +25,7 @@
+ #include "mediastreamer2/ms_srtp.h"
+ #include "mediastreamer2/mediastream.h"
+
++
+ #ifdef HAVE_SRTP
+
+ /*srtp defines all this stuff*/
+@@ -34,13 +35,7 @@
+ #undef PACKAGE_TARNAME
+ #undef PACKAGE_VERSION
+
+-#if defined(MS2_WINDOWS_PHONE)
+-// Windows phone doesn't use make install
+-#include <srtp.h>
+-#else
+-#include <srtp/srtp.h>
+-#endif
+-
++#include "srtp_prefix.h"
+
+ #include "ortp/b64.h"
+
+@@ -352,7 +347,6 @@ int ms_srtp_init(void)
+ srtp_init_done++;
+ }else{
+ ms_fatal("Couldn't initialize SRTP library: %d.", st);
+- err_reporting_init("mediastreamer2");
+ }
+ }else srtp_init_done++;
+ return (int)st;
+diff --git a/src/utils/srtp_prefix.h b/src/utils/srtp_prefix.h
+new file mode 100644
+index 00000000..68bde496
+--- /dev/null
++++ src/utils/srtp_prefix.h
+@@ -0,0 +1,41 @@
++/*
++ mediastreamer2 library - modular sound and video processing and streaming
++ Copyright (C) 2006-2014 Belledonne Communications, Grenoble
++
++ This library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ This library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with this library; if not, write to the Free Software
++ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++*/
++#ifndef __SRTP2_H__
++#define __SRTP2_H__
++
++#if defined(MS2_WINDOWS_PHONE)
++// Windows phone doesn't use make install
++#include <srtp.h>
++#elif SRTP_VERSION==1
++#include <srtp/srtp.h>
++#else
++#include <srtp2/srtp.h>
++#define err_status_t srtp_err_status_t
++#define err_status_ok srtp_err_status_ok
++#define crypto_policy_t srtp_crypto_policy_t
++#define crypto_policy_set_aes_cm_256_hmac_sha1_80 srtp_crypto_policy_set_aes_cm_256_hmac_sha1_80
++#define crypto_policy_set_aes_cm_128_hmac_sha1_32 srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32
++#define crypto_policy_set_aes_cm_128_null_auth srtp_crypto_policy_set_aes_cm_128_null_auth
++#define crypto_policy_set_null_cipher_hmac_sha1_80 srtp_crypto_policy_set_null_cipher_hmac_sha1_80
++#define crypto_policy_set_aes_cm_128_hmac_sha1_80 srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80
++#define crypto_policy_set_aes_cm_256_hmac_sha1_32 srtp_crypto_policy_set_aes_cm_256_hmac_sha1_32
++#define ssrc_t srtp_ssrc_t
++#endif
++
++#endif
diff --git a/net/mediastreamer/files/patch-CMakeLists.txt b/net/mediastreamer/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..2a6da2e6d930
--- /dev/null
+++ b/net/mediastreamer/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig 2017-07-21 13:00:14 UTC
++++ CMakeLists.txt
+@@ -139,7 +139,7 @@ if(ENABLE_OSS)
+ endif()
+ endif()
+
+-check_library_exists("dl" "dlopen" "" HAVE_DLOPEN)
++set(HAVE_DLOPEN 1)
+
+ include(TestBigEndian)
+ test_big_endian(WORDS_BIGENDIAN)
diff --git a/net/mediastreamer/files/patch-cmake-FindGLX.cmake b/net/mediastreamer/files/patch-cmake-FindGLX.cmake
new file mode 100644
index 000000000000..48c566f767bc
--- /dev/null
+++ b/net/mediastreamer/files/patch-cmake-FindGLX.cmake
@@ -0,0 +1,13 @@
+--- cmake/FindGLX.cmake.orig 2017-04-06 09:27:56 UTC
++++ cmake/FindGLX.cmake
+@@ -39,8 +39,8 @@ find_path(GLX_INCLUDE_DIRS
+ PATH_SUFFIXES include
+ )
+ if(GLX_INCLUDE_DIRS)
+- check_include_file(GL/gl.h HAVE_GL_GL_H)
+- check_include_file(GL/glx.h HAVE_GL_GLX_H)
++ check_include_file(GL/gl.h HAVE_GL_GL_H "-I${GLX_INCLUDE_DIRS}")
++ check_include_file(GL/glx.h HAVE_GL_GLX_H "-I${GLX_INCLUDE_DIRS}")
+ endif()
+
+ find_library(GL_LIBRARY
diff --git a/net/mediastreamer/files/patch-src-CMakeLists.txt b/net/mediastreamer/files/patch-src-CMakeLists.txt
new file mode 100644
index 000000000000..5c1ed0de810a
--- /dev/null
+++ b/net/mediastreamer/files/patch-src-CMakeLists.txt
@@ -0,0 +1,22 @@
+--- src/CMakeLists.txt.orig 2017-07-21 12:59:53 UTC
++++ src/CMakeLists.txt
+@@ -79,9 +79,6 @@ set(BASE_LIBS
+ if(WIN32 AND NOT CMAKE_SYSTEM_NAME STREQUAL "WindowsPhone" AND NOT CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ list(APPEND BASE_LIBS ${LIBGCC} ${LIBMINGWEX} ole32 oleaut32 uuid Winmm Ws2_32)
+ endif()
+-if(HAVE_DLOPEN)
+- list(APPEND BASE_LIBS dl)
+-endif()
+
+ bc_apply_compile_flags(BASE_SOURCE_FILES_C STRICT_OPTIONS_CPP STRICT_OPTIONS_C)
+
+@@ -550,9 +547,6 @@ if(ANDROID_SUPPORT_LIBRARY)
+ endif()
+ if(ANDROID AND ENABLE_VIDEO)
+ list(APPEND VOIP_LIBS GLESv2)
+-endif()
+-if(HAVE_DLOPEN)
+- list(APPEND VOIP_LIBS dl)
+ endif()
+ if(PCAP_FOUND)
+ list(APPEND VOIP_LIBS ${PCAP_LIBRARIES})
diff --git a/net/mediastreamer/files/patch-src-base-msfactory.c b/net/mediastreamer/files/patch-src-base-msfactory.c
index f69a79abb241..86c1b29e512c 100644
--- a/net/mediastreamer/files/patch-src-base-msfactory.c
+++ b/net/mediastreamer/files/patch-src-base-msfactory.c
@@ -1,6 +1,22 @@
---- src/base/msfactory.c.orig 2015-03-02 11:36:25 UTC
+--- src/base/msfactory.c.orig 2017-07-20 13:56:05 UTC
+++ src/base/msfactory.c
-@@ -157,7 +157,7 @@ void ms_factory_init(MSFactory *obj){
+@@ -20,14 +20,13 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Bos
+ #ifdef HAVE_CONFIG_H
+ #include "mediastreamer-config.h"
+ #include "gitversion.h"
+-#else
++#endif
+ # ifndef MEDIASTREAMER_VERSION
+ # define MEDIASTREAMER_VERSION "unknown"
+ # endif
+ # ifndef MS2_GIT_VERSION
+ # define MS2_GIT_VERSION "unknown"
+ # endif
+-#endif
+
+ #include "mediastreamer2/msfilter.h"
+ #include "mediastreamer2/mseventqueue.h"
+@@ -184,7 +183,7 @@ void ms_factory_init(MSFactory *obj){
GetNativeSystemInfo( &sysinfo );
num_cpu = sysinfo.dwNumberOfProcessors;
diff --git a/net/mediastreamer/files/patch-src_videofilters_nowebcam.c b/net/mediastreamer/files/patch-src_videofilters_nowebcam.c
deleted file mode 100644
index 2715035cba5b..000000000000
--- a/net/mediastreamer/files/patch-src_videofilters_nowebcam.c
+++ /dev/null
@@ -1,24 +0,0 @@
-videofilters/nowebcam.c:251:49: error: use of undeclared identifier 'FF_INPUT_BUFFER_PADDING_SIZE'
- jpgbuf=(uint8_t*)ms_malloc0(statbuf.st_size + FF_INPUT_BUFFER_PADDING_SIZE);
- ^
-
---- src/videofilters/nowebcam.c.orig 2016-08-18 14:17:37 UTC
-+++ src/videofilters/nowebcam.c
-@@ -32,7 +32,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- #ifndef NO_FFMPEG
- #include "ffmpeg-priv.h"
- #else
--#define FF_INPUT_BUFFER_PADDING_SIZE 32
-+#define AV_INPUT_BUFFER_PADDING_SIZE 32
- #endif
-
- #if TARGET_OS_IPHONE
-@@ -248,7 +248,7 @@ static mblk_t *_ms_load_jpeg_as_yuv(const char *jpgpat
- ms_error("Cannot load %s",jpgpath);
- return NULL;
- }
-- jpgbuf=(uint8_t*)ms_malloc0(statbuf.st_size + FF_INPUT_BUFFER_PADDING_SIZE);
-+ jpgbuf=(uint8_t*)ms_malloc0(statbuf.st_size + AV_INPUT_BUFFER_PADDING_SIZE);
- if (jpgbuf==NULL)
- {
- close(fd);
diff --git a/net/mediastreamer/pkg-descr b/net/mediastreamer/pkg-descr
index 5062b5e49096..662c3bb658d7 100644
--- a/net/mediastreamer/pkg-descr
+++ b/net/mediastreamer/pkg-descr
@@ -1,34 +1,4 @@
Mediastreamer2 is a powerful and lightweight streaming engine specialized
in voice/video telephony applications.
-It is the library that is responsible for all the receiving and sending of
-multimedia streams in linphone, including voice/video capture, encoding and
-decoding, and rendering.
-
-Features:
-
-* Capture and playback from various platform dependent sound architectures
-* Send and receive RTP streams
-* Encode and decode the following audio formats: OPUS, speex, G711, GSM, iLBC,
- AMR, AMR-WB, G722, SILK, G729, and video formats H263, theora, MPEG4,
- H264 and VP8
-* RTP/AVPF support: RTCP control messages for video error recovery: PLI, SLI,
- RPSI, FIR
-* Audio conferencing
-* Supports SRTP and ZRTP (encryption of voice and video)
-* Supports any webcam, based on OS's camera API: quicktime, directshow,
- video4linux, android.camera
-* Acoustic echo cancellation using the speex echo canceler or webrtc AECm
-* Read and write .wav files
-* Optimized rendering of YUV pictures, using OpenGL, DrawDib, X11/Xv
-* Dual tones generation
-* Custom tone detector
-* Audio parametric equalizer
-* Volume control, automatic gain control
-* ICE for optimized NAT traversal (RFC5246) to allow peer to peer audio and
- video connections without media relay server
-* Adaptive bitrate control algorithm: for automatic adaption of encoder
- bitrate based on received RTCP feedback
-* Can use plugins to add new codecs, new sound input/output backends,...
-
WWW: https://www.linphone.org/technical-corner/mediastreamer2.html
diff --git a/net/mediastreamer/pkg-plist b/net/mediastreamer/pkg-plist
index 2fb87db2c5ed..7c59465c66d4 100644
--- a/net/mediastreamer/pkg-plist
+++ b/net/mediastreamer/pkg-plist
@@ -1,5 +1,3 @@
-bin/mediastream
-bin/msaudiocmp
include/mediastreamer2/allfilters.h
include/mediastreamer2/bitratecontrol.h
include/mediastreamer2/bits_rw.h
@@ -12,6 +10,7 @@ include/mediastreamer2/formats.h
include/mediastreamer2/ice.h
include/mediastreamer2/mediastream.h
include/mediastreamer2/ms_srtp.h
+include/mediastreamer2/msasync.h
include/mediastreamer2/msaudiomixer.h
include/mediastreamer2/mschanadapter.h
include/mediastreamer2/mscodecutils.h
@@ -30,6 +29,9 @@ include/mediastreamer2/msitc.h
include/mediastreamer2/msjava.h
include/mediastreamer2/msjpegwriter.h
include/mediastreamer2/msmediaplayer.h
+include/mediastreamer2/msogl.h
+include/mediastreamer2/msogl_functions.h
+include/mediastreamer2/mspcapfileplayer.h
include/mediastreamer2/msqueue.h
include/mediastreamer2/msrtp.h
include/mediastreamer2/msrtt4103.h
@@ -37,6 +39,7 @@ include/mediastreamer2/mssndcard.h
include/mediastreamer2/mstee.h
include/mediastreamer2/msticker.h
include/mediastreamer2/mstonedetector.h
+include/mediastreamer2/msudp.h
include/mediastreamer2/msutils.h
include/mediastreamer2/msv4l.h
include/mediastreamer2/msvaddtx.h
@@ -52,24 +55,11 @@ include/mediastreamer2/upnp_igd.h
include/mediastreamer2/x11_helper.h
include/mediastreamer2/zrtp.h
lib/libmediastreamer_base.so
-lib/libmediastreamer_base.so.7
-lib/libmediastreamer_base.so.7.0.0
+lib/libmediastreamer_base.so.10
lib/libmediastreamer_voip.so
-lib/libmediastreamer_voip.so.7
-lib/libmediastreamer_voip.so.7.0.0
-libdata/pkgconfig/mediastreamer.pc
-share/images/nowebcamCIF.jpg
-%%NLS%%share/locale/cs/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/de/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/es/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/fr/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/hu/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/it/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/ja/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/nl/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/pl/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/pt_BR/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/ru/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/sv/LC_MESSAGES/mediastreamer.mo
-%%NLS%%share/locale/zh_CN/LC_MESSAGES/mediastreamer.mo
-@dir lib/mediastreamer/plugins
+lib/libmediastreamer_voip.so.10
+share/Mediastreamer2/cmake/Mediastreamer2Config.cmake
+share/Mediastreamer2/cmake/Mediastreamer2ConfigVersion.cmake
+share/Mediastreamer2/cmake/Mediastreamer2Targets-%%CMAKE_BUILD_TYPE%%.cmake
+share/Mediastreamer2/cmake/Mediastreamer2Targets.cmake
+%%VIDEO%%share/images/nowebcamCIF.jpg
diff --git a/net/ortp/Makefile b/net/ortp/Makefile
index 5fe883dbfaa2..f2f7e72e2aad 100644
--- a/net/ortp/Makefile
+++ b/net/ortp/Makefile
@@ -2,24 +2,25 @@
# $FreeBSD$
PORTNAME= ortp
-PORTVERSION= 0.27.0
+PORTVERSION= 1.0.2
CATEGORIES= net
-MASTER_SITES= SAVANNAH/linphone/ortp/sources
+MASTER_SITES= https://www.linphone.org/releases/sources/ortp/
MAINTAINER= sobomax@FreeBSD.org
COMMENT= Real-time Transport Protocol (RTP) library
-LICENSE= LGPL21
+LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libbctoolbox.so:net/bctoolbox
-CONFLICTS_INSTALL= linphone-base-[0-9]*
-
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-strict
-INSTALL_TARGET= install-strip
-USES= libtool pathfix pkgconfig
+USES= cmake:outsource
USE_LDCONFIG= yes
+CMAKE_ARGS= -DENABLE_DOC=NO -DENABLE_STATIC=NO -DENABLE_STRICT=NO
+WRKSRC= ${WRKDIR}/${DISTNAME}-0
+
+post-install:
+ ${RM} -r ${STAGEDIR}${PREFIX}/share/doc/${DISTNAME}
+
.include <bsd.port.mk>
diff --git a/net/ortp/distinfo b/net/ortp/distinfo
index 7eaf2ef832e5..a986d4e2793e 100644
--- a/net/ortp/distinfo
+++ b/net/ortp/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476351902
-SHA256 (ortp-0.27.0.tar.gz) = eb61a833ab3ad80978d7007411240f46e9b2d1034373b9d9dfaac88c1b6ec0af
-SIZE (ortp-0.27.0.tar.gz) = 592522
+TIMESTAMP = 1506000045
+SHA256 (ortp-1.0.2.tar.gz) = a51551194332ac62b47865dc1e60893ece4922c489a7b0a780b8be562978d804
+SIZE (ortp-1.0.2.tar.gz) = 223758
diff --git a/net/ortp/files/patch-configure b/net/ortp/files/patch-configure
deleted file mode 100644
index 3b0ffc952588..000000000000
--- a/net/ortp/files/patch-configure
+++ /dev/null
@@ -1,10 +0,0 @@
---- configure.orig 2014-02-19 14:31:33 UTC
-+++ configure
-@@ -12021,7 +12021,6 @@ $as_echo "#define NOCONNECT 1" >>confdef
-
- $as_echo "#define NOCONNECT 1" >>confdefs.h
-
-- PTHREAD_LDFLAGS="-pthread"
- ;;
- *mingw32ce)
- CFLAGS="$CFLAGS -D_WIN32_WCE -D_WIN32_WINNT=0x0501 -DORTP_STATIC"
diff --git a/net/ortp/pkg-plist b/net/ortp/pkg-plist
index 538ebaf3e2d5..8bef2f109ef9 100644
--- a/net/ortp/pkg-plist
+++ b/net/ortp/pkg-plist
@@ -12,7 +12,11 @@ include/ortp/rtpsignaltable.h
include/ortp/sessionset.h
include/ortp/str_utils.h
include/ortp/telephonyevents.h
+include/ortp/utils.h
lib/libortp.so
-lib/libortp.so.11
-lib/libortp.so.11.0.0
+lib/libortp.so.13
libdata/pkgconfig/ortp.pc
+share/oRTP/cmake/ORTPConfig.cmake
+share/oRTP/cmake/ORTPConfigVersion.cmake
+share/oRTP/cmake/ORTPTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/oRTP/cmake/ORTPTargets.cmake
diff --git a/security/bzrtp/Makefile b/security/bzrtp/Makefile
index ff04e8e58c9c..0221b0d2f630 100644
--- a/security/bzrtp/Makefile
+++ b/security/bzrtp/Makefile
@@ -1,23 +1,25 @@
# $FreeBSD$
PORTNAME= bzrtp
-PORTVERSION= 1.0.4
+PORTVERSION= 1.0.6
CATEGORIES= security
-MASTER_SITES= SAVANNAH/linphone/bzrtp
+MASTER_SITES= https://www.linphone.org/releases/sources/bzrtp/
-MAINTAINER= tijl@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= ZRTP support library (RFC 6189)
-LICENSE= GPLv2
+LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libbctoolbox.so:net/bctoolbox
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --disable-strict
-INSTALL_TARGET= install-strip
-USES= libtool pathfix pkgconfig
+USES= cmake:outsource sqlite
USE_GNOME= libxml2
USE_LDCONFIG= yes
+CMAKE_ARGS= -DENABLE_STATIC=NO -DENABLE_STRICT=NO
+
+post-patch:
+ @${REINPLACE_CMD} 's/<alloca\.h>/<stdlib.h>/' ${WRKSRC}/src/zidCache.c
+
.include <bsd.port.mk>
diff --git a/security/bzrtp/distinfo b/security/bzrtp/distinfo
index f08b678357ea..c254c74a47b2 100644
--- a/security/bzrtp/distinfo
+++ b/security/bzrtp/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1476457627
-SHA256 (bzrtp-1.0.4.tar.gz) = 8113c6afde48916113d028369d04bcaba4964e756066a7290ae1bd2eeece0caa
-SIZE (bzrtp-1.0.4.tar.gz) = 440150
+TIMESTAMP = 1506001436
+SHA256 (bzrtp-1.0.6.tar.gz) = bf48b0298d614a04b7b9d76b770ab7c6c3bc84624674efba523d5e90e09cc08b
+SIZE (bzrtp-1.0.6.tar.gz) = 134824
diff --git a/security/bzrtp/pkg-plist b/security/bzrtp/pkg-plist
index 364b321f35b8..fec4c28fa2e2 100644
--- a/security/bzrtp/pkg-plist
+++ b/security/bzrtp/pkg-plist
@@ -1,5 +1,7 @@
include/bzrtp/bzrtp.h
lib/libbzrtp.so
lib/libbzrtp.so.0
-lib/libbzrtp.so.0.0.0
-libdata/pkgconfig/libbzrtp.pc
+%%DATADIR%%/cmake/BZRTPConfig.cmake
+%%DATADIR%%/cmake/BZRTPConfigVersion.cmake
+%%DATADIR%%/cmake/BZRTPTargets-%%CMAKE_BUILD_TYPE%%.cmake
+%%DATADIR%%/cmake/BZRTPTargets.cmake
diff --git a/textproc/Makefile b/textproc/Makefile
index cc3108153d99..18dc532ede38 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -58,6 +58,7 @@
SUBDIR += be-aspell
SUBDIR += bedic-data
SUBDIR += beediff
+ SUBDIR += belr
SUBDIR += bg-aspell
SUBDIR += bg-hyphen
SUBDIR += bg-mythes
diff --git a/textproc/belr/Makefile b/textproc/belr/Makefile
new file mode 100644
index 000000000000..52924a41da62
--- /dev/null
+++ b/textproc/belr/Makefile
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+PORTNAME= belr
+PORTVERSION= 0.1.3
+CATEGORIES= textproc
+MASTER_SITES= https://www.linphone.org/releases/sources/belr/
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= Language recognition library
+
+LICENSE= GPLv2+
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libbctoolbox.so:net/bctoolbox
+
+USES= cmake:outsource
+USE_LDCONFIG= yes
+
+CMAKE_ARGS= -DENABLE_STATIC=NO -DENABLE_STRICT=NO
+WRKSRC= ${WRKDIR}/${DISTNAME}-0
+
+.include <bsd.port.mk>
diff --git a/textproc/belr/distinfo b/textproc/belr/distinfo
new file mode 100644
index 000000000000..6a1a792b3787
--- /dev/null
+++ b/textproc/belr/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1539600140
+SHA256 (belr-0.1.3.tar.gz) = 81995491f6049f67cf84339ed69880816186ed518dd5d80e6b3b793c1e139bbb
+SIZE (belr-0.1.3.tar.gz) = 47659
diff --git a/textproc/belr/pkg-descr b/textproc/belr/pkg-descr
new file mode 100644
index 000000000000..6ea247dfa806
--- /dev/null
+++ b/textproc/belr/pkg-descr
@@ -0,0 +1,5 @@
+Belr is Belledonne Communications' language recognition library, written
+in C++11. It aims at parsing any input formatted according to a language
+defined by an ABNF grammar, such as the protocols standardized at IETF.
+
+WWW: https://www.linphone.org/
diff --git a/textproc/belr/pkg-plist b/textproc/belr/pkg-plist
new file mode 100644
index 000000000000..9ccb47ff3201
--- /dev/null
+++ b/textproc/belr/pkg-plist
@@ -0,0 +1,11 @@
+bin/belr-parse
+include/belr/abnf.hh
+include/belr/belr.hh
+include/belr/grammarbuilder.hh
+include/belr/parser-impl.cc
+include/belr/parser.hh
+lib/libbelr.so
+lib/libbelr.so.1
+share/Belr/cmake/BelrConfig.cmake
+share/Belr/cmake/BelrTargets-%%CMAKE_BUILD_TYPE%%.cmake
+share/Belr/cmake/BelrTargets.cmake