Compare commits
1 Commits
pt-fix-att
...
static-lin
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8c1cf35080 |
@@ -125,14 +125,16 @@ if (YUZU_STATIC_BUILD)
|
||||
set(Boost_USE_STATIC_LIBS ON)
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
## find .a libs first (static, usually)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
||||
if (NOT PLATFORM_LINUX)
|
||||
## find .a libs first (static, usually)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
||||
|
||||
## some libraries define a Library::Name_static alternative ##
|
||||
set(YUZU_STATIC_SUFFIX _static)
|
||||
## some libraries define a Library::Name_static alternative ##
|
||||
set(YUZU_STATIC_SUFFIX _static)
|
||||
|
||||
## some libraries use CMAKE_IMPORT_LIBRARY_SUFFIX e.g. Harfbuzz ##
|
||||
set(CMAKE_IMPORT_LIBRARY_SUFFIX ".a")
|
||||
## some libraries use CMAKE_IMPORT_LIBRARY_SUFFIX e.g. Harfbuzz ##
|
||||
set(CMAKE_IMPORT_LIBRARY_SUFFIX ".a")
|
||||
endif()
|
||||
|
||||
if (MINGW)
|
||||
# simple hook to reject dynamic libs
|
||||
@@ -175,6 +177,15 @@ if (YUZU_STATIC_BUILD)
|
||||
set(SPIRV-Tools_FORCE_BUNDLED ON)
|
||||
set(SPIRV-Headers_FORCE_BUNDLED ON)
|
||||
set(zstd_FORCE_BUNDLED ON)
|
||||
elseif(PLATFORM_LINUX)
|
||||
# Most distros don't package static libs :(
|
||||
set(YUZU_USE_CPM ON)
|
||||
set(CPMUTIL_FORCE_BUNDLED ON)
|
||||
|
||||
set(YUZU_USE_BUNDLED_FFMPEG ON)
|
||||
set(YUZU_USE_BUNDLED_SDL2 ON)
|
||||
set(YUZU_USE_BUNDLED_OPENSSL ON)
|
||||
set(YUZU_USE_BUNDLED_SIRIT ON)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -802,6 +813,16 @@ if (YUZU_TESTS OR DYNARMIC_TESTS)
|
||||
find_package(Catch2)
|
||||
endif()
|
||||
|
||||
# Qt expects this target
|
||||
if (YUZU_STATIC_BUILD AND PLATFORM_LINUX)
|
||||
get_target_property(RDOC_TARGET RenderDoc::API ALIASED_TARGET)
|
||||
if (RDOC_TARGET)
|
||||
add_library(RenderDoc::RenderDoc ALIAS ${RDOC_TARGET})
|
||||
else()
|
||||
add_library(RenderDoc::RenderDoc ALIAS RenderDoc::API)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (ENABLE_QT)
|
||||
if (YUZU_USE_BUNDLED_QT)
|
||||
download_qt(6.8.3)
|
||||
|
||||
@@ -16,13 +16,15 @@ function(static_qt_link target)
|
||||
# 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)
|
||||
if (MINGW)
|
||||
extra_libs(tiff jbig bz2 lzma deflate jpeg tiff)
|
||||
|
||||
# libfreetype.a
|
||||
extra_libs(freetype bz2 Lerc brotlidec brotlicommon freetype)
|
||||
# libfreetype.a
|
||||
extra_libs(freetype bz2 Lerc brotlidec brotlicommon freetype)
|
||||
|
||||
# libharfbuzz.a
|
||||
extra_libs(harfbuzz graphite2)
|
||||
# libharfbuzz.a
|
||||
extra_libs(harfbuzz graphite2)
|
||||
endif()
|
||||
|
||||
# sijfjkfnjkdfjsbjsbsdfhvbdf
|
||||
if (ENABLE_OPENSSL)
|
||||
|
||||
@@ -174,7 +174,7 @@ else()
|
||||
add_compile_definitions(QT_STATICPLUGIN)
|
||||
|
||||
# macos doesn't even let you make static executables... wtf?
|
||||
if (NOT APPLE)
|
||||
if (NOT APPLE AND NOT PLATFORM_LINUX)
|
||||
add_compile_options(-static)
|
||||
if (YUZU_STATIC_BUILD)
|
||||
# yuzu-cmd requires us to explicitly link libpthread, libgcc, and libstdc++ as static
|
||||
|
||||
Reference in New Issue
Block a user