summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--controller/SqliteNetworkController.cpp4
-rw-r--r--make-linux.mk3
-rw-r--r--one.cpp4
-rw-r--r--osdep/PortMapper.cpp5
4 files changed, 16 insertions, 0 deletions
diff --git a/controller/SqliteNetworkController.cpp b/controller/SqliteNetworkController.cpp
index 799b30f8..060875f5 100644
--- a/controller/SqliteNetworkController.cpp
+++ b/controller/SqliteNetworkController.cpp
@@ -41,7 +41,11 @@
#include "../include/ZeroTierOne.h"
#include "../node/Constants.hpp"
+#ifdef ZT_USE_SYSTEM_JSON_PARSER
+#include <json-parser/json.h>
+#else
#include "../ext/json-parser/json.h"
+#endif
#include "SqliteNetworkController.hpp"
diff --git a/make-linux.mk b/make-linux.mk
index bd81f4df..33669210 100644
--- a/make-linux.mk
+++ b/make-linux.mk
@@ -53,6 +53,7 @@ ifeq ($(wildcard /usr/include/json-parser/json.h),)
OBJS+=ext/json-parser/json.o
else
LDLIBS+=-ljsonparser
+ DEFS+=-DZT_USE_SYSTEM_JSON_PARSER
endif
ifeq ($(ZT_OFFICIAL_RELEASE),1)
@@ -64,6 +65,7 @@ ifeq ($(ZT_USE_MINIUPNPC),1)
DEFS+=-DZT_USE_MINIUPNPC -DMINIUPNP_STATICLIB -DMINIUPNPC_SET_SOCKET_TIMEOUT -DMINIUPNPC_GET_SRC_ADDR -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -DOS_STRING=\"Linux\" -DMINIUPNPC_VERSION_STRING=\"2.0\" -DUPNP_VERSION_STRING=\"UPnP/1.1\" -DENABLE_STRNATPMPERR
OBJS+=osdep/PortMapper.o
+ # We always use ext/miniupnpc because versions that ship with various Linux distributions are too old
#ifeq ($(wildcard /usr/include/miniupnpc/miniupnpc.h),)
OBJS+=ext/miniupnpc/connecthostport.o ext/miniupnpc/igd_desc_parse.o ext/miniupnpc/minisoap.o ext/miniupnpc/minissdpc.o ext/miniupnpc/miniupnpc.o ext/miniupnpc/miniwget.o ext/miniupnpc/minixml.o ext/miniupnpc/portlistingparse.o ext/miniupnpc/receivedata.o ext/miniupnpc/upnpcommands.o ext/miniupnpc/upnpdev.o ext/miniupnpc/upnperrors.o ext/miniupnpc/upnpreplyparse.o
#else
@@ -74,6 +76,7 @@ ifeq ($(ZT_USE_MINIUPNPC),1)
OBJS+=ext/libnatpmp/natpmp.o ext/libnatpmp/getgateway.o
else
LDLIBS+=-lnatpmp
+ DEFS+=-DZT_USE_SYSTEM_NATPMP
endif
endif
diff --git a/one.cpp b/one.cpp
index 9e03daa6..d50cc25e 100644
--- a/one.cpp
+++ b/one.cpp
@@ -52,7 +52,11 @@
#include "version.h"
#include "include/ZeroTierOne.h"
+#ifdef ZT_USE_SYSTEM_JSON_PARSER
+#include <json-parser/json.h>
+#else
#include "ext/json-parser/json.h"
+#endif
#include "node/Identity.hpp"
#include "node/CertificateOfMembership.hpp"
diff --git a/osdep/PortMapper.cpp b/osdep/PortMapper.cpp
index 888cd651..cd48bf5d 100644
--- a/osdep/PortMapper.cpp
+++ b/osdep/PortMapper.cpp
@@ -43,7 +43,12 @@
#include "../ext/miniupnpc/miniupnpc.h"
#include "../ext/miniupnpc/upnpcommands.h"
+
+#ifdef ZT_USE_SYSTEM_LIBNATPMP
+#include <natpmp.h>
+#else
#include "../ext/libnatpmp/natpmp.h"
+#endif
namespace ZeroTier {