Mike Frysinger 10d97e5ec6 revert unintended commit vor 18 Jahren
..
args ced4d2934b dont bother setting TESTS now vor 18 Jahren
assert ced4d2934b dont bother setting TESTS now vor 18 Jahren
crypt ced4d2934b dont bother setting TESTS now vor 18 Jahren
ctype 4697c772ca dont bother exporting variables and use := where appropriate vor 18 Jahren
dlopen 114823013d convert to new test framework vor 18 Jahren
inet 642708958e need Makefile for inet subdir vor 18 Jahren
malloc a3e9840d06 update malloc(0) check to handle expected behavior based upon config options vor 18 Jahren
math 93bd833d59 convert to new framework and disable all tests that fail vor 18 Jahren
misc 80753368c1 fix const position typo as pointed out by ia64/gcc vor 18 Jahren
mmap deea2d5cfa enable test if LFS is enabled vor 18 Jahren
pthread ced4d2934b dont bother setting TESTS now vor 18 Jahren
pwd_grp ced4d2934b dont bother setting TESTS now vor 18 Jahren
rpc ccb3a37f93 convert to new test framework vor 18 Jahren
setjmp d825ff6ae4 grab some tests from glibc vor 18 Jahren
signal 1bfe52d8ef update MMU ifdef check vor 18 Jahren
silly ced4d2934b dont bother setting TESTS now vor 18 Jahren
stat 869fedf9ad blah, use a stable target instead of messing with timestamps on .c files vor 18 Jahren
stdlib ced4d2934b dont bother setting TESTS now vor 18 Jahren
string ced4d2934b dont bother setting TESTS now vor 18 Jahren
termios ced4d2934b dont bother setting TESTS now vor 18 Jahren
unistd 10d97e5ec6 revert unintended commit vor 18 Jahren
Makefile 05e5500c72 dynamically build the DIRS variables so i dont have to keep updating it all the time vor 18 Jahren
README 7434d62244 document new features vor 18 Jahren
Rules.mak 402cf95663 make sure we build against local headers and link against local libs vor 18 Jahren
Test.mak 12afa83a99 make sure we clean everything vor 18 Jahren
test-skeleton.c 1bfe52d8ef update MMU ifdef check vor 18 Jahren
testsuite.h f15067a5ef dont include atexit() if uClibc doesnt support it vor 18 Jahren

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".