mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-11-12 14:57:20 +00:00
[build] ci: fix platform build regressions
Correct the clean IDD MsQuic archive lookup and enable XSAVE for MinGW CPU probing. Compile audio transports with precise floating-point semantics so finite-value validation remains valid under Clang. Install the OBS samplerate development dependency.
This commit is contained in:
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
@@ -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
|
||||
|
||||
@@ -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})
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<LGMsQuicArchitecture Condition="'$(Platform)'=='Win32'">Win32</LGMsQuicArchitecture>
|
||||
<LGMsQuicArchitecture Condition="'$(Platform)'=='x64'">x64</LGMsQuicArchitecture>
|
||||
<LGMsQuicLibraryDir>$(LGMsQuicBuildDir)obj\$(LGBaseConfiguration)\</LGMsQuicLibraryDir>
|
||||
<LGMsQuicStaticLibrary>$(LGMsQuicLibraryDir)msquic_static.lib</LGMsQuicStaticLibrary>
|
||||
<LGMsQuicStaticLibrary>$(LGMsQuicLibraryDir)msquic.lib</LGMsQuicStaticLibrary>
|
||||
<LGMsQuicCoreLibrary>$(LGMsQuicLibraryDir)core.lib</LGMsQuicCoreLibrary>
|
||||
<LGMsQuicPlatformLibrary>$(LGMsQuicLibraryDir)msquic_platform.lib</LGMsQuicPlatformLibrary>
|
||||
</PropertyGroup>
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user