mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-06-15 03:20:18 +00:00
Building libks
Debian Package
This guide explains how to build the libks
Debian package.
Prerequisites:
- Git
- Debian-based system (native or Docker)
Build Steps
Clone the repository:
git clone git@github.com:signalwire/libks.git
(Optionally) Use Docker to build packages for Debian Bookworm
:
docker run -it -v $(pwd):/usr/src/ debian:bookworm bash -c "cd /usr/src/ && bash"
Set non-interactive frontend for APT:
export DEBIAN_FRONTEND=noninteractive
Install required build tools:
apt-get update \
&& apt-get -y upgrade \
&& apt-get -y install \
build-essential \
cmake \
devscripts \
lsb-release \
docbook-xsl \
pkg-config
Set build number (modify as needed):
export BUILD_NUMBER=42
Note: The build number (42) used in this guide is arbitrary. You can modify it as needed for your build process.
Set Debian codename:
export CODENAME=$(lsb_release -sc)
Configure git safety setting:
git config --global --add safe.directory '*'
Navigate to the source directory:
cd libks/
-- or --
cd /usr/src/libks/
Extract git hash:
export GIT_SHA=$(git rev-parse --short HEAD)
Install build dependencies:
apt-get update \
&& apt-get -y install \
libssl-dev \
uuid-dev
Build binary package:
PACKAGE_RELEASE="${BUILD_NUMBER}.${GIT_SHA}" cmake . \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_INSTALL_PREFIX="/usr" \
&& make package
Move built packages to the output directory:
mkdir -p OUT \
&& mv -v *.deb OUT/.
-- or --
mkdir -p /usr/src/OUT \
&& mv -v *.deb /usr/src/OUT/.
Output
After a successful build, the Debian packages will be available in the OUT
directory.