# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
github.setup grame-cncm faust 96f22a55e86dac30cbf2e38ba115f5723ed6b096
# When updating faust-devel to a new version, please rebuild faustlive-devel
# simultaneously by increasing its revision or updating it to a new version.
maintainers {ryandesign @ryandesign} {gmail.com:aggraef @agraef}
homepage http://faust.grame.fr/
description functional programming language for realtime audio
long_description Faust is a functional programming language \
specifically designed for realtime audio applications \
and plugins. The latest version also offers \
additional backends for C, Java and LLVM bitcode.
system -W ${worksrcpath} "git submodule update --init"
if {${os.platform} eq "darwin" && ${os.major} > 14} {
# clang 3.4 isn't supported in the latest macOS versions any more, go with LLVM 7.0 instead.
set llvm_prefix ${prefix}/libexec/llvm-${llvm_version}
build.env PATH=${llvm_prefix}/bin:$env(PATH)
depends_build path:bin/cmake:cmake \
depends_lib port:clang-${llvm_version} \
port:llvm-${llvm_version} \
path:lib/libssl.dylib:openssl
patchfiles patch-compiler-Makefile.unix.diff
reinplace "s|/usr/local/|/usr/./local/|g" \
${worksrcpath}/tools/faust2appls/faust2faustvst
reinplace "s|/usr/local|${prefix}|g" \
${worksrcpath}/compiler/libcode.cpp \
${worksrcpath}/compiler/tlib/compatibility.cpp \
${worksrcpath}/tools/scbuilder/scbuilder \
{*}[glob ${worksrcpath}/tools/faust2appls/faust2*]
fs-traverse f ${worksrcpath} {
switch [file rootname [file tail ${f}]] {