about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/flite
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/flite')
-rw-r--r--nixpkgs/pkgs/development/libraries/flite/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/flite/default.nix b/nixpkgs/pkgs/development/libraries/flite/default.nix
new file mode 100644
index 000000000000..f4eac39919f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/flite/default.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv, fetchFromGitHub, alsa-lib, fetchpatch }:
+
+stdenv.mkDerivation rec {
+  pname = "flite";
+  version = "2.2";
+
+  src = fetchFromGitHub {
+    owner = "festvox";
+    repo = "flite";
+    rev = "v${version}";
+    sha256 = "1n0p81jzndzc1rzgm66kw9ls189ricy5v1ps11y0p2fk1p56kbjf";
+  };
+
+  buildInputs = lib.optionals stdenv.isLinux [ alsa-lib ];
+
+  # https://github.com/festvox/flite/pull/60.
+  # Replaces `ar` with `$(AR)` in config/common_make_rules.
+  # Improves cross-compilation compatibility.
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/festvox/flite/commit/54c65164840777326bbb83517568e38a128122ef.patch";
+      sha256 = "sha256-hvKzdX7adiqd9D+9DbnfNdqEULg1Hhqe1xElYxNM1B8=";
+    })
+  ];
+
+  configureFlags = [
+    "--enable-shared"
+  ] ++ lib.optionals stdenv.isLinux [ "--with-audio=alsa" ];
+
+  # main/Makefile creates and removes 'flite_voice_list.c' from multiple targets:
+  # make[1]: *** No rule to make target 'flite_voice_list.c', needed by 'all'.  Stop
+  enableParallelBuilding = false;
+
+  meta = with lib; {
+    description = "A small, fast run-time speech synthesis engine";
+    homepage = "http://www.festvox.org/flite/";
+    license = licenses.bsdOriginal;
+    platforms = platforms.all;
+  };
+}