From 675f7bfa4eb8415d5695dcda6111d9bd54419b0f Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Thu, 26 Jan 2017 13:37:52 -0800 Subject: Remove previous patch to strace GDB maintainers said, must be provided by C library. Signed-off-by: Alexey Neyman diff --git a/patches/strace/4.15/020-use-asm-sgidefs.h.patch b/patches/strace/4.15/020-use-asm-sgidefs.h.patch deleted file mode 100644 index 06ae5a3..0000000 --- a/patches/strace/4.15/020-use-asm-sgidefs.h.patch +++ /dev/null @@ -1,67 +0,0 @@ -diff -urpN strace-4.15.orig/configure strace-4.15/configure ---- strace-4.15.orig/configure 2016-12-14 01:17:44.000000000 -0800 -+++ strace-4.15/configure 2017-01-19 22:32:20.167896014 -0800 -@@ -8775,7 +8775,7 @@ $as_echo_n "checking for _MIPS_SIM... " - if ${st_cv__MIPS_SIM+:} false; then : - $as_echo_n "(cached) " >&6 - else -- if ac_fn_c_compute_int "$LINENO" "_MIPS_SIM" "st_cv__MIPS_SIM" "#include "; then : -+ if ac_fn_c_compute_int "$LINENO" "_MIPS_SIM" "st_cv__MIPS_SIM" "#include "; then : - - else - as_fn_error $? "_MIPS_SIM cannot be determined" "$LINENO" 5 -@@ -8792,7 +8792,7 @@ if ${st_cv_mips_abi+:} false; then : - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --#include -+#include - int - main () - { -@@ -8806,7 +8806,7 @@ if ac_fn_c_try_compile "$LINENO"; then : - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --#include -+#include - int - main () - { -@@ -8820,7 +8820,7 @@ if ac_fn_c_try_compile "$LINENO"; then : - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --#include -+#include - int - main () - { -diff -urpN strace-4.15.orig/configure.ac strace-4.15/configure.ac ---- strace-4.15.orig/configure.ac 2016-12-07 02:59:52.000000000 -0800 -+++ strace-4.15/configure.ac 2017-01-19 22:32:35.768433437 -0800 -@@ -212,20 +212,20 @@ MIPS_ABI= - if test "$arch" = mips; then - AC_CACHE_CHECK([for _MIPS_SIM], [st_cv__MIPS_SIM], - [AC_COMPUTE_INT([st_cv__MIPS_SIM], [_MIPS_SIM], -- [#include ], -+ [#include ], - [AC_MSG_ERROR([_MIPS_SIM cannot be determined])])]) - - AC_CACHE_CHECK([for MIPS ABI], [st_cv_mips_abi], - [AC_COMPILE_IFELSE( -- [AC_LANG_PROGRAM([[#include ]], -+ [AC_LANG_PROGRAM([[#include ]], - [[int i[_MIPS_SIM == _MIPS_SIM_ABI32 ? 1 : - 1];]])], - [st_cv_mips_abi=o32], - [AC_COMPILE_IFELSE( -- [AC_LANG_PROGRAM([[#include ]], -+ [AC_LANG_PROGRAM([[#include ]], - [[int i[_MIPS_SIM == _MIPS_SIM_NABI32 ? 1 : - 1];]])], - [st_cv_mips_abi=n32], - [AC_COMPILE_IFELSE( -- [AC_LANG_PROGRAM([[#include ]], -+ [AC_LANG_PROGRAM([[#include ]], - [[int i[_MIPS_SIM == _MIPS_SIM_ABI64 ? 1 : - 1];]])], - [st_cv_mips_abi=n64], - [st_cv_mips_abi=unknown])])])]) -- cgit v0.10.2-6-g49f6 From d7b043e360dbf261ddb97accf5c454d3cf88f92e Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Thu, 26 Jan 2017 13:50:18 -0800 Subject: Create if MUSL doesn't create one Document the status quo and work around for mips-musl. Signed-off-by: Alexey Neyman diff --git a/scripts/build/arch.sh b/scripts/build/arch.sh index 3d3611b..75d3e21 100644 --- a/scripts/build/arch.sh +++ b/scripts/build/arch.sh @@ -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" diff --git a/scripts/build/arch/mips.sh b/scripts/build/arch/mips.sh index 6097c89..f91a80a 100644 --- a/scripts/build/arch/mips.sh +++ b/scripts/build/arch/mips.sh @@ -69,3 +69,22 @@ CT_DoArchUClibcCflags() { esac done } + +CT_DoArchMUSLPostInstall() { + # GDB and MUSL maintainers seem to disagree on whether + # 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 . 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 - 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 // Redirected by ct-ng" > "${CT_HEADERS_DIR}/sgidefs.h" + fi +} diff --git a/scripts/build/libc/musl.sh b/scripts/build/libc/musl.sh index 9bbd95a..4ccb84c 100644 --- a/scripts/build/libc/musl.sh +++ b/scripts/build/libc/musl.sh @@ -154,6 +154,9 @@ do_libc_backend_once() { ;; esac done + + # Any additional actions for this architecture + CT_DoArchMUSLPostInstall fi CT_EndStep -- cgit v0.10.2-6-g49f6