An open source DAW for GNU/Linux, inspired by modular synths. http://noisicaa.odahoda.de/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

44 lines
1.3 KiB

#!/bin/bash
set -e
CLASSNAME=$1
SRC=$2
DESTDIR=$3
CLASSNAME_UPPER=$(echo ${CLASSNAME} | tr '[a-z]' '[A-Z]')
SRCDIR=$(realpath --relative-to=$(pwd) $(dirname ${SRC}))
BASE=$(basename ${SRC%.dsp})
LD_LIBRARY_PATH=${VIRTUAL_ENV}/lib ${VIRTUAL_ENV}/bin/faust \
--import-dir ${VIRTUAL_ENV}/share/faustlibraries/ \
--language cpp \
--class-name Processor${CLASSNAME}DSP \
--super-class-name noisicaa::FaustDSP \
-a noisicaa/audioproc/engine/processor_faust.cpp.tmpl \
-o ${DESTDIR}/${BASE}.cpp.tmp \
${SRC}
sed <${DESTDIR}/${BASE}.cpp.tmp >${DESTDIR}/${BASE}.cpp \
-e '1,9d'\
-e '$d' \
-e "s#<<srcDir>>#${SRCDIR}#g" \
-e "s#<<base>>#${BASE}#g" \
-e "s#<<className>>#${CLASSNAME}#g" \
-e "s#<<classNameUpper>>#${CLASSNAME_UPPER}#g"
sed <noisicaa/audioproc/engine/processor_faust.h.tmpl >${DESTDIR}/${BASE}.h \
-e "s#<<srcDir>>#${SRCDIR}#g" \
-e "s#<<base>>#${BASE}#g" \
-e "s#<<className>>#${CLASSNAME}#g" \
-e "s#<<classNameUpper>>#${CLASSNAME_UPPER}#g"
LD_LIBRARY_PATH=${VIRTUAL_ENV}/lib ${VIRTUAL_ENV}/bin/faust \
--import-dir ${VIRTUAL_ENV}/share/faustlibraries/ \
--language cpp \
-a gen-json.cpp \
-o ${DESTDIR}/${BASE}.json_dumper.cpp \
${SRC}
g++ -I${VIRTUAL_ENV}/include -o${DESTDIR}/${BASE}.json_dumper ${DESTDIR}/${BASE}.json_dumper.cpp
${DESTDIR}/${BASE}.json_dumper >${DESTDIR}/${BASE}.json