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
openSUSE Build Service is sponsored by