diff --git a/pkgs/applications/audio/espeak-ng/default.nix b/pkgs/applications/audio/espeak-ng/default.nix index e123e5cbc229..2025c8ce5ced 100644 --- a/pkgs/applications/audio/espeak-ng/default.nix +++ b/pkgs/applications/audio/espeak-ng/default.nix @@ -26,8 +26,36 @@ sonic, sonicSupport ? true, speechPlayerSupport ? true, + ucdSupport ? false, }: +let + version = "1.52.0"; + + src = fetchFromGitHub { + owner = "espeak-ng"; + repo = "espeak-ng"; + tag = version; + hash = "sha256-mmh5QPSVD5YQ0j16R+bEL5vcyWLtTNOJ/irBNzWY3ro="; + }; + + ucd-tools = stdenv.mkDerivation { + pname = "ucd-tools"; + inherit version src; + + sourceRoot = "${src.name}/src/ucd-tools"; + + nativeBuildInputs = [ cmake ]; + + installPhase = '' + runHook preInstall + mkdir $out + cp -v libucd.a $out/ + runHook postInstall + ''; + }; +in + stdenv.mkDerivation rec { pname = "espeak-ng"; version = "1.52.0"; @@ -50,6 +78,10 @@ stdenv.mkDerivation rec { }) ]; + postPatch = lib.optionalString ucdSupport '' + ln -s ${ucd-tools}/libucd.a src/ucd-tools/libucd.a + ''; + nativeBuildInputs = [ autoconf automake @@ -83,7 +115,7 @@ stdenv.mkDerivation rec { ''; passthru = { - inherit mbrolaSupport; + inherit mbrolaSupport ucd-tools; }; meta = {