Mike Frysinger cf61af7af9 make sure cleanup handler is only called once 17 anni fa
..
args f79ff0842e fixup my copyright notice, trim stale remnants of older notices which 18 anni fa
assert ddea243aab fix test to work even if CPPFLAGS contains -DNDEBUG 18 anni fa
build e9172f1313 fix license notice 18 anni fa
crypt e9172f1313 fix license notice 18 anni fa
ctype f79ff0842e fixup my copyright notice, trim stale remnants of older notices which 18 anni fa
dlopen 9da4b6afff make sure static variables are re-initialized everytime 17 anni fa
inet 92a56f367e fixup prototype warnings 18 anni fa
malloc e9172f1313 fix license notice 18 anni fa
math e9172f1313 fix license notice 18 anni fa
misc 9a7cfea9e5 fixup shadowed warnings 18 anni fa
mmap e9172f1313 fix license notice 18 anni fa
pthread cf61af7af9 make sure cleanup handler is only called once 17 anni fa
pwd_grp 832255d18a clean up 18 anni fa
regex e9172f1313 fix license notice 18 anni fa
rpc e9172f1313 fix license notice 18 anni fa
setjmp 6477e385d9 mark local function static 18 anni fa
signal 9a7cfea9e5 fixup shadowed warnings 18 anni fa
silly e9172f1313 fix license notice 18 anni fa
stat 92a56f367e fixup prototype warnings 18 anni fa
stdio 1ca1f363d7 new cheesy test by Denis Vlasenko to trigger fclose loop 18 anni fa
stdlib fa0c6d9666 import a slightly modified realpath() test case from glibc 18 anni fa
string 9a7cfea9e5 fixup shadowed warnings 18 anni fa
termios e9172f1313 fix license notice 18 anni fa
time 9a7cfea9e5 fixup shadowed warnings 18 anni fa
unistd df80b74f4b mark some funcs as noreturn 18 anni fa
Makefile 0955b708c0 start pulling in top level Rules.mak so we get access to import CFLAGS/LDFLAGS/CPPFLAGS 18 anni fa
README f88a9032ce indent 18 anni fa
Rules.mak e2f06f4eb0 make sure UCLIBC_LDSO can be found via path 18 anni fa
Test.mak 92a56f367e fixup prototype warnings 18 anni fa
test-skeleton.c 1bfe52d8ef update MMU ifdef check 18 anni fa
testsuite.h 0633d640b5 fixup warnings 18 anni fa

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
- CHECK_ONLY - only run the tests, don't compile or link 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".