| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- add_library(uv.hdll
- uv.c
- )
- if(WIN32)
- target_sources(uv.hdll
- PRIVATE
- ${INCLUDES_BASE_DIR}/libuv/src/fs-poll.c
- ${INCLUDES_BASE_DIR}/libuv/src/inet.c
- ${INCLUDES_BASE_DIR}/libuv/src/threadpool.c
- ${INCLUDES_BASE_DIR}/libuv/src/uv-common.c
- ${INCLUDES_BASE_DIR}/libuv/src/version.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/async.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/core.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/dl.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/error.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/fs-event.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/fs.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/getaddrinfo.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/getnameinfo.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/handle.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/loop-watcher.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/pipe.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/poll.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/process-stdio.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/process.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/req.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/signal.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/snprintf.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/stream.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/tcp.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/thread.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/timer.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/tty.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/udp.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/util.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/winapi.c
- ${INCLUDES_BASE_DIR}/libuv/src/win/winsock.c
- )
- elseif(DOWNLOAD_DEPENDENCIES)
- FetchContent_Declare(libuv-project
- URL https://github.com/libuv/libuv/archive/refs/tags/v1.51.0.tar.gz
- URL_HASH SHA256=27e55cf7083913bfb6826ca78cde9de7647cded648d35f24163f2d31bb9f51cd
- EXCLUDE_FROM_ALL
- )
- set(_OLD_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})
- set(BUILD_SHARED_LIBS OFF)
- set(LIBUV_BUILD_SHARED OFF CACHE INTERNAL "")
- set(LIBUV_BUILD_TESTS OFF CACHE INTERNAL "")
- FetchContent_MakeAvailable(libuv-project)
- set(BUILD_SHARED_LIBS ${_OLD_BUILD_SHARED_LIBS})
- add_library(LibUV::LibUV ALIAS uv_a)
- else()
- find_package(LibUV)
- endif()
- set_as_hdll(uv)
- target_link_libraries(uv.hdll
- libhl
- )
- if(WIN32)
- target_include_directories(uv.hdll
- PRIVATE
- ${INCLUDES_BASE_DIR}/libuv/include
- )
- target_link_libraries(uv.hdll
- psapi
- iphlpapi
- userenv
- )
- target_compile_definitions(uv.hdll
- PRIVATE
- UV_EXPORTS
- BUILDING_UV_SHARED
- )
- else()
- target_link_libraries(uv.hdll
- LibUV::LibUV
- )
- endif()
- install(
- TARGETS
- uv.hdll
- DESTINATION ${HDLL_DESTINATION}
- )
|