1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-12-21 17:31:10 +03:00

configure: Enable experimental support for clang

The clang support is still experimental and not all testcases run
correctly.  Only clang 18 and onwards is supported and only
for x86_64-linux-gnu and aarch64-linux-gnu.

Reviewed-by: Collin Funk <collin.funk1@gmail.com>
Reviewed-by: Sam James <sam@gentoo.org>
This commit is contained in:
Adhemerval Zanella
2025-12-01 17:09:48 -03:00
parent 67b631db87
commit be48ae12b1
3 changed files with 7 additions and 2 deletions

5
NEWS
View File

@@ -49,6 +49,11 @@ Major new features:
* The ISO C23 optional time base TIME_MONOTONIC, TIME_ACTIVE, and * The ISO C23 optional time base TIME_MONOTONIC, TIME_ACTIVE, and
TIME_THREAD_ACTIVE have been added. TIME_THREAD_ACTIVE have been added.
* Experimental support for building with clang has been added. It requires
at least clang version 18, aarch64-linux-gnu or x86_64-linux-gnu
targets, and libgcc compatible runtime (including libgcc_s.so for
pthread cancellation and backtrace runtime support).
Deprecated and removed features, and other changes affecting compatibility: Deprecated and removed features, and other changes affecting compatibility:
* Support for dumped heaps has been removed - malloc_set_state() now always * Support for dumped heaps has been removed - malloc_set_state() now always

2
configure vendored
View File

@@ -5799,7 +5799,7 @@ int
main (void) main (void)
{ {
#if !defined __GNUC__ || __GNUC__ < 12 || (__GNUC__ == 12 && __GNUC_MINOR__ < 1) #if (!defined __GNUC__ || __GNUC__ < 12 || (__GNUC__ == 12 && __GNUC_MINOR__ < 1)) && (!defined __clang__ || __clang_major__ < 18)
#error insufficient compiler #error insufficient compiler
#endif #endif
; ;

View File

@@ -585,7 +585,7 @@ AC_CHECK_PROG_VER(BISON, bison, --version,
# Require GCC 12.1 to build. # Require GCC 12.1 to build.
AC_CACHE_CHECK([if $CC is sufficient to build libc], libc_cv_compiler_ok, [ AC_CACHE_CHECK([if $CC is sufficient to build libc], libc_cv_compiler_ok, [
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]], [[ AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]], [[
#if !defined __GNUC__ || __GNUC__ < 12 || (__GNUC__ == 12 && __GNUC_MINOR__ < 1) #if (!defined __GNUC__ || __GNUC__ < 12 || (__GNUC__ == 12 && __GNUC_MINOR__ < 1)) && (!defined __clang__ || __clang_major__ < 18)
#error insufficient compiler #error insufficient compiler
#endif]])], #endif]])],
[libc_cv_compiler_ok=yes], [libc_cv_compiler_ok=yes],