# Conditional build:
%bcond_with h323 # without h323 support
%bcond_with corosync # res_corosync module (broken in 12.0.0)
+%bcond_without sqlite2 # build without old sqlite support
+%bcond_without oss # build without OSS audio support (SDL dependency)
+%bcond_without tds # build without TDS support
+%bcond_without ilbc # build without iLBC codec support
+%bcond_without ldap # build without LDAP support
+%bcond_without portaudio # build without PortAudio support
+%bcond_without bluetooth # build without PortAudio support
+%bcond_without jack # build without JACK support
+%bcond_without mysql # build without MySQL support
+%bcond_without pgsql # build without PostgreSQL support
+%bcond_without odbc # build without ODBC support
+%bcond_without radius # build without Radius support
+%bcond_without pjsip # build without PJSIP stack
+
%bcond_without apidocs # disable apidocs building
%bcond_without verbose # verbose build
Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: %{name}.tmpfiles
-Source5: %{name}.logrotate
+Source4: %{name}.logrotate
+Source5: %{name}.service
# menuselect.* -> make menuconfig; choose options; copy resulting files here
-Source12: menuselect.makedeps
-Source13: menuselect.makeopts
+Source6: menuselect.makedeps
+Source7: menuselect.makeopts
Patch0: mxml-system.patch
Patch1: lua51-path.patch
Patch2: %{name}-lib.patch
Patch7: %{name}-histedit.patch
URL: http://www.asterisk.org/
BuildRequires: OSPToolkit-devel >= 4.0.0
-BuildRequires: SDL_image-devel
+%{?with_oss:BuildRequires: SDL_image-devel}
BuildRequires: alsa-lib-devel
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
-BuildRequires: bluez-libs-devel
+%{?with_bluetooth:BuildRequires: bluez-libs-devel}
%{?with_corosync:BuildRequires: corosync-devel >= 2.0.0}
BuildRequires: curl-devel
BuildRequires: dahdi-linux-devel
BuildRequires: dahdi-tools-devel >= 2.0.0
BuildRequires: doxygen
-BuildRequires: freetds-devel >= 0.63
+%{?with_tds:BuildRequires: freetds-devel >= 0.63}
BuildRequires: gawk
BuildRequires: gcc >= 5:3.4
BuildRequires: gmime22-devel
-BuildRequires: gtk+2-devel
BuildRequires: iksemel-devel
BuildRequires: imap-devel
-BuildRequires: jack-audio-connection-kit-devel
+%{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
BuildRequires: jansson-devel
BuildRequires: libcap-devel
BuildRequires: libedit-devel
BuildRequires: lpc10-devel
BuildRequires: lua51-devel
BuildRequires: mxml-devel
-BuildRequires: mysql-devel
+%{?with_mysql:BuildRequires: mysql-devel}
BuildRequires: ncurses-devel
BuildRequires: neon-devel
BuildRequires: net-snmp-devel
%if %{with h323}
BuildRequires: h323plus-devel >= 1.24.0
%endif
-BuildRequires: openldap-devel
+%{?with_ldap:BuildRequires: openldap-devel}
BuildRequires: openssl-devel >= 0.9.7d
BuildRequires: pam-devel
-BuildRequires: pjproject-devel
+%{?with_pjsip:BuildRequires: pjproject-devel}
BuildRequires: pkgconfig
BuildRequires: popt-devel
-BuildRequires: portaudio-devel >= 19
-BuildRequires: postgresql-devel
+%{?with_portaudio:BuildRequires: portaudio-devel >= 19}
+%{?with_pgsql:BuildRequires: postgresql-devel}
%if %{with h323}
BuildRequires: ptlib-devel
%endif
-BuildRequires: radiusclient-ng-devel
-BuildRequires: rpmbuild(macros) >= 1.583
+%{?with_radius:BuildRequires: radiusclient-ng-devel}
+BuildRequires: rpmbuild(macros) >= 1.671
BuildRequires: sed >= 4.0
BuildRequires: spandsp-devel >= 0.0.5
BuildRequires: speex-devel
-BuildRequires: sqlite-devel
+%{?with_sqlite2:BuildRequires: sqlite-devel}
BuildRequires: sqlite3-devel
BuildRequires: srtp-devel
-BuildRequires: unixODBC-devel
+Requires(post,preun,postun): systemd-units >= 38
+Requires: systemd-units >= 0.38
+%{?with_odbc:BuildRequires: unixODBC-devel}
BuildRequires: uriparser-devel
-BuildRequires: webrtc-libilbc-devel
+%{?with_ilbc:BuildRequires: webrtc-libilbc-devel}
BuildRequires: xorg-lib-libX11-devel
BuildRequires: zlib-devel
BuildRequires: libpri-devel >= 1.4.6
-%if %{with fc}
-BuildRequires: libss7-devel >= 1.0.1
-BuildRequires: libtool-ltdl-devel
-BuildRequires: libusb-devel
-BuildRequires: lm_sensors-devel
-%endif
Requires(post,preun): /sbin/chkconfig
Requires(postun): /usr/sbin/groupdel
Requires(postun): /usr/sbin/userdel
# references symbols in the asterisk binary
%define skip_post_check_so libasteriskssl.so.*
+%define _noautoprovfiles %{_libdir}/asterisk/modules/.*
+
%description
Asterisk is an Open Source PBX and telephony development platform that
can both replace a conventional PBX and act as a platform for
Astman connects to Asterisk by TCP, so you can run Astman on a
completely different computer than your Asterisk computer.
+%package bluetooth
+Summary: chan_mobile – bluetooth mobile phone interface for Asterisk
+Group: Applications/Networking
+Requires: %{name} = %{version}-%{release}
+
+%description bluetooth
+The chan_mobile Asterisk module allows one to pair a mobile phone with the Asterisk PBX.
+
+%package calendar
+Summary: Calendar modules for Asterisk
+Group: Applications/Networking
+Requires: %{name} = %{version}-%{release}
+
+%description calendar
+Calendar modules for Asterisk.
+
%package curl
Summary: Modules for Asterisk that use cURL
Group: Applications/Networking
%description ices
Stream audio from Asterisk to an IceCast server.
+%package ilbc
+Summary: iLBC codec for Asterisk
+Group: Applications/Networking
+Requires: %{name} = %{version}-%{release}
+
+%description ilbc
+Support iLBC audio encoding/decoding.
+
%package jabber
Summary: Jabber/XMPP resources for Asterisk
Group: Applications/Networking
%description minivm
MiniVM application for Asterisk.
+%package mysql
+Summary: Asterisk modules that use MySQL
+Group: Applications/Networking
+Requires: %{name} = %{version}-%{release}
+
+%description mysql
+Asterisk modules that use MySQL.
+
%package odbc
Summary: Applications for Asterisk that use ODBC (except voicemail)
Group: Applications/Networking
%description speex
Speex codec support.
-%package sqlite
+%package sqlite2
Summary: Sqlite modules for Asterisk
Group: Applications/Networking
Requires: %{name} = %{version}-%{release}
-%description sqlite
+%description sqlite2
Sqlite modules for Asterisk.
+%package sqlite3
+Summary: Sqlite3 modules for Asterisk
+Group: Applications/Networking
+Requires: %{name} = %{version}-%{release}
+Obsoletes: asterisk-sqlite < 12.0.0
+
+%description sqlite3
+Sqlite3 modules for Asterisk.
+
%package tds
Summary: Modules for Asterisk that use FreeTDS
Group: Applications/Networking
# avoid using these
rm -rf imap menuselect/mxml main/editline codecs/gsm codecs/lpc10
-install %{SOURCE12} .
-install %{SOURCE13} .
-
-%if %{without h323}
-sed -i -e 's#\(MENUSELECT_ADDONS=.*\)#\1 chan_ooh323 chan_h323#g' menuselect.makeopts
-%endif
-%if %{without corosync}
-sed -i -e 's#\(MENUSELECT_RES=.*\)#\1 res_corosync#g' menuselect.makeopts
-%endif
-
%build
rm -f pbx/.depend
cd ..
%configure \
+ --without-gtk2 \
--with-imap=system \
--with-gsm=/usr \
- %{!?with_h323:--without-h323} \
+ %{__without h323 h323} \
+ %{__without oss oss} \
+ %{__without oss sdl} \
+ %{__without oss SDL_image} \
+ %{__without tds tds} \
+ %{__without ilbc ilbc} \
+ %{__without ldap ldap} \
+ %{__without portaudio portaudio} \
+ %{__without bluetooth bluetooth} \
+ %{__without jack jack} \
+ %{__without mysql mysqlclient} \
+ %{__without pgsql postgres} \
+ %{__without odbc unixodbc} \
+ %{__without radius radius} \
+ %{__without pjsip pjproject} \
--with-lpc10=/usr
cp -f .cleancount .lastclean
+%{__make} menuselect/menuselect
+%{__make} menuselect-tree
+
+cp %{SOURCE6} .
+cp %{SOURCE7} .
+
+%if %{without h323}
+menuselect/menuselect --disable chan_ooh323 --disable chan_h323 menuselect.makeopts
+%endif
+%if %{without corosync}
+menuselect/menuselect --disable res_corosync menuselect.makeopts
+%endif
+%if %{without sqlite2}
+menuselect/menuselect --disable res_config_sqlite menuselect.makeopts
+%endif
+%if %{without oss}
+menuselect/menuselect --disable chan_oss menuselect.makeopts
+%endif
+%if %{without tds}
+menuselect/menuselect --disable cdr_tds --disable cel_tds menuselect.makeopts
+%endif
+%if %{without ilbc}
+menuselect/menuselect --disable codec_ilbc --disable format_ilbc menuselect.makeopts
+%endif
+%if %{without ldap}
+menuselect/menuselect --disable res_config_ldap menuselect.makeopts
+%endif
+%if %{without bluetooth}
+menuselect/menuselect --disable chan_mobile menuselect.makeopts
+%endif
+%if %{without jack}
+menuselect/menuselect --disable app_jack menuselect.makeopts
+%endif
+%if %{without mysql}
+menuselect/menuselect --disable res_config_mysql --disable app_mysql --disable cdr_mysql menuselect.makeopts
+%endif
+%if %{without pgsql}
+menuselect/menuselect --disable res_config_pgsql --disable cdr_pgsql --disable cel_pgsql menuselect.makeopts
+%endif
+%if %{without odbc}
+menuselect/menuselect --disable res_odbc --disable res_config_odbc --disable cdr_odbc --disable cdr_adaptive_odbc --disable cel_odbc menuselect.makeopts
+%endif
+%if %{without radius}
+menuselect/menuselect --disable cdr_radius --disable cel_radius menuselect.makeopts
+%endif
+%if %{without pjsip}
+menuselect/menuselect --disable res_pjsip --disable chan_pjsip menuselect.makeopts
+%endif
+
%{__sed} -i -e 's/^MENUSELECT_OPTS_app_voicemail=.*$/MENUSELECT_OPTS_app_voicemail=FILE_STORAGE/' menuselect.makeopts
%{__make} DEBUG= \
OPTIMIZE= \
ASTDBDIR=%{_localstatedir}/spool/asterisk \
%{?with_verbose:NOISY_BUILD=yes} \
-rm apps/app_voicemail.o apps/app_directory.o
+rm apps/app_voicemail.o
mv apps/app_voicemail.so apps/app_voicemail_plain.so
-mv apps/app_directory.so apps/app_directory_plain.so
%{__sed} -i -e 's/^MENUSELECT_OPTS_app_voicemail=.*$/MENUSELECT_OPTS_app_voicemail=IMAP_STORAGE/' menuselect.makeopts
%{__make} DEBUG= \
ASTDBDIR=%{_localstatedir}/spool/asterisk \
%{?with_verbose:NOISY_BUILD=yes} \
-rm apps/app_voicemail.o apps/app_directory.o
+rm apps/app_voicemail.o
mv apps/app_voicemail.so apps/app_voicemail_imap.so
-mv apps/app_directory.so apps/app_directory_imap.so
+%if %{with odbc}
%{__sed} -i -e 's/^MENUSELECT_OPTS_app_voicemail=.*$/MENUSELECT_OPTS_app_voicemail=ODBC_STORAGE/' menuselect.makeopts
%{__make} DEBUG= \
OPTIMIZE= \
ASTDBDIR=%{_localstatedir}/spool/asterisk \
%{?with_verbose:NOISY_BUILD=yes} \
-rm apps/app_voicemail.o apps/app_directory.o
+rm apps/app_voicemail.o
mv apps/app_voicemail.so apps/app_voicemail_odbc.so
-mv apps/app_directory.so apps/app_directory_odbc.so
+%endif
# so that these modules don't get built again during the install phase
-touch apps/app_voicemail.o apps/app_directory.o
-touch apps/app_voicemail.so apps/app_directory.so
+touch apps/app_voicemail.o
+touch apps/app_voicemail.so
%if %{with apidocs}
%{__make} progdocs \
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/var/{log/asterisk/cdr-csv,spool/asterisk/monitor},/etc/{rc.d/init.d,sysconfig,logrotate.d}} \
- $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
+ $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},%{_mandir}/man1}
export ASTCFLAGS="%{rpmcflags}"
ASTVARLIBDIR=%{_datadir}/asterisk \
ASTDBDIR=%{_localstatedir}/spool/asterisk
-rm $RPM_BUILD_ROOT%{_libdir}/asterisk/modules/app_directory.so
rm $RPM_BUILD_ROOT%{_libdir}/asterisk/modules/app_voicemail.so
-install -D -p apps/app_directory_imap.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
install -D -p apps/app_voicemail_imap.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
-install -D -p apps/app_directory_odbc.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
+%if %{with odbc}
install -D -p apps/app_voicemail_odbc.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
-install -D -p apps/app_directory_plain.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
+%endif
install -D -p apps/app_voicemail_plain.so $RPM_BUILD_ROOT%{_libdir}/asterisk/modules
install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
-cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
+cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
+install -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
-install %{SOURCE3} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
+install %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
# create some directories that need to be packaged
install -d $RPM_BUILD_ROOT%{_datadir}/asterisk/moh
install -d $RPM_BUILD_ROOT%{_localstatedir}/spool/asterisk/outgoing
install -d $RPM_BUILD_ROOT%{_localstatedir}/spool/asterisk/uploads
+install utils/astman.1 $RPM_BUILD_ROOT%{_mandir}/man1/astman.1
+
# We're not going to package any of the sample AGI scripts
rm -f $RPM_BUILD_ROOT%{_datadir}/asterisk/agi-bin/*
%endif
# remove configuration files for components never built
-rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{acl,app_mysql,app_skel,cdr_mysql,config_test,misdn,test_sorcery}.conf
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{app_mysql,app_skel,cdr_mysql,config_test,misdn,test_sorcery}.conf
# remove configuration files for disabled optional components
%if %{without corosync}
# I don't even know which one can be fixed
rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{h323,ooh323}.conf
%endif
+%if %{without sqlite2}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/res_config_sqlite.conf
+%endif
+%if %{without oss}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/oss.conf
+%endif
+%if %{without tds}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{cdr,cel}_tds.conf
+%endif
+%if %{without ldap}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/res_ldap.conf
+%endif
+%if %{without portaudio}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/console.conf
+%endif
+%if %{without bluetooth}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/chan_mobile.conf
+%endif
+%if %{without mysql}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/res_config_mysql.conf
+%endif
+%if %{without pgsql}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{cdr,cel,res}_pgsql.conf
+%endif
+%if %{without odbc}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/{cdr{,_adaptive},cel,func,res}_odbc.conf
+%endif
+%if %{without pjsip}
+rm $RPM_BUILD_ROOT%{_sysconfdir}/asterisk/pjsip{,_notify}.conf
+%endif
rm -fr $RPM_BUILD_ROOT/usr/include/asterisk/doxygen
%userremove asterisk
%groupremove asterisk
fi
+%systemd_reload
%post
/sbin/chkconfig --add asterisk
# use -n (NOOP) as restart would be breaking all current calls.
%service -n asterisk restart "Asterisk daemon"
+%systemd_post %{name}.service
%preun
if [ "$1" = "0" ]; then
%service asterisk stop
/sbin/chkconfig --del asterisk
fi
+%systemd_preun %{name}.service
%triggerpostun -- %{name} < 1.6.1.12-0.1
# chown to asterisk previously root owned files
chown -R asterisk:asterisk /var/spool/asterisk
chown -R asterisk:asterisk /var/lib/asterisk
+%triggerpostun -- %{name} < 12.0.0
+%systemd_trigger %{name}.service
+
%files
%defattr(644,root,root,755)
%doc README *.txt ChangeLog BUGS CREDITS configs
%attr(754,root,root) /etc/rc.d/init.d/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
+%{systemdunitdir}/%{name}.service
%attr(750,root,asterisk) %dir %{_sysconfdir}/asterisk
+%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/acl.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/adsi.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/agents.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/alarmreceiver.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/ari.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/asterisk.adsi
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/asterisk.conf
-%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/calendar.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/ccss.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_custom.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_syslog.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cel.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cel_custom.conf
-%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/chan_mobile.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cli.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cli_aliases.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cli_permissions.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/phoneprov.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/queuerules.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/queues.conf
-%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_config_mysql.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_parking.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_pktccops.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_stun_monitor.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/app_dial.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_dictate.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_directed_pickup.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/app_directory.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_disa.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_dumpchan.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_echo.so
%attr(755,root,root) %{_libdir}/asterisk/modules/cel_manager.so
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_bridge_media.so
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_iax2.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/chan_mobile.so
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_mgcp.so
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_multicast_rtp.so
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_phone.so
%attr(755,root,root) %{_libdir}/asterisk/modules/codec_alaw.so
%attr(755,root,root) %{_libdir}/asterisk/modules/codec_g722.so
%attr(755,root,root) %{_libdir}/asterisk/modules/codec_g726.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/codec_ilbc.so
%attr(755,root,root) %{_libdir}/asterisk/modules/codec_ulaw.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_g719.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_g723.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_g729.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_h263.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_h264.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/format_ilbc.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_jpeg.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_pcm.so
%attr(755,root,root) %{_libdir}/asterisk/modules/format_siren14.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_ari_playbacks.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_ari_recordings.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_ari_sounds.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_caldav.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_ews.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_exchange.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_icalendar.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_chan_stats.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_mysql.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_clialiases.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_clioriginate.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_convert.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_timing_pthread.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_timing_timerfd.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_statsd.so
-/usr/lib/tmpfiles.d/%{name}.conf
+%{systemdtmpfilesdir}/%{name}.conf
%dir %{_datadir}/asterisk
%dir %{_datadir}/asterisk/agi-bin
%doc doc/api/*
%endif
+%files astman
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_sbindir}/astman
+%{_mandir}/man1/astman.1*
+
%files alsa
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/alsa.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_alsa.so
+%if %{with bluetooth}
+%files bluetooth
+%defattr(644,root,root,755)
+%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/chan_mobile.conf
+%attr(755,root,root) %{_libdir}/asterisk/modules/chan_mobile.so
+%endif
+
+%files calendar
+%defattr(644,root,root,755)
+%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/calendar.conf
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_caldav.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_ews.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_exchange.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_calendar_icalendar.so
+
%files curl
%defattr(644,root,root,755)
%doc contrib/scripts/dbsep.cgi
%doc contrib/asterisk-ices.xml
%attr(755,root,root) %{_libdir}/asterisk/modules/app_ices.so
+%if %{with ilbc}
+%files ilbc
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/asterisk/modules/codec_ilbc.so
+%attr(755,root,root) %{_libdir}/asterisk/modules/format_ilbc.so
+%endif
+
%files jabber
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/gtalk.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/res_jabber.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_xmpp.so
+%if %{with jack}
%files jack
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/asterisk/modules/app_jack.so
+%endif
%files lua
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/extensions.lua
%attr(755,root,root) %{_libdir}/asterisk/modules/pbx_lua.so
+%if %{with ldap}
%files ldap
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_ldap.conf
%defattr(644,root,root,755)
%{_sysconfdir}/dirsrv/schema/99asterisk.ldif
%endif
+%endif
%files lpc10
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/minivm.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/app_minivm.so
+%if %{with mysql}
+%files mysql
+%defattr(644,root,root,755)
+%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_config_mysql.conf
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_mysql.so
+%endif
+
+%if %{with odbc}
%files odbc
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_adaptive_odbc.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/func_odbc.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_odbc.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_odbc.so
+%endif
%files osp
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/osp.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/app_osplookup.so
+%if %{with oss}
%files oss
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/oss.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_oss.so
+%endif
+%if %{with pjsip}
%files pjsip
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/pjsip.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/res_pjsip_session.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_pjsip_t38.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_pjsip_transport_websocket.so
+%endif
+%if %{with portaudio}
%files portaudio
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/console.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/chan_console.so
+%endif
+%if %{with pgsql}
%files postgresql
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_pgsql.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/cdr_pgsql.so
%attr(755,root,root) %{_libdir}/asterisk/modules/cel_pgsql.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_pgsql.so
+%endif
+%if %{with radius}
%files radius
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/asterisk/modules/cdr_radius.so
%attr(755,root,root) %{_libdir}/asterisk/modules/cel_radius.so
+%endif
%files resample
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/asterisk/modules/codec_speex.so
%attr(755,root,root) %{_libdir}/asterisk/modules/func_speex.so
-%files sqlite
+%if %{with sqlite2}
+%files sqlite2
+%defattr(644,root,root,755)
+%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_config_sqlite.conf
+%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_sqlite.so
+%endif
+
+%files sqlite3
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_sqlite3_custom.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cel_sqlite3_custom.conf
-%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_config_sqlite.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/res_config_sqlite3.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/cdr_sqlite3_custom.so
%attr(755,root,root) %{_libdir}/asterisk/modules/cel_sqlite3_custom.so
-%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_sqlite.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_config_sqlite3.so
+%if %{with tds}
%files tds
%defattr(644,root,root,755)
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cdr_tds.conf
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/cel_tds.conf
%attr(755,root,root) %{_libdir}/asterisk/modules/cdr_tds.so
%attr(755,root,root) %{_libdir}/asterisk/modules/cel_tds.so
+%endif
%files unistim
%defattr(644,root,root,755)
%files voicemail-imap
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/asterisk/modules/app_directory_imap.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_voicemail_imap.so
+%if %{with odbc}
%files voicemail-odbc
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/asterisk/modules/app_directory_odbc.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_voicemail_odbc.so
+%endif
%files voicemail-plain
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/asterisk/modules/app_directory_plain.so
%attr(755,root,root) %{_libdir}/asterisk/modules/app_voicemail_plain.so
%files vorbis