diff options
Diffstat (limited to 'meta/packages/flex')
-rw-r--r-- | meta/packages/flex/files/fix-gen.patch | 17 | ||||
-rw-r--r-- | meta/packages/flex/files/flex-lvalue.diff | 36 | ||||
-rw-r--r-- | meta/packages/flex/flex-2.5.31/include.patch | 27 | ||||
-rw-r--r-- | meta/packages/flex/flex-native_2.5.31.bb | 10 | ||||
-rw-r--r-- | meta/packages/flex/flex.inc | 11 | ||||
-rw-r--r-- | meta/packages/flex/flex_2.5.31.bb | 9 |
6 files changed, 110 insertions, 0 deletions
diff --git a/meta/packages/flex/files/fix-gen.patch b/meta/packages/flex/files/fix-gen.patch new file mode 100644 index 000000000..55f4f6fdf --- /dev/null +++ b/meta/packages/flex/files/fix-gen.patch @@ -0,0 +1,17 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- flex-2.5.31/gen.c~fix-gen ++++ flex-2.5.31/gen.c +@@ -1812,8 +1812,7 @@ + if (yytext_is_array) { + if (!reentrant){ + indent_puts ("static int yy_more_offset = 0;"); +- }else{ +- indent_puts ("static int yy_prev_more_offset = 0;"); ++ indent_puts ("static int yy_prev_more_offset = 0;"); + } + } + else if (!reentrant) { diff --git a/meta/packages/flex/files/flex-lvalue.diff b/meta/packages/flex/files/flex-lvalue.diff new file mode 100644 index 000000000..56ae539a6 --- /dev/null +++ b/meta/packages/flex/files/flex-lvalue.diff @@ -0,0 +1,36 @@ +Patch from http://bugs.debian.org/cgi-bin/bugreport.cgi/flex-lvalue.diff?bug=194844;msg=10;att=1 + +according to posix 0,1,2 are already setup and this avoids +the issues with +| filter.c: In function 'filter_apply_chain': +| filter.c:161: error: invalid lvalue in assignment +| filter.c:163: error: invalid lvalue in assignment +| filter.c:184: error: invalid lvalue in assignment + + +diff -ur flex-2.5.31.ORIG/filter.c flex-2.5.31/filter.c +--- flex-2.5.31.ORIG/filter.c 2003-03-25 16:39:08.000000000 +0000 ++++ flex-2.5.31/filter.c 2003-05-27 17:00:26.000000000 +0000 +@@ -157,11 +157,8 @@ + if (chain->filter_func) { + int r; + +- /* setup streams again */ +- if ((stdin = fdopen (0, "r")) == NULL) +- flexfatal (_("fdopen(0) failed")); +- if ((stdout = fdopen (1, "w")) == NULL) +- flexfatal (_("fdopen(1) failed")); ++ /* POSIX says we inherit fd[0-2], so we don't need ++ to do anything to them here */ + + if ((r = chain->filter_func (chain)) == -1) + flexfatal (_("filter_func failed")); +@@ -181,8 +178,6 @@ + if (dup2 (pipes[1], 1) == -1) + flexfatal (_("dup2(pipes[1],1)")); + close (pipes[1]); +- if ((stdout = fdopen (1, "w")) == NULL) +- flexfatal (_("fdopen(1) failed")); + + return true; + } diff --git a/meta/packages/flex/flex-2.5.31/include.patch b/meta/packages/flex/flex-2.5.31/include.patch new file mode 100644 index 000000000..b60dcb29d --- /dev/null +++ b/meta/packages/flex/flex-2.5.31/include.patch @@ -0,0 +1,27 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- flex-2.5.31/Makefile.am~include ++++ flex-2.5.31/Makefile.am +@@ -141,7 +141,7 @@ + tests + + localedir = $(datadir)/locale +-AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I@includedir@ -I$(top_srcdir)/intl ++AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I$(top_srcdir)/intl + LIBS = @LIBINTL@ @LIBS@ + + skel.c: flex.skl mkskel.sh flexint.h tables_shared.h +--- flex-2.5.31/Makefile.in~include ++++ flex-2.5.31/Makefile.in +@@ -292,7 +292,7 @@ + + + localedir = $(datadir)/locale +-AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I@includedir@ -I$(top_srcdir)/intl ++AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I$(top_srcdir)/intl + + # Run GNU indent on sources. Don't run this unless all the sources compile cleanly. + # diff --git a/meta/packages/flex/flex-native_2.5.31.bb b/meta/packages/flex/flex-native_2.5.31.bb new file mode 100644 index 000000000..ff8a42772 --- /dev/null +++ b/meta/packages/flex/flex-native_2.5.31.bb @@ -0,0 +1,10 @@ +include flex.inc +inherit native +PR = "r2" + +do_stage () { + install -m 0755 flex ${STAGING_BINDIR} + oe_libinstall -a libfl ${STAGING_LIBDIR} + ln -sf ./flex ${STAGING_BINDIR}/flex++ + ln -sf ./flex ${STAGING_BINDIR}/lex +} diff --git a/meta/packages/flex/flex.inc b/meta/packages/flex/flex.inc new file mode 100644 index 000000000..d6affad22 --- /dev/null +++ b/meta/packages/flex/flex.inc @@ -0,0 +1,11 @@ +DESCRIPTION = "Flex is a tool for generating programs that recognize lexical patterns in text." +SECTION = "devel" +LICENSE = "BSD" + +SRC_URI = "${SOURCEFORGE_MIRROR}/lex/flex-2.5.31.tar.bz2 \ + file://flex-lvalue.diff;patch=1 \ + file://fix-gen.patch;patch=1" +S = "${WORKDIR}/flex-${PV}" + +inherit autotools + diff --git a/meta/packages/flex/flex_2.5.31.bb b/meta/packages/flex/flex_2.5.31.bb new file mode 100644 index 000000000..b96c64513 --- /dev/null +++ b/meta/packages/flex/flex_2.5.31.bb @@ -0,0 +1,9 @@ +include flex.inc +PR = "r4" + +SRC_URI += "file://include.patch;patch=1" + +do_stage() { + oe_libinstall -a libfl ${STAGING_LIBDIR} +} + |