Mike Frysinger fbf09abd20 fix license notice 18 lat temu
..
args fbf09abd20 fix license notice 18 lat temu
assert fbf09abd20 fix license notice 18 lat temu
build e9172f1313 fix license notice 18 lat temu
crypt e9172f1313 fix license notice 18 lat temu
ctype fbf09abd20 fix license notice 18 lat temu
dlopen e9172f1313 fix license notice 18 lat temu
inet e9172f1313 fix license notice 18 lat temu
malloc e9172f1313 fix license notice 18 lat temu
math e9172f1313 fix license notice 18 lat temu
misc e9172f1313 fix license notice 18 lat temu
mmap e9172f1313 fix license notice 18 lat temu
pthread e9172f1313 fix license notice 18 lat temu
pwd_grp fbf09abd20 fix license notice 18 lat temu
regex e9172f1313 fix license notice 18 lat temu
rpc e9172f1313 fix license notice 18 lat temu
setjmp e9172f1313 fix license notice 18 lat temu
signal fbf09abd20 fix license notice 18 lat temu
silly e9172f1313 fix license notice 18 lat temu
stat e9172f1313 fix license notice 18 lat temu
stdlib e9172f1313 fix license notice 18 lat temu
string e9172f1313 fix license notice 18 lat temu
termios e9172f1313 fix license notice 18 lat temu
time e9172f1313 fix license notice 18 lat temu
unistd fbf09abd20 fix license notice 18 lat temu
Makefile 84f59ea0e0 Move regex tests to their own subdir and dont run them if regex is disabled 18 lat temu
README 7434d62244 document new features 19 lat temu
Rules.mak 3cc033bed3 allow env to inject more CFLAGS/LDFLAGS, and remove old LSFLAGS 18 lat temu
Test.mak 6a76f96032 also kill gdb files when building BFLT files 18 lat temu
test-skeleton.c 1bfe52d8ef update MMU ifdef check 18 lat temu
testsuite.h b0340327e3 Update copyright 18 lat temu

README

-----------
For: User
-----------

The following make variables may help you in testing:
- UCLIBC_ONLY - only run tests against uClibc
- GLIBC_ONLY - only run tests against glibc
- COMPILE_ONLY - just build the tests, don't run them
- V / VERBOSE - run tests with a lot of output

So, to just run the uClibc tests, try this:
make check UCLIBC_ONLY=1

----------------
For: Developer
----------------

The structure of this test system is:
test/ toplevel dir containing common test code
test/Rules.mak Common build code
test/Test.mak Runtime test make code
test/subdir/ code specific to a subsystem is stored in a subdir
test/subdir/Makefile describe the tests to run
test/subdir/*.c the tests

Each subdir Makefile must include the toplevel Test.mak file. Before doing so,
you may define the TESTS and TESTS_DISABLED variables. If you do not, TESTS
is built automatically based upon all the .c files in the subdir.
TESTS := foo
TESTS_DISABLED := bar
include ../Test.mak
Each test must use a similar .c name; so the "foo" test needs a "foo.c".

Additionally, the following options further control specific test behavior:
CFLAGS_foo := extra cflags to use to compile test
DODIFF_foo := compare the output of the glibc and uClibc tests (see below)
LDFLAGS_foo := extra ldflags to use to link test
OPTS_foo := extra options to pass to test
RET_foo := expected exit code of test; default is 0
WRAPPER_foo := execute stuff just before test

Or to control all tests in a subdir:
EXTRA_CLEAN := extra files to remove in the clean target
EXTRA_CFLAGS := -DFOO
EXTRA_LDFLAGS := -lpthread
OPTS :=
WRAPPER :=

If you want to compare the output of a test with known good output, then just
create a local file named "foo.out.good" and the output generated by the test
"foo" will be automatically stored in "foo.out" and compared to "foo.out.good".