From cee00d3a8ae79f930ab24b2b773fb796526b47ad Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Mon, 4 Aug 2025 21:29:25 -0700 Subject: [PATCH] Fix Co-Authored-By: Claude --- cmake/scripts/GitClone.cmake | 2 +- cmake/targets/BuildLsquic.cmake | 11 +++++++++++ packages/bun-usockets/src/quic.c | 1 - 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/cmake/scripts/GitClone.cmake b/cmake/scripts/GitClone.cmake index 1fbfa42862..d8b9c31672 100644 --- a/cmake/scripts/GitClone.cmake +++ b/cmake/scripts/GitClone.cmake @@ -34,7 +34,7 @@ if(GIT_NAME STREQUAL "lsquic") # Clone the repository execute_process( COMMAND - ${GIT_PROGRAM} clone https://github.com/${GIT_REPOSITORY}.git ${GIT_PATH} + ${GIT_PROGRAM} clone https://github.com/${GIT_REPOSITORY}.git --depth 1 --shallow-submodules --recurse-submodules --single-branch ${GIT_PATH} ERROR_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE GIT_ERROR diff --git a/cmake/targets/BuildLsquic.cmake b/cmake/targets/BuildLsquic.cmake index d7e4591a2b..2dcd59962a 100644 --- a/cmake/targets/BuildLsquic.cmake +++ b/cmake/targets/BuildLsquic.cmake @@ -7,6 +7,12 @@ register_repository( 70486141724f85e97b08f510673e29f399bbae8f ) +set(Lsquic_CMAKE_C_FLAGS "") + +if (ENABLE_ASAN) + STRING(APPEND Lsquic_CMAKE_C_FLAGS "-fsanitize=address") +endif() + register_cmake_command( TARGET lsquic @@ -22,6 +28,11 @@ register_cmake_command( -DZLIB_INCLUDE_DIR=${VENDOR_PATH}/zlib -DZLIB_LIB=${BUILD_PATH}/zlib/libz.a -DCMAKE_BUILD_TYPE=Release + -DCMAKE_POSITION_INDEPENDENT_CODE=ON + -DCMAKE_C_FLAGS="${Lsquic_CMAKE_C_FLAGS}" + -DLSQUIC_BIN=OFF + -DLSQUIC_TESTS=OFF + -DLSQUIC_WEBTRANSPORT=OFF INCLUDES include src/liblsquic diff --git a/packages/bun-usockets/src/quic.c b/packages/bun-usockets/src/quic.c index 64cf7deb30..1b5685b7db 100644 --- a/packages/bun-usockets/src/quic.c +++ b/packages/bun-usockets/src/quic.c @@ -315,7 +315,6 @@ void on_udp_socket_data(struct us_udp_socket_t *s, struct us_udp_packet_buffer_t /* Let's use this on Windows and macOS where it is not defined (todo: put in bsd.h) */ #ifndef UIO_MAXIOV #define UIO_MAXIOV 1024 - #endif /* Server and client packet out is identical */