1#
2# test directory makefile
3#
4
5FNAME        := LU_incpiv
6
7SRC_PATH     := ../..
8OBJ_PATH     := .
9
10INST_PATH    := $(HOME)/flame
11LIB_PATH     := $(INST_PATH)/lib
12INC_PATH     := $(INST_PATH)/include
13FLAME_LIB    := $(LIB_PATH)/libflame.a
14#BLAS_LIB     := $(LIB_PATH)/libgoto_core2.a
15BLAS_LIB     := $(LIB_PATH)/liblapack.a $(LIB_PATH)/libblas.a
16
17CC           := gcc
18FC           := gfortran
19LINKER       := $(CC)
20CFLAGS       := -I$(SRC_PATH) -I$(INC_PATH) -g -O3 -Wall
21FFLAGS       := $(CFLAGS)
22LDFLAGS      := -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.3/../../.. -lgfortranbegin -lgfortran -lm
23LDFLAGS      += -lpthread
24
25TEST_OBJS    := $(patsubst $(SRC_PATH)/%.c, $(OBJ_PATH)/%.o, $(wildcard $(SRC_PATH)/*.c))
26TEST_OBJS    += test_$(FNAME).o \
27                time_$(FNAME).o \
28                REF_$(FNAME).o
29TEST_BIN     := test_$(FNAME).x
30
31$(OBJ_PATH)/%.o: $(SRC_PATH)/%.c
32	$(CC) $(CFLAGS) -c $< -o $@
33%.o: %.c
34	$(CC) $(CFLAGS) -c $< -o $@
35
36test_$(FNAME): $(TEST_OBJS)
37	$(LINKER) $(TEST_OBJS) $(LDFLAGS) $(FLAME_LIB) $(LAPACK_LIB) $(BLAS_LIB) -o $(TEST_BIN)
38
39clean:
40	rm -f *.o $(OBJ_PATH)/*.o *~ core *.x
41
42