diff --git a/sflphone-common/configure.ac b/sflphone-common/configure.ac
index d4b9b3a5f19789b85990a01144ac9accd4a93bff..e3c869ac137efc92d95629e957910492f57c93b6 100644
--- a/sflphone-common/configure.ac
+++ b/sflphone-common/configure.ac
@@ -382,6 +382,15 @@ AC_ARG_WITH([iax2],
 AC_DEFINE([HAVE_IAX], test "x$with_iax2" = "xyes", [Define if you have libiax2])
 AM_CONDITIONAL(USE_IAX, test "x$with_iax2" = "xyes" )
 
+	dnl Check for network-manager
+AC_ARG_WITH([networkmanager],
+		[AS_HELP_STRING([--without-networkmanager],
+			[disable support for network-manager events])],
+		[],
+		[with_networkmanager=yes])
+
+AM_CONDITIONAL(USE_NETWORKMANAGER, test "x$with_networkmanager" = "xyes" )
+
 # check for doxygen, mostly stolen from http://log4cpp.sourceforge.net/
 # ----------------------------------------------------------------------------
 AC_DEFUN([BB_ENABLE_DOXYGEN],
diff --git a/sflphone-common/src/Makefile.am b/sflphone-common/src/Makefile.am
index 1dcc2584f19f6b6bee248f05d3aa6b2ade725085..6df7edf547de482c996c7039f25fe1a98915f193 100644
--- a/sflphone-common/src/Makefile.am
+++ b/sflphone-common/src/Makefile.am
@@ -29,8 +29,14 @@ IAX_CXXFLAG=
 IAX_LIB=
 endif
 
+if USE_NETWORKMANAGER
+NETWORKMANAGER=-DUSE_NETWORKMANAGER
+else
+NETWORKMANAGER=
+endif
+
 sflphoned_CXXFLAGS = \
-		-DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\" $(IAX_CXXFLAG)\
+		-DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\" $(IAX_CXXFLAG) $(NETWORKMANAGER) \
 		-DVERSION=\"$(VERSION)\" \
 		@ZRTPCPP_CFLAGS@ \
 		@libssl_CFLAGS@
diff --git a/sflphone-common/src/dbus/Makefile.am b/sflphone-common/src/dbus/Makefile.am
index 7ee673bcb390861864b81ca82b9f880d018b78dc..a3c5dbbf0c81d5e11e84f0ec676aaebc8f036be9 100644
--- a/sflphone-common/src/dbus/Makefile.am
+++ b/sflphone-common/src/dbus/Makefile.am
@@ -20,7 +20,13 @@ libdbus_la_SOURCES = \
     dbusmanagerimpl.cpp  \
     networkmanager.cpp
 
-libdbus_la_CXXFLAGS = -DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\"
+if USE_NETWORKMANAGER
+NETWORKMANAGER=-DUSE_NETWORKMANAGER
+else
+NETWORKMANAGER=
+endif
+
+libdbus_la_CXXFLAGS = -DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\" $(NETWORKMANAGER)
 
 libdbus_la_LIBADD = $(top_srcdir)/libs/dbus-c++/src/libdbus-c++-1.la
 
diff --git a/sflphone-common/src/dbus/dbusmanagerimpl.cpp b/sflphone-common/src/dbus/dbusmanagerimpl.cpp
index 61504e8782fa68c3c5b3ffddba638cccfed8cad7..bfcc237ca369d02225fefb68023f0a62bc2877cc 100644
--- a/sflphone-common/src/dbus/dbusmanagerimpl.cpp
+++ b/sflphone-common/src/dbus/dbusmanagerimpl.cpp
@@ -41,7 +41,9 @@ DBusManagerImpl::exec()
     _configurationManager = new ConfigurationManager (sessionConnection);
     _instanceManager = new Instance (sessionConnection);
 
+#ifdef USE_NETWORKMANAGER
     _networkManager = new NetworkManager(systemConnection, "/org/freedesktop/NetworkManager", "");
+#endif
 
     // Register accounts
     Manager::instance().initRegisterAccounts(); //getEvents();
diff --git a/sflphone-common/src/dbus/networkmanager.cpp b/sflphone-common/src/dbus/networkmanager.cpp
index a34e21345b31095f3d62b656446a34f2ebf8f545..b1197b6c0fa72ee7af8fe172210d2020cb699383 100644
--- a/sflphone-common/src/dbus/networkmanager.cpp
+++ b/sflphone-common/src/dbus/networkmanager.cpp
@@ -1,3 +1,5 @@
+#ifdef USE_NETWORKMANAGER
+
 #include <global.h>
 #include "networkmanager.h"
 #include <iostream>
@@ -57,3 +59,4 @@ NetworkManager::NetworkManager(DBus::Connection& connection, const DBus::Path& p
 {
 }
 
+#endif