Skip to content

Commit

Permalink
Remove libsoundio from GitHub actions; update Windows build docs
Browse files Browse the repository at this point in the history
  • Loading branch information
ideoforms committed Oct 28, 2024
1 parent 5c792e4 commit e33a73e
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 14 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
run: |
sudo rm -rf /home/linuxbrew
sudo apt-get update -y
sudo apt-get install libasound2-dev libsoundio-dev libsndfile1-dev fftw3-dev -y
sudo apt-get install libasound2-dev libsndfile1-dev fftw3-dev -y
sudo apt-get install python3 python3-setuptools python3-pip
# Requires setuptools >= 62.1 for `python setup.py test`, as earlier versions
# used a different build path to the .so file as located in tests/__init__.py
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,8 @@ jobs:
yum install -y fftw-devel wget python3 sudo gcc &&
wget https://github.com/jackaudio/jack2/archive/v1.9.22.tar.gz && tar xzf v1.9.22.tar.gz && cd jack2-1.9.22 && python3 ./waf configure && /usr/bin/sudo python3 ./waf install && cd .. &&
wget https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.9.tar.bz2 && tar xjf alsa-lib-1.2.9.tar.bz2 && cd alsa-lib-1.2.9 && ./configure && make && /usr/bin/sudo make install && cd .. &&
git clone https://github.com/libsndfile/libsndfile.git && cd libsndfile && cmake -DBUILD_SHARED_LIBS=1 . && make && make install && cd .. &&
git clone https://github.com/andrewrk/libsoundio.git && cd libsoundio && cmake . && make && make install
CIBW_BEFORE_ALL_MACOS: brew install cmake python libsndfile libsoundio
git clone https://github.com/libsndfile/libsndfile.git && cd libsndfile && cmake -DBUILD_SHARED_LIBS=1 . && make && make install && cd ..
CIBW_BEFORE_ALL_MACOS: brew install cmake python libsndfile

- uses: actions/upload-artifact@v3
with:
Expand Down
16 changes: 6 additions & 10 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,13 @@ pip3 install .

### Windows

This is work in progress.
The build process for SignalFlow on 64-bit Windows has been verified with Visual Studio 2022 and CMake.

Currently, dependencies need to be downloaded and built by hand. These can be placed anywhere.

- https://github.com/libsndfile/libsndfile
- Use CMake GUI to build libsndfile with Visual Studio 2019 with binaries in a subfolder of that repo named `build`. (Configure, Generate, Open project, Batch build all configurations)
- Download Windows binaries of FFTW from http://fftw.org/install/windows.html.

To build SignalFlow, use the CMake GUI. Press configure and you will see three empty fields to fill in with the path to the two build folders and the FFTW binaries folder (see above). Set these parameters then press Configure, then Generate then Open. Then build in Visual Studio 2019.

As of 2021-03-03, only the signalflow project has been ported to build correctly on Windows. Only tested in x64 and for Debug builds. Tested using Visual Studio 2019.
- Download Windows binaries of [FFTW](http://fftw.org/install/windows.html) and [libsndfile](https://github.com/libsndfile/libsndfile/releases/), and unzip them in the same filesystem location as the `signalflow` source directory
- Install Python 3, and dependencies: `python -m pip install build delvewheel`
- Build the binary wheel: `python -m build --wheel`
- Copy the libsndfile and fftw binaries into `dlls`
- Bundle the DLL dependencies with the wheel: `python -m delvewheel repair --add-path=dlls *.whl`

</details>

Expand Down

0 comments on commit e33a73e

Please sign in to comment.