2 # Copyright (C) 2010-2017 OpenWrt.org
3 # Copyright (C) 2010 Alfred E. Heggestad
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
13 PKG_RELEASE
:=$(AUTORELEASE
)
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
16 PKG_SOURCE_URL
:=https
://codeload.github.com
/baresip
/baresip
/tar.gz
/v
$(PKG_VERSION
)?
17 PKG_HASH
:=f9230b27c4a62f31223847bc485c51f3d960f8a09f36998dedb73358e1784b4e
19 PKG_LICENSE
:=BSD-3-Clause
20 PKG_LICENSE_FILES
:=docs
/COPYING
21 PKG_MAINTAINER
:=Jiri Slachta
<jiri@slachta.eu
>
60 PKG_CONFIG_DEPENDS
:= \
61 $(patsubst %,CONFIG_PACKAGE_baresip-mod-
%,$(subst _
,-,$(baresip-mods
)))
63 include $(INCLUDE_DIR
)/package.mk
65 define Package
/baresip
/Default
69 URL
:=https
://github.com
/baresip
/baresip
72 define Package
/baresip
73 $(call Package
/baresip
/Default
)
74 TITLE
:=Portable and modular SIP User-Agent with A
/V support
75 DEPENDS
:=+libre
+librem
76 USERID
:=$(PKG_NAME
)=374:$(PKG_NAME
)=374
79 /etc
/baresip
:baresip
:baresip
:0750 \
80 /etc
/baresip
/accounts
:baresip
:baresip
:0640 \
81 /etc
/baresip
/config
:baresip
:baresip
:0640 \
82 /etc
/baresip
/contacts
:baresip
:baresip
:0640
85 baresip-mod-aac
:= USE_AAC
86 baresip-mod-alsa
:= USE_ALSA
87 baresip-mod-amr
:= USE_AMR
88 baresip-mod-avcodec
:= USE_AVCODEC
89 baresip-mod-avfilter
:= USE_AVFILTER
90 baresip-mod-avformat
:= USE_AVFORMAT
91 baresip-mod-cons
:= USE_CONS
92 baresip-mod-ctrl-dbus
:= HAVE_GLIB USE_DBUS
93 baresip-mod-evdev
:= USE_EVDEV
94 baresip-mod-g711
:= USE_G711
95 baresip-mod-g722
:= USE_G722
96 baresip-mod-g726
:= USE_G726
97 baresip-mod-gst
:= USE_GST
98 baresip-mod-gst-video
:= USE_GST_VIDEO
99 baresip-mod-httpreq
:= USE_HTTPREQ
100 baresip-mod-l16
:= USE_L16
101 baresip-mod-mqtt
:= USE_MQTT
102 baresip-mod-opus
:= USE_OPUS
103 baresip-mod-opus_multistream
:= USE_OPUS_MS
104 baresip-mod-oss
:= USE_OSS
105 baresip-mod-plc
:= USE_PLC
106 baresip-mod-portaudio
:= USE_PORTAUDIO
107 baresip-mod-pulse
:= USE_PULSE
108 baresip-mod-snapshot
:= USE_SNAPSHOT
109 baresip-mod-sndfile
:= USE_SNDFILE
110 baresip-mod-speex-pp
:= USE_SPEEX_PP
111 baresip-mod-srtp
:= USE_SRTP
112 baresip-mod-stdio
:= USE_STDIO
113 baresip-mod-syslog
:= USE_SYSLOG
114 baresip-mod-vp8
:= USE_VPX
115 baresip-mod-vp9
:= USE_VPX
116 baresip-mod-v4l2
:= USE_V4L2
118 BARESIP_MOD_OPTIONS
:= \
120 $(foreach m
,$(baresip-mods
),$(foreach v
,$(baresip-mod-
$(m
)),$(v
)=$(if
$(CONFIG_PACKAGE_baresip-mod-
$(subst _
,-,$(m
))),1)))
123 CROSS_COMPILE
="$(TARGET_CROSS)" \
124 DESTDIR
="$(PKG_INSTALL_DIR)" \
125 EXTRA_LFLAGS
="$(TARGET_LDFLAGS)" \
127 LIBRE_MK
="$(STAGING_DIR)/usr/share/re/re.mk" \
128 LIBRE_INC
="$(STAGING_DIR)/usr/include/re" \
129 LIBRE_SO
="$(STAGING_DIR)/usr/lib" \
130 LIBREM_PATH
="$(STAGING_DIR)/usr" \
133 SYSROOT
="$(shell $(FIND) $(TOOLCHAIN_DIR) -path '*/include/pthread.h' | sed -ne '1s|/include/pthread.h||p')" \
134 SYSROOT_ALT
="$(STAGING_DIR)/usr" \
135 $(BARESIP_MOD_OPTIONS
)
137 TARGET_CFLAGS
+=-D_GNU_SOURCE
139 define Package
/baresip
/install
140 $(INSTALL_DIR
) $(1)/usr
/bin
141 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/baresip
$(1)/usr
/bin
142 $(INSTALL_DIR
) $(1)/usr
/lib
/baresip
/modules
144 $(PKG_INSTALL_DIR
)/usr
/lib
/baresip
/modules
/{account
,auloop
,contact
,ice
,menu
,stun
,turn
}.so \
145 $(1)/usr
/lib
/baresip
/modules
146 $(INSTALL_DIR
) $(1)/usr
/share
/baresip
147 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/baresip
/* $(1)/usr
/share
/baresip
148 $(INSTALL_DIR
) $(1)/etc
/baresip
149 $(SED
) '/^#/!s/^/#/' $(PKG_BUILD_DIR
)/docs
/examples
/accounts
150 $(SED
) '/^#module_path/s|^#||;s|/local||' $(PKG_BUILD_DIR
)/docs
/examples
/config
151 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/docs
/examples
/{accounts
,config
,contacts
} $(1)/etc
/baresip
152 $(INSTALL_DIR
) $(1)/etc
/default
153 $(INSTALL_CONF
) .
/files
/baresip.default
$(1)/etc
/default
/baresip
154 $(INSTALL_DIR
) $(1)/etc
/init.d
155 $(INSTALL_BIN
) .
/files
/baresip.init
$(1)/etc
/init.d
/baresip
158 define Package
/baresip
/conffiles
159 /etc
/baresip
/accounts
161 /etc
/baresip
/contacts
176 define Package
/baresip-mod-
$(subst _
,-,$(1))
177 $$(call Package
/baresip
/Default
)
179 DEPENDS
:=baresip
$(patsubst +%,+PACKAGE_
$(PKG_NAME
)-mod-
$(subst _
,-,$(1)):%,$(4))
182 define Package
/baresip-mod-
$(subst _
,-,$(1))/install
183 [ -z
"$(3)" ] ||
$(INSTALL_DIR
) $$(1)/usr
/lib
/baresip
/modules
186 $(PKG_INSTALL_DIR
)/usr
/lib
/baresip
/modules
/$$$$$$$${f}.so \
187 $$(1)/usr
/lib
/baresip
/modules
; \
191 $$(eval
$$(call BuildPackage
,baresip-mod-
$(subst _
,-,$(1))))
194 $(eval
$(call BuildPackage
,baresip
))
196 $(eval
$(call BuildPlugin
,aac
,MPEG-4 AAC Audio Codec
,aac
,+fdk-aac
))
197 $(eval
$(call BuildPlugin
,alsa
,ALSA audio driver
,alsa
,+alsa-lib
))
198 $(eval
$(call BuildPlugin
,amr
,Adaptive Multi-Rate
[AMR
] audio codec
,amr
,))
199 $(eval
$(call BuildPlugin
,aubridge
,Audio bridge module
,aubridge
,))
200 $(eval
$(call BuildPlugin
,aufile
,Audio module for using a WAV-file
as audio input
,aufile
,))
201 $(eval
$(call BuildPlugin
,ausine
,Sine Audio Source
,ausine
,))
202 $(eval
$(call BuildPlugin
,avcodec
,Video codec using FFmpeg
,avcodec
,+libffmpeg-full
))
203 $(eval
$(call BuildPlugin
,avformat
,Video source using FFmpeg
,avformat
,baresip-mod-avcodec
))
204 $(eval
$(call BuildPlugin
,b2bua
,Back-to-Back User-Agent module
,b2bua
,))
205 $(eval
$(call BuildPlugin
,cons
,UDP
/TCP console UI driver
,cons
,))
206 $(eval
$(call BuildPlugin
,ctrl_dbus
,DBus control interface
,ctrl_dbus
,+glib2
))
207 $(eval
$(call BuildPlugin
,ctrl_tcp
,TCP control interface
,ctrl_tcp
,))
208 $(eval
$(call BuildPlugin
,debug_cmd
,Debug commands
,debug_cmd
,))
209 $(eval
$(call BuildPlugin
,dtls_srtp
,DTLS-SRTP end-to-end encryption
,dtls_srtp
,))
210 $(eval
$(call BuildPlugin
,ebuacip
,EBU ACIP
[Audio Contribution over IP
] Profile
,ebuacip
,))
211 $(eval
$(call BuildPlugin
,echo
,Echo server module
,echo
,))
212 $(eval
$(call BuildPlugin
,evdev
,Linux input driver
,evdev
,))
213 $(eval
$(call BuildPlugin
,fakevideo
,Fake video input
/output driver
,fakevideo
,))
214 $(eval
$(call BuildPlugin
,g711
,G
.711 audio codec
,g711
,))
215 $(eval
$(call BuildPlugin
,g722
,G
.722 audio codec
,g722
,+libspandsp
))
216 $(eval
$(call BuildPlugin
,g726
,G
.726 audio codec
,g726
,+libspandsp
))
217 $(eval
$(call BuildPlugin
,gst
,Gstreamer
1.0 playbin pipeline
,gst
,+glib2
+libgstreamer1
))
218 $(eval
$(call BuildPlugin
,gst_video
,Video codecs using Gstreamer
1.0,gst_video
,+glib2
+libgst1app
+libgstreamer1
))
219 $(eval
$(call BuildPlugin
,httpd
,HTTP webserver UI-module
,httpd
,))
220 $(eval
$(call BuildPlugin
,httpreq
,HTTP request module
,httpreq
,))
221 $(eval
$(call BuildPlugin
,l16
,16-bit linear codec
,l16
,))
222 $(eval
$(call BuildPlugin
,mixausrc
,Mixes another audio source into audio stream
,mixausrc
,))
223 $(eval
$(call BuildPlugin
,mqtt
,Message Queue Telemetry Transport
[MQTT
] client
,mqtt
,+libmosquitto
))
224 $(eval
$(call BuildPlugin
,multicast
,Multicast support
,multicast
,))
225 $(eval
$(call BuildPlugin
,mwi
,Message Waiting Indication
,mwi
,))
226 $(eval
$(call BuildPlugin
,natpmp
,NAT Port Mapping Protocol module
,natpmp
,))
227 $(eval
$(call BuildPlugin
,opus
,OPUS Interactive audio codec
,opus
,+libopus
))
228 $(eval
$(call BuildPlugin
,opus_multistream
,Opus Multistream Audio Codec
,opus_multistream
,+libopus
))
229 $(eval
$(call BuildPlugin
,oss
,OSS audio driver
,oss
,))
230 $(eval
$(call BuildPlugin
,plc
,Packet Loss Concealment
,plc
,+libspandsp
))
231 $(eval
$(call BuildPlugin
,portaudio
,Portaudio audio driver
,portaudio
,+portaudio
))
232 $(eval
$(call BuildPlugin
,presence
,Presence module
,presence
,))
233 $(eval
$(call BuildPlugin
,pulse
,Pulseaudio audio driver
,pulse
,PACKAGE_
$(PKG_NAME
)-mod-pulse
:pulseaudio
))
234 $(eval
$(call BuildPlugin
,rtcpsummary
,RTCP summary module
,rtcpsummary
,))
235 $(eval
$(call BuildPlugin
,selfview
,Video selfview module
,selfview
,))
236 $(eval
$(call BuildPlugin
,serreg
,Serial registration mode
,serreg
,))
237 $(eval
$(call BuildPlugin
,snapshot
,Snapshot video module
,snapshot
,+libpng
))
238 $(eval
$(call BuildPlugin
,sndfile
,Audio dumper using libsndfile
,sndfile
,+libsndfile
))
239 $(eval
$(call BuildPlugin
,speex_pp
,Speex Pre-processor
,speex_pp
,+libspeexdsp
))
240 $(eval
$(call BuildPlugin
,srtp
,Secure RTP module using libre
,srtp
,))
241 $(eval
$(call BuildPlugin
,stdio
,Standard input
/output UI driver
,stdio
,))
242 $(eval
$(call BuildPlugin
,syslog
,Syslog module
,syslog
,))
243 $(eval
$(call BuildPlugin
,uuid
,UUID generator and loader
,uuid
,))
244 $(eval
$(call BuildPlugin
,v4l2
,Video4Linux2 video source
,v4l2
,+libv4l
))
245 $(eval
$(call BuildPlugin
,v4l2_codec
,Video4Linux2 video codec module
,v4l2_codec
,))
246 $(eval
$(call BuildPlugin
,vidbridge
,Video bridge module
,vidbridge
,))
247 $(eval
$(call BuildPlugin
,vidinfo
,Video-info
filter,vidinfo
,))
248 $(eval
$(call BuildPlugin
,vidloop
,Video-loop
test module
,vidloop
,))
249 $(eval
$(call BuildPlugin
,vumeter
,Display audio levels in console
,vumeter
,))
250 $(eval
$(call BuildPlugin
,vp8
,VP8 video codec
,vp8
,+libvpx
))
251 $(eval
$(call BuildPlugin
,vp9
,VP9 video codec
,vp9
,+libvpx
))