forked from ebeauce/Seismic_BPMF
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
36 lines (28 loc) · 835 Bytes
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# DIRECTORIES
maindir=BPMF
libdir=$(maindir)/lib
# define compilers
NVCC=nvcc
CC=gcc
# define commands
#all: $(libdir)/libc.so $(libdir)/libcu.so
all: $(libdir)/libc.so
python_cpu: $(libdir)/libc.so
#python_gpu: $(libdir)/libcu.so
.SUFFIXES: .c .cu
# GPU FLAGS
COPTIMFLAGS_GPU=-O3
CFLAGS_GPU=-D_FORCE_INLINE -Xcompiler "-fopenmp -fPIC -march=native -ftree-vectorize" -Xlinker -lgomp
CARDDEPENDENTFLAG=-arch=sm_35
LDFLAGS_GPU=--shared
# CPU FLAGS
COPTIMFLAGS_CPU=-O3
CFLAGS_CPU=-fopenmp -fPIC -ftree-vectorize -march=native -std=c99
LDFLAGS_CPU=-shared
# build for python
#$(libdir)/libcu.so: $(maindir)/libcu.cu
# $(NVCC) $(COPTIMFLAGS_GPU) $(CFLAGS_GPU) $(CARDDEPENDENTFLAG) $(LDFLAGS_GPU) $< -o $@
$(libdir)/libc.so: $(maindir)/libc.c
$(CC) $(COPTIMFLAGS_CPU) $(CFLAGS_CPU) $(LDFLAGS_CPU) $< -o $@
clean:
rm $(libdir)/*.so