Name: faust Version: 2.70.3 Release: 1mamba Summary: Functional programming language for signal processing and sound synthesis Group: Applications/Development Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: https://faust.grame.fr/ Source: https://github.com/grame-cncm/faust/releases/download/%{version}/faust-%{version}.tar.gz Patch0: faust-2.30.5-llvm-11.1.0.patch Patch1: faust-2.30.5-missing-include-limits.patch Patch2: faust-2.30.5-sound2file-missing-include-limits.patch Patch3: faust-2.40.0-llvm-14.0.3.patch Patch4: faust-2.54.9-sound2faust_makefile.patch License: GPL ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: libgcc BuildRequires: libllvm-devel BuildRequires: libmicrohttpd-devel BuildRequires: libsndfile-devel BuildRequires: libstdc++6-devel ## AUTOBUILDREQ-END BuildRequires: libllvm-devel >= 14.0.3 Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} %description Faust (Functional Audio Stream) is a functional programming language specifically designed for real-time signal processing and synthesis. A distinctive characteristic of Faust is to be fully compiled. The Faust compiler translates DSP specifications into very efficient code for various languages (C++, C, JAVA, LLVM IR, WebAssembly etc.) working at sample level. It targets high-performance signal processing applications, libraries and audio plug-ins for a variety of audio platforms and standards. A same Faust specification can be used to easily generate various kinds of native standalone applications, iOS and Android apps, as well as Csound, LADSPA, Max/MSP, PD, Q, SuperCollider, VST, AU plugins, etc. (see the README in the /architecture folder for an exhaustive list). While there are Faust contributors everywhere across the globe, Faust is mainly being developed at Grame, Centre National de Creation Musicale (https://www.grame.fr), its birthplace. %package -n lib%{name} Group: System/Libraries Summary: Shared libraries for %{name} %description -n lib%{name} This package contains shared libraries for %{name}. %package -n lib%{name}-devel Group: Development/Libraries Summary: Development files for %{name} Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} %description -n lib%{name}-devel This package contains libraries and header files for developing applications that use %{name}. %debug_package %prep %setup -q #-D -T #:<< _EOF %patch 2 -p1 #%patch3 -p1 -b .llvm-14.0.3 #%patch 4 -p1 -b .sound2faust_makefile %build #:<< _EOF export CC=clang export CXX=clang++ cmake \ -C build/backends/all.cmake \ -C build/targets/all.cmake \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DLIBSDIR=%{_lib} \ -DCMAKE_BUILD_TYPE='None' \ -DINCLUDE_DYNAMIC=ON \ -DINCLUDE_STATIC=ON \ -DINCLUDE_ITP=ON \ -B "faust-build" \ -S build \ -W no-dev \ %ifarch arm -DFAUST_LIBS="-latomic" %endif %ifarch x86_64 aarch64 # Workaround for build error due to configuring with LIBSDIR=lib64 ln -s lib64 build/lib %endif %make -C faust-build %make -C tools/sound2faust %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %makeinstall PREFIX=%{_prefix} -C faust-build %makeinstall PREFIX=%{_prefix} -C tools/sound2faust rm -f %{buildroot}%{_libdir}/ios-libsndfile.a rm -f %{buildroot}%{_datadir}/faust/max-msp/sndfile/*/libsndfile.a # remove unusable scripts rm -v %{buildroot}%{_bindir}/faust2au # remove precompiled shared libraries for android: # https://github.com/grame-cncm/faust/issues/370 rm -rvf %{buildroot}%{_datadir}/faust/android/app/{lib,oboe} %{buildroot}%{_datadir}/faust/smartKeyboard/android/app/oboe %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %post -n lib%{name} -p /sbin/ldconfig %postun -n lib%{name} -p /sbin/ldconfig %files %defattr(-,root,root) %{_bindir}/faust* %{_bindir}/encoderunitypackage %{_bindir}/filename2ident %{_bindir}/sound2faust %{_bindir}/sound2file %{_bindir}/sound2reader %{_bindir}/usage.sh %dir %{_datadir}/faust %{_datadir}/faust/* %{_mandir}/man1/faust.1* %files -n lib%{name} %defattr(-,root,root) %{_libdir}/libHTTPDFaust.so.* %{_libdir}/libOSCFaust.so.* %{_libdir}/libfaustmachine.so.* %{_libdir}/libfaust.so.* %doc COPYING.txt %files -n lib%{name}-devel %defattr(-,root,root) %dir %{_includedir}/faust %{_includedir}/faust/* %{_libdir}/libHTTPDFaust.a %{_libdir}/libHTTPDFaust.so %{_libdir}/libOSCFaust.a %{_libdir}/libOSCFaust.so %{_libdir}/libfaust.a %{_libdir}/libfaust.so %{_libdir}/libfaustmachine.a %{_libdir}/libfaustmachine.so %{_libdir}/libfaustwithllvm.a %doc README.md %changelog * Sun Jan 07 2024 Automatic Build System 2.70.3-1mamba - automatic version update by autodist * Tue Nov 14 2023 Automatic Build System 2.69.3-1mamba - automatic version update by autodist * Tue Sep 19 2023 Automatic Build System 2.68.1-1mamba - automatic version update by autodist * Sat Sep 02 2023 Automatic Build System 2.60.3-1mamba - automatic version update by autodist * Sun Jan 01 2023 Automatic Build System 2.54.9-1mamba - automatic version update by autodist * Fri Oct 07 2022 Automatic Build System 2.50.6-1mamba - automatic version update by autodist * Wed Jul 06 2022 Automatic Build System 2.41.1-1mamba - automatic version update by autodist * Mon May 02 2022 Silvan Calarco 2.40.0-2mamba - rebuilt with llvm 14.0.3 * Wed Apr 13 2022 Automatic Build System 2.40.0-1mamba - automatic version update by autodist * Fri Nov 05 2021 Automatic Build System 2.37.3-1mamba - automatic version update by autodist * Sun Aug 15 2021 Automatic Build System 2.33.1-1mamba - automatic version update by autodist * Wed May 12 2021 Silvan Calarco 2.30.5-1mamba - package created using the webbuild interface