root/trunk/freewrt/package/asterisk/Makefile

Revision 3766, 11.5 kB (checked in by n0-1, 5 months ago)

update asterisk to 1.4.21

* doesn't compile when being built with support for postgresql

(libpq is not found inside cross_mipsel/target/lib)

Line 
1 # $FreeWRT$
2 #-
3 # This file is part of the FreeWRT project. FreeWRT is copyrighted
4 # material, please see the LICENCE file in the top-level directory
5 # or at http://www.freewrt.org/licence for details.
6
7 include $(TOPDIR)/rules.mk
8
9 PKG_NAME:=              asterisk
10 PKG_VERSION:=           1.4.21
11 PKG_RELEASE:=           1
12 PKG_MD5SUM:=            c4cf69eb6eae3105806b08d3efc28ec7
13 MASTER_SITES:=          http://ftp.digium.com/pub/asterisk/ \
14                         http://ftp.digium.com/pub/asterisk/old-releases/ \
15                         ftp://ftp.digium.com/pub/asterisk/ \
16                         ftp://ftp.digium.com/pub/asterisk/old-releases/
17
18 include $(TOPDIR)/mk/package.mk
19
20 $(eval $(call PKG_template,ASTERISK,asterisk,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
21 $(eval $(call PKG_template,ASTERISK_PGSQL,asterisk-pgsql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
22 $(eval $(call PKG_template,ASTERISK_SQLITE,asterisk-sqlite,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
23 $(eval $(call PKG_template,ASTERISK_VOICEMAIL,asterisk-voicemail,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
24 $(eval $(call PKG_template,ASTERISK_SOUNDS,asterisk-sounds,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
25 $(eval $(call PKG_template,ASTERISK_CHAN_MGCP,asterisk-chan-mgcp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
26 $(eval $(call PKG_template,ASTERISK_CHAN_SKINNY,asterisk-chan-skinny,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
27 $(eval $(call PKG_template,ASTERISK_CHAN_IAX2,asterisk-chan-iax2,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
28 ifeq ($(FWRT_LINUX_2_6),y)
29 $(eval $(call PKG_template,ASTERISK_CHAN_MISDN,asterisk-chan-misdn,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
30 endif
31 $(eval $(call PKG_template,ASTERISK_CODEC_SPEEX,asterisk-codec-speex,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
32 $(eval $(call PKG_template,ASTERISK_CODEC_GSM,asterisk-codec-gsm,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
33 $(eval $(call PKG_template,ASTERISK_PBX_DUNDI,asterisk-pbx-dundi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
34 $(eval $(call PKG_template,ASTERISK_RES_AGI,asterisk-res-agi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
35 $(eval $(call PKG_template,ASTERISK_MEETME,asterisk-meetme,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
36
37 SUB_INSTALLS-y:=
38 SUB_INSTALLS-m:=
39 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_PGSQL}+=           asterisk-pgsql-install
40 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_SQLITE}+=          asterisk-sqlite-install
41 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_VOICEMAIL}+=       asterisk-voicemail-install
42 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_SOUNDS}+=          asterisk-sounds-install
43 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CHAN_MGCP}+=       asterisk-chan-mgcp-install
44 ifeq ($(FWRT_LINUX_2_6),y)
45 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CHAN_MISDN}+=      asterisk-chan-misdn-install
46 endif
47 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CHAN_SKINNY}+=     asterisk-chan-skinny-install
48 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CHAN_IAX2}+=       asterisk-chan-iax2-install
49 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CODEC_SPEEX}+=     asterisk-codec-speex-install
50 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_CODEC_GSM}+=       asterisk-codec-gsm-install
51 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_PBX_DUNDI}+=       asterisk-pbx-dundi-install
52 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_RES_AGI}+=         asterisk-res-agi-install
53 SUB_INSTALLS-${FWRT_PACKAGE_ASTERISK_MEETME}+=          asterisk-meetme-install
54
55 CONFIGURE_ARGS=         --with-z=${STAGING_DIR}/usr \
56                         --with-ncurses=${STAGING_DIR}/usr \
57                         --with-ssl=${STAGING_DIR}/usr \
58                         --without-asound \
59                         --without-curses \
60                         --without-gnutls \
61                         --without-h323 \
62                         --without-iksemel \
63                         --without-imap \
64                         --without-kde \
65                         --without-nbs \
66                         --without-netsnmp \
67                         --without-newt \
68                         --without-odbc \
69                         --without-osptk \
70                         --without-oss \
71                         --without-pri \
72                         --without-pwlib \
73                         --without-qt \
74                         --without-tds \
75                         --without-termcap \
76                         --without-tinfo \
77                         --without-vpb
78 ifneq (${FWRT_PACKAGE_ASTERISK_CODEC_GSM},)
79 CONFIGURE_ARGS+=        --with-gsm=internal
80 else
81 CONFIGURE_ARGS+=        --without-gsm
82 endif
83 ifneq (${FWRT_PACKAGE_ASTERISK_CODEC_SPEEX},)
84 CONFIGURE_ARGS+=        --with-speex=${STAGING_DIR}/usr
85 EXTRA_CFLAGS+=          -I$(STAGING_DIR)/usr/include/speex
86 endif
87 ifneq (${FWRT_PACKAGE_ASTERISK_FORMAT_VORBIS},)
88 CONFIGURE_ARGS+=        --with-ogg=${STAGING_DIR}/usr \
89                         --with-vorbis=${STAGING_DIR}/usr
90 TLDFLAGS+=              -logg
91 endif
92 ifneq (${FWRT_PACKAGE_ASTERISK_SQLITE},)
93 CONFIGURE_ARGS+=        --with-sqlite=${STAGING_DIR}/usr
94 endif
95 ifneq (${FWRT_PACKAGE_ASTERISK_RADIUS},)
96 CONFIGURE_ARGS+=        --with-radius=${STAGING_DIR}/usr
97 endif
98 ifneq (${FWRT_PACKAGE_ASTERISK_GNUTLS},)
99 CONFIGURE_ARGS+=        --with-gnutls=${STAGING_DIR}/usr
100 endif
101 ifneq (${FWRT_PACKAGE_ASTERISK_CURL},)
102 CONFIGURE_ARGS+=        --with-curl=${STAGING_DIR}/usr
103 else
104 CONFIGURE_ARGS+=        --without-curl
105 endif
106 ifneq (${FWRT_PACKAGE_ASTERISK_MEETME},)
107 CONFIGURE_ARGS+=        --with-zaptel=${STAGING_DIR}/usr \
108                         --with-tonezone=${STAGING_DIR}/usr
109 else
110 CONFIGURE_ARGS+=        --without-zaptel --without-tonezone
111 endif
112 ifneq (${FWRT_PACKAGE_ASTERISK_PGSQL},)
113 CONFIGURE_ARGS+=        --with-postgres=${STAGING_DIR}/usr
114 else
115 CONFIGURE_ARGS+=        --without-postgres
116 endif
117 ifneq (${FWRT_PACKAGE_LIBPOPT},)
118 CONFIGURE_ARGS+=        --with-popt=${STAGING_DIR}/usr
119 else
120 CONFIGURE_ARGS+=        --without-popt
121 endif
122 ifneq (${FWRT_PACKAGE_ASTERISK_CHAN_MISDN},)
123 CONFIGURE_ARGS+=        --with-misdn=${STAGING_DIR}/usr
124 CONFIGURE_ARGS+=        --with-isdnnet=${STAGING_DIR}/usr
125 CONFIGURE_ARGS+=        --with-suppserv=${STAGING_DIR}/usr
126 TCPPFLAGS+=             -I${LINUX_DIR}/include
127 else
128 CONFIGURE_ARGS+=        --without-misdn \
129                         --without-isdnnet \
130                         --without-suppserv
131 endif
132
133 CONFIGURE_STYLE:=       gnu
134 CONFIGURE_ENV+=         STRIP=${STRIP}
135 BUILD_STYLE:=           auto
136 MAKE_ENV=               ASTCFLAGS="${TCPPFLAGS} ${TCFLAGS}" \
137                         ASTLDFLAGS="${TLDFLAGS}"
138 MAKE_FLAGS+=            DESTDIR="$(WRKINST)" \
139                         OPTIMIZE="-Os" \
140                         CXX="${TARGET_CC}" \
141                         STRIP="${TARGET_CROSS}strip" \
142                         NOISY_BUILD=1
143 ALL_TARGET:=            all install samples
144
145 pre-configure:
146         cd "$(WRKBUILD)/menuselect"; ./configure
147
148 post-build:
149         cd ${WRKBUILD}/sounds ; \
150         tar xzf asterisk-core-sounds-en-gsm-1.4.9.tar.gz ; \
151         rm asterisk-core-sounds-en-gsm-1.4.9.tar.gz ; \
152         tar xzf asterisk-moh-freeplay-wav.tar.gz ; \
153         rm asterisk-moh-freeplay-wav.tar.gz
154         @echo
155         @echo "---------------> have to install ${SUB_INSTALLS-m} ${SUB_INSTALLS-y} <-------------------------"
156         @echo
157
158 do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
159         $(CP) $(WRKINST)/* $(IDIR_ASTERISK)
160         rm -rf $(IDIR_ASTERISK)/usr/sbin/astgenkey
161         rm -rf $(IDIR_ASTERISK)/usr/bin
162         rm -rf $(IDIR_ASTERISK)/usr/share
163         rm -rf $(IDIR_ASTERISK)/usr/include
164         rm -rf $(IDIR_ASTERISK)/var
165         (cd $(IDIR_ASTERISK)/usr/lib/asterisk; \
166                 rm -rf agi-bin; \
167                 rm -rf images; \
168                 rm -rf keys/*; \
169                 rm -rf mohmp3/*.mp3; \
170                 rm -rf sounds/*; \
171                 cd modules; \
172                 rm -rf  *adsi* *festival* *modem* *meetme* *oss* *phone* *intercom* \
173                         *mp3* *nbscat* *mysql* *postgres* *pgsql* *voicemail* *speex* \
174                         *zapateller* *jpeg*; \
175                 rm -f chan_bluetooth.so ; \
176                 rm -f chan_h323.so ; \
177                 rm -f chan_mgcp.so ; \
178                 rm -f chan_skinny.so ; \
179                 rm -f {codec,format}_ilbc.so ; \
180                 rm -f codec_gsm.so ; \
181                 rm -f codec_lpc10.so ; \
182                 rm -f pbx_dundi.so ; \
183                 rm -f res_agi.so ; \
184         )
185         (cd $(IDIR_ASTERISK)/etc/asterisk; \
186                 rm -f   *odbc* *mysql* *postgres* *pgsql* *voicemail* *adsi* *oss* *alsa* \
187                         *festival* *modem* *meetme* *phone* *tds* *vofr* *rpt* *vpb* \
188                         *zapata*; \
189                 rm -f bluetooth.conf ; \
190                 rm -f mgcp.conf ; \
191                 rm -f skinny.conf ; \
192                 rm -f dundi.conf ; \
193         )
194         ${INSTALL_DATA} ./files/modules.conf $(IDIR_ASTERISK)/etc/asterisk/
195         $(SED) 's|/var/lib/asterisk|/usr/lib/asterisk|g' $(WRKINST)/etc/asterisk/musiconhold.conf
196         ${INSTALL_DIR} $(IDIR_ASTERISK)/etc/init.d
197         ${INSTALL_BIN}  ./files/asterisk.init $(IDIR_ASTERISK)/etc/init.d/asterisk
198
199 asterisk-pgsql-install:
200         ${INSTALL_DIR} $(IDIR_ASTERISK_PGSQL)/etc/asterisk
201         ${INSTALL_DATA} $(WRKBUILD)/configs/cdr_pgsql.conf.sample $(IDIR_ASTERISK_PGSQL)/etc/asterisk/cdr_pgsql.conf
202         ${INSTALL_DIR} $(IDIR_ASTERISK_PGSQL)/usr/lib/asterisk/modules
203         ${INSTALL_BIN} $(WRKBUILD)/cdr/cdr_pgsql.so $(IDIR_ASTERISK_PGSQL)/usr/lib/asterisk/modules/
204
205 asterisk-sqlite-install:
206         ${INSTALL_DIR} $(IDIR_ASTERISK_SQLITE)/usr/lib/asterisk/modules
207         ${INSTALL_BIN} $(WRKBUILD)/cdr/cdr_sqlite.so $(IDIR_ASTERISK_SQLITE)/usr/lib/asterisk/modules/
208
209 asterisk-sounds-install:
210         ${INSTALL_DIR} $(IDIR_ASTERISK_SOUNDS)/usr/lib/asterisk/sounds
211         $(CP) $(WRKBUILD)/sounds/* $(IDIR_ASTERISK_SOUNDS)/usr/lib/asterisk/sounds/
212         rm -f $(IDIR_ASTERISK_SOUNDS)/usr/lib/asterisk/sounds/*.mp3
213         rm -f $(IDIR_ASTERISK_SOUNDS)/usr/lib/asterisk/sounds/vm-*
214
215 asterisk-voicemail-install:
216         ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL)/etc/asterisk
217         ${INSTALL_DIR} $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules
218         ${INSTALL_DATA} $(WRKBUILD)/configs/voicemail.conf.sample $(IDIR_ASTERISK_VOICEMAIL)/etc/asterisk/voicemail.conf
219         ${CP} $(WRKBUILD)/apps/*voicemail.so $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules/
220         ${INSTALL_BIN} $(WRKBUILD)/res/res_adsi.so $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules/
221         install -d -m0755 $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/sounds
222         $(CP) $(WRKBUILD)/sounds/vm-*.gsm $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/sounds/
223
224 asterisk-chan-mgcp-install:
225         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_MGCP)/etc/asterisk
226         ${INSTALL_DATA} $(WRKBUILD)/configs/mgcp.conf.sample $(IDIR_ASTERISK_CHAN_MGCP)/etc/asterisk/mgcp.conf
227         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_MGCP)/usr/lib/asterisk/modules
228         ${INSTALL_BIN} $(WRKBUILD)/channels/chan_mgcp.so $(IDIR_ASTERISK_CHAN_MGCP)/usr/lib/asterisk/modules/
229
230 asterisk-chan-skinny-install:
231         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_SKINNY)/etc/asterisk
232         ${INSTALL_DATA} $(WRKBUILD)/configs/skinny.conf.sample $(IDIR_ASTERISK_CHAN_SKINNY)/etc/asterisk/skinny.conf
233         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_SKINNY)/usr/lib/asterisk/modules
234         ${INSTALL_BIN} $(WRKBUILD)/channels/chan_skinny.so $(IDIR_ASTERISK_CHAN_SKINNY)/usr/lib/asterisk/modules/
235
236 asterisk-chan-iax2-install:
237         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2)/etc/asterisk
238         ${INSTALL_DIR} $(IDIR_ASTERISK_CHAN_IAX2)/usr/lib/asterisk/modules
239         ${INSTALL_DATA} $(WRKBUILD)/configs/iax.conf.sample $(IDIR_ASTERISK_CHAN_IAX2)/etc/asterisk/iax.conf
240         ${INSTALL_DATA} $(WRKBUILD)/configs/iaxprov.conf.sample $(IDIR_ASTERISK_CHAN_IAX2)/etc/asterisk/iaxprov.conf
241         ${INSTALL_BIN} $(WRKBUILD)/channels/chan_iax2.so $(IDIR_ASTERISK_CHAN_IAX2)/usr/lib/asterisk/modules/
242
243 asterisk-codec-speex-install:
244         ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_SPEEX)/usr/lib/asterisk/modules
245         install -m0755 $(WRKBUILD)/codecs/codec_speex.so $(IDIR_ASTERISK_CODEC_SPEEX)/usr/lib/asterisk/modules/
246
247 asterisk-codec-gsm-install:
248         ${INSTALL_DIR} $(IDIR_ASTERISK_CODEC_GSM)/usr/lib/asterisk/modules/
249         ${INSTALL_BIN} $(WRKBUILD)/codecs/codec_gsm.so $(IDIR_ASTERISK_CODEC_GSM)/usr/lib/asterisk/modules/
250
251 asterisk-pbx-dundi-install:
252         ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI)/etc/asterisk
253         ${INSTALL_DATA} $(WRKBUILD)/configs/dundi.conf.sample $(IDIR_ASTERISK_PBX_DUNDI)/etc/asterisk/dundi.conf
254         ${INSTALL_DIR} $(IDIR_ASTERISK_PBX_DUNDI)/usr/lib/asterisk/modules
255         ${INSTALL_BIN} $(WRKBUILD)/pbx/pbx_dundi.so $(IDIR_ASTERISK_PBX_DUNDI)/usr/lib/asterisk/modules/
256
257 asterisk-res-agi-install:
258         ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI)/usr/lib/asterisk/agi-bin
259         ${INSTALL_DIR} $(IDIR_ASTERISK_RES_AGI)/usr/lib/asterisk/modules
260         ${INSTALL_BIN} $(WRKBUILD)/res/res_agi.so $(IDIR_ASTERISK_RES_AGI)/usr/lib/asterisk/modules/
261
262 asterisk-meetme-install:
263         ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/etc/asterisk/
264         ${INSTALL_DIR} ${IDIR_ASTERISK_MEETME}/usr/lib/asterisk/modules
265         ${INSTALL_DATA} ${WRKBUILD}/configs/meetme.conf.sample ${IDIR_ASTERISK_MEETME}/etc/asterisk/meetme.conf
266         ${INSTALL_BIN} ${WRKBUILD}/apps/app_meetme.so ${IDIR_ASTERISK_MEETME}/usr/lib/asterisk/modules
267
268 asterisk-chan-misdn-install:
269         install -d -m0755 ${IDIR_ASTERISK_CHAN_MISDN}/usr/lib/asterisk/modules
270         install -d -m0755 ${IDIR_ASTERISK_CHAN_MISDN}/etc/asterisk
271         install -m0755 ${WRKINST}/usr/lib/asterisk/modules/chan_misdn.so \
272                 ${IDIR_ASTERISK_CHAN_MISDN}/usr/lib/asterisk/modules/
273         ${INSTALL_DATA} ${WRKBUILD}/configs/misdn.conf.sample \
274                 ${IDIR_ASTERISK_CHAN_MISDN}/etc/asterisk/misdn.conf
275
276 include ${TOPDIR}/mk/pkg-bottom.mk
Note: See TracBrowser for help on using the browser.