mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Cherry-pick internal zlib MR from SRB2/next
cmake: build zlib manually in internal build See merge request STJr/SRB2!1856 (cherry picked from commit 3597957af13878854c02305a0aec5ca744209ef2) # Conflicts: # thirdparty/CMakeLists.txt
This commit is contained in:
parent
32f747fd5a
commit
0d49cc1768
1 changed files with 46 additions and 24 deletions
70
thirdparty/CMakeLists.txt
vendored
70
thirdparty/CMakeLists.txt
vendored
|
|
@ -57,30 +57,52 @@ if(NOT "${SRB2_CONFIG_SYSTEM_LIBRARIES}")
|
|||
VERSION 1.2.13
|
||||
URL "https://github.com/madler/zlib/archive/refs/tags/v1.2.13.zip"
|
||||
EXCLUDE_FROM_ALL
|
||||
OPTIONS
|
||||
# The assembly optimizations are unmaintained and slated to be removed
|
||||
"ASM686 Off"
|
||||
"AMD64 Off"
|
||||
"SKIP_INSTALL_ALL ON"
|
||||
DOWNLOAD_ONLY YES
|
||||
)
|
||||
file(MAKE_DIRECTORY "${zlib_BINARY_DIR}/include")
|
||||
file(COPY "${zlib_SOURCE_DIR}/zlib.h" DESTINATION "${zlib_BINARY_DIR}/include")
|
||||
file(COPY "${zlib_BINARY_DIR}/zconf.h" DESTINATION "${zlib_BINARY_DIR}/include")
|
||||
# honestly this should probably be built like png is
|
||||
set_target_properties(zlib PROPERTIES EXCLUDE_FROM_ALL ON)
|
||||
set_target_properties(minigzip PROPERTIES EXCLUDE_FROM_ALL ON)
|
||||
set_target_properties(example PROPERTIES EXCLUDE_FROM_ALL ON)
|
||||
# zlib cmake also adds these 64 targets separately
|
||||
if(HAVE_OFF64_T)
|
||||
set_target_properties(minigzip64 PROPERTIES EXCLUDE_FROM_ALL ON)
|
||||
set_target_properties(example64 PROPERTIES EXCLUDE_FROM_ALL ON)
|
||||
endif()
|
||||
target_include_directories(zlib INTERFACE "${zlib_BINARY_DIR}/include")
|
||||
target_include_directories(zlibstatic INTERFACE "${zlib_BINARY_DIR}/include")
|
||||
if(SRB2_CONFIG_SHARED_INTERNAL_LIBRARIES)
|
||||
add_library(ZLIB::ZLIB ALIAS zlib)
|
||||
else()
|
||||
add_library(ZLIB::ZLIB ALIAS zlibstatic)
|
||||
if(ZLIB_ADDED)
|
||||
set(ZLIB_SRCS
|
||||
crc32.h
|
||||
deflate.h
|
||||
gzguts.h
|
||||
inffast.h
|
||||
inffixed.h
|
||||
inflate.h
|
||||
inftrees.h
|
||||
trees.h
|
||||
zutil.h
|
||||
|
||||
adler32.c
|
||||
compress.c
|
||||
crc32.c
|
||||
deflate.c
|
||||
gzclose.c
|
||||
gzlib.c
|
||||
gzread.c
|
||||
gzwrite.c
|
||||
inflate.c
|
||||
infback.c
|
||||
inftrees.c
|
||||
inffast.c
|
||||
trees.c
|
||||
uncompr.c
|
||||
zutil.c
|
||||
)
|
||||
list(TRANSFORM ZLIB_SRCS PREPEND "${ZLIB_SOURCE_DIR}/")
|
||||
|
||||
configure_file("${ZLIB_SOURCE_DIR}/zlib.pc.cmakein" "${ZLIB_BINARY_DIR}/zlib.pc" @ONLY)
|
||||
configure_file("${ZLIB_SOURCE_DIR}/zconf.h.cmakein" "${ZLIB_BINARY_DIR}/include/zconf.h" @ONLY)
|
||||
|
||||
add_library(ZLIB ${SRB2_INTERNAL_LIBRARY_TYPE} ${ZLIB_SRCS})
|
||||
set_target_properties(ZLIB PROPERTIES
|
||||
VERSION 1.2.13
|
||||
OUTPUT_NAME "z"
|
||||
)
|
||||
target_include_directories(ZLIB PRIVATE "${ZLIB_SOURCE_DIR}")
|
||||
target_include_directories(ZLIB PUBLIC "${ZLIB_BINARY_DIR}/include")
|
||||
if(MSVC)
|
||||
target_compile_definitions(ZLIB PRIVATE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
|
||||
endif()
|
||||
add_library(ZLIB::ZLIB ALIAS ZLIB)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
@ -474,7 +496,7 @@ if(NOT "${SRB2_CONFIG_SYSTEM_LIBRARIES}")
|
|||
target_compile_options(openmpt PRIVATE "-g0")
|
||||
endif()
|
||||
if("${CMAKE_SYSTEM_NAME}" STREQUAL Windows)
|
||||
target_link_libraries(openmpt PRIVATE rpcrt4)
|
||||
target_link_libraries(openmpt PRIVATE Rpcrt4)
|
||||
endif()
|
||||
target_compile_features(openmpt PRIVATE cxx_std_11)
|
||||
target_compile_definitions(openmpt PRIVATE -DLIBOPENMPT_BUILD)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue