calog/vendor/winpthreads/NOTICE.calog

26 lines
1.3 KiB
Text
Vendored

winpthreads (vendored into calog)
=================================
This is the winpthreads library from mingw-w64 (mingw-w64-libraries/winpthreads),
a POSIX threads implementation over the Win32 API. calog uses pthreads throughout
(the actor model, the timer, pubsub, kv, ...); on Windows those pthread calls resolve
against this library, so the same threading code compiles on Linux, macOS, and Windows.
Vendored from the mingw-w64 source tree. Only the buildable library is kept:
src/ the implementation (.c/.h)
include/ the public headers (pthread.h, sched.h, semaphore.h, ...)
COPYING the license (permissive, MIT/BSD-style; see the file)
README upstream readme
Removed from the upstream subtree: tests/, build-aux/, m4/, and the autoconf machinery
(Makefile.am, configure.ac). calog builds the sources directly (no autoconf); the one
generated header the sources expect, src/config.h, is a minimal hand-written stub
(winpthreads only uses it for optional feature probes, whose portable fallbacks are used).
Build (static, for a Windows target), as done by the Makefile and tools/crossBuild.sh:
cc -c -O2 -Iinclude -Isrc -DWINPTHREAD_STATIC=1 -DIN_WINPTHREAD=1 src/*.c
ar rcs libwinpthreads.a *.o
This library is only needed for Windows builds; Linux and macOS use their native pthreads.