]> git.llucax.com Git - software/mutest.git/blob - sample/Makefile
Implement test suite initialization and termination
[software/mutest.git] / sample / Makefile
1
2 # Show the tests summary
3 V=-v
4
5 CFLAGS = -Wall -std=c89
6
7 TARGET = tester
8 SUITES_RUNNER_SRC = test_suite_runner.c
9 MKMUTEST = ../mkmutest
10 MUTEST_H = ../mutest.h
11 MUTEST_C = ../mutest.c
12
13 OBJS = factorial.o sum.o
14 TESTS = factorial_test.o sum_test.o init_fail_test.o
15 MUTEST = mutest.o
16 SUITES_RUNNER = $(SUITES_RUNNER_SRC:.c=.o)
17 SO = factorial.so sum.so init_fail_test.so
18 ALL = $(SUITES_RUNNER) $(OBJS) $(TESTS) $(MUTEST)
19
20 all: $(TARGET)
21
22 py: $(SO)
23
24 $(TARGET): $(ALL)
25         $(CC) $(LDFLAGS) -o $@ $^
26
27 $(SUITES_RUNNER_SRC): $(MKMUTEST) $(MUTEST_H) $(TESTS)
28         $(MKMUTEST) $(MUTEST_H) $(TESTS) > $@
29
30 factorial.so: factorial_test.c
31
32 sum.so: sum_test.c
33
34 $(MUTEST): ../mutest.c
35         $(CC) $(CFLAGS) -c -o mutest.o $^
36
37 test: $(TARGET)
38         ./$(TARGET) $(V)
39
40 test-py: $(SO)
41         ../py/mutest $(V) -a
42
43 clean:
44         $(RM) $(TARGET) $(SO) $(ALL) $(SUITES_RUNNER_SRC)
45
46 .c.so:
47         $(CC) $(CFLAGS) $(LDFLAGS) -DMUTEST_PY -fPIC -shared -o $@ $^
48
49 .SUFFIXES: .so
50
51 .PHONY: all test clean
52