diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index b817025a..b3e2a425 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -218,7 +218,9 @@ jobs:
sudo apt-get update
- name: Install obs plugin dependencies
run: |
- sudo apt-get install libdw-dev libunwind-dev libobs-dev libgl1-mesa-dev
+ sudo apt-get install \
+ libdw-dev libunwind-dev libobs-dev libgl1-mesa-dev \
+ libsamplerate0-dev
- name: Configure obs plugin
run: |
mkdir obs/build
diff --git a/client/transports/LGMP/CMakeLists.txt b/client/transports/LGMP/CMakeLists.txt
index bb773ce6..764f483e 100644
--- a/client/transports/LGMP/CMakeLists.txt
+++ b/client/transports/LGMP/CMakeLists.txt
@@ -17,6 +17,16 @@ endif()
if(ENABLE_AUDIO)
list(APPEND TRANSPORT_LGMP_SOURCES audio.c)
+
+ if(MSVC)
+ set_source_files_properties(audio.c PROPERTIES
+ COMPILE_OPTIONS "/fp:precise"
+ )
+ elseif(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
+ set_source_files_properties(audio.c PROPERTIES
+ COMPILE_OPTIONS "-fno-fast-math"
+ )
+ endif()
endif()
add_library(transport_LGMP STATIC ${TRANSPORT_LGMP_SOURCES})
diff --git a/client/transports/Network/CMakeLists.txt b/client/transports/Network/CMakeLists.txt
index 0ff60de4..71c637d0 100644
--- a/client/transports/Network/CMakeLists.txt
+++ b/client/transports/Network/CMakeLists.txt
@@ -20,6 +20,16 @@ set(TRANSPORT_NETWORK_SOURCES
video/pyrowave.c
)
+if(MSVC)
+ set_source_files_properties(audio.c PROPERTIES
+ COMPILE_OPTIONS "/fp:precise"
+ )
+elseif(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
+ set_source_files_properties(audio.c PROPERTIES
+ COMPILE_OPTIONS "-fno-fast-math"
+ )
+endif()
+
if(WIN32)
list(APPEND TRANSPORT_NETWORK_SOURCES
platform/windows/auth_crypto.c
diff --git a/cmake/MsQuic.Static.targets b/cmake/MsQuic.Static.targets
index d214cb36..fee62022 100644
--- a/cmake/MsQuic.Static.targets
+++ b/cmake/MsQuic.Static.targets
@@ -6,7 +6,7 @@
Win32
x64
$(LGMsQuicBuildDir)obj\$(LGBaseConfiguration)\
- $(LGMsQuicLibraryDir)msquic_static.lib
+ $(LGMsQuicLibraryDir)msquic.lib
$(LGMsQuicLibraryDir)core.lib
$(LGMsQuicLibraryDir)msquic_platform.lib
diff --git a/common/src/platform/windows/CMakeLists.txt b/common/src/platform/windows/CMakeLists.txt
index 15ff15c3..c3f00b56 100644
--- a/common/src/platform/windows/CMakeLists.txt
+++ b/common/src/platform/windows/CMakeLists.txt
@@ -11,6 +11,10 @@ add_compile_definitions(WINVER=0x0601 _WIN32_WINNT=0x0601)
if(MINGW)
add_compile_definitions(__USE_MINGW_ANSI_STDIO=0)
+ set_property(SOURCE cpuinfo.c APPEND PROPERTY
+ COMPILE_OPTIONS -mxsave
+ )
+
# Build our own ntdll.dll import library
# This tricks MinGW into not linking stuff like memcpy from ntdll.dll instead of mscvrt.dll
if(NOT CMAKE_DLLTOOL)