diff --git a/configure.ac b/configure.ac index 504de170..6689c437 100644 --- a/configure.ac +++ b/configure.ac @@ -128,6 +128,26 @@ AM_COND_IF([ENABLE_TOOLS], [ ]) ]) +AC_ARG_ENABLE([proxy_server], AS_HELP_STRING([--enable-proxy-server], [Enable proxy server ability]), proxy_server=yes, proxy_server=no) +AM_CONDITIONAL(ENABLE_PROXY_SERVER, test x$proxy_server == xyes) +AM_COND_IF([ENABLE_PROXY_SERVER], [ + AC_CHECK_LIB(restbed, exit,, AC_MSG_ERROR([Missing restbed files])) + PKG_CHECK_MODULES([Jsoncpp], [jsoncpp >= 1.7.4]) + CPPFLAGS+=" -DOPENDHT_PROXY_SERVER=true -ljsoncpp -lrestbed" + + AC_ARG_ENABLE([proxy_server_optionals], AS_HELP_STRING([--enable-proxy-server-optionals], + [Enable proxy server ability]), proxy_server_optionals=yes, proxy_server_optionals=no) + AM_CONDITIONAL(ENABLE_PROXY_SERVER_OPTIONALS, test x$proxy_server_optionals == xyes) + AM_COND_IF([ENABLE_PROXY_SERVER_OPTIONALS], [ + CPPFLAGS+=" -DOPENDHT_PROXY_SERVER_OPTIONAL=true" + ], [ + CPPFLAGS+=" -DOPENDHT_PROXY_SERVER_OPTIONAL=false" + ]) +], [ + CPPFLAGS+=" -DOPENDHT_PROXY_SERVER=false" +]) + + AC_CONFIG_FILES([doc/Doxyfile doc/Makefile]) dnl Configure setup.py if we build the python module diff --git a/src/Makefile.am b/src/Makefile.am index f4614795..e9dd2e9f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -54,6 +54,11 @@ nobase_include_HEADERS = \ ../include/opendht/rng.h \ ../include/opendht/indexation/pht.h +if ENABLE_PROXY_SERVER +libopendht_la_SOURCES += base64.cpp dhtproxyserver.cpp +nobase_include_HEADERS += ../include/opendht/base64.h ../include/opendht/dhtproxyserver.h +endif + clean-local: rm -rf libargon2.la diff --git a/tools/Makefile.am b/tools/Makefile.am index 610fd76f..821ddce1 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am @@ -11,3 +11,9 @@ dhtchat_LDFLAGS = -lopendht -lreadline -L@top_builddir@/src/.libs @Argon2_LDFLAG dhtscanner_SOURCES = dhtscanner.cpp dhtscanner_LDFLAGS = -lopendht -lreadline -L@top_builddir@/src/.libs @Argon2_LDFLAGS@ @GnuTLS_LIBS@ + +if ENABLE_PROXY_SERVER +dhtnode_LDFLAGS += -lrestbed -ljsoncpp +dhtchat_LDFLAGS += -lrestbed -ljsoncpp +dhtscanner_LDFLAGS += -lrestbed -ljsoncpp +endif