|
|
|
@ -1,4 +1,8 @@ |
|
|
|
|
{ lib, stdenv, fetchFromGitHub, cmake, libsndfile, libsamplerate, flex, bison, boost, gettext |
|
|
|
|
, Accelerate |
|
|
|
|
, AudioUnit |
|
|
|
|
, CoreAudio |
|
|
|
|
, CoreMIDI |
|
|
|
|
, alsa-lib ? null |
|
|
|
|
, libpulseaudio ? null |
|
|
|
|
, libjack2 ? null |
|
|
|
@ -26,21 +30,29 @@ stdenv.mkDerivation rec { |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
cmakeFlags = [ "-DBUILD_CSOUND_AC=0" ] # fails to find Score.hpp |
|
|
|
|
++ lib.optional stdenv.isDarwin "-DCS_FRAMEWORK_DEST=${placeholder "out"}/lib" |
|
|
|
|
++ lib.optional (libjack2 != null) "-DJACK_HEADER=${libjack2}/include/jack/jack.h"; |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ cmake flex bison gettext ]; |
|
|
|
|
buildInputs = [ libsndfile libsamplerate boost ] |
|
|
|
|
++ builtins.filter (optional: optional != null) [ |
|
|
|
|
++ lib.optionals stdenv.isDarwin [ |
|
|
|
|
Accelerate AudioUnit CoreAudio CoreMIDI |
|
|
|
|
] ++ lib.optionals stdenv.isLinux (builtins.filter (optional: optional != null) [ |
|
|
|
|
alsa-lib libpulseaudio libjack2 |
|
|
|
|
liblo ladspa-sdk fluidsynth eigen |
|
|
|
|
curl tcltk fltk ]; |
|
|
|
|
curl tcltk fltk |
|
|
|
|
]); |
|
|
|
|
|
|
|
|
|
postInstall = lib.optional stdenv.isDarwin '' |
|
|
|
|
mkdir -p $out/Library/Frameworks |
|
|
|
|
ln -s $out/lib/CsoundLib64.framework $out/Library/Frameworks |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
meta = with lib; { |
|
|
|
|
description = "Sound design, audio synthesis, and signal processing system, providing facilities for music composition and performance on all major operating systems and platforms"; |
|
|
|
|
homepage = "https://csound.com/"; |
|
|
|
|
license = licenses.lgpl21Plus; |
|
|
|
|
maintainers = [maintainers.marcweber]; |
|
|
|
|
platforms = platforms.linux; |
|
|
|
|
platforms = platforms.unix; |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|