Group :: Sistema/Bibliotecas
RPM: libexplain
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: libexplain-1.4-sanitize-bison.patch
Download
Download
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