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
:= 5ad25c136c7772f0ad10ae02d59f19b32c0cf64027278e3de6a6314ee24d5ff9
10 PKG_DESCR
:= open source pbx
11 PKG_SECTION
:= net
/voip
12 PKG_DEPENDS
:= libncurses libcurl libopenssl libedit libuuid libjansson
13 PKG_DEPENDS
+= libxml2 libsqlite libxslt
14 PKG_BUILDDEP
:= ncurses zlib curl popt openssl libedit util-linux libjansson
15 PKG_BUILDDEP
+= libxml2 sqlite libxslt
16 PKG_NEEDS
:= threads c
++
17 PKG_URL
:= http
://www.asterisk.org
/
18 PKG_SITES
:= http
://downloads.asterisk.org
/pub
/telephony
/asterisk
/releases
/
20 DISTFILES
:= ${PKG_NAME}-${PKG_VERSION}.
tar.gz
22 PKG_LIBC_DEPENDS
:= uclibc-ng glibc
24 PKG_SUBPKGS
:= ASTERISK ASTERISK_VOICEMAIL ASTERISK_SOUNDS
25 PKG_SUBPKGS
+= ASTERISK_CHAN_IAX2 ASTERISK_CODEC_SPEEX ASTERISK_CODEC_GSM
26 PKG_SUBPKGS
+= ASTERISK_PBX_DUNDI ASTERISK_RES_AGI
27 PKGSD_ASTERISK_VOICEMAIL
:= voicemail support
28 PKGSN_ASTERISK_VOICEMAIL
:= asterisk
29 PKGSD_ASTERISK_CODEC_GSM
:= GSM codec support
30 PKGSN_ASTERISK_CODEC_GSM
:= asterisk
31 PKGSD_ASTERISK_PBX_DUNDI
:= PBX dundi support
32 PKGSN_ASTERISK_PBX_DUNDI
:= asterisk
33 PKGSD_ASTERISK_RES_AGI
:= res agi support
34 PKGSN_ASTERISK_RES_AGI
:= asterisk
35 PKGSD_ASTERISK_CHAN_IAX2
:= support for the Inter Asterisk Protocol
36 PKGSN_ASTERISK_CHAN_IAX2
:= asterisk
37 PKGSD_ASTERISK_CODEC_SPEEX
:= speex
/PCM16 Codec translator
38 PKGSB_ASTERISK_CODEC_SPEEX
:= speex
39 PKGSN_ASTERISK_CODEC_SPEEX
:= asterisk
40 PKGSD_ASTERISK_SOUNDS
:= various soundfiles in GSM format
41 PKGSN_ASTERISK_SOUNDS
:= asterisk
42 PKGSS_ASTERISK_SOUNDS
:= asterisk-codec-gsm
44 include $(ADK_TOPDIR
)/mk
/package.mk
46 $(eval
$(call PKG_template
,ASTERISK
,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
47 $(eval
$(call PKG_template
,ASTERISK_VOICEMAIL
,asterisk-voicemail
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_VOICEMAIL},${PKG_SECTION}))
48 $(eval
$(call PKG_template
,ASTERISK_SOUNDS
,asterisk-sounds
,$(PKG_VERSION
)-${PKG_RELEASE},${PKGSS_ASTERISK_SOUNDS},${PKGSD_ASTERISK_SOUNDS},${PKG_SECTION}))
49 $(eval
$(call PKG_template
,ASTERISK_CHAN_IAX2
,asterisk-chan-iax2
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_IAX2},${PKG_SECTION}))
50 $(eval
$(call PKG_template
,ASTERISK_CODEC_SPEEX
,asterisk-codec-speex
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CODEC_SPEEX},${PKG_SECTION}))
51 $(eval
$(call PKG_template
,ASTERISK_CODEC_GSM
,asterisk-codec-gsm
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CODEC_GSM},${PKG_SECTION}))
52 $(eval
$(call PKG_template
,ASTERISK_PBX_DUNDI
,asterisk-pbx-dundi
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_PBX_DUNDI},${PKG_SECTION}))
53 $(eval
$(call PKG_template
,ASTERISK_RES_AGI
,asterisk-res-agi
,$(PKG_VERSION
)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_RES_AGI},${PKG_SECTION}))
55 CONFIGURE_ARGS
= --with-z
=${STAGING_TARGET_DIR}/usr \
56 --with-libedit
=${STAGING_TARGET_DIR}/usr \
57 --with-jansson
=${STAGING_TARGET_DIR}/usr \
58 --with-ssl
=${STAGING_TARGET_DIR}/usr \
74 ifneq (${ADK_PACKAGE_ASTERISK_CODEC_GSM},)
75 CONFIGURE_ARGS
+= --with-gsm
=internal
77 CONFIGURE_ARGS
+= --without-gsm
79 ifneq (${ADK_PACKAGE_ASTERISK_CODEC_SPEEX},)
80 CONFIGURE_ARGS
+= --with-speex
=${STAGING_TARGET_DIR}/usr
81 EXTRA_CFLAGS
+= -I
$(STAGING_TARGET_DIR
)/usr
/include/speex
83 ifneq (${ADK_PACKAGE_ASTERISK_FORMAT_VORBIS},)
84 CONFIGURE_ARGS
+= --with-ogg
=${STAGING_TARGET_DIR}/usr \
85 --with-vorbis
=${STAGING_TARGET_DIR}/usr
86 TARGET_LDFLAGS
+= -logg
88 ifneq (${ADK_PACKAGE_ASTERISK_CURL},)
89 CONFIGURE_ARGS
+= --with-libcurl
=${STAGING_TARGET_DIR}/usr
91 CONFIGURE_ARGS
+= --without-libcurl
94 INSTALL_STYLE
:= manual
96 TARGET_LDFLAGS
+= -lm
-ltinfo
-ldl
-lpthread
97 MAKE_ENV
:= PATH
="$(HOST_PATH)" \
98 ASTCFLAGS
="${TARGET_CPPFLAGS} -DHAVE_STRTOQ" \
99 ASTLDFLAGS
="${TARGET_LDFLAGS} -z muldefs"
100 MAKE_FLAGS
+= DESTDIR
="$(WRKINST)" \
101 OPTIMIZE
="${TARGET_CFLAGS}" \
103 ALL_TARGET
:= all install samples
106 cd
"$(WRKBUILD)/menuselect"; PATH
="$(HOST_PATH)" .
/configure
109 PATH
="$(HOST_PATH)" $(MAKE
) -C
$(WRKBUILD
)/menuselect
112 # cd ${WRKBUILD}/sounds ; \
113 # tar xzf asterisk-core-sounds-en-gsm-1.4.25.tar.gz ; \
114 # rm asterisk-core-sounds-en-gsm-1.4.25.tar.gz
117 $(CP
) $(WRKINST
)/* $(IDIR_ASTERISK
)
118 rm -rf
$(IDIR_ASTERISK
)/usr
/sbin
/astgenkey
119 rm -rf
$(IDIR_ASTERISK
)/usr
/bin
120 rm -rf
$(IDIR_ASTERISK
)/usr
/share
121 rm -rf
$(IDIR_ASTERISK
)/usr
/include
122 rm -rf
$(IDIR_ASTERISK
)/var
123 (cd
$(IDIR_ASTERISK
)/usr
/lib
/asterisk
; \
127 rm -rf mohmp3
/*.mp3
; \
129 ln
-s
/tmp sounds
/priv-callerintros
; \
131 rm -rf
*adsi
* *festival
* *modem
* *meetme
* *oss
* \
132 *phone
* *intercom
* *mp3
* *nbscat
* *mysql
* \
133 *postgres
* *pgsql
* *voicemail
* *speex
* \
134 *zapateller
* *jpeg
*; \
135 rm -f chan_bluetooth.so
; \
136 rm -f chan_h323.so
; \
137 rm -f chan_iax2.so
; \
138 rm -f chan_mgcp.so
; \
139 rm -f chan_skinny.so
; \
140 rm -f
{codec
,format
}_ilbc.so
; \
141 rm -f codec_gsm.so
; \
142 rm -f codec_lpc10.so
; \
143 rm -f pbx_dundi.so
; \
146 (cd
$(IDIR_ASTERISK
)/etc
/asterisk
; \
147 rm -f
*iax
* *odbc
* *mysql
* *postgres
* *pgsql
* \
148 *voicemail
* *adsi
* *oss
* *alsa
* \
149 *festival
* *modem
* *meetme
* *phone
* *tds
* \
152 rm -f bluetooth.conf
; \
155 rm -f skinny.conf
; \
157 $(SED
) '/^astdatadir /s#/var/#/usr/#' asterisk.conf
; \
158 $(SED
) '/^\[directories\]/s/(!)//' asterisk.conf
; \
160 ${INSTALL_DATA} .
/files
/modules.conf
$(IDIR_ASTERISK
)/etc
/asterisk
/
161 $(SED
) 's|/var/lib/asterisk|/usr/lib/asterisk|g' \
162 $(WRKINST
)/etc
/asterisk
/musiconhold.conf
164 asterisk-sounds-install
:
165 ${INSTALL_DIR} $(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
166 $(CP
) $(WRKBUILD
)/sounds
/* \
167 $(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
/
168 (cd
$(IDIR_ASTERISK_SOUNDS
)/usr
/lib
/asterisk
/sounds
; \
170 rm -f CHANGES
* CREDITS
* LICENSE
* *.txt
; \
171 rm -f
*.
tar.gz Makefile
; \
174 asterisk-voicemail-install
:
175 ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL
)/etc
/asterisk
176 ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
177 ${INSTALL_DATA} $(WRKBUILD
)/configs
/samples
/voicemail.conf.sample \
178 $(IDIR_ASTERISK_VOICEMAIL
)/etc
/asterisk
/voicemail.conf
179 ${CP} $(WRKBUILD
)/apps
/*voicemail.so \
180 $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
/
181 ${INSTALL_BIN} $(WRKBUILD
)/res
/res_adsi.so \
182 $(IDIR_ASTERISK_VOICEMAIL
)/usr
/lib
/asterisk
/modules
/
184 asterisk-chan-iax2-install
:
185 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
186 ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2
)/usr
/lib
/asterisk
/modules
187 ${INSTALL_DATA} $(WRKBUILD
)/configs
/samples
/iax.conf.sample \
188 $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
/iax.conf
189 ${INSTALL_DATA} $(WRKBUILD
)/configs
/samples
/iaxprov.conf.sample \
190 $(IDIR_ASTERISK_CHAN_IAX2
)/etc
/asterisk
/iaxprov.conf
191 ${INSTALL_BIN} $(WRKBUILD
)/channels
/chan_iax2.so \
192 $(IDIR_ASTERISK_CHAN_IAX2
)/usr
/lib
/asterisk
/modules
/
194 asterisk-codec-speex-install
:
195 ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_SPEEX
)/usr
/lib
/asterisk
/modules
196 ${INSTALL_BIN} $(WRKBUILD
)/codecs
/codec_speex.so \
197 $(IDIR_ASTERISK_CODEC_SPEEX
)/usr
/lib
/asterisk
/modules
/
199 asterisk-codec-gsm-install
:
200 ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_GSM
)/usr
/lib
/asterisk
/modules
/
201 ${INSTALL_BIN} $(WRKBUILD
)/codecs
/codec_gsm.so \
202 $(IDIR_ASTERISK_CODEC_GSM
)/usr
/lib
/asterisk
/modules
/
204 asterisk-pbx-dundi-install
:
205 ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI
)/etc
/asterisk
206 ${INSTALL_DATA} $(WRKBUILD
)/configs
/samples
/dundi.conf.sample \
207 $(IDIR_ASTERISK_PBX_DUNDI
)/etc
/asterisk
/dundi.conf
208 ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI
)/usr
/lib
/asterisk
/modules
209 ${INSTALL_BIN} $(WRKBUILD
)/pbx
/pbx_dundi.so \
210 $(IDIR_ASTERISK_PBX_DUNDI
)/usr
/lib
/asterisk
/modules
/
212 asterisk-res-agi-install
:
213 ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/agi-bin
214 ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/modules
215 ${INSTALL_BIN} $(WRKBUILD
)/res
/res_agi.so \
216 $(IDIR_ASTERISK_RES_AGI
)/usr
/lib
/asterisk
/modules
/
218 asterisk-meetme-install
:
219 ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/etc
/asterisk
/
220 ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/usr
/lib
/asterisk
/modules
221 ${INSTALL_DATA} ${WRKBUILD}/configs
/samples
/meetme.conf.sample \
222 ${IDIR_ASTERISK_MEETME}/etc
/asterisk
/meetme.conf
223 ${INSTALL_BIN} ${WRKBUILD}/apps
/app_meetme.so \
224 ${IDIR_ASTERISK_MEETME}/usr
/lib
/asterisk
/modules
226 include ${ADK_TOPDIR}/mk
/pkg-bottom.mk