Joel Grunbaum
2022-01-13 d2cfd3eeeb8b6af3b7ccda01e6c1ac581a2df398
Makefile
@@ -1,16 +1,41 @@
CC=clang
CXX=clang
CXXFLAGS=-g -Wall -std=c++20
OS=$(shell uname)
CXX=g++
CXXFLAGS=-std=c++20 -DNOSSL
DEV=1
TEST=1
.PHONY: default all
default: all
ifeq ($(DEV),1)
   CXXFLAGS += -Wall -g
else
   CXXFLAGS += -O3 -flto
endif
all: exec
ifneq ($(OS),Darwin)
CXXFLAGS += -static
endif
exec: main.o book.o
   ${CXX} -o $@ $^
ifeq ($(TEST),1)
   CXXFLAGS += -DTEST_EXCHANGE
endif
%: %.cpp %.hpp
   ${CXX} ${CXXFLAGS} -o $@ $^
ws=easywsclient/easywsclient.o
xml=ftplibpp/ftplib.o
main=${ws} ${xml} json.o bom.o protocol.o book.o
default: test click bot
test: test.o strat.o ${main}
   ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ $^
click: click.o ${main}
   ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ $^
bot: bot.o strat.o ${main}
   ${CXX} ${CXXFLAGS} ${LDFLAGS} -o $@ $^
%.o: %.cpp
   ${CXX} ${CXXFLAGS} -c -o $@ $^
.PHONY: clean
clean:
   rm -f ${main} test click bot