-
Notifications
You must be signed in to change notification settings - Fork 13.3k
[libc] build clang #97191
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
This was referenced Jun 30, 2024
jhuber6
pushed a commit
that referenced
this issue
Jul 3, 2024
lravenclaw
pushed a commit
to lravenclaw/llvm-project
that referenced
this issue
Jul 3, 2024
No reference to `readv` or `writev`. This makes `libcxx` happy when compiling against clang's `libc` as part of llvm#97191.
kbluck
pushed a commit
to kbluck/llvm-project
that referenced
this issue
Jul 6, 2024
No reference to `readv` or `writev`. This makes `libcxx` happy when compiling against clang's `libc` as part of llvm#97191.
SchrodingerZhu
pushed a commit
that referenced
this issue
Jul 6, 2024
Adds `dlopen` and friends. This is needed as part of the effort to compile `libunwind` + `libc` without baremetal mode. This is part of #97191. This should still be spec compliant, since `dlopen` always returns `NULL` and `dlerror` always returns an error message. > If dlopen() fails for any reason, it returns NULL. > The function dlclose() returns 0 on success, and nonzero on error. > Since the value of the symbol could actually be NULL (so that a NULL return from dlsym() need not indicate an error), the correct way to test for an error is to call dlerror() to clear any old error conditions, then call dlsym(), and then call dlerror() again, saving its return value into a variable, and check whether this saved value is not NULL. See: - https://linux.die.net/man/3/dlopen
Depends on #124027 for libcxxabi. |
clang
with clang
's own libc
on aarch64
oneseer
pushed a commit
to oneseer/libunwind
that referenced
this issue
Mar 26, 2025
No reference to `readv` or `writev`. This makes `libcxx` happy when compiling against clang's `libc` as part of llvm/llvm-project#97191. NOKEYCHECK=True GitOrigin-RevId: 495452e7da8fad7bd311fd041530d72c101da643
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Overview
Tracking issue from discussions with @jhuber6 on the LLVM discord in
#libc
. Everything that is within my meagre capabilities to be fixed has been done so here: #97231 Feel free to cherry pick commits out and make PRs as you see fit.Known issues:
libc
libc
+aarch64
missing at least:linux/error-number-macros.h
is not installed [libc]: fix missinglinux/error-number-macros.h
#97101libunwind
+libc
:LIBUNWIND_IS_BAREMETAL=OFF
sys/uio.h
#97495dlfcn.h
headers #97772dlfcn.h
placeholder #97501link.h
andelf.h
headers #97924link.h
andelf.h
placeholder #97504libcxx
+libc
LIBCXX_ENABLE_FILESYSTEM=ON
LIBCXX_ENABLE_LOCALIZATION=ON
vasprintf
function #97528vsscanf
function #97529<sys/statvfs.h>
956c139utimes
function #97530strftime
LIBCXX_ENABLE_LOCALIZATION=ON
locale
support for llvmlibc
#97508locale.h
and related stubs #97494LIBCXX_ENABLE_RANDOM_DEVICE=ON
LIBCXX_ENABLE_MONOTONIC_CLOCK=ON
_POSIX_TIMERS
inunistd.h
andclock_gettime
LIBCXX_ENABLE_THREADS=ON
LIBCXX_ENABLE_MONOTONIC_CLOCK=ON
scudo
+libc
prctl
header def #97527getauxval
#97492clang -lc ./some/file
+libc
exit_handlers.cpp
not matching #97642Scrt1.o
tostartup_components
#97497stddef.h
fromclang
Reproduction
Dockerfile
clang.cmake
clang-stake2.cmake
The text was updated successfully, but these errors were encountered: