Mike Frysinger 84bd0fb2c6 document new test framework 20 lat temu
..
args bc99d85793 need a slightly different version of output for the glibc test 20 lat temu
assert 4697c772ca dont bother exporting variables and use := where appropriate 20 lat temu
crypt 376101ce84 convert to new test system 20 lat temu
ctype 4697c772ca dont bother exporting variables and use := where appropriate 20 lat temu
dlopen 114823013d convert to new test framework 20 lat temu
inet 11d855b217 simple test for the if_nameindex() related functions 20 lat temu
malloc 4790a50914 just use := instead of = 20 lat temu
math 93bd833d59 convert to new framework and disable all tests that fail 20 lat temu
misc b90ca275ff get rid of link time warning with tmpname() 20 lat temu
mmap 4697c772ca dont bother exporting variables and use := where appropriate 20 lat temu
pthread 68742b37aa convert to new test framework 20 lat temu
pwd_grp ccb3a37f93 convert to new test framework 20 lat temu
rpc ccb3a37f93 convert to new test framework 20 lat temu
setjmp 4697c772ca dont bother exporting variables and use := where appropriate 20 lat temu
signal 10e7c9d7d6 convert to new test framework 20 lat temu
silly 4697c772ca dont bother exporting variables and use := where appropriate 20 lat temu
stat 0507762860 fix stat64 20 lat temu
stdlib ccb3a37f93 convert to new test framework 20 lat temu
string 400925d81c grab a bunch of tests from glibc 20 lat temu
termios 68742b37aa convert to new test framework 20 lat temu
unistd db32ff428f sync with glibc 20 lat temu
Makefile 93b8512378 add more test dirs, touchup output, and some other misc touchups 20 lat temu
README 84bd0fb2c6 document new test framework 20 lat temu
Rules.mak ff5243aa1c touchup whitespace, remove STRIPTOOL since we no longer use it, and add -Wl,-rpath to default LDFLAGS to fix shared runtime tests to make sure we load libs from the local build rather than the system or (even worse) glibc 20 lat temu
Test.mak a6665c95b0 allow subdirs to define extra clean files 20 lat temu
test-skeleton.c 073f4ac283 import from glibc to make further glibc test importing easier 20 lat temu
testsuite.h f15067a5ef dont include atexit() if uClibc doesnt support it 20 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 define the TESTS variable and include the
toplevel Test.mak file:
TESTS := foo
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".