Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
fa5173c
Implement MSGS-style Drum Note Cut (#1199)
derselbst Dec 29, 2023
bd04f3f
Make settings more pleasing, natural and subtler (#1287)
es20490446e Jan 2, 2024
eabae3b
Merge remote-tracking branch 'origin/release/2.3' into master
derselbst Jan 3, 2024
652df6f
Fix signedness warning
derselbst Mar 25, 2024
1b40e17
Fix ISO C warning
derselbst Mar 25, 2024
0901883
Stop the pipewire loop before destroying the stream
mawe42 Mar 26, 2024
0588096
Lock thread loop before destroying stream
mawe42 Mar 26, 2024
56932cd
Deprecate LASH support
derselbst Mar 26, 2024
a3b88cc
Make it a WARNING
derselbst Mar 26, 2024
895f07d
Fix XG drum bank selection logic
derselbst Mar 26, 2024
c5ed1af
Merge branch 'release/2.3' into master
derselbst Mar 26, 2024
72cc6b3
Remove LASH
derselbst Mar 26, 2024
619fc5c
Add FLUID_HOST_COMPILER cmake variable
derselbst Mar 26, 2024
46ff5fa
Merge branch 'release/2.3' into master
derselbst Mar 26, 2024
db86c36
Remove vcpkg CI badge from README
derselbst Mar 26, 2024
e104532
add a new windows workflow based on msys2 (#1316)
pedrolcl Apr 20, 2024
f78a9db
Minor fixups for MSYS2 CI (#1317)
derselbst Apr 20, 2024
abdd098
Keep GitHub Actions up to date with GitHub's Dependabot
cclauss Apr 21, 2024
60ee179
Merge pull request #1318 from cclauss/patch-1
derselbst Apr 22, 2024
7a4f8c7
Bump the github-actions group with 2 updates
dependabot[bot] Apr 22, 2024
cb8da1e
Merge pull request #1319 from FluidSynth/dependabot/github_actions/gi…
derselbst Apr 22, 2024
af8de7b
Sloppy port to PS2
7dog123 May 6, 2024
d2100a2
Since the PS2SDK doesn't have atomic libaries use global mutex from p…
7dog123 May 7, 2024
9c72492
Update fluidsynth_priv.h
7dog123 Jul 26, 2024
f41b53c
Merge branch 'ee-sans-glib' into ee-sans_glib
Wolf3s Aug 28, 2024
0e14d79
Remove messy PS2 code.
Wolf3s Aug 28, 2024
ffa4324
Merge pull request #1 from Wolf3s/ee-sans-glib
7dog123 Sep 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Keep GitHub Actions up to date with GitHub's Dependabot...
# https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem
version: 2
updates:
- package-ecosystem: github-actions
directory: /
groups:
github-actions:
patterns:
- "*" # Group all Actions updates into a single larger pull request
schedule:
interval: weekly
2 changes: 1 addition & 1 deletion .github/workflows/api_doc_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-22.04

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
persist-credentials: false

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,11 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -57,7 +57,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@v3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -71,4 +71,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
2 changes: 1 addition & 1 deletion .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ jobs:
# clang11 is covered by openSUSE Leap 15.3

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Add apt-get repositories
run: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sonarcloud.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
sonarcloud:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
# Disabling shallow clone is recommended for improving relevancy of reporting
fetch-depth: 0
Expand Down
72 changes: 72 additions & 0 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
name: Fluidsynth Windows

on:
pull_request:
push:
paths-ignore:
- '.azure/**'
- '.circleci/**'
- '.github/workflows/sonarcloud.yml'
- '.cirrus.yml'
- 'README.md'

env:
BUILD_TYPE: RelWithDebInfo
INSTALL_LOCATION: fluidsynth_install

jobs:
build:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include:
- { icon: '⬛', sys: mingw32 }
- { icon: '🟦', sys: mingw64 }
- { icon: '🟨', sys: ucrt64 }
- { icon: '🟧', sys: clang64 }
name: 🚧${{ matrix.icon }} ${{ matrix.sys }}
defaults:
run:
shell: msys2 {0}

steps:
- uses: actions/checkout@v4

- name: '${{ matrix.icon }} Setup MSYS2'
uses: msys2/setup-msys2@v2
with:
release: false
msystem: ${{matrix.sys}}
install: >-
make
libreadline
pacboy: >-
toolchain:p
cmake:p
ninja:p
glib2:p
libsndfile:p

- name: '${{ matrix.icon }} Configure CMake'
run: cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_LOCATION}}

- name: '${{ matrix.icon }} Build'
run: cmake --build build --config ${{env.BUILD_TYPE}}

- name: '${{ matrix.icon }} Test'
run: cmake --build build --target check

- name: '${{ matrix.icon }} Demo'
run: cmake --build build --target demo

- name: '${{ matrix.icon }} Install'
run: cmake --install build && ls -la $INSTALL_LOCATION

- name: '${{ matrix.icon }} Upload Artifacts'
uses: actions/upload-artifact@v4
with:
name: ${{env.INSTALL_LOCATION}}-${{matrix.sys}}
path: ${{env.INSTALL_LOCATION}}
retention-days: 14
overwrite: true
7 changes: 5 additions & 2 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,11 @@ summary of contributions.
changes and bug fixes and got the synthesizer to actually work. Most
importantly, he used it on stage to make music.

* S. Christian Collins did much testing of FluidSynth in regards to
EMU10K1 compatibility and provided many synthesis fixes in that regard.
* S. Christian Collins provided many tests and fixes on EMU10K1
compatibility. He also supplied reference chorus and reverb settings for
developing the default ones.

* Alberto Salvia Novella developed the default chorus and reverb settings.

* Stephane Letz from Grame wrote most of the MidiShare driver, all of
the PortAudio driver, ported iiwusynth to MacOS X, and sent in many
Expand Down
35 changes: 14 additions & 21 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@ option ( enable-portaudio "compile PortAudio support" off )
option ( enable-profiling "profile the dsp code" off )
option ( enable-trap-on-fpe "enable SIGFPE trap on Floating Point Exceptions" off )
option ( enable-ubsan "compile and link against UBSan (for debugging fluidsynth internals)" off )

# Options enabled by default
option ( enable-aufile "compile support for sound file output" on )
option ( BUILD_SHARED_LIBS "Build a shared object or DLL" on )
Expand All @@ -85,8 +84,11 @@ option ( enable-ladspa "enable LADSPA effect units" off )
option ( enable-libinstpatch "use libinstpatch (if available) to load DLS and GIG files" on )
option ( enable-libsndfile "compile libsndfile support (if it is available)" on )
option ( enable-midishare "compile MidiShare support (if it is available)" on )


option ( enable-opensles "compile OpenSLES support (if it is available)" off )
option ( enable-oboe "compile Oboe support (requires OpenSLES and/or AAudio)" off )

option ( enable-network "enable network support (requires BSD sockets)" on )
option ( enable-oss "compile OSS support (if it is available)" on )
option ( enable-dsound "compile DirectSound support (if it is available)" on )
Expand All @@ -102,7 +104,6 @@ option ( enable-openmp "enable OpenMP support (parallelization of soundfont deco

# Platform specific options
if ( CMAKE_SYSTEM MATCHES "Linux|FreeBSD|DragonFly" )
option ( enable-lash "compile LASH support (if it is available)" on )
option ( enable-alsa "compile ALSA support (if it is available)" on )
endif ( CMAKE_SYSTEM MATCHES "Linux|FreeBSD|DragonFly" )

Expand All @@ -122,10 +123,18 @@ if ( CMAKE_SYSTEM MATCHES "OS2" )
endif ( CMAKE_SYSTEM MATCHES "OS2" )

# the default C standard to use for all targets
set(CMAKE_C_STANDARD 90)
if ( PS2 )
set(CMAKE_C_STANDARD 99)
else ()
set(CMAKE_C_STANDARD 90)
endif ()

# the default C++ standard to use for all targets
set(CMAKE_CXX_STANDARD 98)
if ( PS2 )
set(CMAKE_CXX_STANDARD 11)
else ()
set(CMAKE_CXX_STANDARD 98)
endif ()

# whether to use gnu extensions
set(CMAKE_C_EXTENSIONS ON)
Expand Down Expand Up @@ -213,13 +222,7 @@ if ( CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_C_C
endif ( HAVE_INCOMPATIBLE_POINTER_TYPES )

set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -W -Wpointer-arith -Wcast-qual -Wno-unused-parameter" )
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS ON)
set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -lpthread" )

# prepend to build type specific flags, to allow users to override
set ( CMAKE_C_FLAGS_DEBUG "-g ${CMAKE_C_FLAGS_DEBUG}" )
Expand Down Expand Up @@ -595,16 +598,6 @@ if ( enable-pipewire )
endif()
endif ( enable-pipewire )

unset ( LASH_SUPPORT CACHE )
if ( enable-lash )
find_package ( LASH ${LASH_MINIMUM_VERSION} )
if ( LASH_FOUND )
set ( LASH_SUPPORT 1 )
add_definitions ( -DHAVE_LASH )
list( APPEND PC_REQUIRES_PRIV "lash-1.0")
endif ( LASH_FOUND )
endif ( enable-lash )

unset ( SYSTEMD_SUPPORT CACHE )
if ( enable-systemd )
find_package ( Systemd )
Expand Down
5 changes: 0 additions & 5 deletions FluidSynthConfig.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ set(FLUIDSYNTH_SUPPORT_DBUS @DBUS_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_GETOPT @HAVE_GETOPT_H@)
set(FLUIDSYNTH_SUPPORT_IPV6 @IPV6_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_LADSPA @LADSPA_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_LASH @LASH_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_NETWORK @NETWORK_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_READLINE @READLINE_SUPPORT@)
set(FLUIDSYNTH_SUPPORT_SYSTEMD @SYSTEMD_SUPPORT@)
Expand Down Expand Up @@ -92,10 +91,6 @@ if(NOT FLUIDSYNTH_IS_SHARED)
message(WARN "LADSPA support was built in but gmodule could not be found.")
endif()

if(FLUIDSYNTH_SUPPORT_LASH AND NOT TARGET LASH::LASH)
find_dependency(LASH @LASH_MINIMUM_VERSION@)
endif()

if(FLUIDSYNTH_SUPPORT_LIBINSTPATCH AND NOT TARGET InstPatch::libinstpatch)
find_dependency(InstPatch @LIBINSTPATCH_MINIMUM_VERSION@)
endif()
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ Original content of this file follows.
| <img src="https://upload.wikimedia.org/wikipedia/commons/3/35/Obs-logo.png" height=30 alt=""> **Linux** (Packaging) | [![build result](https://build.opensuse.org/projects/home:derselbst:anmp/packages/fluidsynth/badge.svg?type=default)](https://build.opensuse.org/package/show/home:derselbst:anmp/fluidsynth)
| <img src="https://raw.githubusercontent.com/docker-library/docs/781049d54b1bd9b26d7e8ad384a92f7e0dcb0894/alpine/logo.png" height="25" alt=""> **Alpine** (musl) | [![Fluidsynth Alpine](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status%2FFluidSynth.fluidsynth.alpine?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=12&branchName=alpine) |
| <img src="https://www.freebsd.org/gifs/daemon_hammer.jpg" height="30" alt=""> **FreeBSD** | [![Build Status](https://api.cirrus-ci.com/github/FluidSynth/fluidsynth.svg?branch=master)](https://cirrus-ci.com/github/FluidSynth/fluidsynth) |
| <img src="https://www.microsoft.com/windows/favicon.ico" height="25" alt=""> **Windows** (CI) | [![Build Status](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status/FluidSynth.fluidsynth.Win?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=3&branchName=master) |
| <img src="https://www.microsoft.com/windows/favicon.ico" height="25" alt=""> **Windows** (vcpkg) | [![Build Status](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status/FluidSynth.fluidsynth.vcpkg?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=6&branchName=master) |
| <img src="https://www.microsoft.com/windows/favicon.ico" height="25" alt=""> **Windows** | [![Build Status](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status/FluidSynth.fluidsynth.Win?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=3&branchName=master) |
| <img src="https://www.apple.com/favicon.ico" height="30" alt=""> **MacOSX** | [![Build Status](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status/FluidSynth.fluidsynth.macOS?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=5&branchName=master) |
| <img src="https://www.android.com/favicon.ico" height="30" alt=""> **Android** | [![Build Status](https://dev.azure.com/tommbrt/tommbrt/_apis/build/status/FluidSynth.fluidsynth.Android?branchName=master)](https://dev.azure.com/tommbrt/tommbrt/_build/latest?definitionId=4&branchName=master) |

Expand Down
84 changes: 0 additions & 84 deletions cmake_admin/FindLASH.cmake

This file was deleted.

6 changes: 0 additions & 6 deletions cmake_admin/report.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -153,12 +153,6 @@ else ( LADSPA_SUPPORT )
set ( MISC_REPORT "${MISC_REPORT} LADSPA support: no\n" )
endif ( LADSPA_SUPPORT )

if ( LASH_SUPPORT )
set ( MISC_REPORT "${MISC_REPORT} LASH support: yes (NOTE: GPL library)\n" )
else ( LASH_SUPPORT )
set ( MISC_REPORT "${MISC_REPORT} LASH support: no\n" )
endif ( LASH_SUPPORT )

if ( NETWORK_SUPPORT )
set ( MISC_REPORT "${MISC_REPORT} NETWORK Support: yes\n" )
else ( NETWORK_SUPPORT )
Expand Down
3 changes: 1 addition & 2 deletions contrib/fluidsynth.spec
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,7 @@ This package contains the shared library for Fluidsynth.

%build
%cmake \
-DFLUID_DAEMON_ENV_FILE=%{_fillupdir}/sysconfig.%{name} \
-Denable-lash=0
-DFLUID_DAEMON_ENV_FILE=%{_fillupdir}/sysconfig.%{name}
%cmake_build

%check
Expand Down
Loading