iproute2: update to 2.6.31
authorKoen Kooi <k-kooi@ti.com>
Wed, 20 Jan 2010 20:47:52 +0000 (21:47 +0100)
committerKoen Kooi <koen@openembedded.org>
Thu, 28 Jan 2010 13:58:37 +0000 (14:58 +0100)
conf/checksums.ini
recipes/iproute2/iproute2-2.6.31/new-flex-fix.patch [new file with mode: 0644]
recipes/iproute2/iproute2.inc
recipes/iproute2/iproute2_2.6.31.bb [new file with mode: 0644]

index 28aad60..c572412 100644 (file)
@@ -13014,6 +13014,10 @@ sha256=3c6b48af9e655e4f0a34c7718e288960a1dc84a3ac7eb726e855adb45fbd953a
 md5=a3ecfaa091289656fae786b027b44eda
 sha256=ff7b78ebb112ebeb3901fe36823328c4af89040b890c25db43d8e35ccbc663b3
 
+[http://developer.osdl.org/dev/iproute2/download/iproute2-2.6.31.tar.bz2]
+md5=230f35282a95451622f3e8394f9cd80a
+sha256=56875eaed9c581645422d89e00fa7da512256c82ac3dae3c5051ff6827e83152
+
 [http://downloads.sourceforge.net/ipsec-tools/ipsec-tools-0.5-rc1.tar.bz2]
 md5=74fc66f01937076f65079e194dd2b0d0
 sha256=325bfc9607ccf56e7de0e7973e18fac76678e50b8cf24d3818b4feb734a0e45d
diff --git a/recipes/iproute2/iproute2-2.6.31/new-flex-fix.patch b/recipes/iproute2/iproute2-2.6.31/new-flex-fix.patch
new file mode 100644 (file)
index 0000000..af72721
--- /dev/null
@@ -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.
+
+--- iproute-2.6.20-070313/tc/emp_ematch.l      2007/03/17 02:52:20     1.1
++++ iproute-2.6.20-070313/tc/emp_ematch.l      2007/03/17 02:54:01
+@@ -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;
index 9792bad..3b3d5b9 100644 (file)
@@ -22,6 +22,9 @@ EXTRA_OEMAKE = "CC='${CC}' \
 do_install () {
         oe_runmake DESTDIR=${D} install
         mv ${D}${base_sbindir}/ip ${D}${base_sbindir}/ip.iproute2
+        install -d ${D}${datadir}
+        mv ${D}/share/* ${D}${datadir}/ || true
+       rm ${D}/share -rf || true
 }
 
 FILES_${PN} += "/usr/lib/tc/*"
diff --git a/recipes/iproute2/iproute2_2.6.31.bb b/recipes/iproute2/iproute2_2.6.31.bb
new file mode 100644 (file)
index 0000000..eeb7ec7
--- /dev/null
@@ -0,0 +1,10 @@
+require iproute2.inc
+
+PR = "${INC_PR}.0"
+
+SRC_URI = "http://developer.osdl.org/dev/iproute2/download/${P}.tar.bz2 \
+          file://new-flex-fix.patch;patch=1 \
+         "
+
+S = "${WORKDIR}/iproute2-${PV}"
+