Skip to content

Commit

Permalink
baresip,libre: Update to version 3.16.0
Browse files Browse the repository at this point in the history
The previous version 1.1.0 is about 7 years old now and a lot has
changed. Various fixes, improvements and features have been added.

The build system has moved to cmake and pkg-config is used,
which makes it a lot easier to build from the openwrt buildroot.
Therefore a lot of the extra code is removed from the makefiles.

librem is now integrated into libre.

No more patches are required.

Signed-off-by: Daniel Danzberger <[email protected]>
  • Loading branch information
Daniel Danzberger committed Nov 6, 2024
1 parent 75acd1c commit bf395d8
Show file tree
Hide file tree
Showing 8 changed files with 23 additions and 283 deletions.
48 changes: 8 additions & 40 deletions libs/re/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=re
PKG_VERSION:=2.0.1
PKG_RELEASE:=1
PKG_VERSION:=3.16.0
PKG_RELEASE:=2

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/baresip/re/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=43aa439b96aff75fe5768b9f9d49dea97042e42e7647df47b345465763e2f7ed
PKG_HASH:=11b3215064b6ef5a11b0f4645d6d4834f8ba899d5b65c66477f9c4afbd32e1ed

PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=docs/COPYING
Expand All @@ -24,6 +23,7 @@ PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1

include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk

define Package/libre
SUBMENU:=Telephony
Expand All @@ -32,49 +32,17 @@ define Package/libre
DEPENDS:=+libopenssl +zlib
TITLE:=Generic library for real-time communications with async IO support
URL:=https://github.com/baresip/re
ABI_VERSION:=1
ABI_VERSION:=2
endef

# re.mk is used for this and all related packages (rem, restund and baresip).
# It relies on SYSROOT and SYSROOT_ALT being set. SYSROOT is used for finding
# toolchain headers (like pthread.h). SYSROOT_ALT is used for finding headers
# from other packages, like openssl etc.
#
# CFLAGS are picked up from the environment, as well as CPPFLAGS (and LD etc.).
# But LDFLAGS aren't picked up, so they need to be handed over via
# EXTRA_LFLAGS.
#
# LD is changed to TARGET_CC to fix build failures on x86 32bit. Without this
# there's no linking to ssp, which results in undefined references.

# used by 001-extend-ninit-nclose-check.patch
TARGET_CFLAGS+=-DOPENWRT

ifneq ($(CONFIG_USE_GLIBC)$(CONFIG_USE_MUSL),)
TARGET_CFLAGS+=-D_GNU_SOURCE
endif

MAKE_FLAGS+= \
CROSS_COMPILE="$(TARGET_CROSS)" \
EXTRA_LFLAGS="$(TARGET_LDFLAGS)" \
LD="$(TARGET_CC)" \
OS=linux \
RELEASE=1 \
SYSROOT="$(shell $(FIND) $(TOOLCHAIN_DIR) -path '*/include/pthread.h' | sed -ne '1s|/include/pthread.h||p')" \
SYSROOT_ALT="$(STAGING_DIR)/usr"

