summary refs log blame commit diff
path: root/pkgs/development/libraries/libsamplerate/default.nix
blob: d7cb741a042a298f666ab02cea691e5445114899 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
                                                                                       
 



                                                
                               
 

                                                        
                                                                    
    
 
                                    

                                                                      
 


                                                              
 
                                  
 



                                                                                  
 

                                                                       

                           
                                                    
                                                          
                                                   

                                                         
                                                           
                                                             
                                
    
 
{ stdenv, fetchurl, pkgconfig, libsndfile, ApplicationServices, Carbon, CoreServices }:

let
  inherit (stdenv.lib) optionals optionalString;

in stdenv.mkDerivation rec {
  name = "libsamplerate-0.1.8";

  src = fetchurl {
    url = "http://www.mega-nerd.com/SRC/${name}.tar.gz";
    sha256 = "01hw5xjbjavh412y63brcslj5hi9wdgkjd3h9csx5rnm8vglpdck";
  };

  nativeBuildInputs = [ pkgconfig ];
  buildInputs = [ libsndfile ]
    ++ optionals stdenv.isDarwin [ ApplicationServices CoreServices ];

  # maybe interesting configure flags:
  #--disable-fftw          disable usage of FFTW
  #--disable-cpu-clip      disable tricky cpu specific clipper

  outputs = [ "bin" "dev" "out" ];

  postConfigure = optionalString stdenv.isDarwin ''
    # need headers from the Carbon.framework in /System/Library/Frameworks to
    # compile this on darwin -- not sure how to handle
    NIX_CFLAGS_COMPILE+=" -I${Carbon}/Library/Frameworks/Carbon.framework/Headers"

    substituteInPlace examples/Makefile --replace "-fpascal-strings" ""
  '';

  meta = with stdenv.lib; {
    description = "Sample Rate Converter for audio";
    homepage    = http://www.mega-nerd.com/SRC/index.html;
    # you can choose one of the following licenses:
    # GPL or a commercial-use license (available at
    # http://www.mega-nerd.com/SRC/libsamplerate-cul.pdf)
    licenses    = with licenses; [ gpl3.shortName unfree ];
    maintainers = with maintainers; [ lovek323 wkennington ];
    platforms   = platforms.all;
  };
}