config BR2_PACKAGE_LINPHONE
bool "linphone"
- depends on BR2_INSTALL_LIBSTDCPP # mediastreamer (bundled)
- depends on BR2_TOOLCHAIN_HAS_THREADS # ortp (bundled)
- depends on BR2_USE_MMU # libeXosip2
- select BR2_PACKAGE_LIBEXOSIP2
- select BR2_PACKAGE_SPEEX
- select BR2_PACKAGE_SPEEXDSP
+ depends on BR2_USE_MMU
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on !BR2_STATIC_LIBS # belle-sip, mediastreamer
+ depends on BR2_TOOLCHAIN_HAS_THREADS # belr, belle-sip, mediastreamer
+ # belr, belle-sip, mediastreamer
+ depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
+ depends on BR2_USE_WCHAR # belle-sip
+ select BR2_PACKAGE_BELLE_SIP
+ select BR2_PACKAGE_BELR
+ select BR2_PACKAGE_LIBXML2
+ select BR2_PACKAGE_MEDIASTREAMER
+ select BR2_PACKAGE_SQLITE
help
Linphone is an internet phone or Voice Over IP phone (VoIP).
http://www.linphone.org/
-comment "linphone needs a toolchain w/ threads, C++"
+comment "linphone needs a toolchain w/ threads, C++, dynamic library, wchar"
depends on BR2_USE_MMU
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \
+ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
+
+comment "linphone needs a toolchain not affected by GCC bug 64735"
+ depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
#
################################################################################
-LINPHONE_VERSION_MAJOR = 3.6
-LINPHONE_VERSION = $(LINPHONE_VERSION_MAJOR).1
-LINPHONE_SITE = http://download-mirror.savannah.gnu.org/releases/linphone/$(LINPHONE_VERSION_MAJOR).x/sources
+LINPHONE_VERSION = 4.3.1
+LINPHONE_SITE = \
+ https://gitlab.linphone.org/BC/public/liblinphone/-/archive/$(LINPHONE_VERSION)
LINPHONE_CONF_OPTS = \
- --disable-strict --disable-video
-# configure is out of sync causing deplibs linking issues
-LINPHONE_AUTORECONF = YES
+ -DENABLE_ADVANCED_IM=OFF \
+ -DENABLE_CXX_WRAPPER=OFF \
+ -DENABLE_DB_STORAGE=OFF \
+ -DENABLE_LIME=OFF \
+ -DENABLE_LIME_X3DH=OFF \
+ -DENABLE_STRICT=OFF \
+ -DENABLE_TOOLS=OFF \
+ -DENABLE_TUTORIALS=OFF \
+ -DENABLE_UNIT_TESTS=OFF \
+ -DENABLE_VCARD=OFF \
+ -DENABLE_VIDEO=OFF
LINPHONE_INSTALL_STAGING = YES
-LINPHONE_DEPENDENCIES = host-pkgconf libeXosip2 speex
-LINPHONE_LICENSE = GPL-2.0+
-LINPHONE_LICENSE_FILES = COPYING
-
-ifeq ($(BR2_arc),y)
-# toolchain __arc__ define conflicts with libosip2 source
-LINPHONE_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -U__arc__"
-endif
-
-ifeq ($(BR2_PACKAGE_LIBGTK2)$(BR2_PACKAGE_XORG7),yy)
-LINPHONE_CONF_OPTS += --enable-gtk_ui
-LINPHONE_DEPENDENCIES += libgtk2
-else
-LINPHONE_CONF_OPTS += --disable-gtk_ui
-endif
-
-# needed for bundled mediastreamer2
-LINPHONE_DEPENDENCIES += host-intltool host-gettext
-
-ifeq ($(BR2_PACKAGE_ALSA_LIB_MIXER)$(BR2_PACKAGE_ALSA_LIB_PCM),yy)
-LINPHONE_CONF_OPTS += --enable-alsa
-LINPHONE_DEPENDENCIES += alsa-lib
-else
-LINPHONE_CONF_OPTS += --disable-alsa
-endif
-
-ifeq ($(BR2_PACKAGE_LIBV4L),y)
-LINPHONE_CONF_OPTS += --enable-libv4l1 --enable-libv4l2
-LINPHONE_DEPENDENCIES += libv4l
-else
-LINPHONE_CONF_OPTS += --disable-libv4l1 --disable-libv4l2
-endif
-
-ifeq ($(BR2_PACKAGE_LIBUPNP),y)
-LINPHONE_DEPENDENCIES += libupnp
-LINPHONE_CONF_OPTS += --enable-upnp
-else
-LINPHONE_CONF_OPTS += --disable-upnp
+LINPHONE_DEPENDENCIES = \
+ belle-sip \
+ belr \
+ libxml2 \
+ mediastreamer \
+ sqlite \
+ $(if $(BR2_PACKAGE_ZLIB),zlib)
+LINPHONE_LICENSE = GPL-3.0+
+LINPHONE_LICENSE_FILES = LICENSE.txt
+
+ifeq ($(BR2_STATIC_LIBS),y)
+LINPHONE_CONF_OPTS += -DENABLE_STATIC=ON -DENABLE_SHARED=OFF
+else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
+LINPHONE_CONF_OPTS += -DENABLE_STATIC=ON -DENABLE_SHARED=ON
+else ifeq ($(BR2_SHARED_LIBS),y)
+LINPHONE_CONF_OPTS += -DENABLE_STATIC=OFF -DENABLE_SHARED=ON
endif
-$(eval $(autotools-package))
+$(eval $(cmake-package))