define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/share/re
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/re/re.mk $(1)/usr/share/re
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/re $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libre.{a,so*} $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr
$(CP) $(PKG_INSTALL_DIR)/usr/* $(1)/usr
endef

define Package/libre/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libre.so.$(ABI_VERSION)* $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libre.so.* $(1)/usr/lib
endef

$(eval $(call BuildPackage,libre))
20 changes: 0 additions & 20 deletions libs/re/patches/001-extend-ninit-nclose-check.patch

This file was deleted.

11 changes: 0 additions & 11 deletions libs/re/patches/002-fix-redefine-ssize_t.patch

This file was deleted.

10 changes: 0 additions & 10 deletions libs/re/patches/004-prevent-optimization-meddling.patch

This file was deleted.

14 changes: 0 additions & 14 deletions libs/re/patches/005-fix-builds-for-mipsel-targets.patch

This file was deleted.

61 changes: 0 additions & 61 deletions libs/rem/Makefile

This file was deleted.

119 changes: 15 additions & 104 deletions net/baresip/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=baresip
PKG_VERSION:=1.1.0
PKG_RELEASE:=6
PKG_VERSION:=3.16.0
PKG_RELEASE:=7

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/baresip/baresip/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=f9230b27c4a62f31223847bc485c51f3d960f8a09f36998dedb73358e1784b4e
PKG_HASH:=95338c4e4dd6931c94d425d69089b66d32c173e48cb992344e856ead7ba9393b

PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=docs/COPYING
Expand All @@ -24,45 +23,8 @@ PKG_BUILD_DEPENDS:=glib2/host
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1

baresip-mods:= \
aac \
alsa \
amr \
avcodec \
avfilter \
avformat \
cons \
ctrl-dbus \
evdev \
g711 \
g722 \
g726 \
gst \
gst-video \
httpreq \
l16 \
mqtt \
opus \
opus_multistream \
oss \
plc \
portaudio \
pulse \
snapshot \
sndfile \
speex-pp \
srtp \
stdio \
syslog \
v4l2 \
vp8 \
vp9

PKG_CONFIG_DEPENDS:= \
$(patsubst %,CONFIG_PACKAGE_baresip-mod-%,$(subst _,-,$(baresip-mods)))

include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/nls.mk
include $(INCLUDE_DIR)/cmake.mk

define Package/baresip/Default
SECTION:=net
Expand All @@ -74,7 +36,7 @@ endef
define Package/baresip
$(call Package/baresip/Default)
TITLE:=Portable and modular SIP User-Agent with A/V support
DEPENDS:=+libre +librem
DEPENDS:=+libre
USERID:=$(PKG_NAME)=374:$(PKG_NAME)=374
MENU:=1
FILE_MODES:= \
Expand All @@ -84,76 +46,23 @@ $(call Package/baresip/Default)
/etc/baresip/contacts:baresip:baresip:0640
endef

baresip-mod-aac := USE_AAC
baresip-mod-alsa := USE_ALSA
baresip-mod-amr := USE_AMR
baresip-mod-avcodec := USE_AVCODEC
baresip-mod-avfilter := USE_AVFILTER
baresip-mod-avformat := USE_AVFORMAT
baresip-mod-cons := USE_CONS
baresip-mod-ctrl-dbus := HAVE_GLIB USE_DBUS
baresip-mod-evdev := USE_EVDEV
baresip-mod-g711 := USE_G711
baresip-mod-g722 := USE_G722
baresip-mod-g726 := USE_G726
baresip-mod-gst := USE_GST
baresip-mod-gst-video := USE_GST_VIDEO
baresip-mod-httpreq := USE_HTTPREQ
baresip-mod-l16 := USE_L16
baresip-mod-mqtt := USE_MQTT
baresip-mod-opus := USE_OPUS
baresip-mod-opus_multistream := USE_OPUS_MS
baresip-mod-oss := USE_OSS
baresip-mod-plc := USE_PLC
baresip-mod-portaudio := USE_PORTAUDIO
baresip-mod-pulse := USE_PULSE
baresip-mod-snapshot := USE_SNAPSHOT
baresip-mod-sndfile := USE_SNDFILE
baresip-mod-speex-pp := USE_SPEEX_PP
baresip-mod-srtp := USE_SRTP
baresip-mod-stdio := USE_STDIO
baresip-mod-syslog := USE_SYSLOG
baresip-mod-vp8 := USE_VPX
baresip-mod-vp9 := USE_VPX
baresip-mod-v4l2 := USE_V4L2

BARESIP_MOD_OPTIONS:= \
MOD_AUTODETECT= \
$(foreach m,$(baresip-mods),$(foreach v,$(baresip-mod-$(m)),$(v)=$(if $(CONFIG_PACKAGE_baresip-mod-$(subst _,-,$(m))),1)))

MAKE_FLAGS+= \
CROSS_COMPILE="$(TARGET_CROSS)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
EXTRA_LFLAGS="$(TARGET_LDFLAGS)" \
LD="$(TARGET_CC)" \
LIBRE_MK="$(STAGING_DIR)/usr/share/re/re.mk" \
LIBRE_INC="$(STAGING_DIR)/usr/include/re" \
LIBRE_SO="$(STAGING_DIR)/usr/lib" \
LIBREM_PATH="$(STAGING_DIR)/usr" \
OS=linux \
RELEASE=1 \
SYSROOT="$(shell $(FIND) $(TOOLCHAIN_DIR) -path '*/include/pthread.h' | sed -ne '1s|/include/pthread.h||p')" \
SYSROOT_ALT="$(STAGING_DIR)/usr" \
$(BARESIP_MOD_OPTIONS)

TARGET_CFLAGS+=-D_GNU_SOURCE

define Package/baresip/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/bin \
$(1)/usr/lib/baresip/modules \
$(1)/usr/share/baresip \
$(1)/etc/baresip \
$(1)/etc/init.d \
$(1)/etc/default
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/baresip $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/lib/baresip/modules
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libbaresip.so* $(1)/usr/lib
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/lib/baresip/modules/{account,auloop,contact,ice,menu,stun,turn}.so \
$(PKG_INSTALL_DIR)/usr/lib/baresip/modules/{account,contact,ice,menu,stun,turn}.so \
$(1)/usr/lib/baresip/modules
$(INSTALL_DIR) $(1)/usr/share/baresip
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/baresip/* $(1)/usr/share/baresip
$(INSTALL_DIR) $(1)/etc/baresip
$(SED) '/^#/!s/^/#/' $(PKG_BUILD_DIR)/docs/examples/accounts
$(SED) '/^#module_path/s|^#||;s|/local||' $(PKG_BUILD_DIR)/docs/examples/config
$(INSTALL_DATA) $(PKG_BUILD_DIR)/docs/examples/{accounts,config,contacts} $(1)/etc/baresip
$(INSTALL_DIR) $(1)/etc/default
$(INSTALL_CONF) ./files/baresip.default $(1)/etc/default/baresip
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/baresip.init $(1)/etc/init.d/baresip
endef

Expand Down Expand Up @@ -201,6 +110,8 @@ $(eval $(call BuildPlugin,amr,Adaptive Multi-Rate [AMR] audio codec,amr,))
$(eval $(call BuildPlugin,aubridge,Audio bridge module,aubridge,))
$(eval $(call BuildPlugin,aufile,Audio module for using a WAV-file as audio input,aufile,))
$(eval $(call BuildPlugin,ausine,Sine Audio Source,ausine,))
$(eval $(call BuildPlugin,auconv,Audio format conversion,auconv,))
$(eval $(call BuildPlugin,auresamp,Audio resampler,auresamp,))
$(eval $(call BuildPlugin,avcodec,Video codec using FFmpeg,avcodec,+libffmpeg-full))
$(eval $(call BuildPlugin,avformat,Video source using FFmpeg,avformat,baresip-mod-avcodec))
$(eval $(call BuildPlugin,b2bua,Back-to-Back User-Agent module,b2bua,))
Expand Down
23 changes: 0 additions & 23 deletions net/baresip/patches/010-fix-parallel-build.patch

This file was deleted.

0 comments on commit bf395d8

Please sign in to comment.