bootstrap
[www.jankratochvil.net.git] / project / oslik / oslik / GNUmakefile
1 TARGET=oslik.zip oslik minsol.txt
2
3 all: $(TARGET)
4
5 CFLAGS=-Wall -DNDEBUG
6 CFLAGS+=-O9 -fexpensive-optimizations
7
8 pipe:
9         mknod -m600 pipe p
10
11 test: pipe do oslik
12         @echo
13         @echo 'Checking C vs. Prolog consistency...'
14         @echo ' You need approx 150MB of free memory.'
15         @free
16         @echo
17         ./do >pipe 2>/dev/null&./oslik|diff -u - pipe|tee errs
18         @$(RM) pipe
19         @if [ -s errs ];then echo 'Consistency check FAILED - see screen/file "errs" for details!';false;fi
20         @$(RM) errs
21         @echo Consistency check passed.
22
23 minsol.txt: oslik
24         (./oslik 2>/dev/null|tail +2|awk '/^\*/{exit}{print}'|todos >minsol.txt;true) 2>/dev/null
25
26 out-c: oslik
27         time ./oslik >$@
28
29 out-pla: do oslik-assert.pl
30         ./do oslik-assert.pl >$@
31
32 out-plh: do oslik-hash.pl
33         ./do oslik-hash.pl >$@
34
35 oslik.zip: index.html minsol.txt GNUmakefile do oslik.c oslik-assert.pl oslik-hash.pl .plrc pl-3.1.2.diff .htaccess
36         $(RM) $@
37         zip -9 $@ $^
38
39 .PHONY: fine clean
40
41 fine:
42         $(RM) *.o *_.pl errs out* core gmon.out
43
44 clean: fine
45         $(RM) $(TARGET)