|
|
|
# root directory holding homebrew
|
|
|
|
BREWROOT = /usr/local
|
|
|
|
BOOSTROOT = ${BREWROOT}/opt/boost
|
|
|
|
SSLROOT = ${BREWROOT}/opt/libressl
|
|
|
|
UPNPROOT = ${BREWROOT}/opt/miniupnpc
|
|
|
|
CXXFLAGS = ${CXX_DEBUG} -Wall -std=c++11 -DMAC_OSX -Wno-overloaded-virtual
|
|
|
|
INCFLAGS = -I${SSLROOT}/include -I${BOOSTROOT}/include
|
|
|
|
LDFLAGS = ${LD_DEBUG}
|
|
|
|
|
|
|
|
ifndef TRAVIS
|
|
|
|
CXX = clang++
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(USE_STATIC),yes)
|
|
|
|
LDLIBS = -lz ${SSLROOT}/lib/libcrypto.a ${SSLROOT}/lib/libssl.a ${BOOSTROOT}/lib/libboost_system.a ${BOOSTROOT}/lib/libboost_date_time.a ${BOOSTROOT}/lib/libboost_filesystem.a ${BOOSTROOT}/lib/libboost_program_options.a -lpthread
|
|
|
|
else
|
|
|
|
LDFLAGS += -L${SSLROOT}/lib -L${BOOSTROOT}/lib
|
|
|
|
LDLIBS = -lz -lcrypto -lssl -lboost_system -lboost_date_time -lboost_filesystem -lboost_program_options -lpthread
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(USE_UPNP),yes)
|
|
|
|
LDFLAGS += -ldl
|
|
|
|
CXXFLAGS += -DUSE_UPNP
|
|
|
|
INCFLAGS += -I${UPNPROOT}/include
|
|
|
|
ifeq ($(USE_STATIC),yes)
|
|
|
|
LDLIBS += ${UPNPROOT}/lib/libminiupnpc.a
|
|
|
|
else
|
|
|
|
LDFLAGS += -L${UPNPROOT}/lib
|
|
|
|
LDLIBS += -lminiupnpc
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
# OSX Notes
|
|
|
|
# http://www.hutsby.net/2011/08/macs-with-aes-ni.html
|
|
|
|
# Seems like all recent Mac's have AES-NI, after firmware upgrade 2.2
|
|
|
|
# Found no good way to detect it from command line. TODO: Might be some osx sysinfo magic
|
|
|
|
ifeq ($(USE_AESNI),yes)
|
|
|
|
CXXFLAGS += -maes
|
|
|
|
endif
|
|
|
|
ifeq ($(USE_AVX),1)
|
|
|
|
CXXFLAGS += -mavx
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
|
|
# Disabled, since it will be the default make rule. I think its better
|
|
|
|
# to define the default rule in Makefile and not Makefile.<ostype> - torkel
|
|
|
|
#install: all
|
|
|
|
# test -d ${PREFIX} || mkdir -p ${PREFIX}/
|
|
|
|
# cp -r i2p ${PREFIX}/
|