|
|
|
|
@ -3,33 +3,39 @@ include(FetchContent_MakeAvailableExcludeFromAll)
|
|
|
|
|
include(FetchContent) |
|
|
|
|
FetchContent_Declare(libzt |
|
|
|
|
GIT_REPOSITORY https://github.com/diasurgical/libzt.git |
|
|
|
|
GIT_TAG 2607962e3b2c1def68479f7dc382c7508c367365) |
|
|
|
|
GIT_TAG a1acf0119888f645ceae69ecea2b6174ee220da5) |
|
|
|
|
FetchContent_MakeAvailableExcludeFromAll(libzt) |
|
|
|
|
|
|
|
|
|
if(NOT ANDROID) |
|
|
|
|
set(libzt_LIB_NAME zt-static) |
|
|
|
|
else() |
|
|
|
|
set(libzt_LIB_NAME zt-shared) |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
# External library, ignore all warnings |
|
|
|
|
target_compile_options(zto_obj PRIVATE -w) |
|
|
|
|
target_compile_options(libnatpmp_obj PRIVATE -w) |
|
|
|
|
target_compile_options(libzt_obj PRIVATE -w) |
|
|
|
|
target_compile_options(lwip_obj PRIVATE -w) |
|
|
|
|
target_compile_options(miniupnpc_obj PRIVATE -w) |
|
|
|
|
target_compile_options(zt-static PRIVATE -w) |
|
|
|
|
target_compile_options(${libzt_LIB_NAME} PRIVATE -w) |
|
|
|
|
|
|
|
|
|
if(NOT CMAKE_CXX_COMPILER_ID MATCHES "MSVC") |
|
|
|
|
target_compile_options(zto_obj PRIVATE -fpermissive) |
|
|
|
|
target_compile_options(libzt_obj PRIVATE -fpermissive) |
|
|
|
|
target_compile_options(zt-static PRIVATE -fpermissive) |
|
|
|
|
target_compile_options(${libzt_LIB_NAME} PRIVATE -fpermissive) |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
target_include_directories(zt-static INTERFACE |
|
|
|
|
target_include_directories(${libzt_LIB_NAME} INTERFACE |
|
|
|
|
"${libzt_SOURCE_DIR}/include" |
|
|
|
|
"${libzt_SOURCE_DIR}/src" |
|
|
|
|
"${libzt_SOURCE_DIR}/ext/lwip/src/include") |
|
|
|
|
|
|
|
|
|
if(WIN32) |
|
|
|
|
target_include_directories(zt-static INTERFACE |
|
|
|
|
target_include_directories(${libzt_LIB_NAME} INTERFACE |
|
|
|
|
"${libzt_SOURCE_DIR}/ext/lwip-contrib/ports/win32/include") |
|
|
|
|
else() |
|
|
|
|
target_include_directories(zt-static INTERFACE |
|
|
|
|
target_include_directories(${libzt_LIB_NAME} INTERFACE |
|
|
|
|
"${libzt_SOURCE_DIR}/ext/lwip-contrib/ports/unix/port/include") |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
@ -45,11 +51,11 @@ if(MINGW_CROSS)
|
|
|
|
|
target_compile_definitions(zto_obj PRIVATE -D_WIN32_WINNT=0x601 -DZT_SALSA20_SSE=0) |
|
|
|
|
target_compile_definitions(libzt_obj PRIVATE -D_WIN32_WINNT=0x601) |
|
|
|
|
target_link_libraries(libzt_obj PRIVATE mingw_stdthreads) |
|
|
|
|
target_link_libraries(zt-static PUBLIC iphlpapi shlwapi wsock32 ws2_32 wininet mingw_stdthreads) |
|
|
|
|
target_include_directories(zt-static INTERFACE "${libzt_SOURCE_DIR}/include/mingw-fixes") |
|
|
|
|
target_link_libraries(${libzt_LIB_NAME} PUBLIC iphlpapi shlwapi wsock32 ws2_32 wininet mingw_stdthreads) |
|
|
|
|
target_include_directories(${libzt_LIB_NAME} INTERFACE "${libzt_SOURCE_DIR}/include/mingw-fixes") |
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
if(MSVC) |
|
|
|
|
target_compile_definitions(libnatpmp_obj PRIVATE -DSTATICLIB) |
|
|
|
|
target_link_libraries(zt-static PUBLIC iphlpapi shlwapi wsock32 ws2_32 wininet) |
|
|
|
|
target_link_libraries(${libzt_LIB_NAME} PUBLIC iphlpapi shlwapi wsock32 ws2_32 wininet) |
|
|
|
|
endif() |
|
|
|
|
|