baresip: merge r28756, r29169, r29171, r29791, r29801, r29816, r29819
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 5 Feb 2012 15:03:34 +0000 (15:03 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 5 Feb 2012 15:03:34 +0000 (15:03 +0000)
SVN-Revision: 30195

net/baresip/Config.in [deleted file]
net/baresip/Makefile
net/baresip/files/baresip.init

diff --git a/net/baresip/Config.in b/net/baresip/Config.in
deleted file mode 100644 (file)
index 419fd21..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-menu "Configuration"
-       depends PACKAGE_baresip
-
-
-comment "Audio drivers ---"
-
-config BARESIP_MODULE_ALSA
-       bool "Alsa module"
-       depends PACKAGE_baresip && PACKAGE_alsa-lib
-       default n
-
-config BARESIP_MODULE_OSS
-       bool "OSS module"
-       depends PACKAGE_baresip
-       default y
-
-
-comment "Audio codecs ---"
-
-config BARESIP_MODULE_G711
-       bool "G.711 audio codec"
-       depends PACKAGE_baresip
-       default y
-
-config BARESIP_MODULE_G722
-       bool "G.722 audio codec"
-       depends PACKAGE_baresip && PACKAGE_libspandsp
-       default n
-
-config BARESIP_MODULE_SPEEX
-       bool "Speex audio codec"
-       depends PACKAGE_baresip && PACKAGE_libspeex
-       default n
-
-
-
-comment "Video codecs ---"
-
-config BARESIP_MODULE_AVCODEC
-       bool "FFmpeg avcodec module (H.263, H.264, MPEG4)"
-       depends PACKAGE_baresip && PACKAGE_libffmpeg
-       default n
-
-
-comment "Video source modules ---"
-
-config BARESIP_MODULE_V4L
-       bool "Video4Linux module"
-       depends PACKAGE_baresip
-       default n
-
-config BARESIP_MODULE_V4L2
-       bool "Video4Linux2 module"
-       depends PACKAGE_baresip && PACKAGE_libv4l
-       default n
-
-
-comment "Video display modules ---"
-
-config BARESIP_MODULE_SDL
-       bool "SDL module"
-       depends PACKAGE_baresip && PACKAGE_libsdl
-       default n
-
-
-endmenu
index 6c637304a3f321b4998ed6f700be4ee804a361d7..02f6885eef3847e7df8c667a273723c9f24b24c6 100644 (file)
-#
-# Makefile
-#
+# 
+# Copyright (C) 2010-2011 OpenWrt.org
 # Copyright (C) 2010 Alfred E. Heggestad
 #
+# 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:=0.2.0
+PKG_VERSION:=0.4.0
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.creytiv.com/pub/
-PKG_MD5SUM:=c4e160463b2bfb2e326e916089da1c4f
+PKG_MD5SUM:=770a13543866e801f6544e194097e911
+
+baresip-mods:= \
+       alsa \
+       avcodec \
+       avformat \
+       cons \
+       evdev \
+       g711 \
+       g722 \
+       oss \
+       sdl \
+       speex \
+       stdio \
+       uuid \
+       v4l \
+       v4l2 \
+
+PKG_CONFIG_DEPENDS:= \
+       $(patsubst %,CONFIG_PACKAGE_baresip-mod-%,$(baresip-mods)) \
 
 include $(INCLUDE_DIR)/package.mk
 
-EXTRA_DEPS :=
-
-
-BARESIP_MODULES :=
-
-
-define Package/baresip/config
-       source "$(SOURCE)/Config.in"
-endef
-
-
-ifneq ($(CONFIG_BARESIP_MODULE_ALSA),)
-BARESIP_MODULES += USE_ALSA=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_AVCODEC),)
-BARESIP_MODULES += USE_FFMPEG=1 USE_FFMPEG_AVFORMAT=
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_G711),)
-BARESIP_MODULES += USE_G711=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_G722),)
-BARESIP_MODULES += USE_G722=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_OSS),)
-BARESIP_MODULES += USE_OSS=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_SDL),)
-BARESIP_MODULES += USE_SDL=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_SPEEX),)
-BARESIP_MODULES += USE_SPEEX=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_V4L),)
-BARESIP_MODULES += USE_V4L=1
-endif
-ifneq ($(CONFIG_BARESIP_MODULE_V4L2),)
-BARESIP_MODULES += USE_V4L2=1
-endif
-
-
-define Package/baresip
+define Package/baresip/Default
   SECTION:=net
   CATEGORY:=Network
   SUBMENU:=Telephony
