Build without /usr/local/snark14
[snark14.git] / src / DIGRand / Makefile
1 # Makefile to build an instance of snark14
2
3 ROOTDIR    = ../..
4 XERCES     = ../..
5
6 CC         = gcc
7 CXX        = g++
8 LD         = g++
9
10 LIBDIR    = $(ROOTDIR)/lib
11
12 CXXFLAGS  = -O4 -fPIC -DLINUX -D_REENTRANT -w -Wunused-parameter
13
14 LDFLAGS   = 
15
16 SRC_CXX    = DIGGauss.cpp \
17              DIGPoisson.cpp \
18              DIGRand.cpp
19
20 OBJ_CXX    = DIGGauss.o \
21              DIGPoisson.o \
22              DIGRand.o
23
24 INCLUDES   = -I/usr/include -I./include -I$(XERCES)/include \
25              -I$(ROOTDIR)/include/DIGFile -I$(ROOTDIR)/include/DIGFileSnark \
26              -I$(ROOTDIR)/include/DIGRand
27
28 LIBPATH   = -L$(PREFIX)/lib -L$(XERCES)/lib
29 LIBS      = $(LIBPATH) -lm -lxerces-c
30
31 TARGET    = $(LIBDIR)/libDIGRand.so
32
33 .PHONY: all
34
35 all: $(LIBDIR) $(TARGET)
36
37 $(TARGET): $(OBJ_CXX)
38         $(LD) --shared $(LIBS) $(LDFLAGS) -o $(TARGET) $(OBJ_CXX)
39
40 DIGGauss.o : DIGGauss.cpp
41         $(CXX) -c $(CXXFLAGS) $(INCLUDES) -o $@ $<
42
43 DIGPoisson.o : DIGPoisson.cpp
44         $(CXX) -c $(CXXFLAGS) $(INCLUDES) -o $@ $<
45
46 DIGRand.o : DIGRand.cpp
47         $(CXX) -c $(CXXFLAGS) $(INCLUDES) -o $@ $<
48
49 clean:
50         @rm -rf $(OBJ_CXX) $(TARGET)
51