60 lines
2 KiB
Diff
60 lines
2 KiB
Diff
From 518214ee85e10c5bc99d3b115ae7ac9cc3fc14fc Mon Sep 17 00:00:00 2001
|
|
From: Alexandre Rostovtsev <tetromino@gentoo.org>
|
|
Date: Mon, 29 Apr 2013 23:02:25 -0400
|
|
Subject: [PATCH] Avoid build-time dependency on NetworkManager
|
|
|
|
Needed to prevent a dependency loop:
|
|
nm -> libsoup -> glib-networking -> libproxy -> nm
|
|
|
|
https://bugs.gentoo.org/467696
|
|
---
|
|
libproxy/cmake/modules/network_networkmanager.cmk | 4 ++--
|
|
libproxy/modules/network_networkmanager.cpp | 21 ++++++++++++++++++++-
|
|
2 files changed, 22 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/libproxy/cmake/modules/network_networkmanager.cmk b/libproxy/cmake/modules/network_networkmanager.cmk
|
|
index d9f9588..2586bbd 100644
|
|
--- a/libproxy/cmake/modules/network_networkmanager.cmk
|
|
+++ b/libproxy/cmake/modules/network_networkmanager.cmk
|
|
@@ -1,3 +1,3 @@
|
|
if (NOT WIN32 AND NOT APPLE)
|
|
- px_check_modules(NM NetworkManager dbus-1)
|
|
-endif()
|
|
\ No newline at end of file
|
|
+ px_check_modules(NM dbus-1)
|
|
+endif()
|
|
diff --git a/libproxy/modules/network_networkmanager.cpp b/libproxy/modules/network_networkmanager.cpp
|
|
index 564c275..a03425b 100644
|
|
--- a/libproxy/modules/network_networkmanager.cpp
|
|
+++ b/libproxy/modules/network_networkmanager.cpp
|
|
@@ -23,7 +23,26 @@
|
|
using namespace libproxy;
|
|
|
|
#include <dbus/dbus.h>
|
|
-#include <NetworkManager/NetworkManager.h>
|
|
+
|
|
+
|
|
+/*
|
|
+ * copy-pasted from NetworkManager-0.9.6.4's NetworkManager.h to prevent
|
|
+ * a circular dependency; https://bugs.gentoo.org/467696
|
|
+ */
|
|
+#define NM_DBUS_PATH "/org/freedesktop/NetworkManager"
|
|
+#define NM_DBUS_INTERFACE "org.freedesktop.NetworkManager"
|
|
+typedef enum {
|
|
+ NM_STATE_UNKNOWN = 0,
|
|
+ NM_STATE_ASLEEP = 10,
|
|
+ NM_STATE_DISCONNECTED = 20,
|
|
+ NM_STATE_DISCONNECTING = 30,
|
|
+ NM_STATE_CONNECTING = 40,
|
|
+ NM_STATE_CONNECTED_LOCAL = 50,
|
|
+ NM_STATE_CONNECTED_SITE = 60,
|
|
+ NM_STATE_CONNECTED_GLOBAL = 70
|
|
+} NMState;
|
|
+#define NM_STATE_CONNECTED NM_STATE_CONNECTED_GLOBAL
|
|
+
|
|
|
|
class networkmanager_network_extension : public network_extension {
|
|
public:
|
|
--
|
|
1.8.2.1
|
|
|