summary refs log tree commit diff
diff options
context:
space:
mode:
authorBenedikt Morbach <benedikt.morbach@googlemail.com>2018-04-10 14:41:58 +0200
committerPeter Stephenson <p.stephenson@samsung.com>2018-04-10 17:52:35 +0100
commit66f0e5c1acaad72fca70b04c712e49baabe0a1ba (patch)
tree92affca549f498d04aa8c5a0c50fa8dfb5863a36
parent913509741932798106bfb47075d1d20a8ced0c7c (diff)
downloadzsh-66f0e5c1acaad72fca70b04c712e49baabe0a1ba.tar.gz
zsh-66f0e5c1acaad72fca70b04c712e49baabe0a1ba.tar.xz
zsh-66f0e5c1acaad72fca70b04c712e49baabe0a1ba.zip
42618: support signal names from multiple include files.
Needed for glibc starting with 2.25.
-rw-r--r--ChangeLog3
-rw-r--r--configure.ac13
2 files changed, 11 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 72fecf86f..e41ca3474 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2018-04-10  Peter Stephenson  <p.stephenson@samsung.com>
 
+	* Benedikt Morbach: 42618: configure.ac: support signal names
+	from multiple include files as needed for glibc 2.25.
+
 	* unposted: Config/version.mk: update dev version to 5.5-dev-0.
 
 2018-04-09  Eric Cook  <llua@gmx.com>
diff --git a/configure.ac b/configure.ac
index 1a498f8b2..c0686b674 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1540,17 +1540,20 @@ if test -z "$sigfile_list"; then
 /usr/include/bits/signum.h
 /dev/null"
 fi
-for SIGNAL_H in $sigfile_list
+for SIGNAL_TRY_H in $sigfile_list
 do
   dnl Try to make sure it doesn't get confused by files that don't
   dnl have real signal definitions in, but do #define SIG* by counting
   dnl the number of signals.  Maybe we could even check for e.g. SIGHUP?
-  nsigs=`test -f $SIGNAL_H && \
-  grep '#[ 	]*define[ 	][ 	]*SIG[0-9A-Z]*[ 	]*[0-9][0-9]*' $SIGNAL_H | \
+  nsigs=`test -f $SIGNAL_TRY_H && \
+  grep '#[ 	]*define[ 	][ 	]*SIG[0-9A-Z]*[ 	]*[0-9][0-9]*' $SIGNAL_TRY_H | \
   wc -l | sed 's/[ 	]//g'`
-  test "x$nsigs" != x && test "$nsigs" -ge 7 && break
+  if test "x$nsigs" != x && test "$nsigs" -ge 7
+  then
+    SIGNAL_H="$SIGNAL_H $SIGNAL_TRY_H"
+  fi
 done
-if test x$SIGNAL_H = x"/dev/null"; then
+if test x$SIGNAL_H = x; then
   AC_MSG_ERROR(SIGNAL MACROS NOT FOUND:  please report to developers)
 fi
 zsh_cv_path_signal_h=$SIGNAL_H