diff options
| author | crueter <crueter@eden-emu.dev> | 2025-11-16 04:59:30 +0100 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2025-11-16 04:59:30 +0100 |
| commit | b6908131969b3977e071d6737f2a102a0354224d (patch) | |
| tree | 496d5ac93482c355979e3f3b00512ab6d7a32ebb /CMakeModules | |
| parent | b9f54f49790d1c115a85b40806ceef7b5b5a21bc (diff) | |
[externals] FFmpeg -> v8.0-be99d2c0b2, OpenSSL -> v3.6.0-e3608d80df, SDL2 -> 2.32.10-38e0094637 (#3003)
FFmpeg:
- builds for FreeBSD, OpenBSD, Solaris
- minsizerel
- Proper system lib linking on MinGW
- removed shared stuff entirely outside of android because their build system SUCKS
OpenSSL:
- macOS universal
- Proper system lib linking on MinGW
SDL2:
- macOS universal
Both are now based on branches/commits rather than tags (since their respective release branches have a ton of new stuff lol)
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3003
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Diffstat (limited to 'CMakeModules')
| -rw-r--r-- | CMakeModules/StaticQtLibs.cmake | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/CMakeModules/StaticQtLibs.cmake b/CMakeModules/StaticQtLibs.cmake new file mode 100644 index 0000000000..be2f060a25 --- /dev/null +++ b/CMakeModules/StaticQtLibs.cmake @@ -0,0 +1,31 @@ +# SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project +# SPDX-License-Identifier: GPL-3.0-or-later + +## When linking to a static Qt build on MinGW, certain additional libraries +## must be statically linked to as well. + +function(static_qt_link target) + macro(extra_libs) + foreach(lib ${ARGN}) + find_library(${lib}_LIBRARY ${lib} REQUIRED) + target_link_libraries(${target} PRIVATE ${${lib}_LIBRARY}) + endforeach() + endmacro() + + # I am constantly impressed at how ridiculously stupid the linker is + # NB: yes, we have to put them here twice. I have no idea why + + # libtiff.a + extra_libs(tiff jbig bz2 lzma deflate jpeg tiff) + + # libfreetype.a + extra_libs(freetype bz2 Lerc brotlidec brotlicommon freetype) + + # libharfbuzz.a + extra_libs(harfbuzz graphite2) + + # sijfjkfnjkdfjsbjsbsdfhvbdf + if (ENABLE_OPENSSL) + target_link_libraries(${target} PRIVATE OpenSSL::SSL OpenSSL::Crypto) + endif() +endfunction() |
