gnu99 to c99 (not compiler dependent) produces a warning for mkstemp
[anf2cnf:anf2cnf.git] / Makefile
1 CC = gcc
2 CFLAGS = -Wall -fPIC -std=c99 -pedantic -O3
3
4 HEAD = libanf2cnf.h
5 LIB = libanf2cnf.so
6 OBJ = libanf2cnf.o libdatastruct.o
7 EXE = parseanf anf2cnf propagate GBsolve SATsolve looping
8 PREFIX = /usr/local
9
10 all: $(EXE) $(LIB)
11
12 debug:
13         $(MAKE) -f debug.mk
14
15 parseanf: parseanf.c $(OBJ)
16
17 propagate: propagate.c $(OBJ)
18
19 anf2cnf: anf2cnf.c $(OBJ)
20
21 GBsolve: GBsolve.c $(OBJ)
22
23 SATsolve: SATsolve.c $(OBJ)
24
25 looping: looping.c $(OBJ)
26
27 bestbits: bestbits.cpp $(OBJ)
28
29 libanf2cnf.so: $(OBJ)
30         gcc -shared -o $@ $+
31
32 install: $(EXE) $(LIB) $(HEADER)
33         cp $(EXE) $(PREFIX)/bin/
34         cp $(LIB) $(PREFIX)/lib/
35         cp $(HEAD) $(PREFIX)/include/
36
37 uninstall:
38         rm -f $(foreach E, $(EXE), $(PREFIX)/bin/$(E))
39         rm -f $(foreach L, $(LIB), $(PREFIX)/lib/$(L))
40         rm -f $(foreach H, $(HEAD), $(PREFIX)/lib/$(H))
41
42 clean:
43         rm -f $(OBJ) $(EXE) $(LIB)
44
45 .PHONY: all debug install uninstall clean