ltp: update to latest
[openadk.git] / package / asterisk / Makefile
blob2504e1abc0644f4b76e7f43cd8777f43bf16ea88
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
6 PKG_NAME:= asterisk
7 PKG_VERSION:= 1.8.28.2
8 PKG_RELEASE:= 2
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/
17 PKG_NOPARALLEL:= 1
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 \
63 --disable-xmldoc \
64 --without-tonezone \
65 --without-asound \
66 --without-curses \
67 --without-gtk2 \
68 --without-h323 \
69 --without-iksemel \
70 --without-imap \
71 --without-nbs \
72 --without-netsnmp \
73 --without-newt \
74 --without-openais \
75 --without-osptk \
76 --without-oss \
77 --without-popt \
78 --without-pri \
79 --without-pwlib \
80 --without-tds \
81 --without-termcap \
82 --without-tinfo \
83 --without-vpb \
84 --without-misdn \
85 --without-isdnnet \
86 --without-suppserv \
87 --without-postgres
89 ifneq (${ADK_PACKAGE_ASTERISK_CODEC_GSM},)
90 CONFIGURE_ARGS+= --with-gsm=internal
91 else
92 CONFIGURE_ARGS+= --without-gsm
93 endif
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
97 endif
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
102 endif
103 ifneq (${ADK_PACKAGE_ASTERISK_CURL},)
104 CONFIGURE_ARGS+= --with-libcurl=${STAGING_TARGET_DIR}/usr
105 else
106 CONFIGURE_ARGS+= --without-libcurl
107 endif
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}" \
117 NOISY_BUILD=1
118 ALL_TARGET:= all install samples
120 pre-configure:
121 cd "$(WRKBUILD)/menuselect"; ./configure
123 pre-build:
124 $(MAKE) -C $(WRKBUILD)/menuselect
126 post-build:
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
131 do-install:
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; \
139 rm -rf agi-bin; \
140 rm -rf images; \
141 rm -rf keys/*; \
142 rm -rf mohmp3/*.mp3; \
143 rm -rf sounds/*; \
144 ln -s /tmp sounds/priv-callerintros; \
145 cd modules; \
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 ; \
159 rm -f res_agi.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* \
165 *vofr* *rpt* *vpb* \
166 *zapata*; \
167 rm -f bluetooth.conf ; \
168 rm -f mgcp.conf ; \
169 rm -f gtalk.conf ; \
170 rm -f skinny.conf ; \
171 rm -f dundi.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; \
184 rm -f *.mp3 vm-*; \
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