summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDan Winship <danw@redhat.com>2015-04-06 16:42:31 -0400
committerDan Winship <danw@redhat.com>2015-07-24 13:25:47 -0400
commit3452ee2a0e3d04a324e7b9cd153323a353d5c182 (patch)
treef87c48e6b2d2777ee893f9d6aeabd95ee97bd8ca /src
parentdd0e19895532504e6de615d18a761457ec685b58 (diff)
downloadNetworkManager-3452ee2a0e3d04a324e7b9cd153323a353d5c182.tar.gz
all: rename nm-glib-compat.h to nm-glib.h, use everywhere
Rather than randomly including one or more of <glib.h>, <glib-object.h>, and <gio/gio.h> everywhere (and forgetting to include "nm-glib-compat.h" most of the time), rename nm-glib-compat.h to nm-glib.h, include <gio/gio.h> from there, and then change all .c files in NM to include "nm-glib.h" rather than including the glib headers directly. (Public headers files still have to include the real glib headers, since nm-glib.h isn't installed...) Also, remove glib includes from header files that are already including a base object header file (which must itself already include the glib headers).
Diffstat (limited to 'src')
-rw-r--r--src/NetworkManagerUtils.c3
-rw-r--r--src/NetworkManagerUtils.h2
-rw-r--r--src/devices/adsl/nm-atm-manager.c2
-rw-r--r--src/devices/adsl/nm-atm-manager.h3
-rw-r--r--src/devices/adsl/nm-device-adsl.c2
-rw-r--r--src/devices/adsl/nm-device-adsl.h3
-rw-r--r--src/devices/bluetooth/nm-bluez-device.c3
-rw-r--r--src/devices/bluetooth/nm-bluez-device.h4
-rw-r--r--src/devices/bluetooth/nm-bluez-manager.c2
-rw-r--r--src/devices/bluetooth/nm-bluez-manager.h3
-rw-r--r--src/devices/bluetooth/nm-bluez4-adapter.c2
-rw-r--r--src/devices/bluetooth/nm-bluez4-adapter.h3
-rw-r--r--src/devices/bluetooth/nm-bluez4-manager.h7
-rw-r--r--src/devices/bluetooth/nm-bluez5-dun.h3
-rw-r--r--src/devices/bluetooth/nm-bluez5-manager.c2
-rw-r--r--src/devices/bluetooth/nm-bluez5-manager.h7
-rw-r--r--src/devices/bluetooth/nm-bt-error.c2
-rw-r--r--src/devices/bluetooth/nm-device-bt.c3
-rw-r--r--src/devices/nm-device-bond.c2
-rw-r--r--src/devices/nm-device-bond.h2
-rw-r--r--src/devices/nm-device-bridge.c2
-rw-r--r--src/devices/nm-device-bridge.h3
-rw-r--r--src/devices/nm-device-ethernet-utils.c2
-rw-r--r--src/devices/nm-device-ethernet-utils.h2
-rw-r--r--src/devices/nm-device-ethernet.c3
-rw-r--r--src/devices/nm-device-ethernet.h2
-rw-r--r--src/devices/nm-device-factory.h3
-rw-r--r--src/devices/nm-device-generic.c1
-rw-r--r--src/devices/nm-device-generic.h2
-rw-r--r--src/devices/nm-device-gre.h2
-rw-r--r--src/devices/nm-device-infiniband.c3
-rw-r--r--src/devices/nm-device-infiniband.h2
-rw-r--r--src/devices/nm-device-macvlan.h2
-rw-r--r--src/devices/nm-device-tun.h2
-rw-r--r--src/devices/nm-device-veth.h2
-rw-r--r--src/devices/nm-device-vlan.c2
-rw-r--r--src/devices/nm-device-vlan.h2
-rw-r--r--src/devices/nm-device-vxlan.h2
-rw-r--r--src/devices/nm-device.c3
-rw-r--r--src/devices/nm-device.h3
-rw-r--r--src/devices/team/nm-device-team.c3
-rw-r--r--src/devices/team/nm-device-team.h2
-rw-r--r--src/devices/team/nm-team-factory.h2
-rw-r--r--src/devices/wifi/nm-device-olpc-mesh.c3
-rw-r--r--src/devices/wifi/nm-device-olpc-mesh.h2
-rw-r--r--src/devices/wifi/nm-device-wifi.c4
-rw-r--r--src/devices/wifi/nm-device-wifi.h2
-rw-r--r--src/devices/wifi/nm-wifi-ap.c2
-rw-r--r--src/devices/wifi/nm-wifi-ap.h3
-rw-r--r--src/devices/wifi/tests/test-wifi-ap-utils.c2
-rw-r--r--src/devices/wwan/nm-device-modem.c2
-rw-r--r--src/devices/wwan/nm-device-modem.h3
-rw-r--r--src/devices/wwan/nm-modem-broadband.h1
-rw-r--r--src/devices/wwan/nm-modem-manager.h1
-rw-r--r--src/devices/wwan/nm-modem.h2
-rw-r--r--src/devices/wwan/nm-wwan-factory.h2
-rw-r--r--src/dhcp-manager/Makefile.am1
-rw-r--r--src/dhcp-manager/nm-dhcp-client.c2
-rw-r--r--src/dhcp-manager/nm-dhcp-client.h5
-rw-r--r--src/dhcp-manager/nm-dhcp-dhclient-utils.c2
-rw-r--r--src/dhcp-manager/nm-dhcp-dhclient-utils.h5
-rw-r--r--src/dhcp-manager/nm-dhcp-dhclient.c4
-rw-r--r--src/dhcp-manager/nm-dhcp-dhclient.h4
-rw-r--r--src/dhcp-manager/nm-dhcp-dhcpcd.c3
-rw-r--r--src/dhcp-manager/nm-dhcp-dhcpcd.h3
-rw-r--r--src/dhcp-manager/nm-dhcp-helper.c2
-rw-r--r--src/dhcp-manager/nm-dhcp-listener.c3
-rw-r--r--src/dhcp-manager/nm-dhcp-listener.h3
-rw-r--r--src/dhcp-manager/nm-dhcp-manager.c3
-rw-r--r--src/dhcp-manager/nm-dhcp-manager.h3
-rw-r--r--src/dhcp-manager/nm-dhcp-systemd.c3
-rw-r--r--src/dhcp-manager/nm-dhcp-systemd.h3
-rw-r--r--src/dhcp-manager/nm-dhcp-utils.c2
-rw-r--r--src/dhcp-manager/nm-dhcp-utils.h4
-rw-r--r--src/dhcp-manager/tests/test-dhcp-dhclient.c2
-rw-r--r--src/dhcp-manager/tests/test-dhcp-utils.c2
-rw-r--r--src/dns-manager/nm-dns-dnsmasq.c2
-rw-r--r--src/dns-manager/nm-dns-dnsmasq.h3
-rw-r--r--src/dns-manager/nm-dns-manager.c3
-rw-r--r--src/dns-manager/nm-dns-manager.h2
-rw-r--r--src/dns-manager/nm-dns-plugin.c2
-rw-r--r--src/dns-manager/nm-dns-plugin.h3
-rw-r--r--src/dns-manager/nm-dns-unbound.h2
-rw-r--r--src/dnsmasq-manager/nm-dnsmasq-manager.c2
-rw-r--r--src/dnsmasq-manager/nm-dnsmasq-manager.h3
-rw-r--r--src/dnsmasq-manager/nm-dnsmasq-utils.h2
-rw-r--r--src/dnsmasq-manager/tests/test-dnsmasq-utils.c2
-rw-r--r--src/main-utils.c4
-rw-r--r--src/main-utils.h2
-rw-r--r--src/main.c2
-rw-r--r--src/nm-activation-request.h3
-rw-r--r--src/nm-active-connection.c3
-rw-r--r--src/nm-active-connection.h2
-rw-r--r--src/nm-auth-manager.h2
-rw-r--r--src/nm-auth-subject.c3
-rw-r--r--src/nm-auth-subject.h3
-rw-r--r--src/nm-auth-utils.c2
-rw-r--r--src/nm-auth-utils.h2
-rw-r--r--src/nm-config-data.h3
-rw-r--r--src/nm-config.c7
-rw-r--r--src/nm-config.h3
-rw-r--r--src/nm-connection-provider.h2
-rw-r--r--src/nm-connectivity.c2
-rw-r--r--src/nm-connectivity.h4
-rw-r--r--src/nm-dbus-manager.c2
-rw-r--r--src/nm-dbus-manager.h2
-rw-r--r--src/nm-dcb.c2
-rw-r--r--src/nm-dcb.h2
-rw-r--r--src/nm-default-route-manager.h2
-rw-r--r--src/nm-dhcp4-config.c3
-rw-r--r--src/nm-dhcp4-config.h3
-rw-r--r--src/nm-dhcp6-config.c3
-rw-r--r--src/nm-dhcp6-config.h3
-rw-r--r--src/nm-dispatcher.c4
-rw-r--r--src/nm-dispatcher.h2
-rw-r--r--src/nm-firewall-manager.c3
-rw-r--r--src/nm-firewall-manager.h2
-rw-r--r--src/nm-iface-helper.c2
-rw-r--r--src/nm-ip4-config.h2
-rw-r--r--src/nm-ip6-config.c2
-rw-r--r--src/nm-ip6-config.h2
-rw-r--r--src/nm-logging.c2
-rw-r--r--src/nm-logging.h3
-rw-r--r--src/nm-manager.c3
-rw-r--r--src/nm-manager.h3
-rw-r--r--src/nm-multi-index.c3
-rw-r--r--src/nm-multi-index.h2
-rw-r--r--src/nm-policy.c3
-rw-r--r--src/nm-properties-changed-signal.h2
-rw-r--r--src/nm-rfkill-manager.h2
-rw-r--r--src/nm-route-manager.h2
-rw-r--r--src/nm-session-monitor.c3
-rw-r--r--src/nm-session-monitor.h2
-rw-r--r--src/nm-sleep-monitor-systemd.c2
-rw-r--r--src/nm-sleep-monitor-upower.c2
-rw-r--r--src/nm-sleep-monitor.h2
-rw-r--r--src/platform/nm-platform.h3
-rw-r--r--src/platform/tests/monitor.c2
-rw-r--r--src/platform/wifi/wifi-utils-nl80211.c2
-rw-r--r--src/platform/wifi/wifi-utils-private.h2
-rw-r--r--src/platform/wifi/wifi-utils-wext.c3
-rw-r--r--src/platform/wifi/wifi-utils.c2
-rw-r--r--src/platform/wifi/wifi-utils.h2
-rw-r--r--src/ppp-manager/nm-ppp-manager.c2
-rw-r--r--src/ppp-manager/nm-ppp-manager.h4
-rw-r--r--src/ppp-manager/nm-pppd-plugin.c3
-rw-r--r--src/rdisc/nm-rdisc.h2
-rw-r--r--src/settings/nm-agent-manager.c2
-rw-r--r--src/settings/nm-agent-manager.h3
-rw-r--r--src/settings/nm-inotify-helper.c2
-rw-r--r--src/settings/nm-inotify-helper.h4
-rw-r--r--src/settings/nm-secret-agent.c3
-rw-r--r--src/settings/nm-secret-agent.h3
-rw-r--r--src/settings/nm-settings-connection.c2
-rw-r--r--src/settings/nm-settings.h1
-rw-r--r--src/settings/nm-system-config-interface.h4
-rw-r--r--src/settings/plugins/ibft/plugin.c3
-rw-r--r--src/settings/plugins/ibft/plugin.h2
-rw-r--r--src/settings/plugins/ibft/reader.c2
-rw-r--r--src/settings/plugins/ibft/reader.h3
-rw-r--r--src/settings/plugins/ifcfg-rh/common.h2
-rw-r--r--src/settings/plugins/ifcfg-rh/plugin.c3
-rw-r--r--src/settings/plugins/ifcfg-rh/plugin.h2
-rw-r--r--src/settings/plugins/ifcfg-rh/reader.c2
-rw-r--r--src/settings/plugins/ifcfg-rh/reader.h2
-rw-r--r--src/settings/plugins/ifcfg-rh/shvar.h2
-rw-r--r--src/settings/plugins/ifcfg-rh/utils.c2
-rw-r--r--src/settings/plugins/ifcfg-rh/utils.h2
-rw-r--r--src/settings/plugins/ifcfg-rh/writer.h4
-rw-r--r--src/settings/plugins/ifnet/net_parser.h2
-rw-r--r--src/settings/plugins/ifnet/net_utils.c2
-rw-r--r--src/settings/plugins/ifnet/net_utils.h2
-rw-r--r--src/settings/plugins/ifnet/plugin.c3
-rw-r--r--src/settings/plugins/ifnet/plugin.h2
-rw-r--r--src/settings/plugins/ifnet/tests/test-ifnet.c2
-rw-r--r--src/settings/plugins/ifnet/wpa_parser.h2
-rw-r--r--src/settings/plugins/ifupdown/interface_parser.h2
-rw-r--r--src/settings/plugins/ifupdown/nm-ifupdown-connection.h1
-rw-r--r--src/settings/plugins/ifupdown/plugin.c3
-rw-r--r--src/settings/plugins/ifupdown/plugin.h2
-rw-r--r--src/settings/plugins/ifupdown/tests/test-ifupdown.c2
-rw-r--r--src/settings/plugins/keyfile/common.h2
-rw-r--r--src/settings/plugins/keyfile/plugin.c3
-rw-r--r--src/settings/plugins/keyfile/plugin.h2
-rw-r--r--src/settings/plugins/keyfile/reader.h3
-rw-r--r--src/settings/plugins/keyfile/utils.c3
-rw-r--r--src/settings/plugins/keyfile/utils.h2
-rw-r--r--src/settings/plugins/keyfile/writer.c4
-rw-r--r--src/settings/plugins/keyfile/writer.h3
-rw-r--r--src/supplicant-manager/nm-supplicant-config.c2
-rw-r--r--src/supplicant-manager/nm-supplicant-config.h2
-rw-r--r--src/supplicant-manager/nm-supplicant-interface.c3
-rw-r--r--src/supplicant-manager/nm-supplicant-interface.h3
-rw-r--r--src/supplicant-manager/nm-supplicant-manager.c4
-rw-r--r--src/supplicant-manager/nm-supplicant-manager.h2
-rw-r--r--src/supplicant-manager/nm-supplicant-settings-verify.c2
-rw-r--r--src/tests/config/test-config.c2
-rw-r--r--src/tests/test-dcb.c2
-rw-r--r--src/tests/test-general-with-expect.c2
-rw-r--r--src/tests/test-general.c2
-rw-r--r--src/tests/test-ip4-config.c2
-rw-r--r--src/tests/test-ip6-config.c2
-rw-r--r--src/tests/test-resolvconf-capture.c2
-rw-r--r--src/tests/test-route-manager.c2
-rw-r--r--src/tests/test-wired-defname.c3
-rw-r--r--src/vpn-manager/nm-vpn-connection.c3
-rw-r--r--src/vpn-manager/nm-vpn-connection.h2
-rw-r--r--src/vpn-manager/nm-vpn-manager.c2
-rw-r--r--src/vpn-manager/nm-vpn-manager.h3
-rw-r--r--src/vpn-manager/nm-vpn-service.c3
-rw-r--r--src/vpn-manager/nm-vpn-service.h3
211 files changed, 203 insertions, 331 deletions
diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c
index 6292e80c76..d91a4e61b8 100644
--- a/src/NetworkManagerUtils.c
+++ b/src/NetworkManagerUtils.c
@@ -21,8 +21,6 @@
#include "config.h"
-#include <glib.h>
-#include <gio/gio.h>
#include <glib/gi18n.h>
#include <errno.h>
#include <fcntl.h>
@@ -35,6 +33,7 @@
#include <linux/if.h>
#include <linux/if_infiniband.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-platform.h"
#include "nm-utils.h"
diff --git a/src/NetworkManagerUtils.h b/src/NetworkManagerUtils.h
index 2ad132b8ec..47593fb87b 100644
--- a/src/NetworkManagerUtils.h
+++ b/src/NetworkManagerUtils.h
@@ -22,10 +22,10 @@
#ifndef __NETWORKMANAGER_UTILS_H__
#define __NETWORKMANAGER_UTILS_H__
-#include <glib.h>
#include <stdio.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-connection.h"
#include "nm-types.h"
diff --git a/src/devices/adsl/nm-atm-manager.c b/src/devices/adsl/nm-atm-manager.c
index 0830f85d15..1718cdd8dc 100644
--- a/src/devices/adsl/nm-atm-manager.c
+++ b/src/devices/adsl/nm-atm-manager.c
@@ -24,12 +24,12 @@
#include <gudev/gudev.h>
#include <gmodule.h>
+#include "nm-glib.h"
#include "nm-atm-manager.h"
#include "nm-setting-adsl.h"
#include "nm-device-adsl.h"
#include "nm-device-factory.h"
#include "nm-logging.h"
-#include "nm-glib-compat.h"
typedef struct {
GUdevClient *client;
diff --git a/src/devices/adsl/nm-atm-manager.h b/src/devices/adsl/nm-atm-manager.h
index e4ec3e6aee..16dc332e14 100644
--- a/src/devices/adsl/nm-atm-manager.h
+++ b/src/devices/adsl/nm-atm-manager.h
@@ -22,8 +22,7 @@
#ifndef __NETWORKMANAGER_ATM_MANAGER_H__
#define __NETWORKMANAGER_ATM_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
G_BEGIN_DECLS
diff --git a/src/devices/adsl/nm-device-adsl.c b/src/devices/adsl/nm-device-adsl.c
index 4d2cac5be7..f5ed9d756f 100644
--- a/src/devices/adsl/nm-device-adsl.c
+++ b/src/devices/adsl/nm-device-adsl.c
@@ -29,11 +29,11 @@
#include <sys/types.h>
#include <unistd.h>
-#include <glib.h>
#include <glib/gi18n.h>
#include <stdlib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-device-adsl.h"
#include "nm-device-private.h"
#include "NetworkManagerUtils.h"
diff --git a/src/devices/adsl/nm-device-adsl.h b/src/devices/adsl/nm-device-adsl.h
index f21381c21f..74e29d5dd1 100644
--- a/src/devices/adsl/nm-device-adsl.h
+++ b/src/devices/adsl/nm-device-adsl.h
@@ -22,9 +22,8 @@
#ifndef __NETWORKMANAGER_DEVICE_ADSL_H__
#define __NETWORKMANAGER_DEVICE_ADSL_H__
-#include <glib-object.h>
-
// Parent class
+#include "nm-glib.h"
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/bluetooth/nm-bluez-device.c b/src/devices/bluetooth/nm-bluez-device.c
index 419339aca3..2cebefa869 100644
--- a/src/devices/bluetooth/nm-bluez-device.c
+++ b/src/devices/bluetooth/nm-bluez-device.c
@@ -21,11 +21,10 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include "nm-bt-error.h"
diff --git a/src/devices/bluetooth/nm-bluez-device.h b/src/devices/bluetooth/nm-bluez-device.h
index 92d99fa75a..5d89556082 100644
--- a/src/devices/bluetooth/nm-bluez-device.h
+++ b/src/devices/bluetooth/nm-bluez-device.h
@@ -21,11 +21,9 @@
#ifndef __NETWORKMANAGER_BLUEZ_DEVICE_H__
#define __NETWORKMANAGER_BLUEZ_DEVICE_H__
-#include <glib.h>
-#include <glib-object.h>
-#include <gio/gio.h>
#include <config.h>
+#include "nm-glib.h"
#include "nm-connection.h"
#include "nm-connection-provider.h"
diff --git a/src/devices/bluetooth/nm-bluez-manager.c b/src/devices/bluetooth/nm-bluez-manager.c
index 2e1c46b13c..193d9f7186 100644
--- a/src/devices/bluetooth/nm-bluez-manager.c
+++ b/src/devices/bluetooth/nm-bluez-manager.c
@@ -24,8 +24,8 @@
#include <string.h>
#include <stdlib.h>
#include <gmodule.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-bluez-manager.h"
#include "nm-device-factory.h"
diff --git a/src/devices/bluetooth/nm-bluez-manager.h b/src/devices/bluetooth/nm-bluez-manager.h
index 8320b2987f..97b9ac66cf 100644
--- a/src/devices/bluetooth/nm-bluez-manager.h
+++ b/src/devices/bluetooth/nm-bluez-manager.h
@@ -22,8 +22,7 @@
#ifndef __NETWORKMANAGER_BLUEZ_MANAGER_H__
#define __NETWORKMANAGER_BLUEZ_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
G_BEGIN_DECLS
diff --git a/src/devices/bluetooth/nm-bluez4-adapter.c b/src/devices/bluetooth/nm-bluez4-adapter.c
index f0aa42ae85..f31c600e73 100644
--- a/src/devices/bluetooth/nm-bluez4-adapter.c
+++ b/src/devices/bluetooth/nm-bluez4-adapter.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-bluez4-adapter.h"
#include "nm-bluez-device.h"
diff --git a/src/devices/bluetooth/nm-bluez4-adapter.h b/src/devices/bluetooth/nm-bluez4-adapter.h
index a62564127a..98d19b22ef 100644
--- a/src/devices/bluetooth/nm-bluez4-adapter.h
+++ b/src/devices/bluetooth/nm-bluez4-adapter.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_BLUEZ4_ADAPTER_H__
#define __NETWORKMANAGER_BLUEZ4_ADAPTER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-bluez-device.h"
#include "nm-connection-provider.h"
diff --git a/src/devices/bluetooth/nm-bluez4-manager.h b/src/devices/bluetooth/nm-bluez4-manager.h
index 13cfef9398..e5f526461b 100644
--- a/src/devices/bluetooth/nm-bluez4-manager.h
+++ b/src/devices/bluetooth/nm-bluez4-manager.h
@@ -22,11 +22,8 @@
#ifndef __NETWORKMANAGER_BLUEZ4_MANAGER_H__
#define __NETWORKMANAGER_BLUEZ4_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
-
-#include <config.h>
-#include "nm-connection-provider.h"
+#include "nm-glib.h"
+#include "nm-connection-provider.h"
G_BEGIN_DECLS
diff --git a/src/devices/bluetooth/nm-bluez5-dun.h b/src/devices/bluetooth/nm-bluez5-dun.h
index 7e25972551..bc2f6c7aa2 100644
--- a/src/devices/bluetooth/nm-bluez5-dun.h
+++ b/src/devices/bluetooth/nm-bluez5-dun.h
@@ -21,8 +21,7 @@
#ifndef _NM_BLUEZ5_UTILS_H_
#define _NM_BLUEZ5_UTILS_H_
-#include <glib.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
typedef struct _NMBluez5DunContext NMBluez5DunContext;
diff --git a/src/devices/bluetooth/nm-bluez5-manager.c b/src/devices/bluetooth/nm-bluez5-manager.c
index 148fe3cbe9..cbbe111753 100644
--- a/src/devices/bluetooth/nm-bluez5-manager.c
+++ b/src/devices/bluetooth/nm-bluez5-manager.c
@@ -25,8 +25,8 @@
#include <signal.h>
#include <string.h>
#include <stdlib.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-bluez-manager.h"
#include "nm-bluez5-manager.h"
diff --git a/src/devices/bluetooth/nm-bluez5-manager.h b/src/devices/bluetooth/nm-bluez5-manager.h
index 8152976dc4..faf6ce6692 100644
--- a/src/devices/bluetooth/nm-bluez5-manager.h
+++ b/src/devices/bluetooth/nm-bluez5-manager.h
@@ -22,11 +22,8 @@
#ifndef __NETWORKMANAGER_BLUEZ5_MANAGER_H__
#define __NETWORKMANAGER_BLUEZ5_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
-
-#include <config.h>
-#include "nm-connection-provider.h"
+#include "nm-glib.h"
+#include "nm-connection-provider.h"
G_BEGIN_DECLS
diff --git a/src/devices/bluetooth/nm-bt-error.c b/src/devices/bluetooth/nm-bt-error.c
index e3b8e7f583..11aabbdb57 100644
--- a/src/devices/bluetooth/nm-bt-error.c
+++ b/src/devices/bluetooth/nm-bt-error.c
@@ -20,7 +20,7 @@
#include "config.h"
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-bt-error.h"
GQuark
diff --git a/src/devices/bluetooth/nm-device-bt.c b/src/devices/bluetooth/nm-device-bt.c
index 88033e2e8e..1de5bed104 100644
--- a/src/devices/bluetooth/nm-device-bt.c
+++ b/src/devices/bluetooth/nm-device-bt.c
@@ -24,9 +24,8 @@
#include <string.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-bluez-common.h"
#include "nm-bluez-device.h"
#include "nm-dbus-manager.h"
diff --git a/src/devices/nm-device-bond.c b/src/devices/nm-device-bond.c
index 7f1394248d..a78761c3d7 100644
--- a/src/devices/nm-device-bond.c
+++ b/src/devices/nm-device-bond.c
@@ -20,12 +20,12 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <errno.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "nm-device-bond.h"
#include "nm-logging.h"
diff --git a/src/devices/nm-device-bond.h b/src/devices/nm-device-bond.h
index 17217a57c4..8165bb8062 100644
--- a/src/devices/nm-device-bond.h
+++ b/src/devices/nm-device-bond.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_BOND_H__
#define __NETWORKMANAGER_DEVICE_BOND_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c
index 76b78c0122..3e70708db1 100644
--- a/src/devices/nm-device-bridge.c
+++ b/src/devices/nm-device-bridge.c
@@ -20,11 +20,11 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "nm-device-bridge.h"
#include "nm-logging.h"
diff --git a/src/devices/nm-device-bridge.h b/src/devices/nm-device-bridge.h
index c11a2c40f7..e30c48c2dc 100644
--- a/src/devices/nm-device-bridge.h
+++ b/src/devices/nm-device-bridge.h
@@ -21,8 +21,7 @@
#ifndef __NETWORKMANAGER_DEVICE_BRIDGE_H__
#define __NETWORKMANAGER_DEVICE_BRIDGE_H__
-#include <glib-object.h>
-
+#include "nm-glib.h"
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-ethernet-utils.c b/src/devices/nm-device-ethernet-utils.c
index 585f6a0e0e..7c226f065e 100644
--- a/src/devices/nm-device-ethernet-utils.c
+++ b/src/devices/nm-device-ethernet-utils.c
@@ -19,10 +19,10 @@
#include "config.h"
#include <string.h>
-#include <glib.h>
#include <glib/gi18n.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-device-ethernet-utils.h"
char *
diff --git a/src/devices/nm-device-ethernet-utils.h b/src/devices/nm-device-ethernet-utils.h
index 5848f7e604..1ca181b2b2 100644
--- a/src/devices/nm-device-ethernet-utils.h
+++ b/src/devices/nm-device-ethernet-utils.h
@@ -19,7 +19,7 @@
#ifndef __NETWORKMANAGER_DEVICE_ETHERNET_UTILS_H__
#define __NETWORKMANAGER_DEVICE_ETHERNET_UTILS_H__
-#include <glib.h>
+#include "nm-glib.h"
char *nm_device_ethernet_utils_get_default_wired_name (const GSList *connections);
diff --git a/src/devices/nm-device-ethernet.c b/src/devices/nm-device-ethernet.c
index d147b1c7f5..afd3a43415 100644
--- a/src/devices/nm-device-ethernet.c
+++ b/src/devices/nm-device-ethernet.c
@@ -21,7 +21,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <netinet/in.h>
#include <string.h>
@@ -31,7 +30,7 @@
#include <gudev/gudev.h>
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-device-ethernet.h"
#include "nm-device-private.h"
#include "nm-activation-request.h"
diff --git a/src/devices/nm-device-ethernet.h b/src/devices/nm-device-ethernet.h
index ad9ce85669..325225a3c8 100644
--- a/src/devices/nm-device-ethernet.h
+++ b/src/devices/nm-device-ethernet.h
@@ -22,8 +22,6 @@
#ifndef __NETWORKMANAGER_DEVICE_ETHERNET_H__
#define __NETWORKMANAGER_DEVICE_ETHERNET_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-factory.h b/src/devices/nm-device-factory.h
index 6ae865ae88..1ac1fc9a41 100644
--- a/src/devices/nm-device-factory.h
+++ b/src/devices/nm-device-factory.h
@@ -21,9 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_FACTORY_H__
#define __NETWORKMANAGER_DEVICE_FACTORY_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include "nm-dbus-interface.h"
#include "nm-device.h"
diff --git a/src/devices/nm-device-generic.c b/src/devices/nm-device-generic.c
index 5841d834ff..0565153bb8 100644
--- a/src/devices/nm-device-generic.c
+++ b/src/devices/nm-device-generic.c
@@ -24,7 +24,6 @@
#include "nm-device-private.h"
#include "nm-enum-types.h"
#include "nm-platform.h"
-#include "nm-glib-compat.h"
#include "nm-dbus-manager.h"
#include "nm-core-internal.h"
diff --git a/src/devices/nm-device-generic.h b/src/devices/nm-device-generic.h
index c889b1ddc7..4dad4421f0 100644
--- a/src/devices/nm-device-generic.h
+++ b/src/devices/nm-device-generic.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_GENERIC_H__
#define __NETWORKMANAGER_DEVICE_GENERIC_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-gre.h b/src/devices/nm-device-gre.h
index 7acff5f7f5..7e2d105c4b 100644
--- a/src/devices/nm-device-gre.h
+++ b/src/devices/nm-device-gre.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_GRE_H__
#define __NETWORKMANAGER_DEVICE_GRE_H__
-#include <glib-object.h>
-
#include "nm-device-generic.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-infiniband.c b/src/devices/nm-device-infiniband.c
index 2e2483c0cf..62fbe8d558 100644
--- a/src/devices/nm-device-infiniband.c
+++ b/src/devices/nm-device-infiniband.c
@@ -20,11 +20,11 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <linux/if_infiniband.h>
+#include "nm-glib.h"
#include "nm-device-infiniband.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
@@ -39,7 +39,6 @@
#include "nm-device-infiniband-glue.h"
-
G_DEFINE_TYPE (NMDeviceInfiniband, nm_device_infiniband, NM_TYPE_DEVICE)
#define NM_DEVICE_INFINIBAND_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DEVICE_INFINIBAND, NMDeviceInfinibandPrivate))
diff --git a/src/devices/nm-device-infiniband.h b/src/devices/nm-device-infiniband.h
index b81b762ad2..cac9a79d37 100644
--- a/src/devices/nm-device-infiniband.h
+++ b/src/devices/nm-device-infiniband.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_INFINIBAND_H__
#define __NETWORKMANAGER_DEVICE_INFINIBAND_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-macvlan.h b/src/devices/nm-device-macvlan.h
index 24f15437c3..189a9df02e 100644
--- a/src/devices/nm-device-macvlan.h
+++ b/src/devices/nm-device-macvlan.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_MACVLAN_H__
#define __NETWORKMANAGER_DEVICE_MACVLAN_H__
-#include <glib-object.h>
-
#include "nm-device-generic.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-tun.h b/src/devices/nm-device-tun.h
index 393c58018f..b253d68e45 100644
--- a/src/devices/nm-device-tun.h
+++ b/src/devices/nm-device-tun.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_TUN_H__
#define __NETWORKMANAGER_DEVICE_TUN_H__
-#include <glib-object.h>
-
#include "nm-device-generic.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-veth.h b/src/devices/nm-device-veth.h
index 51e8db45ea..c7b8ec3ad0 100644
--- a/src/devices/nm-device-veth.h
+++ b/src/devices/nm-device-veth.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_VETH_H__
#define __NETWORKMANAGER_DEVICE_VETH_H__
-#include <glib-object.h>
-
#include "nm-device-ethernet.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-vlan.c b/src/devices/nm-device-vlan.c
index 158e7de5bf..f2380e71d6 100644
--- a/src/devices/nm-device-vlan.c
+++ b/src/devices/nm-device-vlan.c
@@ -20,11 +20,11 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <sys/socket.h>
+#include "nm-glib.h"
#include "nm-device-vlan.h"
#include "nm-manager.h"
#include "nm-logging.h"
diff --git a/src/devices/nm-device-vlan.h b/src/devices/nm-device-vlan.h
index 20fc345379..4a27226fb7 100644
--- a/src/devices/nm-device-vlan.h
+++ b/src/devices/nm-device-vlan.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_VLAN_H__
#define __NETWORKMANAGER_DEVICE_VLAN_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device-vxlan.h b/src/devices/nm-device-vxlan.h
index cc6081e657..9db78cdfcb 100644
--- a/src/devices/nm-device-vxlan.h
+++ b/src/devices/nm-device-vxlan.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_VXLAN_H__
#define __NETWORKMANAGER_DEVICE_VXLAN_H__
-#include <glib-object.h>
-
#include "nm-device-generic.h"
G_BEGIN_DECLS
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index 985b0c65f6..4590c5f63d 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -21,7 +21,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <dbus/dbus.h>
#include <netinet/in.h>
@@ -36,8 +35,8 @@
#include <fcntl.h>
#include <netlink/route/addr.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
-#include "nm-glib-compat.h"
#include "nm-device.h"
#include "nm-device-private.h"
#include "NetworkManagerUtils.h"
diff --git a/src/devices/nm-device.h b/src/devices/nm-device.h
index 469d755ed5..cb4476435d 100644
--- a/src/devices/nm-device.h
+++ b/src/devices/nm-device.h
@@ -22,11 +22,10 @@
#ifndef __NETWORKMANAGER_DEVICE_H__
#define __NETWORKMANAGER_DEVICE_H__
-#include <glib-object.h>
-#include <gio/gio.h>
#include <dbus/dbus-glib.h>
#include <netinet/in.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-types.h"
#include "nm-connection.h"
diff --git a/src/devices/team/nm-device-team.c b/src/devices/team/nm-device-team.c
index ccfab0f3b0..1de22138b6 100644
--- a/src/devices/team/nm-device-team.c
+++ b/src/devices/team/nm-device-team.c
@@ -24,12 +24,11 @@
#include <unistd.h>
#include <signal.h>
#include <sys/wait.h>
-#include <glib.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <teamdctl.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "nm-device-team.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
diff --git a/src/devices/team/nm-device-team.h b/src/devices/team/nm-device-team.h
index 26ba573721..76cdba1396 100644
--- a/src/devices/team/nm-device-team.h
+++ b/src/devices/team/nm-device-team.h
@@ -21,8 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_TEAM_H__
#define __NETWORKMANAGER_DEVICE_TEAM_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/team/nm-team-factory.h b/src/devices/team/nm-team-factory.h
index 2f02ac5729..35cee90e1d 100644
--- a/src/devices/team/nm-team-factory.h
+++ b/src/devices/team/nm-team-factory.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_TEAM_FACTORY_H__
#define __NETWORKMANAGER_TEAM_FACTORY_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#define NM_TYPE_TEAM_FACTORY (nm_team_factory_get_type ())
#define NM_TEAM_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_TEAM_FACTORY, NMTeamFactory))
diff --git a/src/devices/wifi/nm-device-olpc-mesh.c b/src/devices/wifi/nm-device-olpc-mesh.c
index e67d1a20a6..7dc7c11b00 100644
--- a/src/devices/wifi/nm-device-olpc-mesh.c
+++ b/src/devices/wifi/nm-device-olpc-mesh.c
@@ -26,7 +26,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <dbus/dbus.h>
#include <netinet/in.h>
@@ -38,6 +37,7 @@
#include <sys/ioctl.h>
#include <errno.h>
+#include "nm-glib.h"
#include "nm-device.h"
#include "nm-device-wifi.h"
#include "nm-device-olpc-mesh.h"
@@ -57,7 +57,6 @@
/* This is a bug; but we can't really change API now... */
#include "nm-vpn-dbus-interface.h"
-
#include "nm-device-olpc-mesh-glue.h"
#include "nm-device-logging.h"
diff --git a/src/devices/wifi/nm-device-olpc-mesh.h b/src/devices/wifi/nm-device-olpc-mesh.h
index 67d83fb059..8d6895f27a 100644
--- a/src/devices/wifi/nm-device-olpc-mesh.h
+++ b/src/devices/wifi/nm-device-olpc-mesh.h
@@ -28,8 +28,6 @@
#ifndef __NETWORKMANAGER_DEVICE_OLPC_MESH_H__
#define __NETWORKMANAGER_DEVICE_OLPC_MESH_H__
-#include <glib-object.h>
-
#include "nm-device.h"
G_BEGIN_DECLS
diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
index 500fa3aade..62c64a125b 100644
--- a/src/devices/wifi/nm-device-wifi.c
+++ b/src/devices/wifi/nm-device-wifi.c
@@ -21,7 +21,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <dbus/dbus.h>
#include <netinet/in.h>
@@ -29,7 +28,7 @@
#include <unistd.h>
#include <errno.h>
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-dbus-manager.h"
#include "nm-device.h"
#include "nm-device-wifi.h"
@@ -57,7 +56,6 @@
#include "nm-wifi-enum-types.h"
#include "nm-connection-provider.h"
-
static gboolean impl_device_get_access_points (NMDeviceWifi *device,
GPtrArray **aps,
GError **err);
diff --git a/src/devices/wifi/nm-device-wifi.h b/src/devices/wifi/nm-device-wifi.h
index bcba91da2f..c74ff1c5bf 100644
--- a/src/devices/wifi/nm-device-wifi.h
+++ b/src/devices/wifi/nm-device-wifi.h
@@ -22,8 +22,6 @@
#ifndef __NETWORKMANAGER_DEVICE_WIFI_H__
#define __NETWORKMANAGER_DEVICE_WIFI_H__
-#include <glib-object.h>
-
#include "nm-device.h"
#include "nm-wifi-ap.h"
diff --git a/src/devices/wifi/nm-wifi-ap.c b/src/devices/wifi/nm-wifi-ap.c
index ea4ec2a8d6..ca272a001c 100644
--- a/src/devices/wifi/nm-wifi-ap.c
+++ b/src/devices/wifi/nm-wifi-ap.c
@@ -24,6 +24,7 @@
#include <string.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "nm-wifi-ap.h"
#include "nm-wifi-ap-utils.h"
#include "NetworkManagerUtils.h"
@@ -33,7 +34,6 @@
#include "nm-core-internal.h"
#include "nm-setting-wireless.h"
-#include "nm-glib-compat.h"
#include "gsystem-local-alloc.h"
#include "nm-access-point-glue.h"
diff --git a/src/devices/wifi/nm-wifi-ap.h b/src/devices/wifi/nm-wifi-ap.h
index dfc5acee3b..47e901ee22 100644
--- a/src/devices/wifi/nm-wifi-ap.h
+++ b/src/devices/wifi/nm-wifi-ap.h
@@ -22,8 +22,7 @@
#ifndef __NETWORKMANAGER_ACCESS_POINT_H__
#define __NETWORKMANAGER_ACCESS_POINT_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-connection.h"
diff --git a/src/devices/wifi/tests/test-wifi-ap-utils.c b/src/devices/wifi/tests/test-wifi-ap-utils.c
index b59b5376dd..b7323b845d 100644
--- a/src/devices/wifi/tests/test-wifi-ap-utils.c
+++ b/src/devices/wifi/tests/test-wifi-ap-utils.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-wifi-ap-utils.h"
#include "nm-dbus-glib-types.h"
diff --git a/src/devices/wwan/nm-device-modem.c b/src/devices/wwan/nm-device-modem.c
index ca724c046c..02b0e5af89 100644
--- a/src/devices/wwan/nm-device-modem.c
+++ b/src/devices/wwan/nm-device-modem.c
@@ -21,8 +21,8 @@
#include "config.h"
#include <string.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-device-modem.h"
#include "nm-modem.h"
#include "nm-device-private.h"
diff --git a/src/devices/wwan/nm-device-modem.h b/src/devices/wwan/nm-device-modem.h
index 996195c49e..1cf399e12c 100644
--- a/src/devices/wwan/nm-device-modem.h
+++ b/src/devices/wwan/nm-device-modem.h
@@ -21,9 +21,6 @@
#ifndef __NETWORKMANAGER_DEVICE_MODEM_H__
#define __NETWORKMANAGER_DEVICE_MODEM_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include "nm-device.h"
#include "nm-modem.h"
diff --git a/src/devices/wwan/nm-modem-broadband.h b/src/devices/wwan/nm-modem-broadband.h
index 2268bac449..a54e63a697 100644
--- a/src/devices/wwan/nm-modem-broadband.h
+++ b/src/devices/wwan/nm-modem-broadband.h
@@ -21,7 +21,6 @@
#ifndef __NETWORKMANAGER_MODEM_BROADBAND_H__
#define __NETWORKMANAGER_MODEM_BROADBAND_H__
-#include <glib-object.h>
#include "nm-modem.h"
G_BEGIN_DECLS
diff --git a/src/devices/wwan/nm-modem-manager.h b/src/devices/wwan/nm-modem-manager.h
index 9e0db41e3f..b0014c6a89 100644
--- a/src/devices/wwan/nm-modem-manager.h
+++ b/src/devices/wwan/nm-modem-manager.h
@@ -23,7 +23,6 @@
#ifndef __NETWORKMANAGER_MODEM_MANAGER_H__
#define __NETWORKMANAGER_MODEM_MANAGER_H__
-#include <glib-object.h>
#include "nm-modem.h"
#define NM_TYPE_MODEM_MANAGER (nm_modem_manager_get_type ())
diff --git a/src/devices/wwan/nm-modem.h b/src/devices/wwan/nm-modem.h
index 2cace8902d..0889f7231a 100644
--- a/src/devices/wwan/nm-modem.h
+++ b/src/devices/wwan/nm-modem.h
@@ -22,7 +22,7 @@
#ifndef __NETWORKMANAGER_MODEM_H__
#define __NETWORKMANAGER_MODEM_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "ppp-manager/nm-ppp-manager.h"
#include "nm-device.h"
diff --git a/src/devices/wwan/nm-wwan-factory.h b/src/devices/wwan/nm-wwan-factory.h
index c6c03f1f09..fc85a92ca8 100644
--- a/src/devices/wwan/nm-wwan-factory.h
+++ b/src/devices/wwan/nm-wwan-factory.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_WWAN_FACTORY_H__
#define __NETWORKMANAGER_WWAN_FACTORY_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#define NM_TYPE_WWAN_FACTORY (nm_wwan_factory_get_type ())
#define NM_WWAN_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_WWAN_FACTORY, NMWwanFactory))
diff --git a/src/dhcp-manager/Makefile.am b/src/dhcp-manager/Makefile.am
index 27945f55c2..b56072409a 100644
--- a/src/dhcp-manager/Makefile.am
+++ b/src/dhcp-manager/Makefile.am
@@ -4,6 +4,7 @@ nm_dhcp_helper_SOURCES = nm-dhcp-helper.c
nm_dhcp_helper_CPPFLAGS = \
$(GLIB_CFLAGS) \
+ -I$(top_srcdir)/include \
-DG_LOG_DOMAIN=\""nm-dhcp-helper"\" \
-DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \
-DNMRUNDIR=\"$(nmrundir)\"
diff --git a/src/dhcp-manager/nm-dhcp-client.c b/src/dhcp-manager/nm-dhcp-client.c
index 67be01cf4f..c00782f963 100644
--- a/src/dhcp-manager/nm-dhcp-client.c
+++ b/src/dhcp-manager/nm-dhcp-client.c
@@ -19,7 +19,6 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
@@ -29,6 +28,7 @@
#include <stdlib.h>
#include <uuid/uuid.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-utils.h"
#include "nm-logging.h"
diff --git a/src/dhcp-manager/nm-dhcp-client.h b/src/dhcp-manager/nm-dhcp-client.h
index 0cbd2001bb..b5f30c5ed7 100644
--- a/src/dhcp-manager/nm-dhcp-client.h
+++ b/src/dhcp-manager/nm-dhcp-client.h
@@ -19,14 +19,13 @@
#ifndef __NETWORKMANAGER_DHCP_CLIENT_H__
#define __NETWORKMANAGER_DHCP_CLIENT_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include <nm-setting-ip4-config.h>
#include <nm-setting-ip6-config.h>
#include <nm-ip4-config.h>
#include <nm-ip6-config.h>
+#include "nm-glib.h"
+
#define NM_TYPE_DHCP_CLIENT (nm_dhcp_client_get_type ())
#define NM_DHCP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_DHCP_CLIENT, NMDhcpClient))
#define NM_DHCP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_DHCP_CLIENT, NMDhcpClientClass))
diff --git a/src/dhcp-manager/nm-dhcp-dhclient-utils.c b/src/dhcp-manager/nm-dhcp-dhclient-utils.c
index cec6d1350b..4c889e73ac 100644
--- a/src/dhcp-manager/nm-dhcp-dhclient-utils.c
+++ b/src/dhcp-manager/nm-dhcp-dhclient-utils.c
@@ -19,12 +19,12 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <string.h>
#include <ctype.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-dhcp-dhclient-utils.h"
#include "nm-dhcp-utils.h"
#include "nm-ip4-config.h"
diff --git a/src/dhcp-manager/nm-dhcp-dhclient-utils.h b/src/dhcp-manager/nm-dhcp-dhclient-utils.h
index 3cd0f8b832..70ad7a17f1 100644
--- a/src/dhcp-manager/nm-dhcp-dhclient-utils.h
+++ b/src/dhcp-manager/nm-dhcp-dhclient-utils.h
@@ -19,12 +19,11 @@
#ifndef __NETWORKMANAGER_DHCP_DHCLIENT_UTILS_H__
#define __NETWORKMANAGER_DHCP_DHCLIENT_UTILS_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include <nm-setting-ip4-config.h>
#include <nm-setting-ip6-config.h>
+#include "nm-glib.h"
+
char *nm_dhcp_dhclient_create_config (const char *interface,
gboolean is_ip6,
GBytes *client_id,
diff --git a/src/dhcp-manager/nm-dhcp-dhclient.c b/src/dhcp-manager/nm-dhcp-dhclient.c
index 1d88da4463..d6dde54cc8 100644
--- a/src/dhcp-manager/nm-dhcp-dhclient.c
+++ b/src/dhcp-manager/nm-dhcp-dhclient.c
@@ -24,9 +24,7 @@
#include <time.h>
#undef _XOPEN_SOURCE
-#include <glib.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <string.h>
#include <stdlib.h>
#include <errno.h>
@@ -36,6 +34,7 @@
#include <arpa/inet.h>
#include <ctype.h>
+#include "nm-glib.h"
#include "nm-dhcp-dhclient.h"
#include "nm-utils.h"
#include "nm-logging.h"
@@ -44,7 +43,6 @@
#include "NetworkManagerUtils.h"
#include "nm-dhcp-listener.h"
#include "gsystem-local-alloc.h"
-#include "nm-glib-compat.h"
G_DEFINE_TYPE (NMDhcpDhclient, nm_dhcp_dhclient, NM_TYPE_DHCP_CLIENT)
diff --git a/src/dhcp-manager/nm-dhcp-dhclient.h b/src/dhcp-manager/nm-dhcp-dhclient.h
index 5abcc08ee3..dba9011160 100644
--- a/src/dhcp-manager/nm-dhcp-dhclient.h
+++ b/src/dhcp-manager/nm-dhcp-dhclient.h
@@ -19,9 +19,7 @@
#ifndef __NETWORKMANAGER_DHCP_DHCLIENT_H__
#define __NETWORKMANAGER_DHCP_DHCLIENT_H__
-#include <glib.h>
-#include <glib-object.h>
-
+#include "nm-glib.h"
#include "nm-dhcp-client.h"
#define NM_TYPE_DHCP_DHCLIENT (nm_dhcp_dhclient_get_type ())
diff --git a/src/dhcp-manager/nm-dhcp-dhcpcd.c b/src/dhcp-manager/nm-dhcp-dhcpcd.c
index acbc762096..716ec84fc9 100644
--- a/src/dhcp-manager/nm-dhcp-dhcpcd.c
+++ b/src/dhcp-manager/nm-dhcp-dhcpcd.c
@@ -23,7 +23,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <string.h>
#include <stdlib.h>
@@ -33,13 +32,13 @@
#include <netinet/in.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-dhcp-dhcpcd.h"
#include "nm-dhcp-manager.h"
#include "nm-utils.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
#include "nm-dhcp-listener.h"
-#include "nm-glib-compat.h"
G_DEFINE_TYPE (NMDhcpDhcpcd, nm_dhcp_dhcpcd, NM_TYPE_DHCP_CLIENT)
diff --git a/src/dhcp-manager/nm-dhcp-dhcpcd.h b/src/dhcp-manager/nm-dhcp-dhcpcd.h
index deed70e0f9..6f15ad223e 100644
--- a/src/dhcp-manager/nm-dhcp-dhcpcd.h
+++ b/src/dhcp-manager/nm-dhcp-dhcpcd.h
@@ -19,9 +19,6 @@
#ifndef __NETWORKMANAGER_DHCP_DHCPCD_H__
#define __NETWORKMANAGER_DHCP_DHCPCD_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include "nm-dhcp-client.h"
#define NM_TYPE_DHCP_DHCPCD (nm_dhcp_dhcpcd_get_type ())
diff --git a/src/dhcp-manager/nm-dhcp-helper.c b/src/dhcp-manager/nm-dhcp-helper.c
index 7855f68c96..dde95aa086 100644
--- a/src/dhcp-manager/nm-dhcp-helper.c
+++ b/src/dhcp-manager/nm-dhcp-helper.c
@@ -25,7 +25,7 @@
#include <string.h>
#include <signal.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#define NM_DHCP_CLIENT_DBUS_IFACE "org.freedesktop.nm_dhcp_client"
diff --git a/src/dhcp-manager/nm-dhcp-listener.c b/src/dhcp-manager/nm-dhcp-listener.c
index ca57ae595a..4954d57620 100644
--- a/src/dhcp-manager/nm-dhcp-listener.c
+++ b/src/dhcp-manager/nm-dhcp-listener.c
@@ -19,7 +19,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <dbus/dbus.h>
#include <sys/socket.h>
@@ -30,12 +29,12 @@
#include <errno.h>
#include <unistd.h>
+#include "nm-glib.h"
#include "nm-dhcp-listener.h"
#include "nm-core-internal.h"
#include "nm-logging.h"
#include "nm-dbus-manager.h"
#include "nm-dbus-glib-types.h"
-#include "nm-glib-compat.h"
#include "NetworkManagerUtils.h"
#define NM_DHCP_CLIENT_DBUS_IFACE "org.freedesktop.nm_dhcp_client"
diff --git a/src/dhcp-manager/nm-dhcp-listener.h b/src/dhcp-manager/nm-dhcp-listener.h
index 15ec053109..015c8eb53d 100644
--- a/src/dhcp-manager/nm-dhcp-listener.h
+++ b/src/dhcp-manager/nm-dhcp-listener.h
@@ -19,8 +19,7 @@
#ifndef __NETWORKMANAGER_DHCP_LISTENER_H__
#define __NETWORKMANAGER_DHCP_LISTENER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#define NM_TYPE_DHCP_LISTENER (nm_dhcp_listener_get_type ())
#define NM_DHCP_LISTENER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_DHCP_LISTENER, NMDhcpListener))
diff --git a/src/dhcp-manager/nm-dhcp-manager.c b/src/dhcp-manager/nm-dhcp-manager.c
index fa562e6cf1..0f2b8faeb3 100644
--- a/src/dhcp-manager/nm-dhcp-manager.c
+++ b/src/dhcp-manager/nm-dhcp-manager.c
@@ -22,7 +22,6 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
#include <sys/socket.h>
#include <sys/wait.h>
@@ -34,6 +33,7 @@
#include <fcntl.h>
#include <stdio.h>
+#include "nm-glib.h"
#include "nm-dhcp-manager.h"
#include "nm-dhcp-dhclient.h"
#include "nm-dhcp-dhcpcd.h"
@@ -41,7 +41,6 @@
#include "nm-logging.h"
#include "nm-config.h"
#include "nm-dbus-glib-types.h"
-#include "nm-glib-compat.h"
#include "NetworkManagerUtils.h"
#define DHCP_TIMEOUT 45 /* default DHCP timeout, in seconds */
diff --git a/src/dhcp-manager/nm-dhcp-manager.h b/src/dhcp-manager/nm-dhcp-manager.h
index 4c9e45de96..4286d9f905 100644
--- a/src/dhcp-manager/nm-dhcp-manager.h
+++ b/src/dhcp-manager/nm-dhcp-manager.h
@@ -22,9 +22,8 @@
#ifndef __NETWORKMANAGER_DHCP_MANAGER_H__
#define __NETWORKMANAGER_DHCP_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-dhcp-client.h"
#include "nm-ip4-config.h"
#include "nm-dhcp4-config.h"
diff --git a/src/dhcp-manager/nm-dhcp-systemd.c b/src/dhcp-manager/nm-dhcp-systemd.c
index 44a0d49e46..1ad68a5a36 100644
--- a/src/dhcp-manager/nm-dhcp-systemd.c
+++ b/src/dhcp-manager/nm-dhcp-systemd.c
@@ -18,9 +18,7 @@
#include "config.h"
-#include <glib.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <string.h>
#include <stdlib.h>
#include <errno.h>
@@ -31,6 +29,7 @@
#include <ctype.h>
#include <net/if_arp.h>
+#include "nm-glib.h"
#include "nm-dhcp-systemd.h"
#include "nm-utils.h"
#include "nm-logging.h"
diff --git a/src/dhcp-manager/nm-dhcp-systemd.h b/src/dhcp-manager/nm-dhcp-systemd.h
index 2a7a463eb5..ff24bfcd15 100644
--- a/src/dhcp-manager/nm-dhcp-systemd.h
+++ b/src/dhcp-manager/nm-dhcp-systemd.h
@@ -19,9 +19,6 @@
#ifndef NM_DHCP_SYSTEMD_H
#define NM_DHCP_SYSTEMD_H
-#include <glib.h>
-#include <glib-object.h>
-
#include "nm-dhcp-client.h"
#define NM_TYPE_DHCP_SYSTEMD (nm_dhcp_systemd_get_type ())
diff --git a/src/dhcp-manager/nm-dhcp-utils.c b/src/dhcp-manager/nm-dhcp-utils.c
index 4dde1a4454..85fd25746b 100644
--- a/src/dhcp-manager/nm-dhcp-utils.c
+++ b/src/dhcp-manager/nm-dhcp-utils.c
@@ -19,12 +19,12 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <errno.h>
#include <unistd.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-dhcp-utils.h"
#include "nm-utils.h"
diff --git a/src/dhcp-manager/nm-dhcp-utils.h b/src/dhcp-manager/nm-dhcp-utils.h
index 42cf900f2a..fd9e8e24df 100644
--- a/src/dhcp-manager/nm-dhcp-utils.h
+++ b/src/dhcp-manager/nm-dhcp-utils.h
@@ -20,10 +20,12 @@
#define __NETWORKMANAGER_DHCP_UTILS_H__
#include <stdlib.h>
-#include <glib.h>
+
#include <nm-ip4-config.h>
#include <nm-ip6-config.h>
+#include "nm-glib.h"
+
NMIP4Config *nm_dhcp_utils_ip4_config_from_options (int ifindex,
const char *iface,
GHashTable *options,
diff --git a/src/dhcp-manager/tests/test-dhcp-dhclient.c b/src/dhcp-manager/tests/test-dhcp-dhclient.c
index df5eed341d..14fbe4fead 100644
--- a/src/dhcp-manager/tests/test-dhcp-dhclient.c
+++ b/src/dhcp-manager/tests/test-dhcp-dhclient.c
@@ -20,11 +20,11 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "NetworkManagerUtils.h"
#include "nm-dhcp-dhclient-utils.h"
diff --git a/src/dhcp-manager/tests/test-dhcp-utils.c b/src/dhcp-manager/tests/test-dhcp-utils.c
index 3cdae732a7..3bc879812f 100644
--- a/src/dhcp-manager/tests/test-dhcp-utils.c
+++ b/src/dhcp-manager/tests/test-dhcp-utils.c
@@ -19,13 +19,13 @@
#include "config.h"
-#include <glib.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <string.h>
#include <nm-utils.h>
+#include "nm-glib.h"
#include "nm-dhcp-utils.h"
#include "nm-logging.h"
#include "nm-platform.h"
diff --git a/src/dns-manager/nm-dns-dnsmasq.c b/src/dns-manager/nm-dns-dnsmasq.c
index f26ccfaa3f..d71a0eb389 100644
--- a/src/dns-manager/nm-dns-dnsmasq.c
+++ b/src/dns-manager/nm-dns-dnsmasq.c
@@ -27,9 +27,9 @@
#include <arpa/inet.h>
#include <sys/stat.h>
-#include <glib.h>
#include <glib/gi18n.h>
+#include "nm-glib.h"
#include "nm-dns-dnsmasq.h"
#include "nm-utils.h"
#include "nm-logging.h"
diff --git a/src/dns-manager/nm-dns-dnsmasq.h b/src/dns-manager/nm-dns-dnsmasq.h
index fc80f07940..f0393c1222 100644
--- a/src/dns-manager/nm-dns-dnsmasq.h
+++ b/src/dns-manager/nm-dns-dnsmasq.h
@@ -19,9 +19,6 @@
#ifndef __NETWORKMANAGER_DNS_DNSMASQ_H__
#define __NETWORKMANAGER_DNS_DNSMASQ_H__
-#include <glib.h>
-#include <glib-object.h>
-
#include "nm-dns-plugin.h"
#define NM_TYPE_DNS_DNSMASQ (nm_dns_dnsmasq_get_type ())
diff --git a/src/dns-manager/nm-dns-manager.c b/src/dns-manager/nm-dns-manager.c
index ac4a050ec0..59cddb9a6a 100644
--- a/src/dns-manager/nm-dns-manager.c
+++ b/src/dns-manager/nm-dns-manager.c
@@ -35,10 +35,9 @@
#include <linux/fs.h>
-#include <glib.h>
-#include <gio/gio.h>
#include <glib/gi18n.h>
+#include "nm-glib.h"
#include "nm-utils.h"
#include "nm-core-internal.h"
#include "nm-dns-manager.h"
diff --git a/src/dns-manager/nm-dns-manager.h b/src/dns-manager/nm-dns-manager.h
index a3e6cb2699..ef1272b985 100644
--- a/src/dns-manager/nm-dns-manager.h
+++ b/src/dns-manager/nm-dns-manager.h
@@ -24,7 +24,7 @@
#ifndef __NETWORKMANAGER_DNS_MANAGER_H__
#define __NETWORKMANAGER_DNS_MANAGER_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-ip4-config.h"
#include "nm-ip6-config.h"
diff --git a/src/dns-manager/nm-dns-plugin.c b/src/dns-manager/nm-dns-plugin.c
index 5b95d1c50a..c384c66342 100644
--- a/src/dns-manager/nm-dns-plugin.c
+++ b/src/dns-manager/nm-dns-plugin.c
@@ -24,8 +24,8 @@
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-dns-plugin.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
diff --git a/src/dns-manager/nm-dns-plugin.h b/src/dns-manager/nm-dns-plugin.h
index ee735a5abf..3e7ce5b174 100644
--- a/src/dns-manager/nm-dns-plugin.h
+++ b/src/dns-manager/nm-dns-plugin.h
@@ -19,8 +19,7 @@
#ifndef __NETWORKMANAGER_DNS_PLUGIN_H__
#define __NETWORKMANAGER_DNS_PLUGIN_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#define NM_TYPE_DNS_PLUGIN (nm_dns_plugin_get_type ())
#define NM_DNS_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_DNS_PLUGIN, NMDnsPlugin))
diff --git a/src/dns-manager/nm-dns-unbound.h b/src/dns-manager/nm-dns-unbound.h
index 261326b2d4..abc056b926 100644
--- a/src/dns-manager/nm-dns-unbound.h
+++ b/src/dns-manager/nm-dns-unbound.h
@@ -18,8 +18,6 @@
#ifndef __NETWORKMANAGER_DNS_UNBOUND_H__
#define __NETWORKMANAGER_DNS_UNBOUND_H__
-#include <glib-object.h>
-
#include "nm-dns-plugin.h"
#define NM_TYPE_DNS_UNBOUND (nm_dns_unbound_get_type ())
diff --git a/src/dnsmasq-manager/nm-dnsmasq-manager.c b/src/dnsmasq-manager/nm-dnsmasq-manager.c
index dfe776cb42..ea4a2b258e 100644
--- a/src/dnsmasq-manager/nm-dnsmasq-manager.c
+++ b/src/dnsmasq-manager/nm-dnsmasq-manager.c
@@ -28,10 +28,10 @@
#include <arpa/inet.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "nm-dnsmasq-manager.h"
#include "nm-dnsmasq-utils.h"
#include "nm-logging.h"
-#include "nm-glib-compat.h"
#include "nm-utils.h"
#include "NetworkManagerUtils.h"
diff --git a/src/dnsmasq-manager/nm-dnsmasq-manager.h b/src/dnsmasq-manager/nm-dnsmasq-manager.h
index 257cc7559e..4b43658bef 100644
--- a/src/dnsmasq-manager/nm-dnsmasq-manager.h
+++ b/src/dnsmasq-manager/nm-dnsmasq-manager.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_DNSMASQ_MANAGER_H__
#define __NETWORKMANAGER_DNSMASQ_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-ip4-config.h"
#define NM_TYPE_DNSMASQ_MANAGER (nm_dnsmasq_manager_get_type ())
diff --git a/src/dnsmasq-manager/nm-dnsmasq-utils.h b/src/dnsmasq-manager/nm-dnsmasq-utils.h
index bb468c824b..ed0b9ebc81 100644
--- a/src/dnsmasq-manager/nm-dnsmasq-utils.h
+++ b/src/dnsmasq-manager/nm-dnsmasq-utils.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_DNSMASQ_UTILS_H__
#define __NETWORKMANAGER_DNSMASQ_UTILS_H__
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-platform.h"
gboolean nm_dnsmasq_utils_get_range (const NMPlatformIP4Address *addr,
diff --git a/src/dnsmasq-manager/tests/test-dnsmasq-utils.c b/src/dnsmasq-manager/tests/test-dnsmasq-utils.c
index fae4cae076..e36500d2d4 100644
--- a/src/dnsmasq-manager/tests/test-dnsmasq-utils.c
+++ b/src/dnsmasq-manager/tests/test-dnsmasq-utils.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-dnsmasq-utils.h"
#include "nm-logging.h"
diff --git a/src/main-utils.c b/src/main-utils.c
index b0d8df3efa..94437b8b63 100644
--- a/src/main-utils.c
+++ b/src/main-utils.c
@@ -29,13 +29,11 @@
#include <sys/stat.h>
#include <locale.h>
-#include <glib.h>
#include <glib/gi18n.h>
#include <glib-unix.h>
#include <gmodule.h>
-#include "nm-glib-compat.h"
-
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "main-utils.h"
#include "NetworkManagerUtils.h"
diff --git a/src/main-utils.h b/src/main-utils.h
index 4955029532..af68568027 100644
--- a/src/main-utils.h
+++ b/src/main-utils.h
@@ -21,7 +21,7 @@
#ifndef __MAIN_UTILS_H__
#define __MAIN_UTILS_H__
-#include <glib.h>
+#include "nm-glib.h"
void nm_main_utils_ensure_root (void);
diff --git a/src/main.c b/src/main.c
index 27babf81ec..31f63b7ae3 100644
--- a/src/main.c
+++ b/src/main.c
@@ -21,7 +21,6 @@
#include "config.h"
-#include <glib.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib-lowlevel.h>
#include <dbus/dbus-glib.h>
@@ -40,6 +39,7 @@
#include <string.h>
#include <sys/resource.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "nm-dbus-interface.h"
#include "NetworkManagerUtils.h"
diff --git a/src/nm-activation-request.h b/src/nm-activation-request.h
index 69756069ac..62b4f62846 100644
--- a/src/nm-activation-request.h
+++ b/src/nm-activation-request.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_ACTIVATION_REQUEST_H__
#define __NETWORKMANAGER_ACTIVATION_REQUEST_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-connection.h"
#include "nm-active-connection.h"
diff --git a/src/nm-active-connection.c b/src/nm-active-connection.c
index b0bdd77a81..4c449d1de9 100644
--- a/src/nm-active-connection.c
+++ b/src/nm-active-connection.c
@@ -20,8 +20,8 @@
#include "config.h"
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-active-connection.h"
#include "nm-dbus-interface.h"
@@ -35,7 +35,6 @@
#include "NetworkManagerUtils.h"
#include "gsystem-local-alloc.h"
#include "nm-active-connection-glue.h"
-#include "nm-glib-compat.h"
/* Base class for anything implementing the Connection.Active D-Bus interface */
G_DEFINE_ABSTRACT_TYPE (NMActiveConnection, nm_active_connection, G_TYPE_OBJECT)
diff --git a/src/nm-active-connection.h b/src/nm-active-connection.h
index 4db5e6ff56..01568c8fe0 100644
--- a/src/nm-active-connection.h
+++ b/src/nm-active-connection.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_ACTIVE_CONNECTION_H__
#define __NETWORKMANAGER_ACTIVE_CONNECTION_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-connection.h"
diff --git a/src/nm-auth-manager.h b/src/nm-auth-manager.h
index cc3b5d3c72..4589651a09 100644
--- a/src/nm-auth-manager.h
+++ b/src/nm-auth-manager.h
@@ -21,8 +21,8 @@
#ifndef NM_AUTH_MANAGER_H
#define NM_AUTH_MANAGER_H
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-auth-subject.h"
G_BEGIN_DECLS
diff --git a/src/nm-auth-subject.c b/src/nm-auth-subject.c
index c67424e788..12dcee044a 100644
--- a/src/nm-auth-subject.c
+++ b/src/nm-auth-subject.c
@@ -32,11 +32,10 @@
#include <string.h>
#include <stdlib.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-dbus-manager.h"
#include "nm-enum-types.h"
-#include "nm-glib-compat.h"
#include "NetworkManagerUtils.h"
#include "gsystem-local-alloc.h"
diff --git a/src/nm-auth-subject.h b/src/nm-auth-subject.h
index cc004fa90c..6f4898692d 100644
--- a/src/nm-auth-subject.h
+++ b/src/nm-auth-subject.h
@@ -22,11 +22,10 @@
#define __NETWORKMANAGER_AUTH_SUBJECT_H__
#include <config.h>
-#include <glib.h>
-#include <glib-object.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_AUTH_SUBJECT (nm_auth_subject_get_type ())
diff --git a/src/nm-auth-utils.c b/src/nm-auth-utils.c
index 1e14c7babf..1a56f191a9 100644
--- a/src/nm-auth-utils.c
+++ b/src/nm-auth-utils.c
@@ -21,8 +21,8 @@
#include "config.h"
#include <string.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "nm-setting-connection.h"
#include "nm-auth-utils.h"
diff --git a/src/nm-auth-utils.h b/src/nm-auth-utils.h
index 138c616d97..bf571ac4b0 100644
--- a/src/nm-auth-utils.h
+++ b/src/nm-auth-utils.h
@@ -21,10 +21,10 @@
#ifndef __NETWORKMANAGER_MANAGER_AUTH_H__
#define __NETWORKMANAGER_MANAGER_AUTH_H__
-#include <glib.h>
#include <dbus/dbus-glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_AUTH_PERMISSION_ENABLE_DISABLE_NETWORK "org.freedesktop.NetworkManager.enable-disable-network"
diff --git a/src/nm-config-data.h b/src/nm-config-data.h
index 36aa66af95..052a6b265b 100644
--- a/src/nm-config-data.h
+++ b/src/nm-config-data.h
@@ -21,9 +21,8 @@
#ifndef NM_CONFIG_DATA_H
#define NM_CONFIG_DATA_H
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
G_BEGIN_DECLS
diff --git a/src/nm-config.c b/src/nm-config.c
index 3490959a7c..aa0e05a5d8 100644
--- a/src/nm-config.c
+++ b/src/nm-config.c
@@ -24,10 +24,12 @@
#include <string.h>
#include <stdio.h>
+#include <glib/gi18n.h>
+
+#include "nm-glib.h"
#include "nm-config.h"
#include "nm-logging.h"
#include "nm-utils.h"
-#include "nm-glib-compat.h"
#include "nm-device.h"
#include "NetworkManagerUtils.h"
#include "gsystem-local-alloc.h"
@@ -35,9 +37,6 @@
#include "nm-core-internal.h"
#include "nm-keyfile-internal.h"
-#include <gio/gio.h>
-#include <glib/gi18n.h>
-
#define DEFAULT_CONFIG_MAIN_FILE NMCONFDIR "/NetworkManager.conf"
#define DEFAULT_CONFIG_DIR NMCONFDIR "/conf.d"
#define DEFAULT_CONFIG_MAIN_FILE_OLD NMCONFDIR "/nm-system-settings.conf"
diff --git a/src/nm-config.h b/src/nm-config.h
index 870d4e4fe5..2eece45a15 100644
--- a/src/nm-config.h
+++ b/src/nm-config.h
@@ -22,9 +22,8 @@
#ifndef __NETWORKMANAGER_CONFIG_H__
#define __NETWORKMANAGER_CONFIG_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-config-data.h"
diff --git a/src/nm-connection-provider.h b/src/nm-connection-provider.h
index 8d5f7a696d..31b654f3eb 100644
--- a/src/nm-connection-provider.h
+++ b/src/nm-connection-provider.h
@@ -16,9 +16,9 @@
#ifndef __NETWORKMANAGER_CONNECTION_PROVIDER_H__
#define __NETWORKMANAGER_CONNECTION_PROVIDER_H__
-#include <glib-object.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_CONNECTION_PROVIDER (nm_connection_provider_get_type ())
diff --git a/src/nm-connectivity.c b/src/nm-connectivity.c
index d3f9f25e75..e8b854cdd6 100644
--- a/src/nm-connectivity.c
+++ b/src/nm-connectivity.c
@@ -26,8 +26,8 @@
#include <libsoup/soup.h>
#endif
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-connectivity.h"
#include "nm-config.h"
#include "nm-logging.h"
diff --git a/src/nm-connectivity.h b/src/nm-connectivity.h
index fc584d5fed..66e943cd48 100644
--- a/src/nm-connectivity.h
+++ b/src/nm-connectivity.h
@@ -21,10 +21,8 @@
#ifndef __NETWORKMANAGER_CONNECTIVITY_H__
#define __NETWORKMANAGER_CONNECTIVITY_H__
-#include <glib.h>
-#include <glib-object.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-types.h"
diff --git a/src/nm-dbus-manager.c b/src/nm-dbus-manager.c
index 4f3ea07223..0a664b0a12 100644
--- a/src/nm-dbus-manager.c
+++ b/src/nm-dbus-manager.c
@@ -26,9 +26,9 @@
#include <sys/types.h>
#include <errno.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-dbus-manager.h"
-#include "nm-glib-compat.h"
#include "nm-properties-changed-signal.h"
#include <dbus/dbus.h>
diff --git a/src/nm-dbus-manager.h b/src/nm-dbus-manager.h
index c87ee02455..a0e3121990 100644
--- a/src/nm-dbus-manager.h
+++ b/src/nm-dbus-manager.h
@@ -23,10 +23,10 @@
#define __NM_DBUS_MANAGER_H__
#include <config.h>
-#include <glib-object.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib.h>
+#include "nm-glib.h"
#include "nm-types.h"
G_BEGIN_DECLS
diff --git a/src/nm-dcb.c b/src/nm-dcb.c
index 8bf3858a3d..b5a1346274 100644
--- a/src/nm-dcb.c
+++ b/src/nm-dcb.c
@@ -23,7 +23,7 @@
#include <sys/wait.h>
#include <string.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-dcb.h"
#include "nm-platform.h"
#include "NetworkManagerUtils.h"
diff --git a/src/nm-dcb.h b/src/nm-dcb.h
index e409dd4832..e12fa18030 100644
--- a/src/nm-dcb.h
+++ b/src/nm-dcb.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_DCB_H__
#define __NETWORKMANAGER_DCB_H__
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-setting-dcb.h"
gboolean nm_dcb_enable (const char *iface, gboolean enable, GError **error);
diff --git a/src/nm-default-route-manager.h b/src/nm-default-route-manager.h
index 7fc27bbd1c..4c1b032859 100644
--- a/src/nm-default-route-manager.h
+++ b/src/nm-default-route-manager.h
@@ -18,8 +18,8 @@
* Copyright (C) 2014 Red Hat, Inc.
*/
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-connection.h"
#include "nm-types.h"
diff --git a/src/nm-dhcp4-config.c b/src/nm-dhcp4-config.c
index 096cf16d99..ae945fdf33 100644
--- a/src/nm-dhcp4-config.c
+++ b/src/nm-dhcp4-config.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-dbus-manager.h"
#include "nm-dhcp4-config.h"
@@ -30,7 +30,6 @@
#include "nm-dbus-glib-types.h"
#include "nm-utils.h"
-
G_DEFINE_TYPE (NMDhcp4Config, nm_dhcp4_config, G_TYPE_OBJECT)
#define NM_DHCP4_CONFIG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DHCP4_CONFIG, NMDhcp4ConfigPrivate))
diff --git a/src/nm-dhcp4-config.h b/src/nm-dhcp4-config.h
index 227d44817b..c7f3797e24 100644
--- a/src/nm-dhcp4-config.h
+++ b/src/nm-dhcp4-config.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_DHCP4_CONFIG_H__
#define __NETWORKMANAGER_DHCP4_CONFIG_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_DHCP4_CONFIG (nm_dhcp4_config_get_type ())
diff --git a/src/nm-dhcp6-config.c b/src/nm-dhcp6-config.c
index f93e9644c4..f96807caba 100644
--- a/src/nm-dhcp6-config.c
+++ b/src/nm-dhcp6-config.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-dbus-manager.h"
#include "nm-dhcp6-config.h"
@@ -30,7 +30,6 @@
#include "nm-dbus-glib-types.h"
#include "nm-utils.h"
-
G_DEFINE_TYPE (NMDhcp6Config, nm_dhcp6_config, G_TYPE_OBJECT)
#define NM_DHCP6_CONFIG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DHCP6_CONFIG, NMDhcp6ConfigPrivate))
diff --git a/src/nm-dhcp6-config.h b/src/nm-dhcp6-config.h
index eaca61b1ce..53d8b52a4f 100644
--- a/src/nm-dhcp6-config.h
+++ b/src/nm-dhcp6-config.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_DHCP6_CONFIG_H__
#define __NETWORKMANAGER_DHCP6_CONFIG_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_DHCP6_CONFIG (nm_dhcp6_config_get_type ())
diff --git a/src/nm-dispatcher.c b/src/nm-dispatcher.c
index eede0584ee..8adec92970 100644
--- a/src/nm-dispatcher.c
+++ b/src/nm-dispatcher.c
@@ -21,11 +21,10 @@
#include "config.h"
-#include <glib.h>
-#include <gio/gio.h>
#include <string.h>
#include <errno.h>
+#include "nm-glib.h"
#include "nm-dispatcher.h"
#include "nm-dispatcher-api.h"
#include "NetworkManagerUtils.h"
@@ -38,7 +37,6 @@
#include "nm-ip4-config.h"
#include "nm-ip6-config.h"
#include "nm-dbus-glib-types.h"
-#include "nm-glib-compat.h"
#include "nm-settings-connection.h"
#include "nm-platform.h"
#include "nm-core-internal.h"
diff --git a/src/nm-dispatcher.h b/src/nm-dispatcher.h
index e93816b6b7..d4ea329d34 100644
--- a/src/nm-dispatcher.h
+++ b/src/nm-dispatcher.h
@@ -22,9 +22,9 @@
#ifndef __NETWORKMANAGER_DISPATCHER_H__
#define __NETWORKMANAGER_DISPATCHER_H__
-#include <glib.h>
#include <stdio.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-connection.h"
diff --git a/src/nm-firewall-manager.c b/src/nm-firewall-manager.c
index 9bffac7599..304ee7e932 100644
--- a/src/nm-firewall-manager.c
+++ b/src/nm-firewall-manager.c
@@ -21,9 +21,8 @@
#include "config.h"
#include <string.h>
-#include <glib.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-firewall-manager.h"
#include "nm-logging.h"
#include "gsystem-local-alloc.h"
diff --git a/src/nm-firewall-manager.h b/src/nm-firewall-manager.h
index 84cb5498ae..6423cbbb18 100644
--- a/src/nm-firewall-manager.h
+++ b/src/nm-firewall-manager.h
@@ -21,7 +21,7 @@
#ifndef __NETWORKMANAGER_FIREWALL_MANAGER_H__
#define __NETWORKMANAGER_FIREWALL_MANAGER_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#define FIREWALL_DBUS_SERVICE "org.fedoraproject.FirewallD1"
#define FIREWALL_DBUS_PATH "/org/fedoraproject/FirewallD1"
diff --git a/src/nm-iface-helper.c b/src/nm-iface-helper.c
index bec6cc8359..8fd57493ee 100644
--- a/src/nm-iface-helper.c
+++ b/src/nm-iface-helper.c
@@ -20,7 +20,6 @@
#include "config.h"
-#include <glib.h>
#include <glib-unix.h>
#include <getopt.h>
#include <locale.h>
@@ -38,6 +37,7 @@
* Forward declare if_nametoindex. */
extern unsigned int if_nametoindex (const char *__ifname);
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "NetworkManagerUtils.h"
#include "nm-linux-platform.h"
diff --git a/src/nm-ip4-config.h b/src/nm-ip4-config.h
index 4415c453ea..753b74cb9d 100644
--- a/src/nm-ip4-config.h
+++ b/src/nm-ip4-config.h
@@ -21,8 +21,8 @@
#ifndef __NETWORKMANAGER_IP4_CONFIG_H__
#define __NETWORKMANAGER_IP4_CONFIG_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-setting-ip4-config.h"
diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c
index 1cedff5f5d..2122f64f4d 100644
--- a/src/nm-ip6-config.c
+++ b/src/nm-ip6-config.c
@@ -24,9 +24,9 @@
#include <string.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-ip6-config.h"
-#include "nm-glib-compat.h"
#include "nm-utils.h"
#include "nm-platform.h"
#include "nm-dbus-manager.h"
diff --git a/src/nm-ip6-config.h b/src/nm-ip6-config.h
index e8cbc0e5f9..06919026c3 100644
--- a/src/nm-ip6-config.h
+++ b/src/nm-ip6-config.h
@@ -21,9 +21,9 @@
#ifndef __NETWORKMANAGER_IP6_CONFIG_H__
#define __NETWORKMANAGER_IP6_CONFIG_H__
-#include <glib-object.h>
#include <netinet/in.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-setting-ip6-config.h"
diff --git a/src/nm-logging.c b/src/nm-logging.c
index eed89dec06..90598775fa 100644
--- a/src/nm-logging.c
+++ b/src/nm-logging.c
@@ -39,7 +39,7 @@
#include <systemd/sd-journal.h>
#endif
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-errors.h"
#include "gsystem-local-alloc.h"
diff --git a/src/nm-logging.h b/src/nm-logging.h
index c34ef4559b..668125927b 100644
--- a/src/nm-logging.h
+++ b/src/nm-logging.h
@@ -26,9 +26,8 @@
#error nm-test-utils.h must be included as last header
#endif
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-macros-internal.h"
/* Log domains */
diff --git a/src/nm-manager.c b/src/nm-manager.c
index d8072d1d69..9a035c0fd4 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
@@ -28,11 +28,10 @@
#include <unistd.h>
#include <dbus/dbus-glib-lowlevel.h>
#include <dbus/dbus-glib.h>
-#include <gio/gio.h>
#include <glib/gi18n.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
-#include "nm-glib-compat.h"
#include "nm-manager.h"
#include "nm-logging.h"
#include "nm-dbus-manager.h"
diff --git a/src/nm-manager.h b/src/nm-manager.h
index a8e7d7ad32..665a8dd701 100644
--- a/src/nm-manager.h
+++ b/src/nm-manager.h
@@ -22,9 +22,8 @@
#ifndef __NETWORKMANAGER_MANAGER_H__
#define __NETWORKMANAGER_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "nm-connection.h"
diff --git a/src/nm-multi-index.c b/src/nm-multi-index.c
index d45f4834fd..8a7e4d1dac 100644
--- a/src/nm-multi-index.c
+++ b/src/nm-multi-index.c
@@ -20,14 +20,13 @@
#include "config.h"
+#include "nm-glib.h"
#include "nm-multi-index.h"
#include <string.h>
-#include "nm-glib-compat.h"
#include "nm-macros-internal.h"
-
struct NMMultiIndex {
NMMultiIndexFuncEqual equal_fcn;
NMMultiIndexFuncClone clone_fcn;
diff --git a/src/nm-multi-index.h b/src/nm-multi-index.h
index e41ef54e7c..3438d1cf60 100644
--- a/src/nm-multi-index.h
+++ b/src/nm-multi-index.h
@@ -21,7 +21,7 @@
#ifndef __NM_MULTI_INDEX__
#define __NM_MULTI_INDEX__
-#include <glib.h>
+#include "nm-glib.h"
G_BEGIN_DECLS
diff --git a/src/nm-policy.c b/src/nm-policy.c
index 69d12d7de0..ef8239aa35 100644
--- a/src/nm-policy.c
+++ b/src/nm-policy.c
@@ -26,8 +26,8 @@
#include <errno.h>
#include <netdb.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-policy.h"
#include "NetworkManagerUtils.h"
#include "nm-activation-request.h"
@@ -45,7 +45,6 @@
#include "nm-dispatcher.h"
#include "nm-utils.h"
#include "nm-core-internal.h"
-#include "nm-glib-compat.h"
#include "nm-manager.h"
#include "nm-settings.h"
#include "nm-settings-connection.h"
diff --git a/src/nm-properties-changed-signal.h b/src/nm-properties-changed-signal.h
index 97a3b2c024..6f76e8a4ae 100644
--- a/src/nm-properties-changed-signal.h
+++ b/src/nm-properties-changed-signal.h
@@ -22,7 +22,7 @@
#ifndef _NM_PROPERTIES_CHANGED_SIGNAL_H_
#define _NM_PROPERTIES_CHANGED_SIGNAL_H_
-#include <glib-object.h>
+#include "nm-glib.h"
void nm_properties_changed_signal_add_property (GType type,
const char *dbus_property_name,
diff --git a/src/nm-rfkill-manager.h b/src/nm-rfkill-manager.h
index 220f3c2c6f..cea6c7aee1 100644
--- a/src/nm-rfkill-manager.h
+++ b/src/nm-rfkill-manager.h
@@ -19,8 +19,8 @@
* Copyright (C) 2007 - 2013 Red Hat, Inc.
*/
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#ifndef __NETWORKMANAGER_RFKILL_MANAGER_H__
diff --git a/src/nm-route-manager.h b/src/nm-route-manager.h
index 1e4ce4840f..e72bce735c 100644
--- a/src/nm-route-manager.h
+++ b/src/nm-route-manager.h
@@ -18,8 +18,8 @@
* Copyright (C) 2015 Red Hat, Inc.
*/
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
#ifndef __NETWORKMANAGER_ROUTE_MANAGER_H__
diff --git a/src/nm-session-monitor.c b/src/nm-session-monitor.c
index 84436d08b9..8a12552945 100644
--- a/src/nm-session-monitor.c
+++ b/src/nm-session-monitor.c
@@ -25,9 +25,8 @@
#include <errno.h>
#include <string.h>
#include <sys/stat.h>
-#include <gio/gio.h>
-#include "nm-glib-compat.h"
+#include "nm-glib.h"
#include "nm-session-monitor.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
diff --git a/src/nm-session-monitor.h b/src/nm-session-monitor.h
index 32f747f231..ef7bd5161f 100644
--- a/src/nm-session-monitor.h
+++ b/src/nm-session-monitor.h
@@ -21,8 +21,8 @@
#ifndef __NETWORKMANAGER_SESSION_MONITOR_H__
#define __NETWORKMANAGER_SESSION_MONITOR_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
G_BEGIN_DECLS
diff --git a/src/nm-sleep-monitor-systemd.c b/src/nm-sleep-monitor-systemd.c
index 1e3a309758..dab41a7a0b 100644
--- a/src/nm-sleep-monitor-systemd.c
+++ b/src/nm-sleep-monitor-systemd.c
@@ -23,9 +23,9 @@
#include <string.h>
#include <sys/stat.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <gio/gunixfdlist.h>
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-dbus-manager.h"
#include "nm-core-internal.h"
diff --git a/src/nm-sleep-monitor-upower.c b/src/nm-sleep-monitor-upower.c
index a9abb08b02..e3599a2fc5 100644
--- a/src/nm-sleep-monitor-upower.c
+++ b/src/nm-sleep-monitor-upower.c
@@ -22,7 +22,7 @@
#include <errno.h>
#include <string.h>
#include <sys/stat.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-logging.h"
#include "nm-core-internal.h"
diff --git a/src/nm-sleep-monitor.h b/src/nm-sleep-monitor.h
index 84623771a9..3f13d3256f 100644
--- a/src/nm-sleep-monitor.h
+++ b/src/nm-sleep-monitor.h
@@ -20,8 +20,8 @@
#ifndef __NETWORKMANAGER_SLEEP_MONITOR_H__
#define __NETWORKMANAGER_SLEEP_MONITOR_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-types.h"
G_BEGIN_DECLS
diff --git a/src/platform/nm-platform.h b/src/platform/nm-platform.h
index 16eb351fa1..448101da4c 100644
--- a/src/platform/nm-platform.h
+++ b/src/platform/nm-platform.h
@@ -21,13 +21,12 @@
#ifndef __NETWORKMANAGER_PLATFORM_H__
#define __NETWORKMANAGER_PLATFORM_H__
-#include <glib-object.h>
-#include "nm-glib-compat.h"
#include <netinet/in.h>
#include <linux/if.h>
#include <linux/if_addr.h>
#include <nm-dbus-interface.h>
+#include "nm-glib.h"
#include "nm-types.h"
#include "NetworkManagerUtils.h"
diff --git a/src/platform/tests/monitor.c b/src/platform/tests/monitor.c
index a989e63e14..933e124ffd 100644
--- a/src/platform/tests/monitor.c
+++ b/src/platform/tests/monitor.c
@@ -3,10 +3,10 @@
#include <stdlib.h>
#include <syslog.h>
+#include "nm-glib.h"
#include "nm-fake-platform.h"
#include "nm-linux-platform.h"
#include "nm-logging.h"
-#include "nm-glib-compat.h"
int
main (int argc, char **argv)
diff --git a/src/platform/wifi/wifi-utils-nl80211.c b/src/platform/wifi/wifi-utils-nl80211.c
index 2a52de5c15..e427f3368a 100644
--- a/src/platform/wifi/wifi-utils-nl80211.c
+++ b/src/platform/wifi/wifi-utils-nl80211.c
@@ -29,7 +29,6 @@
#include <unistd.h>
#include <math.h>
-#include <glib.h>
#include <netlink/genl/genl.h>
#include <netlink/genl/family.h>
@@ -37,6 +36,7 @@
#include <linux/nl80211.h>
+#include "nm-glib.h"
#include "wifi-utils-private.h"
#include "wifi-utils-nl80211.h"
#include "nm-platform.h"
diff --git a/src/platform/wifi/wifi-utils-private.h b/src/platform/wifi/wifi-utils-private.h
index c334a82845..9e5b206891 100644
--- a/src/platform/wifi/wifi-utils-private.h
+++ b/src/platform/wifi/wifi-utils-private.h
@@ -21,8 +21,8 @@
#ifndef __WIFI_UTILS_PRIVATE_H__
#define __WIFI_UTILS_PRIVATE_H__
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "wifi-utils.h"
diff --git a/src/platform/wifi/wifi-utils-wext.c b/src/platform/wifi/wifi-utils-wext.c
index e58b72bc4e..52d1e49b1c 100644
--- a/src/platform/wifi/wifi-utils-wext.c
+++ b/src/platform/wifi/wifi-utils-wext.c
@@ -28,8 +28,8 @@
#include <unistd.h>
#include <math.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "wifi-utils-private.h"
#include "wifi-utils-wext.h"
#include "nm-logging.h"
@@ -44,7 +44,6 @@
#include <sys/socket.h>
#include <linux/wireless.h>
-
typedef struct {
WifiData parent;
int fd;
diff --git a/src/platform/wifi/wifi-utils.c b/src/platform/wifi/wifi-utils.c
index 69c8cbc952..eab99bf860 100644
--- a/src/platform/wifi/wifi-utils.c
+++ b/src/platform/wifi/wifi-utils.c
@@ -24,8 +24,8 @@
#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "wifi-utils.h"
#include "wifi-utils-private.h"
#include "wifi-utils-nl80211.h"
diff --git a/src/platform/wifi/wifi-utils.h b/src/platform/wifi/wifi-utils.h
index a2830dcd77..a5c9feaf49 100644
--- a/src/platform/wifi/wifi-utils.h
+++ b/src/platform/wifi/wifi-utils.h
@@ -23,8 +23,8 @@
#define __WIFI_UTILS_H__
#include <net/ethernet.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
typedef struct WifiData WifiData;
diff --git a/src/ppp-manager/nm-ppp-manager.c b/src/ppp-manager/nm-ppp-manager.c
index 48c9ff23de..6e1e5c2a2a 100644
--- a/src/ppp-manager/nm-ppp-manager.c
+++ b/src/ppp-manager/nm-ppp-manager.c
@@ -42,8 +42,8 @@
#include <linux/if.h>
#include <linux/if_ppp.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
-#include "nm-glib-compat.h"
#include "nm-ppp-manager.h"
#include "nm-dbus-manager.h"
#include "nm-logging.h"
diff --git a/src/ppp-manager/nm-ppp-manager.h b/src/ppp-manager/nm-ppp-manager.h
index f8cbda1365..9528721532 100644
--- a/src/ppp-manager/nm-ppp-manager.h
+++ b/src/ppp-manager/nm-ppp-manager.h
@@ -22,10 +22,8 @@
#ifndef __NETWORKMANAGER_PPP_MANAGER_H__
#define __NETWORKMANAGER_PPP_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-ppp-status.h"
#include "nm-activation-request.h"
#include "nm-connection.h"
diff --git a/src/ppp-manager/nm-pppd-plugin.c b/src/ppp-manager/nm-pppd-plugin.c
index 0a3bcca8d3..9b07519b01 100644
--- a/src/ppp-manager/nm-pppd-plugin.c
+++ b/src/ppp-manager/nm-pppd-plugin.c
@@ -29,16 +29,15 @@
#include <netinet/in.h>
#include <arpa/inet.h>
#include <dlfcn.h>
-#include <gio/gio.h>
#define INET6
#include <pppd/eui64.h>
#include <pppd/ipv6cp.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-pppd-plugin.h"
#include "nm-ppp-status.h"
-#include "nm-glib-compat.h"
int plugin_init (void);
diff --git a/src/rdisc/nm-rdisc.h b/src/rdisc/nm-rdisc.h
index 463e19121b..4c83fb4e36 100644
--- a/src/rdisc/nm-rdisc.h
+++ b/src/rdisc/nm-rdisc.h
@@ -21,11 +21,11 @@
#ifndef __NETWORKMANAGER_RDISC_H__
#define __NETWORKMANAGER_RDISC_H__
-#include <glib-object.h>
#include <stdlib.h>
#include <netinet/in.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#define NM_TYPE_RDISC (nm_rdisc_get_type ())
diff --git a/src/settings/nm-agent-manager.c b/src/settings/nm-agent-manager.c
index 99602d9483..7da9ee5f43 100644
--- a/src/settings/nm-agent-manager.c
+++ b/src/settings/nm-agent-manager.c
@@ -23,10 +23,10 @@
#include <string.h>
#include <pwd.h>
-#include <glib.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-logging.h"
#include "nm-agent-manager.h"
diff --git a/src/settings/nm-agent-manager.h b/src/settings/nm-agent-manager.h
index ac29df2291..ab010edb71 100644
--- a/src/settings/nm-agent-manager.h
+++ b/src/settings/nm-agent-manager.h
@@ -21,9 +21,8 @@
#ifndef __NETWORKMANAGER_AGENT_MANAGER_H__
#define __NETWORKMANAGER_AGENT_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-secret-agent.h"
#include "nm-types.h"
diff --git a/src/settings/nm-inotify-helper.c b/src/settings/nm-inotify-helper.c
index 2d0210aee4..2c4fe9e6d8 100644
--- a/src/settings/nm-inotify-helper.c
+++ b/src/settings/nm-inotify-helper.c
@@ -23,9 +23,9 @@
#include <unistd.h>
#include <string.h>
#include <sys/inotify.h>
-#include <glib.h>
#include <errno.h>
+#include "nm-glib.h"
#include "nm-inotify-helper.h"
#include "nm-logging.h"
#include "NetworkManagerUtils.h"
diff --git a/src/settings/nm-inotify-helper.h b/src/settings/nm-inotify-helper.h
index 31e6b9ff81..1dd73a5aca 100644
--- a/src/settings/nm-inotify-helper.h
+++ b/src/settings/nm-inotify-helper.h
@@ -21,10 +21,10 @@
#ifndef __INOTIFY_HELPER_H__
#define __INOTIFY_HELPER_H__
-#include <glib.h>
-#include <glib-object.h>
#include <sys/inotify.h>
+#include "nm-glib.h"
+
/* NOTE: this code should be killed once we depend on a new enough glib to
* include the patches from https://bugzilla.gnome.org/show_bug.cgi?id=532815
*/
diff --git a/src/settings/nm-secret-agent.c b/src/settings/nm-secret-agent.c
index 69a5cea226..be21f16a77 100644
--- a/src/settings/nm-secret-agent.c
+++ b/src/settings/nm-secret-agent.c
@@ -23,15 +23,14 @@
#include <sys/types.h>
#include <pwd.h>
-#include <glib.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-secret-agent.h"
#include "nm-dbus-manager.h"
#include "nm-dbus-glib-types.h"
-#include "nm-glib-compat.h"
#include "nm-logging.h"
#include "nm-auth-subject.h"
#include "nm-simple-connection.h"
diff --git a/src/settings/nm-secret-agent.h b/src/settings/nm-secret-agent.h
index f3f4ff89c5..ed49f93572 100644
--- a/src/settings/nm-secret-agent.h
+++ b/src/settings/nm-secret-agent.h
@@ -21,10 +21,9 @@
#ifndef __NETWORKMANAGER_SECRET_AGENT_H__
#define __NETWORKMANAGER_SECRET_AGENT_H__
-#include <glib.h>
-#include <glib-object.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_SECRET_AGENT (nm_secret_agent_get_type ())
diff --git a/src/settings/nm-settings-connection.c b/src/settings/nm-settings-connection.c
index c25dfac01a..24e9395963 100644
--- a/src/settings/nm-settings-connection.c
+++ b/src/settings/nm-settings-connection.c
@@ -26,6 +26,7 @@
#include <nm-dbus-interface.h>
#include <dbus/dbus-glib-lowlevel.h>
+#include "nm-glib.h"
#include "nm-settings-connection.h"
#include "nm-session-monitor.h"
#include "nm-dbus-manager.h"
@@ -37,7 +38,6 @@
#include "NetworkManagerUtils.h"
#include "nm-properties-changed-signal.h"
#include "nm-core-internal.h"
-#include "nm-glib-compat.h"
#include "gsystem-local-alloc.h"
#define SETTINGS_TIMESTAMPS_FILE NMSTATEDIR "/timestamps"
diff --git a/src/settings/nm-settings.h b/src/settings/nm-settings.h
index d196efe655..2c163cb73d 100644
--- a/src/settings/nm-settings.h
+++ b/src/settings/nm-settings.h
@@ -28,6 +28,7 @@
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-types.h"
#define NM_TYPE_SETTINGS (nm_settings_get_type ())
diff --git a/src/settings/nm-system-config-interface.h b/src/settings/nm-system-config-interface.h
index bc158d78b8..1dce93189e 100644
--- a/src/settings/nm-system-config-interface.h
+++ b/src/settings/nm-system-config-interface.h
@@ -22,9 +22,9 @@
#ifndef __NETWORKMANAGER_SYSTEM_CONFIG_INTERFACE_H__
#define __NETWORKMANAGER_SYSTEM_CONFIG_INTERFACE_H__
-#include <glib.h>
-#include <glib-object.h>
+
#include <nm-connection.h>
+#include "nm-glib.h"
#include "nm-types.h"
G_BEGIN_DECLS
diff --git a/src/settings/plugins/ibft/plugin.c b/src/settings/plugins/ibft/plugin.c
index 954929a6db..2c3504f309 100644
--- a/src/settings/plugins/ibft/plugin.c
+++ b/src/settings/plugins/ibft/plugin.c
@@ -25,12 +25,11 @@
#include <errno.h>
#include <gmodule.h>
-#include <glib-object.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <nm-setting-connection.h>
+#include "nm-glib.h"
#include "nm-dbus-glib-types.h"
#include "nm-system-config-interface.h"
#include "nm-logging.h"
diff --git a/src/settings/plugins/ibft/plugin.h b/src/settings/plugins/ibft/plugin.h
index 2c811359e4..f9426fcb04 100644
--- a/src/settings/plugins/ibft/plugin.h
+++ b/src/settings/plugins/ibft/plugin.h
@@ -21,7 +21,7 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
-#include <glib-object.h>
+#include "nm-glib.h"
#define SC_TYPE_PLUGIN_IBFT (sc_plugin_ibft_get_type ())
#define SC_PLUGIN_IBFT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SC_TYPE_PLUGIN_IBFT, SCPluginIbft))
diff --git a/src/settings/plugins/ibft/reader.c b/src/settings/plugins/ibft/reader.c
index 9bc6346278..45006f7f1a 100644
--- a/src/settings/plugins/ibft/reader.c
+++ b/src/settings/plugins/ibft/reader.c
@@ -31,9 +31,9 @@
#include <sys/ioctl.h>
#include <unistd.h>
-#include <glib.h>
#include <glib/gi18n.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include "nm-platform.h"
#include "NetworkManagerUtils.h"
diff --git a/src/settings/plugins/ibft/reader.h b/src/settings/plugins/ibft/reader.h
index 0b2f22b659..bea32e2497 100644
--- a/src/settings/plugins/ibft/reader.h
+++ b/src/settings/plugins/ibft/reader.h
@@ -21,9 +21,10 @@
#ifndef __READER_H__
#define __READER_H__
-#include <glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
+
gboolean read_ibft_blocks (const char *iscsiadm_path,
GSList **out_blocks,
GError **error);
diff --git a/src/settings/plugins/ifcfg-rh/common.h b/src/settings/plugins/ifcfg-rh/common.h
index 0ec355ee4e..168177ff9a 100644
--- a/src/settings/plugins/ifcfg-rh/common.h
+++ b/src/settings/plugins/ifcfg-rh/common.h
@@ -21,7 +21,7 @@
#ifndef __COMMON_H__
#define __COMMON_H__
-#include <glib.h>
+#include "nm-glib.h"
#define IFCFG_TAG "ifcfg-"
#define KEYS_TAG "keys-"
diff --git a/src/settings/plugins/ifcfg-rh/plugin.c b/src/settings/plugins/ifcfg-rh/plugin.c
index d33b41cd0c..cef69c13b2 100644
--- a/src/settings/plugins/ifcfg-rh/plugin.c
+++ b/src/settings/plugins/ifcfg-rh/plugin.c
@@ -30,9 +30,7 @@
#include <sys/stat.h>
#include <gmodule.h>
-#include <glib-object.h>
#include <glib/gi18n.h>
-#include <gio/gio.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib.h>
@@ -44,6 +42,7 @@
#include <nm-setting-connection.h>
+#include "nm-glib.h"
#include "common.h"
#include "nm-dbus-glib-types.h"
#include "plugin.h"
diff --git a/src/settings/plugins/ifcfg-rh/plugin.h b/src/settings/plugins/ifcfg-rh/plugin.h
index d37decfd6f..2f757edff0 100644
--- a/src/settings/plugins/ifcfg-rh/plugin.h
+++ b/src/settings/plugins/ifcfg-rh/plugin.h
@@ -24,7 +24,7 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
-#include <glib-object.h>
+#include "nm-glib.h"
#define SC_TYPE_PLUGIN_IFCFG (sc_plugin_ifcfg_get_type ())
#define SC_PLUGIN_IFCFG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SC_TYPE_PLUGIN_IFCFG, SCPluginIfcfg))
diff --git a/src/settings/plugins/ifcfg-rh/reader.c b/src/settings/plugins/ifcfg-rh/reader.c
index ee407ea126..69f08ebffd 100644
--- a/src/settings/plugins/ifcfg-rh/reader.c
+++ b/src/settings/plugins/ifcfg-rh/reader.c
@@ -31,7 +31,6 @@
#include <sys/ioctl.h>
#include <unistd.h>
-#include <glib.h>
#include <glib/gi18n.h>
#include <nm-connection.h>
#include <nm-dbus-interface.h>
@@ -49,6 +48,7 @@
#include <nm-setting-bridge-port.h>
#include <nm-setting-dcb.h>
#include <nm-setting-generic.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include <nm-utils.h>
diff --git a/src/settings/plugins/ifcfg-rh/reader.h b/src/settings/plugins/ifcfg-rh/reader.h
index 2096ffc40e..a9f830f119 100644
--- a/src/settings/plugins/ifcfg-rh/reader.h
+++ b/src/settings/plugins/ifcfg-rh/reader.h
@@ -21,9 +21,9 @@
#ifndef __READER_H__
#define __READER_H__
-#include <glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "shvar.h"
NMConnection *connection_from_file (const char *filename,
diff --git a/src/settings/plugins/ifcfg-rh/shvar.h b/src/settings/plugins/ifcfg-rh/shvar.h
index de7a358556..1778206577 100644
--- a/src/settings/plugins/ifcfg-rh/shvar.h
+++ b/src/settings/plugins/ifcfg-rh/shvar.h
@@ -31,7 +31,7 @@
#ifndef _SHVAR_H
#define _SHVAR_H
-#include <glib.h>
+#include "nm-glib.h"
G_BEGIN_DECLS
diff --git a/src/settings/plugins/ifcfg-rh/utils.c b/src/settings/plugins/ifcfg-rh/utils.c
index a793288d91..4d38c9b1c0 100644
--- a/src/settings/plugins/ifcfg-rh/utils.c
+++ b/src/settings/plugins/ifcfg-rh/utils.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <stdlib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include "nm-macros-internal.h"
#include "NetworkManagerUtils.h"
diff --git a/src/settings/plugins/ifcfg-rh/utils.h b/src/settings/plugins/ifcfg-rh/utils.h
index 547bfcb2d7..d8b4784cea 100644
--- a/src/settings/plugins/ifcfg-rh/utils.h
+++ b/src/settings/plugins/ifcfg-rh/utils.h
@@ -21,8 +21,8 @@
#ifndef _UTILS_H_
#define _UTILS_H_
-#include <glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
#include "shvar.h"
#include "common.h"
#include "nm-logging.h"
diff --git a/src/settings/plugins/ifcfg-rh/writer.h b/src/settings/plugins/ifcfg-rh/writer.h
index 894313dd06..2c7168d330 100644
--- a/src/settings/plugins/ifcfg-rh/writer.h
+++ b/src/settings/plugins/ifcfg-rh/writer.h
@@ -22,9 +22,11 @@
#define _WRITER_H_
#include <sys/types.h>
-#include <glib.h>
+
#include <nm-connection.h>
+#include "nm-glib.h"
+
gboolean writer_can_write_connection (NMConnection *connection,
GError **error);
diff --git a/src/settings/plugins/ifnet/net_parser.h b/src/settings/plugins/ifnet/net_parser.h
index d10979cca6..c6966248ea 100644
--- a/src/settings/plugins/ifnet/net_parser.h
+++ b/src/settings/plugins/ifnet/net_parser.h
@@ -22,7 +22,7 @@
#ifndef _NET_PARSER_H
#define _NET_PARSER_H
-#include <glib.h>
+#include "nm-glib.h"
#define CONF_NET_FILE SYSCONFDIR "/conf.d/net"
diff --git a/src/settings/plugins/ifnet/net_utils.c b/src/settings/plugins/ifnet/net_utils.c
index 81d73807ab..332fdf5152 100644
--- a/src/settings/plugins/ifnet/net_utils.c
+++ b/src/settings/plugins/ifnet/net_utils.c
@@ -30,7 +30,7 @@
#include <nm-system-config-interface.h>
#include <nm-logging.h>
#include <nm-config.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "net_utils.h"
#include "wpa_parser.h"
#include "net_parser.h"
diff --git a/src/settings/plugins/ifnet/net_utils.h b/src/settings/plugins/ifnet/net_utils.h
index 096f846afe..bcb265dbd4 100644
--- a/src/settings/plugins/ifnet/net_utils.h
+++ b/src/settings/plugins/ifnet/net_utils.h
@@ -22,10 +22,10 @@
#ifndef _IFNET_UTILS_H
#define _IFNET_UTILS_H
#define IFNET_PLUGIN_NAME "SCPlugin-Ifnet"
-#include <glib.h>
#include <arpa/inet.h>
#include <nm-setting-ip6-config.h>
#include <nm-setting-ip4-config.h>
+#include "nm-glib.h"
#include "net_parser.h"
#define has_default_ip4_route(conn_name) has_default_route((conn_name), &is_ip4_address)
#define has_default_ip6_route(conn_name) has_default_route((conn_name), &is_ip6_address)
diff --git a/src/settings/plugins/ifnet/plugin.c b/src/settings/plugins/ifnet/plugin.c
index 550f31a5fc..b82a9d07cb 100644
--- a/src/settings/plugins/ifnet/plugin.c
+++ b/src/settings/plugins/ifnet/plugin.c
@@ -25,12 +25,11 @@
#include <string.h>
#include <gmodule.h>
-#include <glib.h>
-#include <gio/gio.h>
#include <nm-utils.h>
#include <nm-setting-connection.h>
+#include "nm-glib.h"
#include "nm-dbus-interface.h"
#include "nm-system-config-interface.h"
#include "nm-logging.h"
diff --git a/src/settings/plugins/ifnet/plugin.h b/src/settings/plugins/ifnet/plugin.h
index 6ac0f482f1..89e0fa3b86 100644
--- a/src/settings/plugins/ifnet/plugin.h
+++ b/src/settings/plugins/ifnet/plugin.h
@@ -23,7 +23,7 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
-#include <glib-object.h>
+#include "nm-glib.h"
#define SC_TYPE_PLUGIN_IFNET (sc_plugin_ifnet_get_type ())
#define SC_PLUGIN_IFNET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SC_TYPE_PLUGIN_IFNET, SCPluginIfnet))
diff --git a/src/settings/plugins/ifnet/tests/test-ifnet.c b/src/settings/plugins/ifnet/tests/test-ifnet.c
index 72d7e27840..18876e62c6 100644
--- a/src/settings/plugins/ifnet/tests/test-ifnet.c
+++ b/src/settings/plugins/ifnet/tests/test-ifnet.c
@@ -24,12 +24,12 @@
#include <stdio.h>
#include <string.h>
-#include <glib.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <unistd.h>
#include <nm-utils.h>
+#include "nm-glib.h"
#include "nm-linux-platform.h"
#include "nm-logging.h"
diff --git a/src/settings/plugins/ifnet/wpa_parser.h b/src/settings/plugins/ifnet/wpa_parser.h
index 3a0d377e5c..9f2cf6054d 100644
--- a/src/settings/plugins/ifnet/wpa_parser.h
+++ b/src/settings/plugins/ifnet/wpa_parser.h
@@ -22,7 +22,7 @@
#ifndef _WPA_PARSER_H
#define _WPA_PARSER_H
-#include <glib.h>
+#include "nm-glib.h"
#define WPA_SUPPLICANT_CONF SYSCONFDIR "/wpa_supplicant/wpa_supplicant.conf"
diff --git a/src/settings/plugins/ifupdown/interface_parser.h b/src/settings/plugins/ifupdown/interface_parser.h
index e68abcf641..0b6c8c9f21 100644
--- a/src/settings/plugins/ifupdown/interface_parser.h
+++ b/src/settings/plugins/ifupdown/interface_parser.h
@@ -24,7 +24,7 @@
#ifndef _INTERFACE_PARSER_H
#define _INTERFACE_PARSER_H
-#include <glib.h>
+#include "nm-glib.h"
typedef struct _if_data
{
diff --git a/src/settings/plugins/ifupdown/nm-ifupdown-connection.h b/src/settings/plugins/ifupdown/nm-ifupdown-connection.h
index be2ebc0a3e..bc2df73123 100644
--- a/src/settings/plugins/ifupdown/nm-ifupdown-connection.h
+++ b/src/settings/plugins/ifupdown/nm-ifupdown-connection.h
@@ -25,6 +25,7 @@
#define __NETWORKMANAGER_IFUPDOWN_CONNECTION_H__
#include <nm-settings-connection.h>
+#include "nm-glib.h"
#include "interface_parser.h"
G_BEGIN_DECLS
diff --git a/src/settings/plugins/ifupdown/plugin.c b/src/settings/plugins/ifupdown/plugin.c
index d67405b037..f2a700c190 100644
--- a/src/settings/plugins/ifupdown/plugin.c
+++ b/src/settings/plugins/ifupdown/plugin.c
@@ -27,11 +27,10 @@
#include <string.h>
#include <gmodule.h>
-#include <glib-object.h>
#include <glib/gi18n.h>
-#include <glib.h>
#include <nm-setting-connection.h>
+#include "nm-glib.h"
#include "interface_parser.h"
#include "nm-dbus-interface.h"
diff --git a/src/settings/plugins/ifupdown/plugin.h b/src/settings/plugins/ifupdown/plugin.h
index 943b8b9f6e..a9aa56f45a 100644
--- a/src/settings/plugins/ifupdown/plugin.h
+++ b/src/settings/plugins/ifupdown/plugin.h
@@ -24,7 +24,7 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
-#include <glib-object.h>
+#include "nm-glib.h"
#define PLUGIN_NAME "ifupdown"
diff --git a/src/settings/plugins/ifupdown/tests/test-ifupdown.c b/src/settings/plugins/ifupdown/tests/test-ifupdown.c
index d285a464d7..edadd283e3 100644
--- a/src/settings/plugins/ifupdown/tests/test-ifupdown.c
+++ b/src/settings/plugins/ifupdown/tests/test-ifupdown.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include "nm-logging.h"
#include "interface_parser.h"
diff --git a/src/settings/plugins/keyfile/common.h b/src/settings/plugins/keyfile/common.h
index 86fe002855..871a745923 100644
--- a/src/settings/plugins/keyfile/common.h
+++ b/src/settings/plugins/keyfile/common.h
@@ -21,7 +21,7 @@
#ifndef __COMMON_H__
#define __COMMON_H__
-#include <glib.h>
+#include "nm-glib.h"
#define KEYFILE_PLUGIN_NAME "keyfile"
#define KEYFILE_PLUGIN_INFO "(c) 2007 - 2015 Red Hat, Inc. To report bugs please use the NetworkManager mailing list."
diff --git a/src/settings/plugins/keyfile/plugin.c b/src/settings/plugins/keyfile/plugin.c
index 71f407dd57..f34dc9fb3f 100644
--- a/src/settings/plugins/keyfile/plugin.c
+++ b/src/settings/plugins/keyfile/plugin.c
@@ -27,9 +27,7 @@
#include <string.h>
#include <gmodule.h>
-#include <glib.h>
#include <glib/gstdio.h>
-#include <gio/gio.h>
#include <nm-connection.h>
#include <nm-setting.h>
@@ -37,6 +35,7 @@
#include <nm-utils.h>
#include <nm-config.h>
#include <nm-logging.h>
+#include "nm-glib.h"
#include "nm-core-internal.h"
#include "plugin.h"
diff --git a/src/settings/plugins/keyfile/plugin.h b/src/settings/plugins/keyfile/plugin.h
index 48579785d8..4d77a92596 100644
--- a/src/settings/plugins/keyfile/plugin.h
+++ b/src/settings/plugins/keyfile/plugin.h
@@ -22,7 +22,7 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
-#include <glib-object.h>
+#include "nm-glib.h"
#define SC_TYPE_PLUGIN_KEYFILE (sc_plugin_keyfile_get_type ())
#define SC_PLUGIN_KEYFILE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SC_TYPE_PLUGIN_KEYFILE, SCPluginKeyfile))
diff --git a/src/settings/plugins/keyfile/reader.h b/src/settings/plugins/keyfile/reader.h
index 55819630eb..44bf55cb2d 100644
--- a/src/settings/plugins/keyfile/reader.h
+++ b/src/settings/plugins/keyfile/reader.h
@@ -22,9 +22,10 @@
#ifndef _KEYFILE_PLUGIN_READER_H
#define _KEYFILE_PLUGIN_READER_H
-#include <glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
+
NMConnection *nm_keyfile_plugin_connection_from_file (const char *filename, GError **error);
#endif /* _KEYFILE_PLUGIN_READER_H */
diff --git a/src/settings/plugins/keyfile/utils.c b/src/settings/plugins/keyfile/utils.c
index 4809c642c0..1685e22b53 100644
--- a/src/settings/plugins/keyfile/utils.c
+++ b/src/settings/plugins/keyfile/utils.c
@@ -20,16 +20,15 @@
#include "config.h"
-#include <glib.h>
#include <stdlib.h>
#include <string.h>
+#include "nm-glib.h"
#include "gsystem-local-alloc.h"
#include "utils.h"
#include <nm-setting-wired.h>
#include <nm-setting-wireless.h>
#include <nm-setting-wireless-security.h>
-
static const char temp_letters[] =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
diff --git a/src/settings/plugins/keyfile/utils.h b/src/settings/plugins/keyfile/utils.h
index d0862284cd..a4c136500b 100644
--- a/src/settings/plugins/keyfile/utils.h
+++ b/src/settings/plugins/keyfile/utils.h
@@ -21,7 +21,7 @@
#ifndef _UTILS_H_
#define _UTILS_H_
-#include <glib.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#define NM_KEYFILE_CONNECTION_LOG_PATH(path) str_if_set (path,"in-memory")
diff --git a/src/settings/plugins/keyfile/writer.c b/src/settings/plugins/keyfile/writer.c
index e6ee7f97cc..d5c087d2f7 100644
--- a/src/settings/plugins/keyfile/writer.c
+++ b/src/settings/plugins/keyfile/writer.c
@@ -27,8 +27,7 @@
#include <errno.h>
#include <string.h>
-#include "nm-glib-compat.h"
-
+#include "nm-glib.h"
#include "nm-logging.h"
#include "writer.h"
#include "common.h"
@@ -36,7 +35,6 @@
#include "nm-keyfile-internal.h"
#include "gsystem-local-alloc.h"
-
typedef struct {
const char *keyfile_dir;
} WriteInfo;
diff --git a/src/settings/plugins/keyfile/writer.h b/src/settings/plugins/keyfile/writer.h
index 95885106df..e7bb346c20 100644
--- a/src/settings/plugins/keyfile/writer.h
+++ b/src/settings/plugins/keyfile/writer.h
@@ -22,9 +22,10 @@
#ifndef _KEYFILE_PLUGIN_WRITER_H
#define _KEYFILE_PLUGIN_WRITER_H
-#include <glib.h>
#include <nm-connection.h>
+#include "nm-glib.h"
+
gboolean nm_keyfile_plugin_write_connection (NMConnection *connection,
const char *existing_path,
gboolean force_rename,
diff --git a/src/supplicant-manager/nm-supplicant-config.c b/src/supplicant-manager/nm-supplicant-config.c
index b78a24d031..62fc8e0a43 100644
--- a/src/supplicant-manager/nm-supplicant-config.c
+++ b/src/supplicant-manager/nm-supplicant-config.c
@@ -23,9 +23,9 @@
#include <string.h>
#include <stdlib.h>
-#include <glib.h>
#include <dbus/dbus-glib.h>
+#include "nm-glib.h"
#include "nm-supplicant-config.h"
#include "nm-supplicant-settings-verify.h"
#include "nm-logging.h"
diff --git a/src/supplicant-manager/nm-supplicant-config.h b/src/supplicant-manager/nm-supplicant-config.h
index 3324f637f4..5b5356cd48 100644
--- a/src/supplicant-manager/nm-supplicant-config.h
+++ b/src/supplicant-manager/nm-supplicant-config.h
@@ -22,10 +22,10 @@
#ifndef __NETWORKMANAGER_SUPPLICANT_CONFIG_H__
#define __NETWORKMANAGER_SUPPLICANT_CONFIG_H__
-#include <glib-object.h>
#include <nm-setting-wireless.h>
#include <nm-setting-wireless-security.h>
#include <nm-setting-8021x.h>
+#include "nm-glib.h"
#include "nm-supplicant-types.h"
G_BEGIN_DECLS
diff --git a/src/supplicant-manager/nm-supplicant-interface.c b/src/supplicant-manager/nm-supplicant-interface.c
index d2361f51e6..50daabebf2 100644
--- a/src/supplicant-manager/nm-supplicant-interface.c
+++ b/src/supplicant-manager/nm-supplicant-interface.c
@@ -23,13 +23,12 @@
#include <stdio.h>
#include <string.h>
-#include <glib.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-supplicant-interface.h"
#include "nm-logging.h"
#include "nm-supplicant-config.h"
-#include "nm-glib-compat.h"
#include "gsystem-local-alloc.h"
#include "nm-core-internal.h"
#include "nm-dbus-compat.h"
diff --git a/src/supplicant-manager/nm-supplicant-interface.h b/src/supplicant-manager/nm-supplicant-interface.h
index 6be89f4222..9d930f2f8b 100644
--- a/src/supplicant-manager/nm-supplicant-interface.h
+++ b/src/supplicant-manager/nm-supplicant-interface.h
@@ -22,7 +22,7 @@
#ifndef __NETWORKMANAGER_SUPPLICANT_INTERFACE_H__
#define __NETWORKMANAGER_SUPPLICANT_INTERFACE_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-supplicant-types.h"
/*
@@ -120,7 +120,6 @@ typedef struct {
const char *message);
} NMSupplicantInterfaceClass;
-
GType nm_supplicant_interface_get_type (void);
NMSupplicantInterface * nm_supplicant_interface_new (const char *ifname,
diff --git a/src/supplicant-manager/nm-supplicant-manager.c b/src/supplicant-manager/nm-supplicant-manager.c
index 083f2ebcb7..fff5c079ee 100644
--- a/src/supplicant-manager/nm-supplicant-manager.c
+++ b/src/supplicant-manager/nm-supplicant-manager.c
@@ -22,11 +22,9 @@
#include "config.h"
#include <string.h>
-#include <glib.h>
#include <dbus/dbus.h>
-#include "nm-glib-compat.h"
-
+#include "nm-glib.h"
#include "nm-supplicant-manager.h"
#include "nm-supplicant-interface.h"
#include "nm-logging.h"
diff --git a/src/supplicant-manager/nm-supplicant-manager.h b/src/supplicant-manager/nm-supplicant-manager.h
index 3b8fddf4e6..0378a4e0e8 100644
--- a/src/supplicant-manager/nm-supplicant-manager.h
+++ b/src/supplicant-manager/nm-supplicant-manager.h
@@ -22,7 +22,7 @@
#ifndef __NETWORKMANAGER_SUPPLICANT_MANAGER_H__
#define __NETWORKMANAGER_SUPPLICANT_MANAGER_H__
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-supplicant-types.h"
#include "nm-device.h"
diff --git a/src/supplicant-manager/nm-supplicant-settings-verify.c b/src/supplicant-manager/nm-supplicant-settings-verify.c
index 1328fd5113..1114befedc 100644
--- a/src/supplicant-manager/nm-supplicant-settings-verify.c
+++ b/src/supplicant-manager/nm-supplicant-settings-verify.c
@@ -20,12 +20,12 @@
#include "config.h"
-#include <glib.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
+#include "nm-glib.h"
#include "nm-supplicant-settings-verify.h"
struct Opt {
diff --git a/src/tests/config/test-config.c b/src/tests/config/test-config.c
index f9aff5d97b..39043ec50f 100644
--- a/src/tests/config/test-config.c
+++ b/src/tests/config/test-config.c
@@ -22,9 +22,9 @@
#include <unistd.h>
-#include <glib.h>
#include <nm-config.h>
+#include "nm-glib.h"
#include "nm-test-device.h"
#include "nm-fake-platform.h"
#include "nm-logging.h"
diff --git a/src/tests/test-dcb.c b/src/tests/test-dcb.c
index 2fef34ba09..b6ca0b76ad 100644
--- a/src/tests/test-dcb.c
+++ b/src/tests/test-dcb.c
@@ -20,9 +20,9 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
+#include "nm-glib.h"
#include "nm-dcb.h"
#include "nm-logging.h"
diff --git a/src/tests/test-general-with-expect.c b/src/tests/test-general-with-expect.c
index f671c15deb..e652abe342 100644
--- a/src/tests/test-general-with-expect.c
+++ b/src/tests/test-general-with-expect.c
@@ -20,13 +20,13 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <errno.h>
#include <netinet/ether.h>
#include <sys/types.h>
#include <sys/wait.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-logging.h"
#include "nm-multi-index.h"
diff --git a/src/tests/test-general.c b/src/tests/test-general.c
index eda7a1f892..129802db75 100644
--- a/src/tests/test-general.c
+++ b/src/tests/test-general.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <errno.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-logging.h"
#include "nm-core-internal.h"
diff --git a/src/tests/test-ip4-config.c b/src/tests/test-ip4-config.c
index 81295fa3eb..0bf050663b 100644
--- a/src/tests/test-ip4-config.c
+++ b/src/tests/test-ip4-config.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-ip4-config.h"
#include "nm-platform.h"
#include "nm-logging.h"
diff --git a/src/tests/test-ip6-config.c b/src/tests/test-ip6-config.c
index 421fa37599..1bac506827 100644
--- a/src/tests/test-ip6-config.c
+++ b/src/tests/test-ip6-config.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "nm-ip6-config.h"
#include "nm-logging.h"
diff --git a/src/tests/test-resolvconf-capture.c b/src/tests/test-resolvconf-capture.c
index 313c23f4d7..f8d3e9d450 100644
--- a/src/tests/test-resolvconf-capture.c
+++ b/src/tests/test-resolvconf-capture.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <arpa/inet.h>
+#include "nm-glib.h"
#include "NetworkManagerUtils.h"
#include "nm-ip4-config.h"
#include "nm-ip6-config.h"
diff --git a/src/tests/test-route-manager.c b/src/tests/test-route-manager.c
index 9b66c2dd38..6b31fe1959 100644
--- a/src/tests/test-route-manager.c
+++ b/src/tests/test-route-manager.c
@@ -20,10 +20,10 @@
#include "config.h"
-#include <glib.h>
#include <arpa/inet.h>
#include <linux/rtnetlink.h>
+#include "nm-glib.h"
#include "test-common.h"
#include "nm-platform.h"
diff --git a/src/tests/test-wired-defname.c b/src/tests/test-wired-defname.c
index 7e626ec585..da693c9a3a 100644
--- a/src/tests/test-wired-defname.c
+++ b/src/tests/test-wired-defname.c
@@ -20,11 +20,10 @@
#include "config.h"
-#include <glib.h>
-#include <glib-object.h>
#include <nm-simple-connection.h>
#include <nm-setting-connection.h>
+#include "nm-glib.h"
#include "nm-device-ethernet-utils.h"
#include "nm-logging.h"
diff --git a/src/vpn-manager/nm-vpn-connection.c b/src/vpn-manager/nm-vpn-connection.c
index 8749e3573b..e6a2ca94dc 100644
--- a/src/vpn-manager/nm-vpn-connection.c
+++ b/src/vpn-manager/nm-vpn-connection.c
@@ -21,7 +21,6 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
@@ -29,6 +28,7 @@
#include <errno.h>
#include <stdlib.h>
+#include "nm-glib.h"
#include "nm-vpn-connection.h"
#include "nm-ip4-config.h"
#include "nm-ip6-config.h"
@@ -38,7 +38,6 @@
#include "nm-active-connection.h"
#include "nm-dbus-glib-types.h"
#include "NetworkManagerUtils.h"
-#include "nm-glib-compat.h"
#include "settings/nm-settings-connection.h"
#include "nm-dispatcher.h"
#include "nm-agent-manager.h"
diff --git a/src/vpn-manager/nm-vpn-connection.h b/src/vpn-manager/nm-vpn-connection.h
index 0e63caac3f..a6dc62d3e0 100644
--- a/src/vpn-manager/nm-vpn-connection.h
+++ b/src/vpn-manager/nm-vpn-connection.h
@@ -22,8 +22,6 @@
#ifndef __NETWORKMANAGER_VPN_CONNECTION_H__
#define __NETWORKMANAGER_VPN_CONNECTION_H__
-#include <glib.h>
-#include <glib-object.h>
#include "nm-vpn-dbus-interface.h"
#include "nm-device.h"
#include "nm-auth-subject.h"
diff --git a/src/vpn-manager/nm-vpn-manager.c b/src/vpn-manager/nm-vpn-manager.c
index 1de9b753f3..d3f959c54e 100644
--- a/src/vpn-manager/nm-vpn-manager.c
+++ b/src/vpn-manager/nm-vpn-manager.c
@@ -22,8 +22,8 @@
#include "config.h"
#include <string.h>
-#include <gio/gio.h>
+#include "nm-glib.h"
#include "nm-vpn-manager.h"
#include "nm-vpn-service.h"
#include "nm-vpn-connection.h"
diff --git a/src/vpn-manager/nm-vpn-manager.h b/src/vpn-manager/nm-vpn-manager.h
index b75a617955..c7fe2b1f80 100644
--- a/src/vpn-manager/nm-vpn-manager.h
+++ b/src/vpn-manager/nm-vpn-manager.h
@@ -22,8 +22,7 @@
#ifndef __NETWORKMANAGER_VPN_MANAGER_H__
#define __NETWORKMANAGER_VPN_MANAGER_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-vpn-connection.h"
#define NM_TYPE_VPN_MANAGER (nm_vpn_manager_get_type ())
diff --git a/src/vpn-manager/nm-vpn-service.c b/src/vpn-manager/nm-vpn-service.c
index 77220dd2ea..3eb0e2e398 100644
--- a/src/vpn-manager/nm-vpn-service.c
+++ b/src/vpn-manager/nm-vpn-service.c
@@ -21,18 +21,17 @@
#include "config.h"
-#include <glib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <signal.h>
#include <unistd.h>
+#include "nm-glib.h"
#include "nm-vpn-service.h"
#include "nm-dbus-manager.h"
#include "nm-logging.h"
#include "nm-vpn-manager.h"
-#include "nm-glib-compat.h"
G_DEFINE_TYPE (NMVpnService, nm_vpn_service, G_TYPE_OBJECT)
diff --git a/src/vpn-manager/nm-vpn-service.h b/src/vpn-manager/nm-vpn-service.h
index cafa6904af..6e935950e2 100644
--- a/src/vpn-manager/nm-vpn-service.h
+++ b/src/vpn-manager/nm-vpn-service.h
@@ -22,8 +22,7 @@
#ifndef __NETWORKMANAGER_VPN_SERVICE_H__
#define __NETWORKMANAGER_VPN_SERVICE_H__
-#include <glib.h>
-#include <glib-object.h>
+#include "nm-glib.h"
#include "nm-device.h"
#include "nm-vpn-connection.h"