Add SLRE - Super Light Regular Expression library
authorWolfgang Denk <wd@denx.de>
Sat, 23 Mar 2013 23:50:31 +0000 (23:50 +0000)
committerTom Rini <trini@ti.com>
Wed, 1 May 2013 20:24:00 +0000 (16:24 -0400)
commita5ecbe62c25c7c9d6ddd0c9eb4d5ec3350642614
tree9e093483ccce2638393c02fcae2b6ea4c2158f58
parentd87244d5af58cbc2d9cc3f5314648deb7810f10a
Add SLRE - Super Light Regular Expression library

Downloaded from http://slre.sourceforge.net/
and adapted for U-Boot environment.

Used to implement regex operations on environment variables.
Code size is ~ 3.5 KiB on PPC.

To enable this code, define the  CONFIG_REGEX  option in your board
config file.

Note:  There are more recent versions of the SLRE library available at
http://slre.googlecode.com ; unfortunately, the new code has a heavily
reorked API which makes it less usable for our purposes:
- the return code is strings, which are more difficult to process
- we don't get any information any more which sub-string of the data
  was matched by the given regex
- it is much more cumbersome to work with arbitrary expressions, where
  for example the number of substrings for capturing are not known at
  compile time
Also, there does not seem to be any real changes or improvements of
the functionality.

Because of this, we deliberately stick with the older code.

Note 2: the test code (built when SLRE_TEST is defined) was modified
to allow for more extensive testing; now we can test the regexp
matching on all lines on a text file (instead of the whole data in the
file as a single block).

Signed-off-by: Wolfgang Denk <wd@denx.de>
README
include/slre.h [new file with mode: 0644]
lib/Makefile
lib/slre.c [new file with mode: 0644]