Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / libraries / pcaudiolib / default.nix
blobc6e67d39c19561e23de7d6eedc1a50619c817c9e
1 { config
2 , lib
3 , stdenv
4 , fetchFromGitHub
5 , alsa-lib
6 , autoconf
7 , automake
8 , libpulseaudio
9 , libtool
10 , pkg-config
11 , portaudio
12 , which
13 , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
16 stdenv.mkDerivation (finalAttrs: {
17   pname = "pcaudiolib";
18   version = "1.2";
20   src = fetchFromGitHub {
21     owner = "espeak-ng";
22     repo = finalAttrs.pname;
23     rev = finalAttrs.version;
24     hash = "sha256-ZG/HBk5DHaZP/H3M01vDr3M2nP9awwsPuKpwtalz3EE=";
25   };
27   nativeBuildInputs = [
28     autoconf
29     automake
30     libtool
31     pkg-config
32     which
33   ];
35   buildInputs = [
36     portaudio
37   ]
38   ++ lib.optional stdenv.isLinux alsa-lib
39   ++ lib.optional pulseaudioSupport libpulseaudio;
41   # touch ChangeLog to avoid below error on darwin:
42   # Makefile.am: error: required file './ChangeLog.md' not found
43   preConfigure = lib.optionalString stdenv.isDarwin ''
44     touch ChangeLog
45   '' + ''
46     ./autogen.sh
47   '';
49   meta = with lib; {
50     homepage = "https://github.com/espeak-ng/pcaudiolib";
51     description = "Provides a C API to different audio devices";
52     license = licenses.gpl3Plus;
53     maintainers = with maintainers; [ aske ];
54     platforms = platforms.unix;
55   };