Skip to content

Commit

Permalink
Merge pull request #82 from nathanjhood/wip/biquads_processor
Browse files Browse the repository at this point in the history
Wip/biquads processor
  • Loading branch information
nathanjhood authored Mar 19, 2024
2 parents 4e93cd9 + f48370a commit 667f0e2
Show file tree
Hide file tree
Showing 9 changed files with 478 additions and 187 deletions.
88 changes: 70 additions & 18 deletions .github/workflows/macos-arm-latest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ concurrency:

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
CMAKE_CONFIGURATION_TYPES: Debug;Release;RelWithDebInfo;MinSizeRel
MULTI_CONFIG_TYPES: Debug;Release
BUILD_TYPE: Release
BUILD_DIR: Builds
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down Expand Up @@ -85,79 +85,131 @@ jobs:
- name: npm install
run: npm install

- name: Configure
- name: Configure (Debug)
working-directory: ${{github.workspace}}
shell: bash
# Configure CMake in a 'bin' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >-
cmake -S${{github.workspace}}
-B${{github.workspace}}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }}
cmake --fresh -S${PWD}
-B${PWD}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
-DSTONEYDSP_BIQUADS_BUILD_TESTS:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX=${{github.workspace}}/install
-DCMAKE_INSTALL_PREFIX=${PWD}/install
-DVCPKG_HOST_TRIPLET:STRING=arm64-osx
-DVCPKG_TARGET_TRIPLET:STRING=arm64-osx
-DVCPKG_MANIFEST_MODE:BOOL=TRUE
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${PWD}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-G "Ninja"
--compile-no-warning-as-error
--no-warn-unused-cli
- name: Build
- name: Build (Debug)
# Build your program with the given configuration
run: >-
cmake
--build ${{github.workspace}}/${{ env.BUILD_DIR }}
--config ${{env.BUILD_TYPE}}
--build ${PWD}/${{ env.BUILD_DIR }}
--config Debug
--parallel 4
--target all
- name: Test
- name: Test (Debug)
working-directory: ${{ github.workspace }}
shell: bash
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: >-
ctest
--test-dir ${{ github.workspace }}/${{ env.BUILD_DIR }}
--test-dir ${PWD}/${{ env.BUILD_DIR }}
-C Debug
-j4
--rerun-failed
--output-on-failure
--verbose
- name: Install
- name: Install (Debug)
shell: bash
working-directory: ${{ github.workspace }}
# Install StoneyDSP with the given configuration
run: cmake --install ${{ github.workspace }}/${{ env.BUILD_DIR }}
run: cmake --install ${PWD}/${{ env.BUILD_DIR }} --config Debug

- name: Configure (Release)
working-directory: ${{github.workspace}}
shell: bash
# Configure CMake in a 'bin' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >-
cmake --fresh -S${PWD}
-B${PWD}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
-DSTONEYDSP_BIQUADS_BUILD_TESTS:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX=${PWD}/install
-DVCPKG_HOST_TRIPLET:STRING=arm64-osx
-DVCPKG_TARGET_TRIPLET:STRING=arm64-osx
-DVCPKG_MANIFEST_MODE:BOOL=TRUE
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${PWD}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-G "Ninja"
--compile-no-warning-as-error
--no-warn-unused-cli
- name: Build (Release)
# Build your program with the given configuration
run: >-
cmake
--build ${PWD}/${{ env.BUILD_DIR }}
--config Release
--parallel 4
--target all
- name: Test (Release)
working-directory: ${{ github.workspace }}
shell: bash
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: >-
ctest
--test-dir ${PWD}/${{ env.BUILD_DIR }}
-C Release
-j4
--rerun-failed
--output-on-failure
--verbose
- name: Install (Release)
shell: bash
working-directory: ${{ github.workspace }}
# Install StoneyDSP with the given configuration
run: cmake --install ${PWD}/${{ env.BUILD_DIR }} --config Release

- name: Zip Source
shell: bash
working-directory: ${{ github.workspace }}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G ZIP
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G ZIP

- name: Tar Source
shell: bash
working-directory: ${{ github.workspace }}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G TGZ
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G TGZ

- name: Zip Build
shell: bash
working-directory: ${{github.workspace}}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G ZIP
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G ZIP

- name: Tar Build
shell: bash
working-directory: ${{github.workspace}}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G TGZ
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G TGZ

