OUT = ../../../lib/libpcnd.a

# source files.
SRC = error.cpp flatten.cpp ioutils.cpp memory.cpp models.cpp precnd.cpp precnd_fft.cpp smooth.cpp version.cpp
OBJ = $(SRC:.cpp=.o)

# include directories
INC = -I. -I../include -I../../../include/CImg -I/usr/local/include

# C compiler flags (-g -O2 -Wall)
CFLAGS = -O2 -Wall -fPIC

# C++ compiler flags (-g -O2 -Wall)
CPPFLAGS = -g -O2 -Wall -fPIC

# compiler
CPP = g++

# library paths
LIBS = -L../ -L/usr/local/lib -lm

# compile flags
LDFLAGS = -g

.SUFFIXES: .cpp

default: $(OUT)

.cpp.o:
	$(CPP) $(INC) $(CPPFLAGS) -c $< -o $@

$(OUT): $(OBJ)
	ar rcs $(OUT) $(OBJ)

clean:
	rm -f $(OBJ) *~

# DO NOT DELETE

flatten.o: flatten_cpu.hpp algebra.hpp config.h /usr/include/CImg.h chol.hpp
memory.o: /usr/include/malloc.h /usr/include/features.h
memory.o: /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h
memory.o: /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h
memory.o: /usr/include/memory.h /usr/include/string.h /usr/include/stdlib.h
memory.o: /usr/include/sys/types.h /usr/include/bits/types.h
memory.o: /usr/include/bits/typesizes.h /usr/include/time.h
memory.o: /usr/include/endian.h /usr/include/bits/endian.h
memory.o: /usr/include/sys/select.h /usr/include/bits/select.h
memory.o: /usr/include/bits/sigset.h /usr/include/bits/time.h
memory.o: /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h
memory.o: /usr/include/alloca.h
models.o: models.hpp sparse.hpp vector.hpp config.h /usr/include/CImg.h
models.o: /usr/include/malloc.h /usr/include/features.h
models.o: /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h
models.o: /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h
models.o: /usr/include/memory.h /usr/include/string.h
precnd.o: precnd.hpp models.hpp sparse.hpp vector.hpp config.h
precnd.o: /usr/include/CImg.h /usr/include/malloc.h /usr/include/features.h
precnd.o: /usr/include/sys/cdefs.h /usr/include/bits/wordsize.h
precnd.o: /usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h
precnd.o: /usr/include/memory.h /usr/include/string.h munnqp.hpp
smooth.o: config.h /usr/include/CImg.h
