From 86b7947156a0c33e768d0a265e38f2881a70a7e2 Mon Sep 17 00:00:00 2001
|
From: Khem Raj <raj.khem@gmail.com>
|
Date: Fri, 6 Mar 2020 23:19:37 -0800
|
Subject: [PATCH] makeinst: Do not undef POSIX on clang/arm
|
|
if __arm internal compiler macro is defined then make assumes that the
|
system is not posix and goes ahead and undefs POSIX, which results in
|
miscompiling make with clang, since clang does define __arm unlike gcc
|
which does not, but they both support posix just fine, so here check for
|
compiler not being clang when __arm is defined before undefining posix
|
|
Fixes error like
|
../make-4.3/src/job.c:507:27: error: too many arguments to function call, expected 0, have 1
|
sigsetmask (siggetmask (0) & ~fatal_signal_mask)
|
~~~~~~~~~~ ^
|
|
Upstream-Status: Pending
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
---
|
src/makeint.h | 2 +-
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
diff --git a/src/makeint.h b/src/makeint.h
|
index c428a36..fadf963 100644
|
--- a/src/makeint.h
|
+++ b/src/makeint.h
|
@@ -115,7 +115,7 @@ extern int errno;
|
#endif
|
|
/* Some systems define _POSIX_VERSION but are not really POSIX.1. */
|
-#if (defined (butterfly) || defined (__arm) || (defined (__mips) && defined (_SYSTYPE_SVR3)) || (defined (sequent) && defined (i386)))
|
+#if (defined (butterfly) || (defined (__arm) && !defined(__clang__)) || (defined (__mips) && defined (_SYSTYPE_SVR3)) || (defined (sequent) && defined (i386)))
|
# undef POSIX
|
#endif
|
|
--
|
2.25.1
|