File: sanitize-bison.patch

package info (click to toggle)
libexplain 1.4.D001-17
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 42,248 kB
  • sloc: ansic: 156,043; makefile: 47,892; sh: 16,304; yacc: 1,898; awk: 245
file content (108 lines) | stat: -rw-r--r-- 3,675 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
Author: Andreas Beckmann <anbe@debian.org>
Description: sanitize bison usage
 use
   %define api.prefix {...}
 instead of crude
   sed -e 's/[yY][yY]/.../g'

 Thanks to Akim Demaille for the hint! (#960608)

--- a/codegen/gram.y
+++ b/codegen/gram.y
@@ -17,6 +17,8 @@
  * with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
+%define api.prefix {gram_}
+
 %{
 
 #include <libexplain/ac/stdio.h>
--- a/libexplain/acl_grammar.y
+++ b/libexplain/acl_grammar.y
@@ -17,6 +17,8 @@
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
+%define api.prefix {acl_grammar_}
+
 %{
 
 #include <libexplain/ac/ctype.h>
--- a/libexplain/parse_bits.y
+++ b/libexplain/parse_bits.y
@@ -17,6 +17,8 @@
  along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
+%define api.prefix {parse_bits_}
+
 %{
 
 #include <libexplain/ac/ctype.h>
--- a/libexplain/printf_format.y
+++ b/libexplain/printf_format.y
@@ -17,6 +17,8 @@
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
+%define api.prefix {printf_format_}
+
 %{
 
 #include <libexplain/ac/assert.h>
--- a/Makefile.in
+++ b/Makefile.in
@@ -357,9 +357,9 @@ codegen/get_user_name.$(OBJEXT) codegen/
 
 codegen/gram.yacc.c codegen/gram.yacc.h: codegen/gram.y
 	$(YACC) -d $(YFLAGS) codegen/gram.y
-	sed -e 's/[yY][yY]/gram_/g' -e '/<stdio.h>/d' -e '/<stdlib.h>/d' -e \
+	sed -e '/<stdio.h>/d' -e '/<stdlib.h>/d' -e \
 		'/<stddef.h>/d' y.tab.c > codegen/gram.yacc.c
-	sed -e 's/[yY][yY]/gram_/g' -e 's/Y_TAB_H/codegen_gram_YACC_H/g' \
+	sed -e '' \
 		y.tab.h > codegen/gram.yacc.h
 	test -f y.output && mv y.output codegen/gram.output || true
 	rm -f y.tab.c y.tab.h y.output || true
@@ -4016,11 +4016,10 @@ libexplain/acl_get_file_or_die.$(OBJEXT)
 libexplain/acl_grammar.yacc.c libexplain/acl_grammar.yacc.h: \
 		libexplain/acl_grammar.y
 	$(YACC) -d $(YFLAGS) libexplain/acl_grammar.y
-	sed -e 's/[yY][yY]/acl_grammar_/g' -e '/<stdio.h>/d' -e \
+	sed -e '/<stdio.h>/d' -e \
 		'/<stdlib.h>/d' -e '/<stddef.h>/d' y.tab.c > \
 		libexplain/acl_grammar.yacc.c
-	sed -e 's/[yY][yY]/acl_grammar_/g' -e \
-		's/Y_TAB_H/libexplain_acl_grammar_YACC_H/g' y.tab.h > \
+	sed -e '' y.tab.h > \
 		libexplain/acl_grammar.yacc.h
 	test -f y.output && mv y.output libexplain/acl_grammar.output || true
 	rm -f y.tab.c y.tab.h y.output || true
@@ -31058,10 +31057,9 @@ libexplain/output/warning.$(OBJEXT) libe
 libexplain/parse_bits.yacc.c libexplain/parse_bits.yacc.h: \
 		libexplain/parse_bits.y
 	$(YACC) -d $(YFLAGS) libexplain/parse_bits.y
-	sed -e 's/[yY][yY]/parse_bits_/g' -e '/<stdio.h>/d' -e '/<stdlib.h>/d' \
+	sed -e '/<stdio.h>/d' -e '/<stdlib.h>/d' \
 		-e '/<stddef.h>/d' y.tab.c > libexplain/parse_bits.yacc.c
-	sed -e 's/[yY][yY]/parse_bits_/g' -e \
-		's/Y_TAB_H/libexplain_parse_bits_YACC_H/g' y.tab.h > \
+	sed -e '' y.tab.h > \
 		libexplain/parse_bits.yacc.h
 	test -f y.output && mv y.output libexplain/parse_bits.output || true
 	rm -f y.tab.c y.tab.h y.output || true
@@ -31418,11 +31416,10 @@ $(includedir)/libexplain/printf.h: .mkdi
 libexplain/printf_format.yacc.c libexplain/printf_format.yacc.h: \
 		libexplain/printf_format.y
 	$(YACC) -d $(YFLAGS) libexplain/printf_format.y
-	sed -e 's/[yY][yY]/printf_format_/g' -e '/<stdio.h>/d' -e \
+	sed -e '/<stdio.h>/d' -e \
 		'/<stdlib.h>/d' -e '/<stddef.h>/d' y.tab.c > \
 		libexplain/printf_format.yacc.c
-	sed -e 's/[yY][yY]/printf_format_/g' -e \
-		's/Y_TAB_H/libexplain_printf_format_YACC_H/g' y.tab.h > \
+	sed -e '' y.tab.h > \
 		libexplain/printf_format.yacc.h
 	test -f y.output && mv y.output libexplain/printf_format.output || true
 	rm -f y.tab.c y.tab.h y.output || true