1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR
)/rules.mk
9 PKG_HASH
:= 7b3d84a3403fce590377808eaa4b08b6320666ca0e37eba0ad578b66211b13c8
10 PKG_DESCR
:= open source pbx
11 PKG_SECTION
:= net
/voip
12 PKG_DEPENDS
:= libncurses libcurl libressl
13 PKG_BUILDDEP
:= ncurses zlib curl popt libressl
14 PKG_NEEDS
:= threads c
++
15 PKG_URL
:= http
://www.asterisk.org
/
16 PKG_SITES
:= http
://downloads.asterisk.org
/pub
/telephony
/asterisk
/releases
/
19 DISTFILES
:= ${PKG_NAME}-${PKG_VERSION}.
tar.gz
21 PKG_LIBC_DEPENDS
:= uclibc-ng glibc
23 PKG_SUBPKGS
:= ASTERISK ASTERISK_VOICEMAIL ASTERISK_SOUNDS
24 PKG_SUBPKGS
+= ASTERISK_CHAN_SKINNY ASTERISK_CHAN_IAX2 ASTERISK_CODEC_SPEEX ASTERISK_CODEC_GSM
25 PKG_SUBPKGS
+= ASTERISK_PBX_DUNDI ASTERISK_RES_AGI
26 PKGSD_ASTERISK_VOICEMAIL
:= voicemail support
27 PKGSN_ASTERISK_VOICEMAIL
:= asterisk
28 PKGSD_ASTERISK_CODEC_GSM
:= GSM codec support
29 PKGSN_ASTERISK_CODEC_GSM
:= asterisk
30 PKGSD_ASTERISK_PBX_DUNDI
:= PBX dundi support
31 PKGSN_ASTERISK_PBX_DUNDI
:= asterisk
32 PKGSD_ASTERISK_RES_AGI
:= res agi support
33 PKGSN_ASTERISK_RES_AGI
:= asterisk
34 PKGSD_ASTERISK_CHAN_MGCP
:= Media Gateway Control Protocol implementation
35 PKGSN_ASTERISK_CHAN_MGCP
:= asterisk
36 PKGSD_ASTERISK_CHAN_SKINNY
:= skinny client control protocol implementation
37 PKGSN_ASTERISK_CHAN_SKINNY
:= asterisk
38 PKGSD_ASTERISK_CHAN_IAX2
:= support for the Inter Asterisk Protocol
39 PKGSN_ASTERISK_CHAN_IAX2
:= asterisk
40 PKGSD_ASTERISK_CODEC_SPEEX
:= speex
/PCM16 Codec translator
41 PKGSB_ASTERISK_CODEC_SPEEX
:= speex
42 PKGSN_ASTERISK_CODEC_SPEEX
:= asterisk
43 PKGSD_ASTERISK_SOUNDS
:= various soundfiles in GSM format
44 PKGSN_ASTERISK_SOUNDS
:= asterisk
45 PKGSS_ASTERISK_SOUNDS
:= asterisk-codec-gsm
47 include $(ADK_TOPDIR
)/mk
/package.mk
49 $(eval
$(call PKG_template
,ASTERISK
,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
50 $(eval
$(call PKG_template
,ASTERISK_VOICEMAIL
,asterisk-voicemail
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_VOICEMAIL},${PKG_SECTION}))
51 $(eval
$(call PKG_template
,ASTERISK_SOUNDS
,asterisk-sounds
,$(PKG_VERSION
)-${PKG_RELEASE},${PKGSS_ASTERISK_SOUNDS},${PKGSD_ASTERISK_SOUNDS},${PKG_SECTION}))
52 #$(eval $(call PKG_template,ASTERISK_CHAN_MGCP,asterisk-chan-mgcp,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_MGCP},${PKG_SECTION}))
53 $(eval
$(call PKG_template
,ASTERISK_CHAN_SKINNY
,asterisk-chan-skinny
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_SKINNY},${PKG_SECTION}))
54 $(eval
$(call PKG_template
,ASTERISK_CHAN_IAX2
,asterisk-chan-iax2
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_IAX2},${PKG_SECTION}))
55 $(eval
$(call PKG_template
,ASTERISK_CODEC_SPEEX
,asterisk-codec-speex
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CODEC_SPEEX},${PKG_SECTION}))
56 $(eval
$(call PKG_template
,ASTERISK_CODEC_GSM
,asterisk-codec-gsm
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CODEC_GSM},${PKG_SECTION}))
57 $(eval
$(call PKG_template
,ASTERISK_PBX_DUNDI
,asterisk-pbx-dundi
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_PBX_DUNDI},${PKG_SECTION}))
58 $(eval
$(call PKG_template
,ASTERISK_RES_AGI
,asterisk-res-agi
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_RES_AGI},${PKG_SECTION}))
60 CONFIGURE_ARGS
= --with-z
=${STAGING_TARGET_DIR}/usr \
61 --with-ncurses
=${STAGING_TARGET_DIR}/usr \
62 --with-ssl
=${STAGING_TARGET_DIR}/usr \
89 ifneq (${ADK_PACKAGE_ASTERISK_CODEC_GSM},)
90 CONFIGURE_ARGS
+= --with-gsm
=internal
92 CONFIGURE_ARGS
+= --without-gsm
94 ifneq (${ADK_PACKAGE_ASTERISK_CODEC_SPEEX},)
95 CONFIGURE_ARGS
+= --with-speex
=${STAGING_TARGET_DIR}/usr
96 EXTRA_CFLAGS
+= -I
$(STAGING_TARGET_DIR
)/usr
/include/speex
98 ifneq (${ADK_PACKAGE_ASTERISK_FORMAT_VORBIS},)
99 CONFIGURE_ARGS
+= --with-ogg
=${STAGING_TARGET_DIR}/usr \
100 --with-vorbis
=${STAGING_TARGET_DIR}/usr
101 TARGET_LDFLAGS
+= -logg
103 ifneq (${ADK_PACKAGE_ASTERISK_CURL},)
104 CONFIGURE_ARGS
+= --with-libcurl
=${STAGING_TARGET_DIR}/usr
106 CONFIGURE_ARGS
+= --without-libcurl
109 INSTALL_STYLE
:= manual
111 TARGET_CFLAGS
+= -fgnu89-inline
112 TARGET_LDFLAGS
+= -lm
-ltinfo
-ldl
-lpthread
113 MAKE_ENV
= ASTCFLAGS
="${TARGET_CPPFLAGS} -DHAVE_STRTOQ" \
114 ASTLDFLAGS
="${TARGET_LDFLAGS} -z muldefs"
115 MAKE_FLAGS
+= DESTDIR
="$(WRKINST)" \
116 OPTIMIZE
="${TARGET_CFLAGS}" \
118 ALL_TARGET
:= all install samples
121 cd
"$(WRKBUILD)/menuselect"; .
/configure
124 $(MAKE
) -C
$(WRKBUILD
)/menuselect
127 cd
${WRKBUILD}/sounds
; \
128 tar xzf asterisk-core-sounds-en-gsm-1.4
.25.
tar.gz
; \
129 rm asterisk-core-sounds-en-gsm-1.4
.25.
tar.gz
132 $(CP
) $(WRKINST
)/* $(IDIR_ASTERISK
)
133 rm -rf
$(IDIR_ASTERISK
)/usr
/sbin
/astgenkey
134 rm -rf
$(IDIR_ASTERISK
)/usr
/bin
135 rm -rf
$(IDIR_ASTERISK
)/usr
/share
136 rm -rf
$(IDIR_ASTERISK
)/usr
/include
137 rm -rf
$(IDIR_ASTERISK
)/var
138 (cd
$(IDIR_ASTERISK
)/usr
/lib
/asterisk
; \
142 rm -rf mohmp3
/*.mp3
; \
144 ln
-s
/tmp sounds
/priv-callerintros
; \
146 rm -rf
*adsi
* *festival
* *modem
* *meetme
* *oss
* \
147 *phone
* *intercom
* *mp3
* *nbscat
* *mysql
* \
148 *postgres
* *pgsql
* *voicemail
* *speex
* \
149 *zapateller
* *jpeg
*; \
150 rm -f chan_bluetooth.so
; \
151 rm -f chan_h323.so
; \
152 rm -f chan_iax2.so
; \
153 rm -f chan_mgcp.so
; \
154 rm -f chan_skinny.so
; \
155 rm -f
{codec
,format
}_ilbc.so
; \
156 rm -f codec_gsm.so
; \
157 rm -f codec_lpc10.so
; \
158 rm -f pbx_dundi.so
; \
161 (cd
$(IDIR_ASTERISK
)/etc
/asterisk
; \
162 rm -f
*iax
* *odbc
* *mysql
* *postgres
* *pgsql
* \
163 *voicemail
* *adsi
* *oss
* *alsa
* \
164 *festival
* *modem
* *meetme
* *phone
* *tds
* \
167 rm -f bluetooth.conf
; \
170 rm -f skinny.conf
; \
172 $(SED
) '/^astdatadir /s#/var/#/usr/#' asterisk.conf
; \
173 $(SED
) '/^\[directories\]/s/(!)//' asterisk.conf
; \
175 ${INSTALL_DATA} .
/files
/modules.conf
$(IDIR_ASTERISK
)/etc
/asterisk
/
176 $(SED
) 's|/var/lib/asterisk|/usr/lib/asterisk|g' \
177 $(WRKINST
)/etc
/asterisk
/musiconhold.conf
179 asterisk-sounds-install
:
180 ${INSTALL_DIR} $(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
181 $(CP
) $(WRKBUILD
)/sounds
/* \
182 $(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
/
183 (cd
$(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
; \
185 rm -f CHANGES
* CREDITS
* LICENSE
* *.txt
; \
186 rm -f
*.
tar.gz Makefile
; \
189 asterisk-voicemail-install
:
190 ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL
)/etc
/asterisk
191 ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
192 ${INSTALL_DATA} $(WRKBUILD
)/configs
/voicemail.conf.sample \
193 $(IDIR_ASTERISK_VOICEMAIL
)/etc
/asterisk
/voicemail.conf
194 ${CP} $(WRKBUILD
)/apps
/*voicemail.so \
195 $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
/
196 ${INSTALL_BIN} $(WRKBUILD
)/res
/res_adsi.so \
197 $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
/
198 ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/sounds
199 $(CP
) $(WRKBUILD
)/sounds
/vm-
*.gsm \
200 $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/sounds
/
202 asterisk-chan-mgcp-install
:
203 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_MGCP
)/etc
/asterisk
204 ${INSTALL_DATA} $(WRKBUILD
)/configs
/mgcp.conf.sample \
205 $(IDIR_ASTERISK_CHAN_MGCP
)/etc
/asterisk
/mgcp.conf
206 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_MGCP
)/usr
/lib
/asterisk
/modules
207 ${INSTALL_BIN} $(WRKBUILD
)/channels
/chan_mgcp.so \
208 $(IDIR_ASTERISK_CHAN_MGCP
)/usr
/lib
/asterisk
/modules
/
210 asterisk-chan-skinny-install
:
211 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_SKINNY
)/etc
/asterisk
212 ${INSTALL_DATA} $(WRKBUILD
)/configs
/skinny.conf.sample \
213 $(IDIR_ASTERISK_CHAN_SKINNY
)/etc
/asterisk
/skinny.conf
214 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_SKINNY
)/usr
/lib
/asterisk
/modules
215 ${INSTALL_BIN} $(WRKBUILD
)/channels
/chan_skinny.so \
216 $(IDIR_ASTERISK_CHAN_SKINNY
)/usr
/lib
/asterisk
/modules
/
218 asterisk-chan-iax2-install
:
219 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
220 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2
)/usr
/lib
/asterisk
/modules
221 ${INSTALL_DATA} $(WRKBUILD
)/configs
/iax.conf.sample \
222 $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
/iax.conf
223 ${INSTALL_DATA} $(WRKBUILD
)/configs
/iaxprov.conf.sample \
224 $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
/iaxprov.conf
225 ${INSTALL_BIN} $(WRKBUILD
)/channels
/chan_iax2.so \
226 $(IDIR_ASTERISK_CHAN_IAX2
)/usr
/lib
/asterisk
/modules
/
228 asterisk-codec-speex-install
:
229 ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_SPEEX
)/usr
/lib
/asterisk
/modules
230 ${INSTALL_BIN} $(WRKBUILD
)/codecs
/codec_speex.so \
231 $(IDIR_ASTERISK_CODEC_SPEEX
)/usr
/lib
/asterisk
/modules
/
233 asterisk-codec-gsm-install
:
234 ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_GSM
)/usr
/lib
/asterisk
/modules
/
235 ${INSTALL_BIN} $(WRKBUILD
)/codecs
/codec_gsm.so \
236 $(IDIR_ASTERISK_CODEC_GSM
)/usr
/lib
/asterisk
/modules
/
238 asterisk-pbx-dundi-install
:
239 ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI
)/etc
/asterisk
240 ${INSTALL_DATA} $(WRKBUILD
)/configs
/dundi.conf.sample \
241 $(IDIR_ASTERISK_PBX_DUNDI
)/etc
/asterisk
/dundi.conf
242 ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI
)/usr
/lib
/asterisk
/modules
243 ${INSTALL_BIN} $(WRKBUILD
)/pbx
/pbx_dundi.so \
244 $(IDIR_ASTERISK_PBX_DUNDI
)/usr
/lib
/asterisk
/modules
/
246 asterisk-res-agi-install
:
247 ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/agi-bin
248 ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/modules
249 ${INSTALL_BIN} $(WRKBUILD
)/res
/res_agi.so \
250 $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/modules
/
252 asterisk-meetme-install
:
253 ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/etc
/asterisk
/
254 ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/usr
/lib
/asterisk
/modules
255 ${INSTALL_DATA} ${WRKBUILD}/configs
/meetme.conf.sample \
256 ${IDIR_ASTERISK_MEETME}/etc
/asterisk
/meetme.conf
257 ${INSTALL_BIN} ${WRKBUILD}/apps
/app_meetme.so \
258 ${IDIR_ASTERISK_MEETME}/usr
/lib
/asterisk
/modules
260 include ${ADK_TOPDIR}/mk
/pkg-bottom.mk