silence warnings from dependencies

This commit is contained in:
ConfiG 2023-08-02 17:34:36 +03:00
parent 4f6265ae32
commit 2b1becc233
No known key found for this signature in database
GPG key ID: 44DA1983F524C11B
3 changed files with 49 additions and 11 deletions

View file

@ -44,6 +44,7 @@ message(STATUS "Version: ${GEODE_VERSION}, tag: ${GEODE_VERSION_TAG} (type: ${GE
project(geode-sdk VERSION ${GEODE_VERSION} LANGUAGES CXX C)
# Change debug format to embedded
if (MSVC)
string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
@ -100,8 +101,17 @@ endif()
if (PROJECT_IS_TOP_LEVEL AND NOT GEODE_BUILDING_DOCS)
set(TULIP_LINK_SOURCE ON)
endif()
set(CMAKE_WARN_DEPRECATED OFF CACHE BOOL "" FORCE)
CPMAddPackage("gh:geode-sdk/TulipHook#4369d05")
set(CMAKE_WARN_DEPRECATED ON CACHE BOOL "" FORCE)
# Silence warnings from dependencies
include(CheckCXXCompilerFlag)
check_cxx_compiler_flag(-Wno-everything SUPPORTS_W_NO_EVERYTHING)
if (SUPPORTS_W_NO_EVERYTHING)
target_compile_options(capstone-static PRIVATE -Wno-everything)
target_compile_options(keystone PRIVATE -Wno-everything)
endif()
target_sources(${PROJECT_NAME} INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/entry.cpp)

View file

@ -167,7 +167,22 @@ if (NOT GEODE_BUILDING_DOCS)
# Zip support (needed for in-memory streams, which zlib's minizip doesn't support)
set(MZ_LZMA Off CACHE INTERNAL "Enables LZMA & XZ compression")
set(MZ_ZSTD Off CACHE INTERNAL "")
CPMAddPackage("gh:zlib-ng/minizip-ng#cee6d8c")
set(CMAKE_WARN_DEPRECATED OFF CACHE BOOL "" FORCE)
CPMAddPackage(
GITHUB_REPOSITORY zlib-ng/minizip-ng
GIT_TAG cee6d8c
OPTIONS "CMAKE_POLICY_DEFAULT_CMP0048 OLD"
)
set(CMAKE_WARN_DEPRECATED ON CACHE BOOL "" FORCE)
# Silence warnings from dependencies
include(CheckCXXCompilerFlag)
check_cxx_compiler_flag(-Wno-everything SUPPORTS_W_NO_EVERYTHING)
if (SUPPORTS_W_NO_EVERYTHING)
target_compile_options(md4c PRIVATE -Wno-everything)
target_compile_options(zlib PRIVATE -Wno-everything)
target_compile_options(zlibstatic PRIVATE -Wno-everything)
endif()
# Regex support
CPMAddPackage("gh:google/re2#954656f")
@ -179,6 +194,19 @@ endif()
target_link_libraries(${PROJECT_NAME} z TulipHook geode-sdk mat-json)
if (MSVC)
# Disable outputting .exp file
include(CheckLinkerFlag)
check_linker_flag(CXX /NOEXP SUPPORTS_NOEXP)
if (SUPPORTS_NOEXP)
target_link_options(${PROJECT_NAME} PRIVATE /NOEXP)
endif()
# Disable incremental link in CI builds
if (DEFINED ENV{GEODE_CI})
target_link_options(${PROJECT_NAME} PRIVATE /INCREMENTAL:NO)
endif()
endif()
# Use precompiled headers for faster builds
if (NOT GEODE_DISABLE_PRECOMPILED_HEADERS)
@ -217,14 +245,6 @@ elseif (WIN32)
if (MSVC)
# disable warnings about CCNode::setID
target_link_options(${PROJECT_NAME} PUBLIC /ignore:4217)
# disable outputting .exp file
target_link_options(${PROJECT_NAME} PRIVATE /NOEXP)
# disable incremental link in CI builds
if (DEFINED ENV{GEODE_CI})
target_link_options(${PROJECT_NAME} PRIVATE /INCREMENTAL:NO)
endif()
endif()
endif()

View file

@ -43,9 +43,17 @@ set_target_properties(Updater PROPERTIES
target_link_libraries(Updater PUBLIC ghc_filesystem)
if (MSVC)
target_link_options(fake-geode-loader PRIVATE /NOEXP /DEBUG:NONE)
target_link_options(ProxyLoader PRIVATE /NOIMPLIB /NOEXP /DEBUG:NONE)
include(CheckLinkerFlag)
check_linker_flag(CXX /NOEXP SUPPORTS_NOEXP)
if (SUPPORTS_NOEXP)
target_link_options(fake-geode-loader PRIVATE /NOEXP)
target_link_options(ProxyLoader PRIVATE /NOEXP)
endif()
target_link_options(fake-geode-loader PRIVATE /DEBUG:NONE)
target_link_options(ProxyLoader PRIVATE /NOIMPLIB /DEBUG:NONE)
target_link_options(Updater PRIVATE /DEBUG:NONE)
if (DEFINED ENV{GEODE_CI})
target_link_options(fake-geode-loader PRIVATE /INCREMENTAL:NO)
target_link_options(ProxyLoader PRIVATE /INCREMENTAL:NO)