set(TARGET_LIBC_ENTRYPOINTS
    # ctype.h entrypoints
    libc.src.ctype.isalnum
    libc.src.ctype.isalpha
    libc.src.ctype.isascii
    libc.src.ctype.isblank
    libc.src.ctype.iscntrl
    libc.src.ctype.isdigit
    libc.src.ctype.isgraph
    libc.src.ctype.islower
    libc.src.ctype.isprint
    libc.src.ctype.ispunct
    libc.src.ctype.isspace
    libc.src.ctype.isupper
    libc.src.ctype.isxdigit
    libc.src.ctype.toascii
    libc.src.ctype.tolower
    libc.src.ctype.toupper

    # errno.h entrypoints
    libc.src.errno.__errno_location

    # string.h entrypoints
    libc.src.string.bzero
    libc.src.string.memchr
    libc.src.string.memcmp
    libc.src.string.memcpy
    libc.src.string.memmove
    libc.src.string.memrchr
    libc.src.string.memset
    libc.src.string.strcat
    libc.src.string.strchr
    libc.src.string.strcmp
    libc.src.string.strcpy
    libc.src.string.strcspn
    libc.src.string.strlen
    libc.src.string.strncmp
    libc.src.string.strncpy
    libc.src.string.strnlen
    libc.src.string.strpbrk
    libc.src.string.strrchr
    libc.src.string.strspn
    libc.src.string.strstr
    libc.src.string.strtok
    libc.src.string.strtok_r
)

set(TARGET_LIBM_ENTRYPOINTS
    # fenv.h entrypoints
    libc.src.fenv.feclearexcept
    libc.src.fenv.fegetenv
    libc.src.fenv.fegetexceptflag
    libc.src.fenv.fegetround
    libc.src.fenv.feholdexcept
    libc.src.fenv.fesetenv
    libc.src.fenv.fesetexceptflag
    libc.src.fenv.fesetround
    libc.src.fenv.feraiseexcept
    libc.src.fenv.fetestexcept
    libc.src.fenv.feupdateenv

    # math.h entrypoints
    libc.src.math.copysign
    libc.src.math.copysignf
    libc.src.math.copysignl
    libc.src.math.ceil
    libc.src.math.ceilf
    libc.src.math.ceill
    libc.src.math.cos
    libc.src.math.cosf
    libc.src.math.expf
    libc.src.math.exp2f
    libc.src.math.expm1f
    libc.src.math.fabs
    libc.src.math.fabsf
    libc.src.math.fabsl
    libc.src.math.fdim
    libc.src.math.fdimf
    libc.src.math.fdiml
    libc.src.math.floor
    libc.src.math.floorf
    libc.src.math.floorl
    libc.src.math.fma
    libc.src.math.fmaf
    libc.src.math.fmin
    libc.src.math.fminf
    libc.src.math.fminl
    libc.src.math.fmax
    libc.src.math.fmaxf
    libc.src.math.fmaxl
    libc.src.math.frexp
    libc.src.math.frexpf
    libc.src.math.frexpl
    libc.src.math.hypot
    libc.src.math.hypotf
    libc.src.math.ilogb
    libc.src.math.ilogbf
    libc.src.math.ilogbl
    libc.src.math.ldexp
    libc.src.math.ldexpf
    libc.src.math.ldexpl
    libc.src.math.llrint
    libc.src.math.llrintf
    libc.src.math.llrintl
    libc.src.math.llround
    libc.src.math.llroundf
    libc.src.math.llroundl
    libc.src.math.logb
    libc.src.math.logbf
    libc.src.math.logbl
    libc.src.math.lrint
    libc.src.math.lrintf
    libc.src.math.lrintl
    libc.src.math.lround
    libc.src.math.lroundf
    libc.src.math.lroundl
    libc.src.math.modf
    libc.src.math.modff
    libc.src.math.modfl
    libc.src.math.nearbyint
    libc.src.math.nearbyintf
    libc.src.math.nearbyintl
    libc.src.math.nextafter
    libc.src.math.nextafterf
    libc.src.math.nextafterl
    libc.src.math.remainderf
    libc.src.math.remainder
    libc.src.math.remainderl
    libc.src.math.remquof
    libc.src.math.remquo
    libc.src.math.remquol
    libc.src.math.rint
    libc.src.math.rintf
    libc.src.math.rintl
    libc.src.math.round
    libc.src.math.roundf
    libc.src.math.roundl
    libc.src.math.sin
    libc.src.math.sincosf
    libc.src.math.sinf
    libc.src.math.sqrt
    libc.src.math.sqrtf
    libc.src.math.sqrtl
    libc.src.math.tan
    libc.src.math.trunc
    libc.src.math.truncf
    libc.src.math.truncl
)

if(LLVM_LIBC_FULL_BUILD)
  list(APPEND TARGET_LIBC_ENTRYPOINTS
    # assert.h entrypoints
    libc.src.assert.__assert_fail

    # stdlib.h entrypoints
    libc.src.stdlib._Exit
    libc.src.stdlib.abort
    libc.src.stdlib.abs
    libc.src.stdlib.labs
    libc.src.stdlib.llabs

    # signal.h entrypoints
    libc.src.signal.raise
    libc.src.signal.sigaction
    libc.src.signal.sigdelset
    libc.src.signal.sigaddset
    libc.src.signal.sigemptyset
    libc.src.signal.sigprocmask
    libc.src.signal.sigfillset
    libc.src.signal.signal

    # sys/mman.h entrypoints
    libc.src.sys.mman.mmap
    libc.src.sys.mman.munmap

    # threads.h entrypoints
    libc.src.threads.call_once
    libc.src.threads.mtx_init
    libc.src.threads.mtx_lock
    libc.src.threads.mtx_unlock
    libc.src.threads.thrd_create
    libc.src.threads.thrd_join

    # time.h entrypoints
    libc.src.time.asctime
    libc.src.time.asctime_r
    libc.src.time.gmtime
    libc.src.time.gmtime_r
    libc.src.time.mktime

    # unistd.h entrypoints
    libc.src.unistd.write
  )
endif()

set(TARGET_LLVMLIBC_ENTRYPOINTS
  ${TARGET_LIBC_ENTRYPOINTS}
  ${TARGET_LIBM_ENTRYPOINTS}
)