-  DEPENDS:=+libre +libpthread $(EXTRA_DEPS)
-  TITLE:=baresip Barebone SIP useragent
   URL:=http://www.creytiv.com/
 endef
 
+define Package/baresip
+$(call Package/baresip/Default)
+  TITLE:=Portable and modular SIP User-Agent with A/V support
+  DEPENDS:=+libre +librem +libpthread
+endef
+
+
+baresip-mod-alsa      := USE_ALSA
+baresip-mod-avcodec   := USE_FFMPEG
+baresip-mod-avformat  := USE_FFMPEG_AVFORMAT
+baresip-mod-cons      := USE_CONS
+baresip-mod-evdev     := USE_EVDEV
+baresip-mod-g711      := USE_G711
+baresip-mod-g722      := USE_G722
+baresip-mod-oss       := USE_OSS
+baresip-mod-sdl       := USE_SDL
+baresip-mod-speex     := USE_SPEEX
+baresip-mod-stdio     := USE_STDIO
+baresip-mod-uuid      := USE_UUID
+baresip-mod-v4l       := USE_V4L
+baresip-mod-v4l2      := USE_V4L2
+
+BARESIP_MOD_OPTIONS:= \
+       MOD_AUTODETECT= \
+       $(foreach m,$(baresip-mods),$(baresip-mod-$(m))=$(if $(CONFIG_PACKAGE_baresip-mod-$(m)),1))
+
 define Build/Compile
        $(MAKE) -C $(PKG_BUILD_DIR) \
-               LIBRE_MK=../re-$(PKG_VERSION)/mk/re.mk \
-               LIBRE_INC=../re-$(PKG_VERSION)/include \
-               LIBRE_SO=$(STAGING_DIR)/usr/lib/libre.so \
-               MOD_AUTODETECT= \
-               USE_STDIO=1 USE_CONS=1 USE_EVDEV=1 \
-               $(BARESIP_MODULES) \
+               LIBRE_MK="$(STAGING_DIR)/usr/share/re/re.mk" \
+               LIBRE_INC="$(STAGING_DIR)/usr/include/re" \
+               LIBRE_SO="$(STAGING_DIR)/usr/lib" \
+               LIBREM_PATH="../rem" \
                CC="$(TARGET_CC)" \
                DESTDIR="$(PKG_INSTALL_DIR)" \
                EXTRA_CFLAGS="$(TARGET_CFLAGS) -DOPENWRT" \
-               $(PKG_MAKE_OPTS) \
-               SYSROOT="$(TOOLCHAIN_DIR)" \
+               SYSROOT="$$$$(echo '#include <pthread.h>' | $(TARGET_CROSS)cpp -x c | sed -ne 's,^# [0-9]* \"\(.*\)/include/pthread\.h\".*,\1,p' | head -n1)" \
                SYSROOT_ALT="$(STAGING_DIR)/usr" \
                RELEASE=1 \