# - name: Upload Zip Source
# uses: actions/upload-artifact@v4
Expand Down
88 changes: 70 additions & 18 deletions .github/workflows/macos-latest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ concurrency:

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
CMAKE_CONFIGURATION_TYPES: Debug;Release;RelWithDebInfo;MinSizeRel
MULTI_CONFIG_TYPES: Debug;Release
BUILD_TYPE: Release
BUILD_DIR: Builds
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down Expand Up @@ -85,79 +85,131 @@ jobs:
- name: npm install
run: npm install

- name: Configure
- name: Configure (Debug)
working-directory: ${{github.workspace}}
shell: bash
# Configure CMake in a 'bin' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >-
cmake -S${{github.workspace}}
-B${{github.workspace}}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }}
cmake --fresh -S${PWD}
-B${PWD}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
-DSTONEYDSP_BIQUADS_BUILD_TESTS:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX=${{github.workspace}}/install
-DCMAKE_INSTALL_PREFIX=${PWD}/install
-DVCPKG_HOST_TRIPLET:STRING=x64-osx
-DVCPKG_TARGET_TRIPLET:STRING=x64-osx
-DVCPKG_MANIFEST_MODE:BOOL=FALSE
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${PWD}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-G "Ninja"
--compile-no-warning-as-error
--no-warn-unused-cli
- name: Build
- name: Build (Debug)
# Build your program with the given configuration
run: >-
cmake
--build ${{github.workspace}}/${{ env.BUILD_DIR }}
--config ${{env.BUILD_TYPE}}
--build ${PWD}/${{ env.BUILD_DIR }}
--config Debug
--parallel 4
--target all
- name: Test
- name: Test (Debug)
working-directory: ${{ github.workspace }}
shell: bash
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: >-
ctest
--test-dir ${{ github.workspace }}/${{ env.BUILD_DIR }}
--test-dir ${PWD}/${{ env.BUILD_DIR }}
-C Debug
-j4
--rerun-failed
--output-on-failure
--verbose
- name: Install
- name: Install (Debug)
shell: bash
working-directory: ${{ github.workspace }}
# Install StoneyDSP with the given configuration
run: cmake --install ${{ github.workspace }}/${{ env.BUILD_DIR }}
run: cmake --install ${PWD}/${{ env.BUILD_DIR }} --config Debug

- name: Configure (Release)
working-directory: ${{github.workspace}}
shell: bash
# Configure CMake in a 'bin' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: >-
cmake --fresh -S${PWD}
-B${PWD}/${{ env.BUILD_DIR }}
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
-DSTONEYDSP_BIQUADS_BUILD_TESTS:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX=${PWD}/install
-DVCPKG_HOST_TRIPLET:STRING=x64-osx
-DVCPKG_TARGET_TRIPLET:STRING=x64-osx
-DVCPKG_MANIFEST_MODE:BOOL=FALSE
-DCMAKE_TOOLCHAIN_FILE:FILEPATH="${PWD}/vcpkg/scripts/buildsystems/vcpkg.cmake"
-G "Ninja"
--compile-no-warning-as-error
--no-warn-unused-cli
- name: Build (Release)
# Build your program with the given configuration
run: >-
cmake
--build ${PWD}/${{ env.BUILD_DIR }}
--config Release
--parallel 4
--target all
- name: Test (Release)
working-directory: ${{ github.workspace }}
shell: bash
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: >-
ctest
--test-dir ${PWD}/${{ env.BUILD_DIR }}
-C Release
-j4
--rerun-failed
--output-on-failure
--verbose
- name: Install (Release)
shell: bash
working-directory: ${{ github.workspace }}
# Install StoneyDSP with the given configuration
run: cmake --install ${PWD}/${{ env.BUILD_DIR }} --config Release

- name: Zip Source
shell: bash
working-directory: ${{ github.workspace }}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G ZIP
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G ZIP

- name: Tar Source
shell: bash
working-directory: ${{ github.workspace }}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G TGZ
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackSourceConfig.cmake -B install -G TGZ

- name: Zip Build
shell: bash
working-directory: ${{github.workspace}}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G ZIP
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G ZIP

- name: Tar Build
shell: bash
working-directory: ${{github.workspace}}
# Pack the StoneyDSP source code with the given configuration
run: cpack --config ${{ github.workspace }}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G TGZ
run: cpack --config ${PWD}/${{ env.BUILD_DIR }}/CPackConfig.cmake -B install -G TGZ

# - name: Upload Zip Source
# uses: actions/upload-artifact@v4
Expand Down
Loading

0 comments on commit 667f0e2

Please sign in to comment.