shells/zsh: Fix runtime error when built by gcc-5 with upstream patch

ZSH was misbuilt on gcc-5 due to an intentional change in behavior of
gcc5's cpp.  This patch to execute cpp with the -P switch comes from
upstream.  No revbump necessary as GCC5 isn't used by default on FreeBSD.

Reported by:	DragonFly ZSH users
Approved by:	maintainer (bapt, IRC)
This commit is contained in:
John Marino 2015-04-26 14:29:35 +00:00
parent 727d5d4fe3
commit 714490a122
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=384799

View file

@ -0,0 +1,22 @@
--- Src/zsh.mdd.orig 2014-09-20 19:01:46 UTC
+++ Src/zsh.mdd
@@ -21,9 +21,18 @@ hdrdeps="zshcurses.h zshterm.h"
:<<\Make
@CONFIG_MK@
+# If we're using gcc as the preprocessor, get rid of the additional
+# lines generated by the preprocessor as they can confuse the script.
+# We don't need these in other cases either, but can't necessarily rely
+# on the option to remove them being the same.
signames.c: signames1.awk signames2.awk ../config.h @SIGNAL_H@
$(AWK) -f $(sdir)/signames1.awk @SIGNAL_H@ >sigtmp.c
- $(CPP) sigtmp.c >sigtmp.out
+ case "$(CPP)" in \
+ gcc*) \
+ $(CPP) -P sigtmp.c >sigtmp.out;; \
+ *) \
+ $(CPP) sigtmp.c >sigtmp.out;; \
+ esac
$(AWK) -f $(sdir)/signames2.awk sigtmp.out > $@
rm -f sigtmp.c sigtmp.out