%define version 1.3.2 Summary: Software modem for interfacing Asterisk and Hylafax via IAX2 Name: iaxmodem Version: %{version} Release: 2 License: GPL Group: Applications/Communications Url: https://sourceforge.net/projects/iaxmodem Source0: http://prdownloads.sourceforge.net/iaxmodem/iaxmodem-%{version}.tar.gz Source1: iaxmodem.logrotate.d Source2: iaxmodem.init.suse Vendor: Lee Howard Packager: Laimbock Consulting Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: hylafax BuildRequires: libtiff-devel %description IAXmodem is a software modem written in C that uses an IAX channel (commonly provided by an Asterisk PBX system) instead of a traditional phone line and uses a DSP library instead of DSP hardware chipsets. To accomplish this, then, IAXmodem interfaces an IAX library known as libiax2 with a DSP library known as spandsp, and then IAXmodem interfaces the DSP library with a tty device node for interfacing with modem applications. %prep %setup %build [ "%{buildroot}" != '/' ] && rm -rf %{buildroot} pushd lib/libiax2 %configure --disable-shared %{__make} %{?_smp_mflags} popd pushd lib/spandsp %configure --disable-shared %{__make} %{?_smp_mflags} popd # set the variables MODEMVER=iaxmodem-1.3.2 #STEP1=`grep @VERSION@ lib/spandsp/config.status | sed 's/;.*//g'` #DSPVER=`echo "@VERSION@" | sed $STEP1` DSPVER=0.0.6 if [ -n "$DSPVER" ]; then DSPVER="spandsp-$DSPVER-snapshot-20080725+" fi #STEP1=`grep @VERSION@ lib/libiax2/config.status | sed 's/;.*//g'` #IAXVER=`echo "@VERSION@" | sed $STEP1` IAXVER=0.2.3 if [ -n "$IAXVER" ]; then IAXVER="libiax2-$IAXVER-CVS-20060222+" fi # build a static version of iaxmodem gcc $RPM_OPT_FLAGS -Wall -g -DMODEMVER=\"$MODEMVER\" -DDSPVER=\"$DSPVER\" -DIAXVER=\"$IAXVER\" -DSTATICLIBS -D_GNU_SOURCE -std=c99 -Ilib/libiax2/src -Ilib/spandsp/src -c -o iaxmodem.o iaxmodem.c #" <- just here to keep the vi syntax highlighting sane gcc -lm -lutil -ltiff -o iaxmodem iaxmodem.o lib/spandsp/src/.libs/libspandsp.a lib/libiax2/src/.libs/libiax.a %install # install the bunch manually mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d $RPM_BUILD_ROOT/etc/iaxmodem $RPM_BUILD_ROOT/usr/bin %{__install} -m 644 %{S:1} $RPM_BUILD_ROOT/etc/logrotate.d/iaxmodem %{__install} -D -m 755 iaxmodem %{buildroot}%{_sbindir}/iaxmodem %{__install} -D -m 644 iaxmodem.1 %{buildroot}%{_mandir}/man1/iaxmodem.1 perl -pi -e 's,/usr/local/,/usr/,g' iaxmodem.init.fedora %{__install} -D -m 755 %{S:2} %{buildroot}%{_initrddir}/iaxmodem # iaxmodem-cfg.ttyIAX config.ttyIAX %{__install} -D -m 644 iaxmodem-cfg.ttyIAX %{buildroot}%{_sysconfdir}/%{name}/ttyIAX %{__install} -d -m 755 %{buildroot}/var/log/%{name} %{__install} -D -m 644 config.ttyIAX %{buildroot}/var/spool/fax/etc/config.ttyIAX %post ln -sf /etc/init.d/iaxmodem /usr/sbin/rciaxmodem %postun rm -f /usr/sbin/rciaxmodem %clean [ "%{buildroot}" != '/' ] && rm -rf %{buildroot} %files %defattr(-,root,root) %doc CHANGES FAQ README TODO %attr(750,asterisk,asterisk) %{_sbindir}/iaxmodem %attr(0644,root,root) %{_mandir}/man1/iaxmodem.1.gz %attr(0755,root,root) %{_initrddir}/iaxmodem %config/etc/logrotate.d/iaxmodem %dir %{_sysconfdir}/%{name} %dir /var/spool/fax %dir /var/spool/fax/etc %config(noreplace) %{_sysconfdir}/%{name}/ttyIAX %config(noreplace) /var/spool/fax/etc/config.ttyIAX %defattr(775,uucp,uucp) %dir /var/log/%{name} %changelog * Sun Apr 26 2009 Carsten Schoene 1.2.0-1 - update to version 1.2.0 - improve skew behavior, especially for faulty RTC; add "skew" config feature - add support for command-dial (ATD...;) in spandsp - add support for ATA for CED when off-hook and connected to a call - add support for ATD for CNG when off-hook and connected to a call - fix the ordering of the seteuid()/setegid() (Julien BLACHE) - update spandsp to 20080725 snapshot * Sat Jul 26 2008 Carsten Schoene 1.1.1-3 - update to version 1.1.1 - fix unaligned errors in libiax2 (Gus Bourg) - improve training in spandsp V.27ter receive (Steve Underwood) - fix a potential crash (divide by zero) in spandsp V.17 receive (Steve Underwood) * Sun Mar 23 2008 Carsten Schoene 1.1.0-2 - added /etc/iaxmodem directory and sample config - added /var/spool/fax/etc/config.ttyIAX sample modem config for hylafax - added logdirectory * Fri Mar 14 2008 Carsten Schoene 1.1.0-1 - kill -HUP now makes the modems wait to restart when they're on-hook - improve IAX2 call rejection when the modem is busy by using REJECT instead of ACCEPT+CONGSTN+HANGUP add "nodaemon" config file feature - add "iax2debug" and "dspdebug" config file features - update spandsp to 20080110 snapshot - update libiax2 to current iaxclient/lib/libiax2 + patches * Thu Aug 17 2006 Laimbock Consulting 0.1.14-1 - inital spec file based on 0.1.14 - static build so it does not interfere with spandsp