-
Notifications
You must be signed in to change notification settings - Fork 15.4k
Description
When building the libc library based on the release/20.x branch, the compilation fails due to an invalid token in the LIBC_NAMESPACE macro expansion. This problem is rooted in the definition of LLVM_VERSION_SUFFIX
llvm-project/cmake/Modules/LLVMVersion.cmake
Lines 12 to 14 in d185bd9
| if(NOT DEFINED LLVM_VERSION_SUFFIX) | |
| set(LLVM_VERSION_SUFFIX -rc1) | |
| endif() |
and its usage to configure the default_namespace field
llvm-project/libc/CMakeLists.txt
Lines 52 to 58 in d185bd9
| set(default_namespace "__llvm_libc") | |
| if(LLVM_VERSION_MAJOR) | |
| set(default_namespace "__llvm_libc_${LLVM_VERSION_MAJOR}_${LLVM_VERSION_MINOR}_${LLVM_VERSION_PATCH}_${LLVM_VERSION_SUFFIX}") | |
| endif() | |
| set(LIBC_NAMESPACE ${default_namespace} | |
| CACHE STRING "The namespace to use to enclose internal implementations. Must start with '__llvm_libc'." | |
| ) |
For the release/20.x branch, LIBC_NAMESPACE is expanded to __llvm_libc_20_1_0_-rc1 with the invalid token -. This can be fixed relatively easy by either updating the LLVM_VERSION_SUFFIX definition to not use the - token or by removing the LLVM_VERSION_SUFFIX from the libc default_namespace.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status