Merge pull request #76803 from misuzu/freeswitch-1.10

freeswitch: 1.8.7 -> 1.10.2
This commit is contained in:
Ryan Mulligan 2020-01-01 15:25:01 -08:00 committed by GitHub
commit f4375dd320
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 28 additions and 16 deletions

View File

@ -1,18 +1,20 @@
{ fetchurl, stdenv, lib, ncurses, curl, pkgconfig, gnutls, readline { fetchFromGitHub, stdenv, lib, pkgconfig, autoreconfHook
, ncurses, gnutls, readline
, openssl, perl, sqlite, libjpeg, speex, pcre , openssl, perl, sqlite, libjpeg, speex, pcre
, ldns, libedit, yasm, which, lua, libopus, libsndfile, libtiff , ldns, libedit, yasm, which, libsndfile, libtiff
, libctb, gsmlib
, modules ? null , curl, lua, libmysqlclient, postgresql, libopus, libctb, gsmlib
, postgresql
, enablePostgres ? true
, SystemConfiguration , SystemConfiguration
, modules ? null
}: }:
let let
availableModules = import ./modules.nix { inherit curl lua libopus libctb gsmlib; }; availableModules = import ./modules.nix {
inherit curl lua libmysqlclient postgresql libopus libctb gsmlib;
};
# the default list from v1.8.7, except with applications/mod_signalwire also disabled # the default list from v1.8.7, except with applications/mod_signalwire also disabled
defaultModules = mods: with mods; [ defaultModules = mods: with mods; [
@ -41,6 +43,9 @@ defaultModules = mods: with mods; [
codecs.h26x codecs.h26x
codecs.opus codecs.opus
databases.mariadb
databases.pgsql
dialplans.asterisk dialplans.asterisk
dialplans.xml dialplans.xml
@ -83,11 +88,13 @@ modulesConf = let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "freeswitch-1.8.7"; pname = "freeswitch";
version = "1.10.2";
src = fetchurl { src = fetchFromGitHub {
url = "https://files.freeswitch.org/freeswitch-releases/${name}.tar.bz2"; owner = "signalwire";
sha256 = "0k52mxdfc5w9fdnz8kvfjiwnnjjhnpkirnyrfkhq7bad84m731z4"; repo = pname;
rev = "v${version}";
sha256 = "1fmrm51zgrasjbmhs0pzb1lyca3ddx0wd35shvxnkjnifi8qd1h7";
}; };
postPatch = '' postPatch = ''
patchShebangs libs/libvpx/build/make/rtcd.pl patchShebangs libs/libvpx/build/make/rtcd.pl
@ -95,23 +102,21 @@ stdenv.mkDerivation rec {
--replace AS=\''${AS} AS=yasm --replace AS=\''${AS} AS=yasm
''; '';
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ buildInputs = [
openssl ncurses gnutls readline perl libjpeg openssl ncurses gnutls readline perl libjpeg
sqlite pcre speex ldns libedit yasm which sqlite pcre speex ldns libedit yasm which
libsndfile libtiff libsndfile libtiff
] ]
++ lib.unique (lib.concatMap (mod: mod.inputs) enabledModules) ++ lib.unique (lib.concatMap (mod: mod.inputs) enabledModules)
++ lib.optionals enablePostgres [ postgresql ]
++ lib.optionals stdenv.isDarwin [ SystemConfiguration ]; ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ];
NIX_CFLAGS_COMPILE = "-Wno-error"; NIX_CFLAGS_COMPILE = "-Wno-error";
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
configureFlags = lib.optionals enablePostgres [ "--enable-core-pgsql-support" ];
preConfigure = '' preConfigure = ''
./bootstrap.sh
cp "${modulesConf}" modules.conf cp "${modulesConf}" modules.conf
''; '';

View File

@ -3,6 +3,8 @@
, gsmlib , gsmlib
, lua , lua
, curl , curl
, libmysqlclient
, postgresql
}: }:
let let
@ -103,6 +105,11 @@ in
theora = mk "codecs/mod_theora" []; theora = mk "codecs/mod_theora" [];
}; };
databases = {
mariadb = mk "databases/mod_mariadb" [ libmysqlclient ];
pgsql = mk "databases/mod_pgsql" [ postgresql ];
};
dialplans = { dialplans = {
asterisk = mk "dialplans/mod_dialplan_asterisk" []; asterisk = mk "dialplans/mod_dialplan_asterisk" [];
directory = mk "dialplans/mod_dialplan_directory" []; directory = mk "dialplans/mod_dialplan_directory" [];