Mercurial
view third_party/libuv/BUILD @ 168:f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Mon, 19 Jan 2026 16:29:02 -0800 |
| parents | 948de3f54cea |
| children |
line wrap: on
line source
load("@rules_cc//cc:defs.bzl", "cc_library") package(default_visibility = ["//visibility:public"]) # Common source files for all platforms COMMON_SRCS = [ "src/fs-poll.c", "src/idna.c", "src/inet.c", "src/random.c", "src/strscpy.c", "src/strtok.c", "src/thread-common.c", "src/threadpool.c", "src/timer.c", "src/uv-common.c", "src/uv-data-getter-setters.c", "src/version.c", ] # Unix common source files UNIX_SRCS = [ "src/unix/async.c", "src/unix/core.c", "src/unix/dl.c", "src/unix/fs.c", "src/unix/getaddrinfo.c", "src/unix/getnameinfo.c", "src/unix/loop-watcher.c", "src/unix/loop.c", "src/unix/pipe.c", "src/unix/poll.c", "src/unix/process.c", "src/unix/random-devurandom.c", "src/unix/signal.c", "src/unix/stream.c", "src/unix/tcp.c", "src/unix/thread.c", "src/unix/tty.c", "src/unix/udp.c", ] # macOS/Darwin specific sources DARWIN_SRCS = [ "src/unix/bsd-ifaddrs.c", "src/unix/darwin.c", "src/unix/darwin-proctitle.c", "src/unix/fsevents.c", "src/unix/kqueue.c", "src/unix/proctitle.c", "src/unix/random-getentropy.c", ] # Linux specific sources LINUX_SRCS = [ "src/unix/linux.c", "src/unix/procfs-exepath.c", "src/unix/proctitle.c", "src/unix/random-getrandom.c", "src/unix/random-sysctl-linux.c", ] # Windows specific sources WIN_SRCS = [ "src/win/async.c", "src/win/core.c", "src/win/detect-wakeup.c", "src/win/dl.c", "src/win/error.c", "src/win/fs.c", "src/win/fs-event.c", "src/win/getaddrinfo.c", "src/win/getnameinfo.c", "src/win/handle.c", "src/win/loop-watcher.c", "src/win/pipe.c", "src/win/poll.c", "src/win/process.c", "src/win/process-stdio.c", "src/win/signal.c", "src/win/snprintf.c", "src/win/stream.c", "src/win/tcp.c", "src/win/thread.c", "src/win/tty.c", "src/win/udp.c", "src/win/util.c", "src/win/winapi.c", "src/win/winsock.c", ] COMMON_HDRS = glob(["include/**/*.h"]) + glob(["src/*.h"]) + glob(["src/unix/*.h"]) + glob(["src/win/*.h"]) cc_library( name = "libuv", srcs = COMMON_SRCS + select({ "@platforms//os:macos": UNIX_SRCS + DARWIN_SRCS, "@platforms//os:linux": UNIX_SRCS + LINUX_SRCS, "@platforms//os:windows": WIN_SRCS, }), hdrs = COMMON_HDRS, includes = ["include", "src"], local_defines = select({ "@platforms//os:macos": [ "_DARWIN_UNLIMITED_SELECT=1", "_DARWIN_USE_64_BIT_INODE=1", "_FILE_OFFSET_BITS=64", "_LARGEFILE_SOURCE", ], "@platforms//os:linux": [ "_GNU_SOURCE", "_POSIX_C_SOURCE=200112", "_FILE_OFFSET_BITS=64", "_LARGEFILE_SOURCE", ], "@platforms//os:windows": [ "WIN32_LEAN_AND_MEAN", "_WIN32_WINNT=0x0A00", "_CRT_DECLARE_NONSTDC_NAMES=0", ], }), linkopts = select({ "@platforms//os:macos": ["-lpthread"], "@platforms//os:linux": ["-lpthread", "-ldl", "-lrt", "-lm"], "@platforms//os:windows": [ "-lpsapi", "-luser32", "-ladvapi32", "-liphlpapi", "-luserenv", "-lws2_32", "-ldbghelp", "-lole32", "-lshell32", ], }), copts = select({ "@platforms//os:windows": [], "//conditions:default": [ "-fno-strict-aliasing", "-Wno-unused-parameter", ], }), )