diff options
author | Franz Pletz <fpletz@fnordicwalking.de> | 2020-01-01 20:25:43 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-01 20:25:43 +0000 |
commit | 427217ac1f569417a6313464f9a5acc8fa6ce151 (patch) | |
tree | de9ec7fb87529954e63fe3c80456d86c7cb160b0 | |
parent | 26f3d45b5f3d43dac330dd1fc527f90718ee7704 (diff) | |
parent | 96f4563f1e6eb7f773c50f413afdbea737355db9 (diff) | |
download | nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar.gz nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar.bz2 nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar.lz nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar.xz nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.tar.zst nixpkgs-427217ac1f569417a6313464f9a5acc8fa6ce151.zip |
Merge pull request #76786 from misuzu/freeswitch-gsmopen
freeswitch: fix gsmopen build and enable by default for linux
-rw-r--r-- | pkgs/development/libraries/gsmlib/default.nix | 19 | ||||
-rw-r--r-- | pkgs/development/libraries/libctb/default.nix | 23 | ||||
-rw-r--r-- | pkgs/development/libraries/libctb/include-kbhit.patch | 13 | ||||
-rw-r--r-- | pkgs/servers/sip/freeswitch/default.nix | 37 | ||||
-rw-r--r-- | pkgs/servers/sip/freeswitch/modules.nix | 4 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
6 files changed, 79 insertions, 21 deletions
diff --git a/pkgs/development/libraries/gsmlib/default.nix b/pkgs/development/libraries/gsmlib/default.nix new file mode 100644 index 00000000000..88bec83e624 --- /dev/null +++ b/pkgs/development/libraries/gsmlib/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchFromGitHub, autoreconfHook }: +stdenv.mkDerivation rec { + pname = "gsmlib"; + version = "unstable-2017-10-06"; + src = fetchFromGitHub { + owner = "x-logLT"; + repo = "gsmlib"; + rev = "4f794b14450132f81673f7d3570c5a859aecf7ae"; + sha256 = "16v8aj914ac1ipf14a867ljib3gy7fhzd9ypxnsg9l0zi8mm3ml5"; + }; + nativeBuildInputs = [ autoreconfHook ]; + meta = with stdenv.lib; { + description = "Library to access GSM mobile phones through GSM modems"; + homepage = "https://github.com/x-logLT/gsmlib"; + license = licenses.lgpl2; + platforms = platforms.linux; + maintainers = [ maintainers.misuzu ]; + }; +} diff --git a/pkgs/development/libraries/libctb/default.nix b/pkgs/development/libraries/libctb/default.nix new file mode 100644 index 00000000000..161c7c98c63 --- /dev/null +++ b/pkgs/development/libraries/libctb/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl }: +stdenv.mkDerivation rec { + pname = "libctb"; + version = "0.16"; + src = fetchurl { + url = "https://iftools.com/download/files/legacy/${pname}-${version}.tar.gz"; + sha256 = "027wh89d0qyly3d9m6rg4x7x1gqz3y3cnxlgk0k8xgygcrm05c0w"; + }; + patches = [ + ./include-kbhit.patch + ]; + sourceRoot = "${pname}-${version}/build"; + makeFlags = [ + "prefix=$(out)" + ]; + meta = with stdenv.lib; { + description = "Communications toolbox"; + homepage = "https://iftools.com"; + license = licenses.lgpl2; + platforms = platforms.linux; + maintainers = [ maintainers.misuzu ]; + }; +} diff --git a/pkgs/development/libraries/libctb/include-kbhit.patch b/pkgs/development/libraries/libctb/include-kbhit.patch new file mode 100644 index 00000000000..76b4e38fadb --- /dev/null +++ b/pkgs/development/libraries/libctb/include-kbhit.patch @@ -0,0 +1,13 @@ +diff --git a/GNUmakefile b/GNUmakefile +index e39a687..026f9c4 100644 +--- a/GNUmakefile ++++ b/GNUmakefile +@@ -140,7 +140,7 @@ all: ../lib/libctb$(LIBFLAG)$(GPIBFLAG)-0.16.a ../lib/libctb$(LIBFLAG)$(GPIBFLAG + + install: install_ctb_lib install_ctb_dll + $(INSTALL) -d $(DESTDIR)$(prefix)/include/ctb-0.16 +- for f in ctb.h fifo.h getopt.h $(GPIBINC) iobase.h linux/serport.h linux/timer.h portscan.h serport.h serportx.h timer.h; do \ ++ for f in ctb.h fifo.h getopt.h $(GPIBINC) iobase.h kbhit.h linux/serport.h linux/timer.h portscan.h serport.h serportx.h timer.h; do \ + if test ! -d $(DESTDIR)$(prefix)/include/ctb-0.16/`dirname $$f` ; then \ + $(INSTALL) -d $(DESTDIR)$(prefix)/include/ctb-0.16/`dirname $$f`; \ + fi; \ diff --git a/pkgs/servers/sip/freeswitch/default.nix b/pkgs/servers/sip/freeswitch/default.nix index a55d1cf14cd..5f066adcccc 100644 --- a/pkgs/servers/sip/freeswitch/default.nix +++ b/pkgs/servers/sip/freeswitch/default.nix @@ -1,5 +1,19 @@ +{ fetchurl, stdenv, lib, ncurses, curl, pkgconfig, gnutls, readline +, openssl, perl, sqlite, libjpeg, speex, pcre +, ldns, libedit, yasm, which, lua, libopus, libsndfile, libtiff +, libctb, gsmlib + +, modules ? null +, postgresql +, enablePostgres ? true + +, SystemConfiguration +}: + let +availableModules = import ./modules.nix { inherit curl lua libopus libctb gsmlib; }; + # the default list from v1.8.7, except with applications/mod_signalwire also disabled defaultModules = mods: with mods; [ applications.commands @@ -57,26 +71,9 @@ defaultModules = mods: with mods; [ xml_int.cdr xml_int.rpc xml_int.scgi -]; - -in - -{ fetchurl, stdenv, lib, ncurses, curl, pkgconfig, gnutls, readline -, openssl, perl, sqlite, libjpeg, speex, pcre -, ldns, libedit, yasm, which, lua, libopus, libsndfile, libtiff - -, modules ? defaultModules -, postgresql -, enablePostgres ? true - -, SystemConfiguration -}: - -let - -availableModules = import ./modules.nix { inherit curl lua libopus; }; +] ++ lib.optionals stdenv.isLinux [ endpoints.gsmopen ]; -enabledModules = modules availableModules; +enabledModules = (if modules != null then modules else defaultModules) availableModules; modulesConf = let lst = builtins.map (mod: mod.path) enabledModules; @@ -127,7 +124,7 @@ stdenv.mkDerivation rec { description = "Cross-Platform Scalable FREE Multi-Protocol Soft Switch"; homepage = https://freeswitch.org/; license = stdenv.lib.licenses.mpl11; - maintainers = with stdenv.lib.maintainers; [ ]; + maintainers = with stdenv.lib.maintainers; [ misuzu ]; platforms = with stdenv.lib.platforms; unix; }; } diff --git a/pkgs/servers/sip/freeswitch/modules.nix b/pkgs/servers/sip/freeswitch/modules.nix index aed30e467e8..2d8f541a3c2 100644 --- a/pkgs/servers/sip/freeswitch/modules.nix +++ b/pkgs/servers/sip/freeswitch/modules.nix @@ -1,4 +1,6 @@ { libopus +, libctb +, gsmlib , lua , curl }: @@ -114,7 +116,7 @@ in endpoints = { alsa = mk "endpoints/mod_alsa" []; dingaling = mk "endpoints/mod_dingaling" []; - gsmopen = mk "endpoints/mod_gsmopen" []; + gsmopen = mk "endpoints/mod_gsmopen" [ gsmlib libctb ]; h323 = mk "endpoints/mod_h323" []; khomp = mk "endpoints/mod_khomp" []; loopback = mk "endpoints/mod_loopback" []; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 396762142c5..daae3e616f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3798,6 +3798,8 @@ in gsmartcontrol = callPackage ../tools/misc/gsmartcontrol { }; + gsmlib = callPackage ../development/libraries/gsmlib { }; + gssdp = callPackage ../development/libraries/gssdp { }; gt5 = callPackage ../tools/system/gt5 { }; @@ -12217,6 +12219,8 @@ in libcredis = callPackage ../development/libraries/libcredis { }; + libctb = callPackage ../development/libraries/libctb { }; + libctemplate = callPackage ../development/libraries/libctemplate { }; libcouchbase = callPackage ../development/libraries/libcouchbase { }; |