faust2: 2.0-a41 -> 2.0.a51

+16 -236
-210
pkgs/applications/audio/faust/faust1git.nix
··· 1 - { stdenv 2 - , coreutils 3 - , fetchgit 4 - , makeWrapper 5 - , pkgconfig 6 - }: 7 - 8 - with stdenv.lib.strings; 9 - 10 - let 11 - 12 - version = "2016-07-19"; 13 - 14 - src = fetchgit { 15 - url = "git://git.code.sf.net/p/faudiostream/code"; 16 - rev = "16c22dc0193c10521b1dc16f98443d9c206bb5dd"; 17 - sha256 = "01rbcjfhpd5casi72ffi1j95f65ji60l629sgav93pvs0kpdacz5"; 18 - }; 19 - 20 - meta = with stdenv.lib; { 21 - homepage = http://faust.grame.fr/; 22 - downloadPage = http://sourceforge.net/projects/faudiostream/files/; 23 - license = licenses.gpl2; 24 - platforms = platforms.linux; 25 - maintainers = with maintainers; [ magnetophon pmahoney ]; 26 - }; 27 - 28 - faust = stdenv.mkDerivation { 29 - 30 - name = "faust-${version}"; 31 - 32 - inherit src; 33 - 34 - buildInputs = [ makeWrapper ]; 35 - 36 - passthru = { 37 - inherit wrap wrapWithBuildEnv; 38 - }; 39 - 40 - preConfigure = '' 41 - makeFlags="$makeFlags prefix=$out" 42 - 43 - # The faust makefiles use 'system ?= $(shell uname -s)' but nix 44 - # defines 'system' env var, so undefine that so faust detects the 45 - # correct system. 46 - unset system 47 - ''; 48 - 49 - # Remove most faust2appl scripts since they won't run properly 50 - # without additional paths setup. See faust.wrap, 51 - # faust.wrapWithBuildEnv. 52 - postInstall = '' 53 - # syntax error when eval'd directly 54 - pattern="faust2!(svg)" 55 - (shopt -s extglob; rm "$out"/bin/$pattern) 56 - ''; 57 - 58 - postFixup = '' 59 - # Set faustpath explicitly. 60 - substituteInPlace "$out"/bin/faustpath \ 61 - --replace "/usr/local /usr /opt /opt/local" "$out" 62 - 63 - # The 'faustoptflags' is 'source'd into other faust scripts and 64 - # not used as an executable, so patch 'uname' usage directly 65 - # rather than use makeWrapper. 66 - substituteInPlace "$out"/bin/faustoptflags \ 67 - --replace uname "${coreutils}/bin/uname" 68 - 69 - # wrapper for scripts that don't need faust.wrap* 70 - for script in "$out"/bin/faust2*; do 71 - wrapProgram "$script" \ 72 - --prefix PATH : "$out"/bin 73 - done 74 - ''; 75 - 76 - meta = meta // { 77 - description = "A functional programming language for realtime audio signal processing"; 78 - longDescription = '' 79 - FAUST (Functional Audio Stream) is a functional programming 80 - language specifically designed for real-time signal processing 81 - and synthesis. FAUST targets high-performance signal processing 82 - applications and audio plug-ins for a variety of platforms and 83 - standards. 84 - The Faust compiler translates DSP specifications into very 85 - efficient C++ code. Thanks to the notion of architecture, 86 - FAUST programs can be easily deployed on a large variety of 87 - audio platforms and plugin formats (jack, alsa, ladspa, maxmsp, 88 - puredata, csound, supercollider, pure, vst, coreaudio) without 89 - any change to the FAUST code. 90 - 91 - This package has just the compiler, libraries, and headers. 92 - Install faust2* for specific faust2appl scripts. 93 - ''; 94 - }; 95 - 96 - }; 97 - 98 - # Default values for faust2appl. 99 - faust2ApplBase = 100 - { baseName 101 - , dir ? "tools/faust2appls" 102 - , scripts ? [ baseName ] 103 - , ... 104 - }@args: 105 - 106 - args // { 107 - name = "${baseName}-${version}"; 108 - 109 - inherit src; 110 - 111 - configurePhase = ":"; 112 - 113 - buildPhase = ":"; 114 - 115 - installPhase = '' 116 - runHook preInstall 117 - 118 - mkdir -p "$out/bin" 119 - for script in ${concatStringsSep " " scripts}; do 120 - cp "${dir}/$script" "$out/bin/" 121 - done 122 - 123 - runHook postInstall 124 - ''; 125 - 126 - postInstall = '' 127 - # For the faust2appl script, change 'faustpath' and 128 - # 'faustoptflags' to absolute paths. 129 - for script in "$out"/bin/*; do 130 - substituteInPlace "$script" \ 131 - --replace ". faustpath" ". '${faust}/bin/faustpath'" \ 132 - --replace ". faustoptflags" ". '${faust}/bin/faustoptflags'" 133 - done 134 - ''; 135 - 136 - meta = meta // { 137 - description = "The ${baseName} script, part of faust functional programming language for realtime audio signal processing"; 138 - }; 139 - }; 140 - 141 - # Some 'faust2appl' scripts, such as faust2alsa, run faust to 142 - # generate cpp code, then invoke the c++ compiler to build the code. 143 - # This builder wraps these scripts in parts of the stdenv such that 144 - # when the scripts are called outside any nix build, they behave as 145 - # if they were running inside a nix build in terms of compilers and 146 - # paths being configured (e.g. rpath is set so that compiled 147 - # binaries link to the libs inside the nix store) 148 - # 149 - # The function takes two main args: the appl name (e.g. 150 - # 'faust2alsa') and an optional list of propagatedBuildInputs. It 151 - # returns a derivation that contains only the bin/${appl} script, 152 - # wrapped up so that it will run as if it was inside a nix build 153 - # with those build inputs. 154 - # 155 - # The build input 'faust' is automatically added to the 156 - # propagatedBuildInputs. 157 - wrapWithBuildEnv = 158 - { baseName 159 - , propagatedBuildInputs ? [ ] 160 - , ... 161 - }@args: 162 - 163 - stdenv.mkDerivation ((faust2ApplBase args) // { 164 - 165 - buildInputs = [ makeWrapper pkgconfig ]; 166 - 167 - propagatedBuildInputs = [ faust ] ++ propagatedBuildInputs; 168 - 169 - postFixup = '' 170 - 171 - # export parts of the build environment 172 - for script in "$out"/bin/*; do 173 - wrapProgram "$script" \ 174 - --set FAUSTLIB "${faust}/lib/faust" \ 175 - --set FAUSTINC "${faust}/include/faust" \ 176 - --prefix PATH : "$PATH" \ 177 - --prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \ 178 - --set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \ 179 - --set NIX_LDFLAGS "$NIX_LDFLAGS" 180 - done 181 - ''; 182 - }); 183 - 184 - # Builder for 'faust2appl' scripts, such as faust2firefox that 185 - # simply need to be wrapped with some dependencies on PATH. 186 - # 187 - # The build input 'faust' is automatically added to the PATH. 188 - wrap = 189 - { baseName 190 - , runtimeInputs ? [ ] 191 - , ... 192 - }@args: 193 - 194 - let 195 - 196 - runtimePath = concatStringsSep ":" (map (p: "${p}/bin") ([ faust ] ++ runtimeInputs)); 197 - 198 - in stdenv.mkDerivation ((faust2ApplBase args) // { 199 - 200 - buildInputs = [ makeWrapper ]; 201 - 202 - postFixup = '' 203 - for script in "$out"/bin/*; do 204 - wrapProgram "$script" --prefix PATH : "${runtimePath}" 205 - done 206 - ''; 207 - 208 - }); 209 - 210 - in faust
+9 -6
pkgs/applications/audio/faust/faust2.nix
··· 16 16 17 17 let 18 18 19 - version = "2.0-a41"; 19 + version = "2.0.a51"; 20 20 21 21 src = fetchurl { 22 - url = "mirror://sourceforge/project/faudiostream/faust-2.0.a41.tgz"; 23 - sha256 = "1cq4x1cax0lswrcqv0limx5mjdi3187zlmh7cj2pndr0xq6b96cm"; 22 + url = "mirror://sourceforge/project/faudiostream/faust-${version}.tgz"; 23 + sha256 = "1yryjqfqmxs7lxy95hjgmrncvl9kig3rcsmg0v49ghzz7vs7haxf"; 24 24 }; 25 25 26 26 meta = with stdenv.lib; { ··· 53 53 # defines 'system' env var, so undefine that so faust detects the 54 54 # correct system. 55 55 unset system 56 - sed -e "232s/LLVM_STATIC_LIBS/LLVMLIBS/" -i compiler/Makefile.unix 56 + # sed -e "232s/LLVM_STATIC_LIBS/LLVMLIBS/" -i compiler/Makefile.unix 57 57 58 58 # The makefile sets LLVM_<version> depending on the current llvm 59 59 # version, but the detection code is quite brittle. ··· 67 67 # 68 68 # For now, fix this by 1) pinning the llvm version; 2) manually setting LLVM_VERSION 69 69 # to something the makefile will recognize. 70 - sed '52iLLVM_VERSION=3.7.0' -i compiler/Makefile.unix 70 + sed '52iLLVM_VERSION=3.8.0' -i compiler/Makefile.unix 71 71 ''; 72 72 73 73 # Remove most faust2appl scripts since they won't run properly ··· 151 151 for script in "$out"/bin/*; do 152 152 substituteInPlace "$script" \ 153 153 --replace ". faustpath" ". '${faust}/bin/faustpath'" \ 154 - --replace ". faustoptflags" ". '${faust}/bin/faustoptflags'" 154 + --replace ". faustoptflags" ". '${faust}/bin/faustoptflags'" \ 155 + --replace " error " "echo" 155 156 done 156 157 ''; 157 158 ··· 193 194 # export parts of the build environment 194 195 for script in "$out"/bin/*; do 195 196 wrapProgram "$script" \ 197 + --set FAUSTLIB "${faust}/lib/faust" \ 196 198 --set FAUST_LIB_PATH "${faust}/lib/faust" \ 199 + --set FAUSTINC "${faust}/include/faust" \ 197 200 --prefix PATH : "$PATH" \ 198 201 --prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \ 199 202 --set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \
+5 -2
pkgs/applications/audio/faust/faust2lv2.nix
··· 1 - { faust 1 + { boost 2 + , faust 2 3 , lv2 4 + , qt4 5 + 3 6 }: 4 7 5 8 faust.wrapWithBuildEnv { 6 9 7 10 baseName = "faust2lv2"; 8 11 9 - propagatedBuildInputs = [ lv2 ]; 12 + propagatedBuildInputs = [ boost lv2 qt4 ]; 10 13 11 14 }
-14
pkgs/applications/audio/faust/faust2lv2gui.nix
··· 1 - { boost 2 - , faust1git 3 - , lv2 4 - , qt4 5 - 6 - }: 7 - 8 - faust1git.wrapWithBuildEnv { 9 - 10 - baseName = "faust2lv2"; 11 - 12 - propagatedBuildInputs = [ boost lv2 qt4 ]; 13 - 14 - }
+2 -4
pkgs/top-level/all-packages.nix
··· 16923 16923 16924 16924 fakenes = callPackage ../misc/emulators/fakenes { }; 16925 16925 16926 - faust = faust2; 16926 + faust = self.faust2; 16927 16927 16928 16928 faust1 = callPackage ../applications/audio/faust/faust1.nix { }; 16929 16929 16930 16930 faust1git = callPackage ../applications/audio/faust/faust1git.nix { }; 16931 16931 16932 16932 faust2 = callPackage ../applications/audio/faust/faust2.nix { 16933 - llvm = llvm_37; 16933 + llvm = llvm_38; 16934 16934 }; 16935 16935 16936 16936 faust2alqt = callPackage ../applications/audio/faust/faust2alqt.nix { }; ··· 16946 16946 faust2jaqt = callPackage ../applications/audio/faust/faust2jaqt.nix { }; 16947 16947 16948 16948 faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { }; 16949 - 16950 - faust2lv2gui = callPackage ../applications/audio/faust/faust2lv2gui.nix { }; 16951 16949 16952 16950 faustCompressors = callPackage ../applications/audio/faustCompressors { }; 16953 16951