X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=blobdiff_plain;f=lfs%2Fasterisk;h=d2b1976cdeecef89a86b074ceffc1ebda276c5a0;hp=9e49091d0f38f9d12f747b0c9ab4cfbb156f47fc;hb=015e243b0dba4fb493fc92068eea3e97f37d3a0c;hpb=3489ebacce681797c9d6a83832b781c2ed3dfb91 diff --git a/lfs/asterisk b/lfs/asterisk index 9e49091d0..d2b1976cd 100644 --- a/lfs/asterisk +++ b/lfs/asterisk @@ -1,22 +1,20 @@ ############################################################################### -# This file is part of the IPCop Firewall. # # # -# IPCop is free software; you can redistribute it and/or modify # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2012 IPFire Team # +# # +# 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 2 of the License, or # +# the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # -# IPCop is distributed in the hope that it will be useful, # +# 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 IPCop; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Makefiles are based on LFSMake, which is # -# Copyright (C) 2002 Rod Roard # +# along with this program. If not, see . # # # ############################################################################### @@ -26,7 +24,7 @@ include Config -VER = 1.4.8 +VER = 1.8.19.0 THISAPP = asterisk-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -34,33 +32,33 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = asterisk -PAK_VER = 1 +PAK_VER = 8 + +CHAN_CAPI = chan_capi-20120614 -DESCDE = "Asterisk ist eine Telefonsoftware für Linux." -DESCEN = "Asterisk is a Private Branch Exchange." -DEPS = "sox zaptel libpri" +DEPS = "libpri libtiff libvorbis libogg spandsp netsnmpd" ############################################################################### # Top-level Rules ############################################################################### objects = $(DL_FILE) \ - asterisk-1.4-de-prompts.tar.gz \ - asterisk-core-sounds-en-alaw-current.tar.gz \ - asterisk-extra-sounds-en-alaw-current.tar.gz \ - asterisk-addons-1.4.2.tar.gz + asterisk-1.4-de-prompts.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-alaw-current.tar.gz = $(URL_IPFIRE)/asterisk-core-sounds-en-alaw-current.tar.gz -asterisk-extra-sounds-en-alaw-current.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds-en-alaw-current.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 -asterisk-addons-1.4.2.tar.gz = $(URL_IPFIRE)/asterisk-addons-1.4.2.tar.gz +$(CHAN_CAPI).tgz = $(URL_IPFIRE)/$(CHAN_CAPI).tgz -$(DL_FILE)_MD5 = 7263ff56ad93cbb5efb971a536ee6a51 -asterisk-core-sounds-en-alaw-current.tar.gz_MD5 = e9446bee485d1b4fca6e8b05457dda25 -asterisk-extra-sounds-en-alaw-current.tar.gz_MD5 = 89bca77c9bb91abd9e87447b3a9d3b07 +$(DL_FILE)_MD5 = dc98436846cc2de57100d78747b1bdd1 +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 -asterisk-addons-1.4.2.tar.gz_MD5 = c080b02e6ddc81dab6a64691af890805 +$(CHAN_CAPI).tgz_MD5 = c190f44eb362bf258b27f92c3458e4bf install : $(TARGET) @@ -92,25 +90,65 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) $(DIR_SRC)/asterisk-* && \ - cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + + # 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 - cd $(DIR_APP) && cp -fv $(DIR_SRC)/config/asterisk/asterisk.makeopts \ - menuselect.makeopts - cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-core-sounds-en-alaw-current.tar.gz \ - $(DIR_APP)/sounds/asterisk-core-sounds-en-alaw-1.4.7.tar.gz - cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-extra-sounds-en-alaw-current.tar.gz \ - $(DIR_APP)/sounds/asterisk-extra-sounds-en-alaw-1.4.6.tar.gz + + # 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-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 - cd $(DIR_SRC) && tar zxf $(DIR_DL)/asterisk-addons-1.4.2.tar.gz - cd $(DIR_SRC)/asterisk-addons-* && ./configure --prefix=/usr \ - --sysconfdir=/var/ipfire - cd $(DIR_SRC)/asterisk-addons-* && cp -f $(DIR_SRC)/config/asterisk/addons.makeopts \ - menuselect.makeopts - cd $(DIR_SRC)/asterisk-addons-* && make $(MAKETUNING) all install + + # 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)