reformed the Makefile for generality

pull/58/head
Levi Rak 2017-05-30 13:21:46 -06:00
parent 8c977e2654
commit 70c71f05db
2 changed files with 51 additions and 75 deletions

3
.gitignore vendored
View File

@ -65,6 +65,9 @@ android/wolfssljni-ndk-sample/proguard-project.txt
/tls/server-tcp
/tls/client-tls-ecdhe
/tls/server-tls-ecdhe
/tls/client-tls-perf
/tls/server-tls-epoll-perf
/tls/server-tls-epoll-threaded
crypto/3des/3des-file-encrypt
crypto/aes/aes-file-encrypt

123
tls/Makefile 100755 → 100644
View File

@ -1,13 +1,30 @@
# TLS Examples Makefile
CC=gcc
LIB_PATH=/usr/local
CFLAGS=-Wall -I$(LIB_PATH)/include
LIBS=-L$(LIB_PATH)/lib -lm
DYN_LIB=-lwolfssl
STATIC_LIB=$(LIB_PATH)/lib/libwolfssl.a
DEBUG_FLAGS=-g -DDEBUG
DEBUG_INC_PATHS=-MD
OPTIMIZE=-Os
CC = gcc
LIB_PATH = /usr/local
CFLAGS = -Wall -I$(LIB_PATH)/include
LIBS = -L$(LIB_PATH)/lib -lm
# option variables
DYN_LIB = -lwolfssl
STATIC_LIB = $(LIB_PATH)/lib/libwolfssl.a
DEBUG_FLAGS = -g -DDEBUG
DEBUG_INC_PATHS = -MD
OPTIMIZE = -Os
# Options
#CFLAGS+=$(DEBUG_FLAGS)
CFLAGS+=$(OPTIMIZE)
#CFLAGS+=$(QAT_FLAGS)
#LIBS+=$(QAT_LIBS)
#LIBS+=$(STATIC_LIB)
LIBS+=$(DYN_LIB)
# build targets
SRC=$(wildcard *.c)
TARGETS=$(patsubst %.c, %, $(SRC))
LINUX_SPECIFIC=client-tls-perf \
server-tls-epoll-perf \
server-tls-epoll-threaded
# Intel QuickAssist
@ -21,14 +38,6 @@ QAT_FLAGS=-DDO_CRYPTO -DUSER_SPACE \
-I$(QAT_PATH)/quickassist/lookaside/access_layer/src/common/include
QAT_LIBS=-L$(QAT_PATH) -ladf_proxy -losal -licp_qa_al_s -lpthread
# Options
#CFLAGS+=$(DEBUG_FLAGS)
CFLAGS+=$(OPTIMIZE)
#CFLAGS+=$(QAT_FLAGS)
#LIBS+=$(QAT_LIBS)
#LIBS+=$(STATIC_LIB)
LIBS+=$(DYN_LIB)
# OS / CPU Detection
OS_DET=UNKNOWN
@ -68,64 +77,28 @@ endif
# $(info $$OS_DET is [${OS_DET}])
# $(info $$CPU_DET is [${CPU_DET}])
ifeq ($(OS_DET),LINUX)
all: client-tcp client-tls client-tls-nonblocking client-tls-ecdhe server-tls-ecdhe client-tls-perf client-tls-resume client-tls-writedup client-callback memory-tls server-tcp server-tls server-tls-nonblocking server-tls-threaded server-tls-epoll-perf server-callback server-tls-epoll-threaded
else
all: client-tcp client-tls client-tls-nonblocking client-tls-ecdhe server-tls-ecdhe client-tls-resume client-tls-writedup client-callback memory-tls server-tcp server-tls server-tls-nonblocking server-tls-threaded server-callback
endif
client-tcp: client-tcp.o
$(CC) -o $@ $^ $(CFLAGS)
client-tls: client-tls.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
client-tls-nonblocking: client-tls-nonblocking.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
client-tls-ecdhe: client-tls-ecdhe.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
server-tls-ecdhe: server-tls-ecdhe.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
client-tls-perf: client-tls-perf.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
client-tls-resume: client-tls-resume.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
client-tls-writedup: client-tls-writedup.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -lpthread
client-callback: client-callback.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
memory-tls: memory-tls.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -lpthread
server-tcp: server-tcp.o
$(CC) -o $@ $^ $(CFLAGS)
server-tls: server-tls.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
server-tls-nonblocking: server-tls-nonblocking.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
server-tls-epoll-perf: server-tls-epoll-perf.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
server-tls-threaded: server-tls-threaded.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -lpthread
server-callback: server-callback.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
server-tls-epoll-threaded: server-tls-epoll-threaded.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS) -lpthread
.PHONY: clean all
ifneq ($(OS_DET),LINUX)
all: $(filter-out $(LINUX_SPECIFIC), $(TARGETS))
else
all: $(TARGETS)
endif
debug: CFLAGS+=$(DEBUG_FLAGS)
debug: all
# add the -pthread flag to any threaded examples
%-threaded: CFLAGS+=-pthread
%-writedup: CFLAGS+=-pthread
memory-tls: CFLAGS+=-pthread
# compile tcp examples without the LIBS variable
%-tcp: LIBS=
# build template
%: %.c
$(CC) -o $@ $< $(CFLAGS) $(LIBS)
clean:
rm -f *.o client-tcp client-tls client-tls-nonblocking client-tls-ecdhe server-tls-ecdhe client-tls-perf client-tls-resume client-tls-writedup client-callback memory-tls server-tcp server-tls server-tls-nonblocking server-tls-threaded server-tls-epoll-perf server-callback server-tls-epoll-threaded
rm -f $(TARGETS)