add_gen_header(
  thread_start_args_h
  DEF_FILE thread_start_args.h.def
  GEN_HDR thread_start_args.h
  PARAMS
    thread_start_args=${LIBC_TARGET_ARCHITECTURE}/thread_start_args.h.in
  DATA_FILES
    ${LIBC_TARGET_ARCHITECTURE}/thread_start_args.h.in
)

add_entrypoint_object(
  call_once
  SRCS
    call_once.cpp
  HDRS
    ../call_once.h
  DEPENDS
    .threads_utils
    libc.config.linux.linux_syscall_h
    libc.include.sys_syscall
    libc.include.threads
)

add_header_library(
  threads_utils
  HDRS
    CndVar.h
    Futex.h
    Mutex.h
    Thread.h
  DEPENDS
    .thread_start_args_h
    libc.config.linux.linux_syscall_h
    libc.include.sys_syscall
    libc.include.threads
)

add_entrypoint_object(
  thrd_create
  SRCS
    thrd_create.cpp
  HDRS
    ../thrd_create.h
  DEPENDS
    .threads_utils
    libc.config.linux.linux_syscall_h
    libc.include.errno
    libc.include.sys_syscall
    libc.include.threads
    libc.src.__support.common
    libc.src.errno.__errno_location
    libc.src.sys.mman.mmap
  COMPILE_OPTIONS
    -O3
    -fno-omit-frame-pointer # This allows us to sniff out the thread args from
                            # the new thread's stack reliably.
)

add_entrypoint_object(
  thrd_join
  SRCS
    thrd_join.cpp
  HDRS
    ../thrd_join.h
  DEPENDS
    .threads_utils
    libc.config.linux.linux_syscall_h
    libc.include.sys_syscall
    libc.include.threads
    libc.src.sys.mman.munmap
    libc.src.__support.common
)

add_entrypoint_object(
  mtx_init
  SRCS
    mtx_init.cpp
  HDRS
    ../mtx_init.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  mtx_destroy
  SRCS
    mtx_destroy.cpp
  HDRS
    ../mtx_destroy.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  mtx_lock
  SRCS
    mtx_lock.cpp
  HDRS
    ../mtx_lock.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  mtx_unlock
  SRCS
    mtx_unlock.cpp
  HDRS
    ../mtx_unlock.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  cnd_init
  SRCS
    cnd_init.cpp
  HDRS
    ../cnd_init.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  cnd_destroy
  SRCS
    cnd_destroy.cpp
  HDRS
    ../cnd_destroy.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  cnd_wait
  SRCS
    cnd_wait.cpp
  HDRS
    ../cnd_wait.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  cnd_signal
  SRCS
    cnd_signal.cpp
  HDRS
    ../cnd_signal.h
  DEPENDS
    .threads_utils
    libc.include.threads
)

add_entrypoint_object(
  cnd_broadcast
  SRCS
    cnd_broadcast.cpp
  HDRS
    ../cnd_broadcast.h
  DEPENDS
    .threads_utils
    libc.include.threads
)
