flex: add patch from upstream to unbreak wine (among others).

Also get rid of help2man... use the .1 directly.
This commit is contained in:
Juan RP 2017-02-08 15:59:33 +01:00
parent 316d86ebaf
commit d31bd0257c
3 changed files with 115 additions and 1 deletions

View File

@ -0,0 +1,82 @@
From 078b46c69d063aef1715b11348a2871d6036f253 Mon Sep 17 00:00:00 2001
From: Christos Zoulas <christos@zoulas.com>
Date: Sun, 22 Jan 2017 18:34:30 +0100
Subject: [PATCH] Add more defines in the non-reentrant part.
Fix the reentrant part; don't "#define yyfoo yyfoo" because it breaks
code that does #ifndef yywrap ..
---
src/flex.skl | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/flex.skl b/src/flex.skl
index 190700f..6a7cde4 100644
--- src/flex.skl
+++ src/flex.skl
@@ -61,11 +61,17 @@ m4_changequote([[, ]])
m4_ifelse(M4_YY_PREFIX,yy,,
#define yy_create_buffer M4_YY_PREFIX[[_create_buffer]]
#define yy_delete_buffer M4_YY_PREFIX[[_delete_buffer]]
-#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]
+#define yy_scan_buffer M4_YY_PREFIX[[_scan_buffer]]
+#define yy_scan_string M4_YY_PREFIX[[_scan_string]]
+#define yy_scan_bytes M4_YY_PREFIX[[_scan_bytes]]
#define yy_init_buffer M4_YY_PREFIX[[_init_buffer]]
#define yy_flush_buffer M4_YY_PREFIX[[_flush_buffer]]
#define yy_load_buffer_state M4_YY_PREFIX[[_load_buffer_state]]
#define yy_switch_to_buffer M4_YY_PREFIX[[_switch_to_buffer]]
+#define yypush_buffer_state M4_YY_PREFIX[[push_buffer_state]]
+#define yypop_buffer_state M4_YY_PREFIX[[pop_buffer_state]]
+#define yyensure_buffer_stack M4_YY_PREFIX[[ensure_buffer_stack]]
+#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]
#define yyin M4_YY_PREFIX[[in]]
#define yyleng M4_YY_PREFIX[[leng]]
#define yylex M4_YY_PREFIX[[lex]]
@@ -107,7 +113,7 @@ m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define([[M4_YY_PREFIX]], [[yy]])]])
m4preproc_define(`M4_GEN_PREFIX',
``[[#define yy$1 ]]M4_YY_PREFIX[[$1]]
-m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
+%# m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
%if-c++-only
/* The c++ scanner is a mess. The FlexLexer.h header file relies on the
@@ -120,6 +126,7 @@ m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
%endif
%if-c-only
+m4_ifelse(M4_YY_PREFIX,yy,,
M4_GEN_PREFIX(`_create_buffer')
M4_GEN_PREFIX(`_delete_buffer')
M4_GEN_PREFIX(`_scan_buffer')
@@ -155,6 +162,7 @@ m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
M4_GEN_PREFIX(`set_column')
]])
M4_GEN_PREFIX(`wrap')
+)
%endif
m4_ifdef( [[M4_YY_BISON_LVAL]],
@@ -170,11 +178,14 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
]])
+m4_ifelse(M4_YY_PREFIX,yy,,
M4_GEN_PREFIX(`alloc')
M4_GEN_PREFIX(`realloc')
M4_GEN_PREFIX(`free')
+)
%if-c-only
+m4_ifelse(M4_YY_PREFIX,yy,,
m4_ifdef( [[M4_YY_NOT_REENTRANT]],
[[
M4_GEN_PREFIX(`text')
@@ -184,6 +195,7 @@ m4_ifdef( [[M4_YY_NOT_REENTRANT]],
M4_GEN_PREFIX(`_flex_debug')
M4_GEN_PREFIX(`lineno')
]])
+)
%endif

View File

@ -0,0 +1,32 @@
--- doc/Makefile.in.orig 2017-02-08 15:54:38.164525908 +0100
+++ doc/Makefile.in 2017-02-08 15:57:04.101172972 +0100
@@ -235,7 +235,6 @@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_V
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
-HELP2MAN = @HELP2MAN@
INDENT = @INDENT@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -351,7 +350,6 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
-help2man = @HELP2MAN@
FLEX = $(top_builddir)/src/flex$(EXEEXT)
info_TEXINFOS = flex.texi
dist_man_MANS = flex.1
@@ -880,11 +878,8 @@ uninstall-man: uninstall-man1
.PRECIOUS: Makefile
-flex.1: $(top_srcdir)/configure.ac $(top_srcdir)/src/flex.skl $(top_srcdir)/src/options.c $(top_srcdir)/src/options.h | $(FLEX)
- $(help2man) --name='$(PACKAGE_NAME)' --section=1 \
- --source='The Flex Project' --manual='Programming' \
- --output=$@ $(FLEX) \
- || rm -f $@
+flex.1:
+ $(INSTALL) -Dm644 doc/flex.1 $(DESTDIR)/usr/share/man/man1/flex.1
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -1,7 +1,7 @@
# Template file for 'flex'
pkgname=flex
version=2.6.3
revision=1
revision=2
build_style=gnu-configure
configure_args="--disable-bootstrap --disable-shared"
hostmakedepends="bison"