-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
executable file
·38 lines (28 loc) · 911 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
36
37
38
CXX := nvcc
DEBUG := -O3
export DEBUG
OBJS := $(patsubst %.cpp,%.cpp.o,$(wildcard src/*.cpp))
OBJS += $(patsubst %.cu,%.cu.o,$(wildcard src/*.cu))
PROCESSOR_ARCHITECTURE := $(shell uname -i)
ifneq (,$(findstring arm,$(PROCESSOR_ARCHITECTURE)))
TUNE_FOR_ARCH :=-m32 --target-cpu-architecture ARM --compiler-options=''
else
TUNE_FOR_ARCH :=-march=native
endif
QUIET :=
export QUIET
CXXFLAGS :=-I/usr/local/cuda-6.5/include -std=c++11 -Xcompiler "$(DEBUG)" $(TUNE_FOR_ARCH) -gencode arch=compute_32,code=sm_32 $(DEVICE_DEBUG) $(QUIET)
HOST_LDFLAGS :=-L/src -lpthread
LDFLAGS :=-lcudart -L/usr/local/cuda-6.5/lib
.PHONY: clean
.DEFAULT: all
all: $(OBJS)
$(CXX) $(OBJS) $(LDFLAGS) -Xlinker "$(HOST_LDFLAGS)" -o softmax
clean-objectfiles:
rm -r $(OBJS)
clean: clean-objectfiles
rm softmax
%.cpp.o: %.cpp
$(CXX) $(CFLAGS) -c $< -o $@ $(CXXFLAGS)
%.cu.o: %.cu
$(CXX) $(CFLAGS) -c $< -o $@ $(CXXFLAGS)