aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Palmen <felix@palmen-it.de>2022-07-19 09:20:00 +0000
committerMuhammad Moinur Rahman <bofh@FreeBSD.org>2022-07-19 09:23:51 +0000
commit46dfe1ded5c6b4a625dc6ff5138b64244e69ad8c (patch)
tree3fbd60845751784893adb7291b894ea207c236c8
parentc89a9e2c289a74016a4969073f3ca73d3dbe28cf (diff)
downloadports-46dfe1ded5c6b4a625dc6ff5138b64244e69ad8c.tar.gz
ports-46dfe1ded5c6b4a625dc6ff5138b64244e69ad8c.zip
net/linphone: Update version 4.1.1=>4.4.8
- Add LICENSE GPLv3 Differential Revision: https://reviews.freebsd.org/D35805
-rw-r--r--net/linphone/Makefile52
-rw-r--r--net/linphone/distinfo6
-rw-r--r--net/linphone/files/linphone.desktop26
-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-08-313aa6829
-rw-r--r--net/linphone/files/patch-CMakeLists.txt10
-rw-r--r--net/linphone/files/patch-resources.qrc16
-rw-r--r--net/linphone/files/patch-src-app-AppController.cpp11
-rw-r--r--net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp11
-rw-r--r--net/linphone/pkg-plist6
17 files changed, 85 insertions, 710 deletions
diff --git a/net/linphone/Makefile b/net/linphone/Makefile
index a7e9a8477b9d..4f64d36ec09e 100644
--- a/net/linphone/Makefile
+++ b/net/linphone/Makefile
@@ -1,25 +1,61 @@
PORTNAME= linphone
-PORTVERSION= 4.1.1
-PORTREVISION= 6
+PORTVERSION= 4.4.8
PORTEPOCH= 1
CATEGORIES= net
-MASTER_SITES= https://www.linphone.org/releases/sources/linphoneqt/
-DISTNAME= linphoneqt-${PORTVERSION}
MAINTAINER= ports@FreeBSD.org
COMMENT= SIP client supporting voice/video calls and text messaging
+LICENSE= GPLv3
+
LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
libbelcard.so:deskutils/belcard \
- liblinphone++.so:net/liblinphone
+ liblinphone++.so:net/liblinphone \
+ libmediastreamer.so:net/mediastreamer \
+ libortp.so:net/ortp
USES= cmake compiler:c++11-lib pkgconfig qt:5
-USE_QT= buildtools_build concurrent core declarative \
- graphicaleffects_run gui linguisttools network qmake_build \
- quickcontrols_run quickcontrols2 speech svg testlib widgets
+USE_GITLAB= yes
+GL_SITE= https://gitlab.linphone.org/BC
+GL_ACCOUNT= public
+GL_PROJECT= linphone-desktop
+GL_COMMIT= da40aed848da44e851d67a2039e7e966c5257d3b
+USE_QT= concurrent core dbus declarative gui linguisttools network \
+ quickcontrols2 speech svg testlib widgets buildtools_build \
+ qmake_build graphicaleffects_run quickcontrols_run
+
+# Linphone's plugin API is implemented in a shared object with rather generic
+# SONAME and filename, libapp-plugin.so. For classic installation in the
+# local tree, we better move it to its own subdirectory, so we need RPATH
+# here.
+# This will affect actual Linphone plugins as well if they get ported.
+CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH="${LOCALBASE}/lib/linphone"
+
+WRKSRC_SUBDIR= linphone-app
+
+ICONDIR= ${LOCALBASE}/share/icons/hicolor/scalable/apps
post-patch:
+ @${REINPLACE_CMD} -e 's/bc_compute_full_version([^)]*)//' \
+ -e 's/set(FULL_VERSION /&${PORTVERSION}/' \
+ -e 's/INSTALL_RPATH_USE_LINK_PATH/BUILD_WITH_INSTALL_RPATH/' \
+ -e '/add_subdirectory.*linphone_package/d' \
+ -e '/add_custom_command/d' -e '/deployqt_hack/d' \
+ ${WRKSRC}/CMakeLists.txt
@${REINPLACE_CMD} 's/LINPHONE_QT_GIT_VERSION/"${PORTVERSION}"/' \
${WRKSRC}/src/app/AppController.cpp
+# override install because otherwise, it does a complete rebuild during stage
+do-install:
+ ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/linphone \
+ ${STAGEDIR}${LOCALBASE}/bin
+ ${MKDIR} ${STAGEDIR}${LOCALBASE}/lib/linphone
+ ${MKDIR} ${STAGEDIR}${ICONDIR}
+ ${INSTALL_LIB} ${BUILD_WRKSRC}/libapp-plugin.so \
+ ${STAGEDIR}${LOCALBASE}/lib/linphone
+ ${INSTALL_DATA} ${WRKSRC}/assets/images/linphone_logo.svg \
+ ${STAGEDIR}${ICONDIR}/linphone.svg
+ ${INSTALL_DATA} ${FILESDIR}/linphone.desktop \
+ ${STAGEDIR}${LOCALBASE}/share/applications/linphone.desktop
+
.include <bsd.port.mk>
diff --git a/net/linphone/distinfo b/net/linphone/distinfo
index 9c4875b94baf..507ac8477824 100644
--- a/net/linphone/distinfo
+++ b/net/linphone/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1538765035
-SHA256 (linphoneqt-4.1.1.tar.gz) = 4a00c0cc2861089f8d3a1d0af1cde8ad4094f23640fb6df483e1814853ce5fbc
-SIZE (linphoneqt-4.1.1.tar.gz) = 1820252
+TIMESTAMP = 1657718753
+SHA256 (public-linphone-desktop-da40aed848da44e851d67a2039e7e966c5257d3b_GL0.tar.gz) = b8ea0a2d466a28e57da5bc4ca6916f67606dfc01b08e5c3e4483e6bffc63f91e
+SIZE (public-linphone-desktop-da40aed848da44e851d67a2039e7e966c5257d3b_GL0.tar.gz) = 2751020
diff --git a/net/linphone/files/linphone.desktop b/net/linphone/files/linphone.desktop
new file mode 100644
index 000000000000..8235d9514058
--- /dev/null
+++ b/net/linphone/files/linphone.desktop
@@ -0,0 +1,26 @@
+[Desktop Entry]
+Name=Linphone
+GenericName=SIP Phone
+Comment=Linphone is a libre SIP client
+Type=Application
+Exec=linphone %u
+Icon=linphone
+Terminal=false
+Categories=Network;Telephony;
+
+
+# Translations
+Name[de]=Linphone
+Name[he]=Linphone
+Name[ar]=لِنْفُونْ
+Name[hu]=Linphone
+Name[ru]=Linphone
+Name[nb_NO]=Linphone
+Name[it]=Linphone
+Name[ja]=Linphone
+Name[cs]=Linphone
+Name[sr]=Линфон
+Name[sv]=Linphone
+Name[zh_CN]=Linphone
+Name[fr]=Linphone
+Name[zh_TW]=Linphone
diff --git a/net/linphone/files/patch-00-ecaab0f b/net/linphone/files/patch-00-ecaab0f
deleted file mode 100644
index daad35e8c955..000000000000
--- a/net/linphone/files/patch-00-ecaab0f
+++ /dev/null
@@ -1,93 +0,0 @@
-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
deleted file mode 100644
index a920b8567761..000000000000
--- a/net/linphone/files/patch-01-5dd0161
+++ /dev/null
@@ -1,74 +0,0 @@
-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
deleted file mode 100644
index 1f0df996faca..000000000000
--- a/net/linphone/files/patch-02-c840bba
+++ /dev/null
@@ -1,216 +0,0 @@
-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
deleted file mode 100644
index e542b57e4ce9..000000000000
--- a/net/linphone/files/patch-03-85c2165
+++ /dev/null
@@ -1,23 +0,0 @@
-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
deleted file mode 100644
index d55c025ae04f..000000000000
--- a/net/linphone/files/patch-04-8720931
+++ /dev/null
@@ -1,68 +0,0 @@
-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
deleted file mode 100644
index 0a03271d9323..000000000000
--- a/net/linphone/files/patch-05-4f908ef
+++ /dev/null
@@ -1,25 +0,0 @@
-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
deleted file mode 100644
index 36df71bf6395..000000000000
--- a/net/linphone/files/patch-06-70f47b0
+++ /dev/null
@@ -1,90 +0,0 @@
-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
deleted file mode 100644
index cd31e792f99f..000000000000
--- a/net/linphone/files/patch-07-7f62ae9
+++ /dev/null
@@ -1,39 +0,0 @@
-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-08-313aa68 b/net/linphone/files/patch-08-313aa68
deleted file mode 100644
index 5a4029332ee6..000000000000
--- a/net/linphone/files/patch-08-313aa68
+++ /dev/null
@@ -1,29 +0,0 @@
-From 313aa682738fc877ee8ba78b1d4060e08739cc24 Mon Sep 17 00:00:00 2001
-From: Ronan Abhamon <ronan.abhamon@belledonne-communications.com>
-Date: Fri, 19 Jan 2018 15:16:03 +0100
-Subject: [PATCH] feat(AppController): force default theme style
-
----
- src/app/AppController.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/app/AppController.cpp b/src/app/AppController.cpp
-index 2d353884..711e1a9b 100644
---- src/app/AppController.cpp
-+++ src/app/AppController.cpp
-@@ -23,6 +23,7 @@
- #include <QDirIterator>
- #include <QFontDatabase>
- #include <QMessageBox>
-+#include <QQuickStyle>
-
- #include "gitversion.h"
-
-@@ -85,6 +86,7 @@ AppController::AppController (int &argc, char *argv[]) {
- QCoreApplication::setApplicationVersion(APPLICATION_VERSION);
-
- mApp = new App(argc, argv);
-+ QQuickStyle::setStyle("Default");
- if (mApp->isSecondary()) {
- #ifdef Q_OS_MACOS
- mApp->processEvents();
diff --git a/net/linphone/files/patch-CMakeLists.txt b/net/linphone/files/patch-CMakeLists.txt
deleted file mode 100644
index 3e6f2a64b189..000000000000
--- a/net/linphone/files/patch-CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
---- CMakeLists.txt.orig 2017-07-21 13:14:18 UTC
-+++ CMakeLists.txt
-@@ -342,7 +342,6 @@ else ()
- endif ()
-
- if (NOT WIN32)
-- add_dependencies(update_translations check_qml)
- endif ()
- set_target_properties(${TARGET_NAME} PROPERTIES OUTPUT_NAME "${EXECUTABLE_NAME}")
- set_target_properties(${TESTER_TARGET_NAME} PROPERTIES OUTPUT_NAME "${TESTER_EXECUTABLE_NAME}")
diff --git a/net/linphone/files/patch-resources.qrc b/net/linphone/files/patch-resources.qrc
deleted file mode 100644
index 3a2bae3e4cb0..000000000000
--- a/net/linphone/files/patch-resources.qrc
+++ /dev/null
@@ -1,16 +0,0 @@
---- resources.qrc.orig 2017-06-29 09:20:37 UTC
-+++ resources.qrc
-@@ -1,13 +1,5 @@
- <!DOCTYPE RCC><RCC version="1.0">
- <qresource prefix="/">
-- <file>assets/fonts/NotoSans-hinted/NotoSans-BoldItalic.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSans-Bold.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSans-Italic.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSans-Regular.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSansUI-BoldItalic.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSansUI-Bold.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSansUI-Italic.ttf</file>
-- <file>assets/fonts/NotoSans-hinted/NotoSansUI-Regular.ttf</file>
- <file>assets/images/add_disabled.svg</file>
- <file>assets/images/add_hovered.svg</file>
- <file>assets/images/add_normal.svg</file>
diff --git a/net/linphone/files/patch-src-app-AppController.cpp b/net/linphone/files/patch-src-app-AppController.cpp
deleted file mode 100644
index a18ff3f74a92..000000000000
--- a/net/linphone/files/patch-src-app-AppController.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/app/AppController.cpp.orig 2018-11-11 20:28:45 UTC
-+++ src/app/AppController.cpp
-@@ -34,7 +34,7 @@
- #define APPLICATION_VERSION "4.1.1"
- #define APPLICATION_MINIMAL_QT_VERSION "5.9.0"
-
--#define DEFAULT_FONT "Noto Sans"
-+#define DEFAULT_FONT "sans-serif"
-
- using namespace std;
-
diff --git a/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp b/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp
new file mode 100644
index 000000000000..110b9cfd9c47
--- /dev/null
+++ b/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp
@@ -0,0 +1,11 @@
+--- src/components/other/desktop-tools/DesktopTools.hpp.orig 2022-07-05 13:20:17 UTC
++++ src/components/other/desktop-tools/DesktopTools.hpp
+@@ -23,7 +23,7 @@
+
+ #include <QtGlobal>
+
+-#ifdef Q_OS_LINUX
++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD)
+ #include "DesktopToolsLinux.hpp"
+ #elif defined(Q_OS_WIN)
+ #include "DesktopToolsWindows.hpp"
diff --git a/net/linphone/pkg-plist b/net/linphone/pkg-plist
index 5352913f71c4..50fc36acea0d 100644
--- a/net/linphone/pkg-plist
+++ b/net/linphone/pkg-plist
@@ -1,8 +1,4 @@
bin/linphone
-bin/linphone-tester
+lib/linphone/libapp-plugin.so
share/applications/linphone.desktop
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