File asterisk.spec of Package Asterisk
Name: asterisk
Version: 23.2.0
Release: 0
Summary: Open Source PBX and Telephony Toolkit
License: GPL-2.0-or-later
URL: https://www.asterisk.org/
Source0: https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-%{version}.tar.gz
Source1: https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.15.1/pjproject-2.15.1.tar.bz2
Source2: https://raw.githubusercontent.com/asterisk/third-party/master/jansson/2.14.1/jansson-2.14.1.tar.bz2
BuildRequires: gcc-c++
BuildRequires: make
BuildRequires: libxml2-devel
BuildRequires: sqlite3-devel
BuildRequires: libjansson-devel
BuildRequires: libopenssl-3-devel
BuildRequires: libcurl-devel
BuildRequires: git
BuildRequires: wget
BuildRequires: bzip2
BuildRequires: ncurses-devel
BuildRequires: libuuid-devel
BuildRequires: libedit-devel
BuildRequires: bash
BuildRequires: curl
BuildRequires: vim
BuildRequires: libspeexdsp1
BuildRequires: libsqlite3-0
BuildRequires: libncurses6
BuildRequires: libxml2
BuildRequires: sqlite3
BuildRequires: patch
BuildRequires: findutils
BuildRequires: gawk
Requires(pre): shadow
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description
Asterisk is an open source framework for building communications
applications. It turns an ordinary computer into a powerful
communications server.
## Build Setup
%prep
%autosetup -n asterisk-%{version}
## Build
%build
./configure \
--with-pjproject-bundled=yes \
--with-jansson-bundled=yes \
NOISY_BUILD=yes \
EXTERNALS_CACHE_DIR="%_sourcedir"
make %{?_smp_mflags}
## Install
%install
b="%buildroot"
%make_install DOWNLOAD="/bin/true"
make install-headers DESTDIR="$b"
make samples DESTDIR="$b"
rm -rf "$b/%{_includedir}/asterisk"
rm -f "$b/%{_includedir}/asterisk.h"
rm -rf "$b/%{_localstatedir}/run/asterisk"
# Runtime directories
install -d -m 0755 %{buildroot}%{_localstatedir}/lib/asterisk
install -d -m 0755 %{buildroot}%{_localstatedir}/log/asterisk
install -d -m 0755 %{buildroot}%{_localstatedir}/spool/asterisk
install -d -m 0755 %{buildroot}%{_localstatedir}/run/asterisk
## Files
%files
%license LICENSE
%doc README.md
%{_sbindir}/asterisk
%{_sbindir}/safe_asterisk
%{_sbindir}/astcanary
%{_sbindir}/astgenkey
%{_sbindir}/astversion
%{_sbindir}/autosupport
%{_sbindir}/rasterisk
%{_prefix}/lib/asterisk
%{_prefix}/lib/*asterisk*.so*
%{_sharedstatedir}/asterisk
%{_localstatedir}/spool/asterisk
%{_mandir}/man8/*
%dir %{_sysconfdir}/asterisk
%config(noreplace) %{_sysconfdir}/asterisk/*
%dir %{_localstatedir}/lib/asterisk
%dir %{_localstatedir}/log/asterisk
%dir %{_localstatedir}/spool/asterisk
## Changelog
%changelog
* Mon Jan 20 2026 A.J. Orians <ajorians@gmail.com> - 23.2.0-0
- Initial package