libctf: do not use mmap on Solaris 11

Writable mmaps and read are inconsistent with each other on Solaris 11.4,
which breaks archive writing.  Simply assert that Solaris 2.11 doesn't have
mmap, falling back to read(): the archive format is being bumped shortly, to
one with completely different writeout code, so this workaround need not
stay for long.

[nca: added commit log]

libctf/
	PR libctf/29292
	* configure.ac: Turn off mmap on Solaris 2.11.
	* configure: Regenerated.
This commit is contained in:
Rainer Orth
2025-07-16 13:10:05 +01:00
committed by Nick Alcock
parent 83eeaf9178
commit 00d853d1fe
2 changed files with 16 additions and 0 deletions

8
libctf/configure vendored
View File

@@ -15966,6 +15966,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
case "${host}" in
# PR libctf/29292
# libctf's use of mmap doesn't work on Solaris 11.4, so disable it.
*-*-solaris2.11*)
ac_cv_func_mmap_fixed_mapped=no
;;
esac

View File

@@ -65,6 +65,14 @@ AM_MAINTAINER_MODE
AM_INSTALL_LIBBFD
ACX_PROG_CC_WARNING_OPTS([-Wall], [ac_libctf_warn_cflags])
case "${host}" in
# PR libctf/29292
# libctf's use of mmap doesn't work on Solaris 11.4, so disable it.
*-*-solaris2.11*)
ac_cv_func_mmap_fixed_mapped=no
;;
esac
GCC_AC_FUNC_MMAP
# Needed for BFD capability checks.
AC_SEARCH_LIBS(dlsym, dl)