From 31f5178c84355483bb8d72eb665e5bad2a8e055e Mon Sep 17 00:00:00 2001
From: Alexey <AlexeyAB@users.noreply.github.com>
Date: Sat, 05 Aug 2017 11:36:51 +0000
Subject: [PATCH] Update Readme.md

---
 Makefile |   39 +++++++++++++++++++++++++++++++++++----
 1 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index f5524b9..cd3bccb 100644
--- a/Makefile
+++ b/Makefile
@@ -2,19 +2,35 @@
 CUDNN=0
 OPENCV=0
 DEBUG=0
+OPENMP=0
+LIBSO=0
 
-ARCH= --gpu-architecture=compute_52 --gpu-code=compute_52
+ARCH= -gencode arch=compute_20,code=[sm_20,sm_21] \
+      -gencode arch=compute_30,code=sm_30 \
+      -gencode arch=compute_35,code=sm_35 \
+      -gencode arch=compute_50,code=[sm_50,compute_50] \
+      -gencode arch=compute_52,code=[sm_52,compute_52] \
+      -gencode arch=compute_61,code=[sm_61,compute_61]
+
+# This is what I use, uncomment if you know your arch and want to specify
+# ARCH=  -gencode arch=compute_52,code=compute_52
 
 VPATH=./src/
 EXEC=darknet
 OBJDIR=./obj/
 
+ifeq ($(LIBSO), 1)
+LIBNAMESO=darknet.so
+APPNAMESO=uselib
+endif
+
 CC=gcc
+CPP=g++
 NVCC=nvcc 
 OPTS=-Ofast
 LDFLAGS= -lm -pthread 
 COMMON= 
-CFLAGS=-Wall -Wfatal-errors 
+CFLAGS=-Wall -Wfatal-errors
 
 ifeq ($(DEBUG), 1) 
 OPTS=-O0 -g
@@ -29,6 +45,11 @@
 COMMON+= `pkg-config --cflags opencv` 
 endif
 
+ifeq ($(OPENMP), 1)
+CFLAGS+= -fopenmp
+LDFLAGS+= -lgomp
+endif
+
 ifeq ($(GPU), 1) 
 COMMON+= -DGPU -I/usr/local/cuda/include/
 CFLAGS+= -DGPU
@@ -50,7 +71,17 @@
 OBJS = $(addprefix $(OBJDIR), $(OBJ))
 DEPS = $(wildcard src/*.h) Makefile
 
-all: obj backup results $(EXEC)
+all: obj backup results $(EXEC) $(LIBNAMESO) $(APPNAMESO)
+
+ifeq ($(LIBSO), 1) 
+CFLAGS+= -fPIC
+
+$(LIBNAMESO): $(OBJS)
+	$(CPP) -shared -std=c++11 -fvisibility=hidden -DYOLODLL_EXPORTS $(COMMON) $(CFLAGS) $^ -o $@ src/yolo_v2_class.cpp $(LDFLAGS)
+	
+$(APPNAMESO): $(OBJS)
+	$(CPP) -std=c++11 $(COMMON) $(CFLAGS) -o $@ src/yolo_console_dll.cpp $(LDFLAGS) -L ./ -l:$(LIBNAMESO)
+endif
 
 $(EXEC): $(OBJS)
 	$(CC) $(COMMON) $(CFLAGS) $^ -o $@ $(LDFLAGS)
@@ -71,5 +102,5 @@
 .PHONY: clean
 
 clean:
-	rm -rf $(OBJS) $(EXEC)
+	rm -rf $(OBJS) $(EXEC) $(LIBNAMESO) $(APPNAMESO)
 

--
Gitblit v1.10.0