You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/gnome-extra/cinnamon/files/cinnamon-1.8.8.1-optional-n...

146 lines
5.1 KiB

--- a/configure.ac
+++ b/configure.ac
@@ -83,8 +83,40 @@
gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_MIN_VERSION
libcanberra
polkit-agent-1 >= $POLKIT_MIN_VERSION xfixes
- libnm-glib libnm-util gnome-keyring-1
gnome-desktop-3.0 >= GNOME_DESKTOP_MIN_VERSION)
+
+##########################
+# Check for NetworkManager
+##########################
+NM_MIN_VERSION=0.9
+AC_ARG_ENABLE(networkmanager,
+ AS_HELP_STRING([--disable-networkmanager],
+ [disable NetworkManager support @<:@default=auto@:>@]),,
+ [enable_networkmanager=auto])
+
+if test "x$enable_networkmanager" != "xno"; then
+ PKG_CHECK_MODULES(NETWORKMANAGER,
+ [libnm-glib libnm-util gnome-keyring-1],
+ [have_networkmanager=yes],
+ [have_networkmanager=no])
+
+ CINNAMON_CFLAGS="$CINNAMON_CFLAGS $NETWORKMANAGER_CFLAGS"
+ CINNAMON_LIBS="$CINNAMON_LIBS $NETWORKMANAGER_LIBS"
+else
+ have_networkmanager="no (disabled)"
+fi
+
+if test "x$have_networkmanager" = "xyes"; then
+ AC_DEFINE(HAVE_NETWORKMANAGER, [1], [Define if we have NetworkManager])
+ AC_SUBST([HAVE_NETWORKMANAGER], [1])
+else
+ if test "x$enable_networkmanager" = "xyes"; then
+ AC_MSG_ERROR([Couldn't find NetworkManager.])
+ fi
+ AC_SUBST([HAVE_NETWORKMANAGER], [0])
+fi
+
+AM_CONDITIONAL(HAVE_NETWORKMANAGER, test "$have_networkmanager" = "yes")
PKG_CHECK_MODULES(CINNAMON_PERF_HELPER, gtk+-3.0 gio-2.0)
@@ -242,3 +274,15 @@
files/Makefile
])
AC_OUTPUT
+
+echo "
+Build configuration:
+
+ Prefix: ${prefix}
+ Source code location: ${srcdir}
+ Compiler: ${CC}
+ Compiler Warnings: $enable_compile_warnings
+
+ Support for NetworkManager: $have_networkmanager
+ Support for GStreamer recording: $build_recorder
+"
--- a/js/misc/config.js.in
+++ b/js/misc/config.js.in
@@ -8,5 +8,7 @@
const GJS_VERSION = '@GJS_VERSION@';
/* 1 if gnome-bluetooth is available, 0 otherwise */
const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
+/* 1 if networkmanager is available, 0 otherwise */
+const HAVE_NETWORKMANAGER = @HAVE_NETWORKMANAGER@;
/* The system TLS CA list */
const CINNAMON_SYSTEM_CA_FILE = '@CINNAMON_SYSTEM_CA_FILE@';
--- a/js/ui/main.js
+++ b/js/ui/main.js
@@ -57,6 +57,7 @@
const AppletManager = imports.ui.appletManager;
const AutomountManager = imports.ui.automountManager;
const AutorunManager = imports.ui.autorunManager;
+const Config = imports.misc.config;
const DeskletManager = imports.ui.deskletManager;
const EndSessionDialog = imports.ui.endSessionDialog;
const PolkitAuthenticationAgent = imports.ui.polkitAuthenticationAgent;
@@ -70,7 +71,7 @@
const RunDialog = imports.ui.runDialog;
const Layout = imports.ui.layout;
const LookingGlass = imports.ui.lookingGlass;
-const NetworkAgent = imports.ui.networkAgent;
+const NetworkAgent = Config.HAVE_NETWORKMANAGER ? imports.ui.networkAgent : null;
const NotificationDaemon = imports.ui.notificationDaemon;
const WindowAttentionHandler = imports.ui.windowAttentionHandler;
const Scripting = imports.ui.scripting;
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -111,9 +111,7 @@
cinnamon-generic-container.h \
cinnamon-gtk-embed.h \
cinnamon-global.h \
- cinnamon-mobile-providers.h \
cinnamon-mount-operation.h \
- cinnamon-network-agent.h \
cinnamon-perf-log.h \
cinnamon-screenshot.h \
cinnamon-screen-grabber.h \
@@ -125,6 +123,10 @@
cinnamon-window-tracker.h \
cinnamon-wm.h \
cinnamon-xfixes-cursor.h
+
+if HAVE_NETWORKMANAGER
+cinnamon_public_headers_h += cinnamon-mobile-providers.h cinnamon-network-agent.h
+endif
libcinnamon_la_SOURCES = \
$(cinnamon_built_sources) \
@@ -149,9 +151,7 @@
cinnamon-generic-container.c \
cinnamon-gtk-embed.c \
cinnamon-global.c \
- cinnamon-mobile-providers.c \
cinnamon-mount-operation.c \
- cinnamon-network-agent.c \
cinnamon-perf-log.c \
cinnamon-polkit-authentication-agent.h \
cinnamon-polkit-authentication-agent.c \
@@ -166,6 +166,10 @@
cinnamon-wm.c \
cinnamon-xfixes-cursor.c
+if HAVE_NETWORKMANAGER
+libcinnamon_la_SOURCES += cinnamon-mobile-providers.c cinnamon-network-agent.c
+endif
+
libcinnamon_la_gir_sources = \
$(filter-out %-private.h $(cinnamon_recorder_non_gir_sources), $(cinnamon_public_headers_h) $(libcinnamon_la_SOURCES))
@@ -277,7 +281,10 @@
libcinnamon_la_CPPFLAGS = $(cinnamon_cflags)
Cinnamon-0.1.gir: libcinnamon.la St-1.0.gir
-Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 GMenu-3.0 NetworkManager-1.0 NMClient-1.0
+Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 GMenu-3.0
+if HAVE_NETWORKMANAGER
+Cinnamon_0_1_gir_INCLUDES += NetworkManager-1.0 NMClient-1.0
+endif
Cinnamon_0_1_gir_CFLAGS = $(libcinnamon_la_CPPFLAGS) -I $(srcdir)
Cinnamon_0_1_gir_LIBS = libcinnamon.la
Cinnamon_0_1_gir_FILES = $(libcinnamon_la_gir_sources)