diff options
author | Jamie Lenehan <lenehan@twibble.org> | 2006-10-30 23:02:57 +0000 |
---|---|---|
committer | Jamie Lenehan <lenehan@twibble.org> | 2006-10-30 23:02:57 +0000 |
commit | 67ed763559af9bcbe3b8cf48ca52cc9f0df8c24b (patch) | |
tree | 39a1308901fbda6c35f6acf959cf13f9a817f7ab | |
parent | 6ba08e750c65b992fed89a82b82070a37ae92bbc (diff) |
iproute2 2.6.16: Add the tc (used for QoS) command back to iproute. It was
being left out due to errors compiling it when using recent versions of
flex, such as the one included in OE. The fix is to patch the flex input so
that there are no longer any conflicts with variables from the newer version
of flex.
-rw-r--r-- | packages/iproute2/iproute2-2.6.16/new-flex-fix.patch | 83 | ||||
-rw-r--r-- | packages/iproute2/iproute2_2.6.16.bb | 8 |
2 files changed, 89 insertions, 2 deletions
diff --git a/packages/iproute2/iproute2-2.6.16/new-flex-fix.patch b/packages/iproute2/iproute2-2.6.16/new-flex-fix.patch new file mode 100644 index 0000000000..2c04087839 --- /dev/null +++ b/packages/iproute2/iproute2-2.6.16/new-flex-fix.patch @@ -0,0 +1,83 @@ +The tc command was failing to build due to flex errors. These errors are +caused by an incompatible change to flex in recent versions, including the +version shipped with OE. + +This fix is as per the one used by opensure: + + http://lists.opensuse.org/opensuse-commit/2006-04/msg00090.html + +and simple renames str to prevent it conflicting. + +--- iproute2-2.6.16-060323/tc/emp_ematch.l 2006/10/30 22:46:29 1.1 ++++ iproute2-2.6.16-060323/tc/emp_ematch.l 2006/10/30 22:47:26 +@@ -63,7 +63,7 @@ + + %} + +-%x str ++%x STR + + %option 8bit stack warn noyywrap prefix="ematch_" + %% +@@ -78,17 +78,17 @@ + } + strbuf_index = 0; + +- BEGIN(str); ++ BEGIN(STR); + } + +-<str>\" { ++<STR>\" { + BEGIN(INITIAL); + yylval.b = bstr_new(strbuf, strbuf_index); + yylval.b->quoted = 1; + return ATTRIBUTE; + } + +-<str>\\[0-7]{1,3} { /* octal escape sequence */ ++<STR>\\[0-7]{1,3} { /* octal escape sequence */ + int res; + + sscanf(yytext + 1, "%o", &res); +@@ -100,12 +100,12 @@ + strbuf_append_char((unsigned char) res); + } + +-<str>\\[0-9]+ { /* catch wrong octal escape seq. */ ++<STR>\\[0-9]+ { /* catch wrong octal escape seq. */ + fprintf(stderr, "error: invalid octale escape sequence\n"); + return ERROR; + } + +-<str>\\x[0-9a-fA-F]{1,2} { ++<STR>\\x[0-9a-fA-F]{1,2} { + int res; + + sscanf(yytext + 2, "%x", &res); +@@ -118,16 +118,16 @@ + strbuf_append_char((unsigned char) res); + } + +-<str>\\n strbuf_append_char('\n'); +-<str>\\r strbuf_append_char('\r'); +-<str>\\t strbuf_append_char('\t'); +-<str>\\v strbuf_append_char('\v'); +-<str>\\b strbuf_append_char('\b'); +-<str>\\f strbuf_append_char('\f'); +-<str>\\a strbuf_append_char('\a'); ++<STR>\\n strbuf_append_char('\n'); ++<STR>\\r strbuf_append_char('\r'); ++<STR>\\t strbuf_append_char('\t'); ++<STR>\\v strbuf_append_char('\v'); ++<STR>\\b strbuf_append_char('\b'); ++<STR>\\f strbuf_append_char('\f'); ++<STR>\\a strbuf_append_char('\a'); + +-<str>\\(.|\n) strbuf_append_char(yytext[1]); +-<str>[^\\\n\"]+ strbuf_append_charp(yytext); ++<STR>\\(.|\n) strbuf_append_char(yytext[1]); ++<STR>[^\\\n\"]+ strbuf_append_charp(yytext); + + [aA][nN][dD] return AND; + [oO][rR] return OR; diff --git a/packages/iproute2/iproute2_2.6.16.bb b/packages/iproute2/iproute2_2.6.16.bb index 26805a779d..d71421d1e4 100644 --- a/packages/iproute2/iproute2_2.6.16.bb +++ b/packages/iproute2/iproute2_2.6.16.bb @@ -5,8 +5,9 @@ DEPENDS = "flex-native bison-native" DATE="060323" SRC_URI="http://developer.osdl.org/dev/iproute2/download/${P}-${DATE}.tar.gz \ - file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0" -PR="r0" + file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0 \ + file://new-flex-fix.patch;patch=1" +PR="r1" S="${WORKDIR}/${P}-${DATE}" EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip' SBINDIR=/sbin" @@ -14,3 +15,6 @@ EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include DOCDIR=$ do_install () { oe_runmake DESTDIR=${D} install } + +FILES_${PN} += "/usr/lib/tc/*" +FILES_${PN}-dbg += "/usr/lib/tc/.debug" |