mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-04-18 08:10:07 +00:00
Create <sgidefs.h> if MUSL doesn't create one
Document the status quo and work around for mips-musl. Signed-off-by: Alexey Neyman <stilor@att.net>
This commit is contained in:
parent
675f7bfa4e
commit
d7b043e360
@ -64,5 +64,10 @@ CT_DoArchMUSLHeaderDir() {
|
||||
:;
|
||||
}
|
||||
|
||||
# MUSL: Perform any final adjustments on the installed libc/headers
|
||||
CT_DoArchMUSLPostInstall() {
|
||||
:;
|
||||
}
|
||||
|
||||
# Override from the actual arch implementation as needed.
|
||||
. "${CT_LIB_DIR}/scripts/build/arch/${CT_ARCH}.sh"
|
||||
|
@ -69,3 +69,22 @@ CT_DoArchUClibcCflags() {
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
CT_DoArchMUSLPostInstall() {
|
||||
# GDB and MUSL maintainers seem to disagree on whether <sgidefs.h>
|
||||
# is to be provided as a part of C library. GDB guys think it is
|
||||
# a C library responsibility, while MUSL authors think GDB should
|
||||
# not be using <sgidefs.h>. Neither side is willing to reach out
|
||||
# to the other and negotiate the needed changes, and I don't want
|
||||
# to play the middle man. Hence, provide our own wrapper for
|
||||
# for <sgidefs.h> - the only solution short of telling MUSL users
|
||||
# stop using it. This is why MUSL is experimental in ct-ng and
|
||||
# will likely remain in that status.
|
||||
# References:
|
||||
# http://www.openwall.com/lists/musl/2017/01/26/2
|
||||
# https://sourceware.org/ml/gdb-patches/2017-01/msg00469.html
|
||||
# https://www.sourceware.org/ml/libc-alpha/2004-11/msg00034.html
|
||||
if [ ! -r "${CT_HEADERS_DIR}/sgidefs.h" ]; then
|
||||
echo "#include <asm/sgidefs.h> // Redirected by ct-ng" > "${CT_HEADERS_DIR}/sgidefs.h"
|
||||
fi
|
||||
}
|
||||
|
@ -154,6 +154,9 @@ do_libc_backend_once() {
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Any additional actions for this architecture
|
||||
CT_DoArchMUSLPostInstall
|
||||
fi
|
||||
|
||||
CT_EndStep
|
||||
|
Loading…
x
Reference in New Issue
Block a user