cmake: add possibility to build zlib from submodule

This commit is contained in:
scribam 2018-06-14 21:39:48 +02:00 committed by Ivan
parent b9fd6ad37d
commit 3b8eab87dd
2 changed files with 12 additions and 3 deletions

View file

@ -27,6 +27,13 @@ if (CCACHE_FOUND)
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
endif()
find_package(ZLIB QUIET)
if (NOT ZLIB_FOUND)
add_subdirectory(3rdparty/zlib EXCLUDE_FROM_ALL)
set(ZLIB_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/zlib" "${CMAKE_CURRENT_BINARY_DIR}/3rdparty/zlib" CACHE INTERNAL "")
set(ZLIB_LIBRARY zlibstatic)
endif()
# Select the version of libpng to use, default is builtin
if (NOT USE_SYSTEM_LIBPNG)
# We use libpng's static library and don't need to build the shared library and run the tests

View file

@ -150,8 +150,6 @@ if(NOT MSVC)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -nopie")
endif()
endif()
find_package(ZLIB REQUIRED)
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:throwingNew /D _CRT_SECURE_NO_DEPRECATE=1 /D _CRT_NON_CONFORMING_SWPRINTFS=1 /D _SCL_SECURE_NO_WARNINGS=1")
@ -402,6 +400,10 @@ endif()
target_link_libraries(rpcs3 pugixml xxhash yaml-cpp)
find_package(ZLIB REQUIRED)
target_include_directories(rpcs3 PUBLIC ${ZLIB_INCLUDE_DIRS})
target_link_libraries(rpcs3 ${ZLIB_LIBRARIES})
if(WIN32)
target_link_libraries(rpcs3 ws2_32.lib Winmm.lib Psapi.lib gdi32.lib setupapi.lib hidapi-hid Shlwapi.lib)
if(NOT MSVC)
@ -421,7 +423,7 @@ else()
else()
target_link_libraries(rpcs3 hidapi-libusb usb)
endif()
target_link_libraries(rpcs3 ${CMAKE_DL_LIBS} ZLIB::ZLIB ${ADDITIONAL_LIBS})
target_link_libraries(rpcs3 ${CMAKE_DL_LIBS} ${ADDITIONAL_LIBS})
if(USE_SYSTEM_FFMPEG)
target_link_libraries(rpcs3 ${FFMPEG_LIBRARIES})
else()