1# Kamailio Packaging # 2 3The `pkg/kamailio/` directory contains packaging specs for several operation systems. 4 5Currently the DEB and RPM specs are actively maintained, the rest are still kept 6in case someone wants to pick up and update. 7 8## DEBS ## 9 10DEB packages can be generated for several flavours of Debian and Ubuntu 11operating systems. 12 13To generate deb packages, run: 14 15``` 16make deb 17``` 18 19This is using a generic Debian spec. To select a specific Debian or Ubuntu, go 20to root folder of Kamailio source tree, create a `debian` symlink to the 21desired distro from `pkg/kamailio/deb/` and run `make deb`. For example, 22on a Debian Stretch (9.x), do: 23 24``` 25ln -s pkg/kamailio/deb/stretch debian 26make deb 27``` 28 29The DEB files are generated in the parent folder. 30 31## RPMS ## 32 33There are couple of variants of RPM specs. The most actual one is stored in `obs/` 34subfolder and has conditional options to build for many operating systems that 35use RPM for packages (e.g., CenOS, RedHat, Fedora, OpenSuse). The folders with 36the name reflecting an operating system might be older, some not really 37maintained. 38 39To build RPM packages for CentOS, RHEL, Fedora, OpenSUSE and Oracle linux execute 40 41``` 42make rpm 43``` 44 45When utility is finished, you can see the directory where compiled RPM files 46are located. 47 48Example: 49 50``` 51Finish: rpmbuild kamailio-5.2.0-dev1.0.fc25.src.rpm 52Finish: build phase for kamailio-5.2.0-dev1.0.fc25.src.rpm 53INFO: Done(../../kamailio-5.2.0-dev1.0.fc25.src.rpm) Config(default) 8 minutes 30 seconds 54INFO: Results and/or logs in: /var/lib/mock/fedora-25-x86_64/result 55Finish: run 56``` 57 58The `obs` folder aims at using it also in OpenSuse Build Service. 59 60 * https://build.opensuse.org 61 62Kamailio build project on OBS is at: 63 64 * https://build.opensuse.org/project/show/home:kamailio 65 66## Gentoo ## 67 68Not actively mentained, still fairly recent updated. 69 70## BSD ## 71 72There are specs for FreeBSD, NetBST and OpenBSD. They are not actively 73maintained, being quite old. 74 75## Solaris ## 76 77Not actively maintained, being quite old. 78 79## Alpine Linux ## 80 81To build apk packages please execute 82 83``` 84make cfg 85make apk 86cd alpine && abuild -r 87``` 88 89NOTICE: Now `abuild -r` command is failed when called from `Makefile`. This reason why need to execute command from shell.