nixpkgs/pkgs/development/interpreters/supercollider/default.nix
Franz Pletz aff1f4ab94 Use general hardening flag toggle lists
The following parameters are now available:

  * hardeningDisable
    To disable specific hardening flags
  * hardeningEnable
    To enable specific hardening flags

Only the cc-wrapper supports this right now, but these may be reused by
other wrappers, builders or setup hooks.

cc-wrapper supports the following flags:

  * fortify
  * stackprotector
  * pie (disabled by default)
  * pic
  * strictoverflow
  * format
  * relro
  * bindnow
2016-03-05 18:55:26 +01:00

43 lines
1.1 KiB
Nix

{ stdenv, fetchurl, cmake, pkgconfig
, libjack2, libsndfile, fftw, curl, gcc
, libXt, qt, readline
, useSCEL ? false, emacs
}:
let optional = stdenv.lib.optional; in
stdenv.mkDerivation rec {
name = "supercollider-3.6.6";
meta = {
description = "Programming language for real time audio synthesis";
homepage = "http://supercollider.sourceforge.net/";
license = stdenv.lib.licenses.gpl3Plus;
platforms = stdenv.lib.platforms.linux;
};
src = fetchurl {
url = "mirror://sourceforge/supercollider/Source/3.6/SuperCollider-3.6.6-Source.tar.bz2";
sha256 = "11khrv6jchs0vv0lv43am8lp0x1rr3h6l2xj9dmwrxcpdayfbalr";
};
hardeningDisable = [ "stackprotector" ];
# QGtkStyle unavailable
patchPhase = ''
substituteInPlace editors/sc-ide/widgets/code_editor/autocompleter.cpp \
--replace Q_WS_X11 Q_GTK_STYLE
'';
cmakeFlags = ''
-DSC_WII=OFF
-DSC_EL=${if useSCEL then "ON" else "OFF"}
'';
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
gcc libjack2 libsndfile fftw curl libXt qt readline ]
++ optional useSCEL emacs;
}