about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/speexdsp
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/speexdsp')
-rw-r--r--nixpkgs/pkgs/development/libraries/speexdsp/build-fix.patch24
-rw-r--r--nixpkgs/pkgs/development/libraries/speexdsp/default.nix30
2 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/speexdsp/build-fix.patch b/nixpkgs/pkgs/development/libraries/speexdsp/build-fix.patch
new file mode 100644
index 000000000000..13cd5e7d21a5
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/speexdsp/build-fix.patch
@@ -0,0 +1,24 @@
+diff --git a/libspeexdsp/Makefile.am b/libspeexdsp/Makefile.am
+index d0499b9..42e8d50 100644
+--- a/libspeexdsp/Makefile.am
++++ b/libspeexdsp/Makefile.am
+@@ -29,7 +29,7 @@ noinst_HEADERS = 	arch.h 	bfin.h \
+ 	pseudofloat.h smallft.h vorbis_psy.h resample_sse.h resample_neon.h
+ 
+ libspeexdsp_la_LDFLAGS = -no-undefined -version-info @SPEEXDSP_LT_CURRENT@:@SPEEXDSP_LT_REVISION@:@SPEEXDSP_LT_AGE@
+-libspeexdsp_la_LIBADD = $(LIBM)
++libspeexdsp_la_LIBADD = @FFT_LIBS@ $(LIBM)
+ 
+ if BUILD_EXAMPLES
+ noinst_PROGRAMS = testdenoise testecho testjitter testresample
+diff --git a/speexdsp.pc.in b/speexdsp.pc.in
+index 6c6d26f..d40d856 100644
+--- a/speexdsp.pc.in
++++ b/speexdsp.pc.in
+@@ -11,5 +11,5 @@ Version: @PACKAGE_VERSION@
+ Requires: @FFT_PKGCONFIG@
+ Conflicts:
+ Libs: -L${libdir} -lspeexdsp
+-Libs.private: @LIBM@
++Libs.private: @FFT_LIBS@ @LIBM@
+ Cflags: -I${includedir}
diff --git a/nixpkgs/pkgs/development/libraries/speexdsp/default.nix b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
new file mode 100644
index 000000000000..5e6f27f434ad
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, fftw }:
+
+stdenv.mkDerivation rec {
+  pname = "speexdsp";
+  version = "1.2.1";
+
+  src = fetchurl {
+    url = "https://downloads.xiph.org/releases/speex/${pname}-${version}.tar.gz";
+    sha256 = "sha256-jHdzQ+SmOZVpxyq8OKlbJNtWiCyD29tsZCSl9K61TT0=";
+  };
+
+  patches = [ ./build-fix.patch ];
+  postPatch = "sed '3i#include <stdint.h>' -i ./include/speex/speexdsp_config_types.h.in";
+
+  outputs = [ "out" "dev" "doc" ];
+
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
+  buildInputs = [ fftw ];
+
+  configureFlags = [
+    "--with-fft=gpl-fftw3"
+  ] ++ lib.optional stdenv.isAarch64 "--disable-neon";
+
+  meta = with lib; {
+    homepage = "https://www.speex.org/";
+    description = "An Open Source/Free Software patent-free audio compression format designed for speech";
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+  };
+}