+               CROSS_COMPILE="$(TARGET_CROSS)" \
+               OS="linux" \
+               $(BARESIP_MOD_OPTIONS) \
                all install
 endef
 
 define Package/baresip/install
        $(INSTALL_DIR) $(1)/usr/bin
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/baresip $(1)/usr/bin/
+       $(CP) $(PKG_INSTALL_DIR)/usr/bin/baresip $(1)/usr/bin/
        $(INSTALL_DIR) $(1)/usr/lib/baresip/modules
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/baresip/modules/*.so $(1)/usr/lib/baresip/modules/.
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/baresip/modules/ice.so \
+               $(PKG_INSTALL_DIR)/usr/lib/baresip/modules/stun.so \
+               $(PKG_INSTALL_DIR)/usr/lib/baresip/modules/turn.so \
+               $(1)/usr/lib/baresip/modules/.
        $(INSTALL_DIR) $(1)/usr/share/baresip
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/baresip/* $(1)/usr/share/baresip/.
+       $(CP) $(PKG_INSTALL_DIR)/usr/share/baresip/* $(1)/usr/share/baresip/.
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/baresip.init $(1)/etc/init.d/baresip
 endef
 
+
+#
+# 1. Name
+# 2. Title
+# 3. Files
+# 4. Depends
+#
+define BuildPlugin
+
+  define Package/baresip-mod-$(1)
+    $$(call Package/baresip/Default)
+    TITLE:= baresip $(2) module
+    DEPENDS:= baresip $(4)
+  endef
+
+  define Package/baresip-mod-$(1)/install
+       [ -z "$(3)" ] || $(INSTALL_DIR) $$(1)/usr/lib/baresip/modules
+       for f in $(3); do \
+               $(CP) \
+                       $(PKG_INSTALL_DIR)/usr/lib/baresip/modules/$$$$$$$${f}.so \
+                       $$(1)/usr/lib/baresip/modules/ ; \
+       done
+  endef
+
+  $$(eval $$(call BuildPackage,baresip-mod-$(1)))
+endef
+
+
 $(eval $(call BuildPackage,baresip))
+
+$(eval $(call BuildPlugin,alsa,ALSA audio driver,alsa,+PACKAGE_baresip-mod-alsa:alsa-lib))
+$(eval $(call BuildPlugin,avcodec,FFmpeg video codecs,avcodec,+PACKAGE_baresip-mod-avcodec:libffmpeg))
+$(eval $(call BuildPlugin,avformat,FFmpeg video source,avformat,+PACKAGE_baresip-mod-avformat:libffmpeg))
+$(eval $(call BuildPlugin,cons,console UI,cons,))
+$(eval $(call BuildPlugin,evdev,input event device UI,evdev,))
+$(eval $(call BuildPlugin,g711,G.711 audio codec,g711,))
+$(eval $(call BuildPlugin,g722,G.722 audio codec,g722,+PACKAGE_baresip-mod-g722:libspandsp))
+$(eval $(call BuildPlugin,sdl,SDL video display,sdl,+libsdl))
+$(eval $(call BuildPlugin,oss,OSS audio driver,oss,))
+$(eval $(call BuildPlugin,speex,Speex audio codec,speex,+PACKAGE_baresip-mod-speex:libspeex))
+$(eval $(call BuildPlugin,stdio,standard I/O UI,stdio,))
+$(eval $(call BuildPlugin,uuid,UUID,uuid,+libuuid))
+$(eval $(call BuildPlugin,v4l,Video4Linux video source,v4l,+PACKAGE_baresip-mod-v4l:libv4l @(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32||LINUX_2_6_33||LINUX_2_6_34||LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37)))
+$(eval $(call BuildPlugin,v4l2,Video4Linux2 video source,v4l2,+PACKAGE_baresip-mod-v4l2:libv4l @(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32||LINUX_2_6_33||LINUX_2_6_34||LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37)))
index dd84a5048b46ccf0c0daf6210c8176bf23791d52..e398595710108e9d44312018633ea0875431b934 100644 (file)
@@ -1,19 +1,14 @@
 #!/bin/sh /etc/rc.common
-#
+# Copyright (C) 2010-2011 OpenWrt.org
 # Copyright (C) 2010 Alfred E. Heggestad
 #
 
 START=92
-BIN=baresip
-DEFAULT=/etc/default/$BIN
-OPTIONS=-d
 
 start() {
-       [ -f $DEFAULT ] && . $DEFAULT
-       $BIN $OPTIONS
+       service_start /usr/bin/baresip -d
 }
 
 stop() {
-       killall $BIN
+       service_stop /usr/bin/baresip
 }
-