mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-10 02:55:55 +02:00
The 1.4 branch of asterisk does not build with the new flex and bison. Also, the 1.4 branch was EOL'ed April 2012. The 1.8 branch has long term support until 2015. This patch also update chan_capi to the most recent version (HEAD), as this is the only one that compiles with asterisk 1.8. Asterisk 1.8 ships addons as part of the main tarball. Asterisk 1.8 has no build in mp3 support anymore, mp3 libs need to be downloaded seperatly via svn (see asterisk-1.8.13.0/contrib/scripts/get_mp3_source.sh). This patch DOES NOT include mp3 support. Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
159 lines
6.4 KiB
Plaintext
159 lines
6.4 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# IPFire.org - A linux based firewall #
|
|
# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
|
|
# #
|
|
# This program is free software: you can redistribute it and/or modify #
|
|
# it under the terms of the GNU General Public License as published by #
|
|
# the Free Software Foundation, either version 3 of the License, or #
|
|
# (at your option) any later version. #
|
|
# #
|
|
# This program is distributed in the hope that it will be useful, #
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
|
# GNU General Public License for more details. #
|
|
# #
|
|
# You should have received a copy of the GNU General Public License #
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
|
# #
|
|
###############################################################################
|
|
|
|
###############################################################################
|
|
# Definitions
|
|
###############################################################################
|
|
|
|
include Config
|
|
|
|
VER = 1.8.13.0
|
|
|
|
THISAPP = asterisk-$(VER)
|
|
DL_FILE = $(THISAPP).tar.gz
|
|
DL_FROM = $(URL_IPFIRE)
|
|
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
|
TARGET = $(DIR_INFO)/$(THISAPP)
|
|
PROG = asterisk
|
|
PAK_VER = 7
|
|
|
|
CHAN_CAPI = chan_capi-20120614
|
|
|
|
DEPS = "libpri libtiff libvorbis libogg spandsp netsnmpd"
|
|
|
|
###############################################################################
|
|
# Top-level Rules
|
|
###############################################################################
|
|
|
|
objects = $(DL_FILE) \
|
|
asterisk-1.4-de-prompts.tar.gz \
|
|
asterisk-core-sounds-en-gsm-1.4.22.tar.gz \
|
|
asterisk-extra-sounds-en-gsm-1.4.11.tar.gz \
|
|
asterisk-moh-opsound-gsm-2.03.tar.gz \
|
|
$(CHAN_CAPI).tgz
|
|
|
|
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
|
asterisk-core-sounds-en-gsm-1.4.22.tar.gz = $(URL_IPFIRE)/asterisk-core-sounds-en-gsm-1.4.22.tar.gz
|
|
asterisk-extra-sounds-en-gsm-1.4.11.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds-en-gsm-1.4.11.tar.gz
|
|
asterisk-moh-opsound-gsm-2.03.tar.gz = $(URL_IPFIRE)/asterisk-moh-opsound-gsm-2.03.tar.gz
|
|
asterisk-1.4-de-prompts.tar.gz = $(URL_IPFIRE)/asterisk-1.4-de-prompts.tar.gz
|
|
$(CHAN_CAPI).tgz = $(URL_IPFIRE)/$(CHAN_CAPI).tgz
|
|
|
|
$(DL_FILE)_MD5 = e7f2cb19068c1211c907062f9e96c47a
|
|
asterisk-core-sounds-en-gsm-1.4.22.tar.gz_MD5 = 2a99a45c0675135255bc65796b12f7c6
|
|
asterisk-extra-sounds-en-gsm-1.4.11.tar.gz_MD5 = 5479cb4cb81d678304d96f35e4933a11
|
|
asterisk-moh-opsound-gsm-2.03.tar.gz_MD5 = 09066f55f1358f298bc1a6e4678a3ddf
|
|
asterisk-1.4-de-prompts.tar.gz_MD5 = 626a2b95071a5505851e43874dfbfd5c
|
|
$(CHAN_CAPI).tgz_MD5 = c190f44eb362bf258b27f92c3458e4bf
|
|
|
|
install : $(TARGET)
|
|
|
|
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
|
|
|
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
|
|
|
md5 : $(subst %,%_MD5,$(objects))
|
|
|
|
dist:
|
|
$(PAK)
|
|
|
|
###############################################################################
|
|
# Downloading, checking, md5sum
|
|
###############################################################################
|
|
|
|
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
|
|
@$(CHECK)
|
|
|
|
$(patsubst %,$(DIR_DL)/%,$(objects)) :
|
|
@$(LOAD)
|
|
|
|
$(subst %,%_MD5,$(objects)) :
|
|
@$(MD5)
|
|
|
|
###############################################################################
|
|
# Installation Details
|
|
###############################################################################
|
|
|
|
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
|
@$(PREBUILD)
|
|
|
|
# remove old directories and extract asterisk
|
|
@rm -rf $(DIR_APP) $(DIR_SRC)/asterisk-* $(DIR_SRC)/$(CHAN_CAPI) $(DIR_SRC)/agx-ast-addons && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
|
|
|
# confiure asterisk
|
|
cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/var/ipfire
|
|
|
|
# enable additional features (include following sound-tars)
|
|
cd $(DIR_APP) && cp -fv $(DIR_SRC)/config/asterisk/asterisk.makeopts menuselect.makeopts
|
|
|
|
# add additional sounds
|
|
cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-core-sounds-en-gsm-1.4.22.tar.gz $(DIR_APP)/sounds/
|
|
cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-extra-sounds-en-gsm-1.4.11.tar.gz $(DIR_APP)/sounds/
|
|
cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-moh-opsound-gsm-2.03.tar.gz $(DIR_APP)/sounds/
|
|
|
|
# Fix wrong cpu optimization (march=armv5tel)
|
|
cd $(DIR_APP) && sed -i -e "s|^PROC=armv5te.*|PROC=armv5te|g" makeopts
|
|
|
|
# Add armv5te to gsm codecs
|
|
cd $(DIR_APP) && sed -i -e "s|armv5b |*armv5te |g" codecs/gsm/Makefile
|
|
|
|
# compile and install
|
|
cd $(DIR_APP) && make $(MAKETUNING) all
|
|
cd $(DIR_APP) && make install
|
|
cd $(DIR_APP) && make samples
|
|
|
|
# add german sounds and remove README.txt
|
|
tar xfz $(DIR_DL)/asterisk-1.4-de-prompts.tar.gz -C /var/lib/asterisk/sounds/
|
|
-rm -f /var/lib/asterisk/sounds/README.txt
|
|
|
|
# remove build directories
|
|
@rm -rf $(DIR_APP) $(DIR_SRC)/asterisk-*
|
|
|
|
# copy additional ipfire scripts for asterisk
|
|
-mkdir -p /var/ipfire/asterisk
|
|
cp -vrf $(DIR_SRC)/config/asterisk/* /var/ipfire/asterisk/
|
|
chmod o+w /var/ipfire/asterisk
|
|
chown nobody:nobody -R /var/ipfire/asterisk
|
|
ln -f -s /var/ipfire/asterisk/wakeup/wakeup.sh /etc/fcron.minutely/wakeup.sh
|
|
|
|
# build and install chan capi (needed for isdn)
|
|
cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(CHAN_CAPI).tgz
|
|
cd $(DIR_SRC)/chan-capi-HEAD && sed -i -e 's/^CFLAGS+=-Wno-unused-but-set-variable$$//' Makefile
|
|
cd $(DIR_SRC)/chan-capi-HEAD && make $(MAKETUNING)
|
|
cd $(DIR_SRC)/chan-capi-HEAD && make install
|
|
@rm -rf $(DIR_SRC)/chan-capi-HEAD
|
|
|
|
# be sure all source is removed
|
|
@rm -rf $(DIR_APP) $(DIR_SRC)/asterisk-*
|
|
|
|
# remember backup-location
|
|
install -v -m 644 $(DIR_SRC)/config/backup/includes/asterisk /var/ipfire/backup/addons/includes/asterisk
|
|
|
|
# generate softlink (or asterisk will not work properly)
|
|
ln -sf /var/ipfire/asterisk /etc/asterisk
|
|
|
|
# make asterisk start with reboot
|
|
ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc0.d/K30asterisk
|
|
ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc6.d/K30asterisk
|
|
ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc3.d/S30asterisk
|
|
|
|
# all done
|
|
@$(POSTBUILD)
|