diff --git a/Android.mk b/Android.mk
index a28af7f..c16a56e 100644
--- a/Android.mk
+++ b/Android.mk
@@ -28,8 +28,15 @@
 local_use_libcros := $(if $(BRILLO_USE_LIBCROS),$(BRILLO_USE_LIBCROS),0)
 local_use_mtd := $(if $(BRILLO_USE_MTD),$(BRILLO_USE_MTD),0)
 local_use_omaha := $(if $(BRILLO_USE_OMAHA),$(BRILLO_USE_OMAHA),0)
+local_use_shill := $(if $(BRILLO_USE_SHILL),$(BRILLO_USE_SHILL),0)
 local_use_weave := $(if $(BRILLO_USE_WEAVE),$(BRILLO_USE_WEAVE),0)
 
+ifeq ($(local_use_shill),1)
+ifneq ($(local_use_dbus),1)
+$(error USE_SHILL depends on USE_DBUS.)
+endif  # local_use_dbus != 1
+endif  # local_use_shill == 1
+
 ue_common_cflags := \
     -DUSE_BINDER=$(local_use_binder) \
     -DUSE_DBUS=$(local_use_dbus) \
@@ -37,6 +44,7 @@
     -DUSE_LIBCROS=$(local_use_libcros) \
     -DUSE_MTD=$(local_use_mtd) \
     -DUSE_OMAHA=$(local_use_omaha) \
+    -DUSE_SHILL=$(local_use_shill) \
     -DUSE_WEAVE=$(local_use_weave) \
     -D_FILE_OFFSET_BITS=64 \
     -D_POSIX_C_SOURCE=199309L \
@@ -262,9 +270,12 @@
 ue_libupdate_engine_exported_shared_libraries += \
     libdbus \
     libbrillo-dbus \
-    libchrome-dbus \
-    libshill-client
+    libchrome-dbus
 endif  # local_use_dbus == 1
+ifeq ($(local_use_shill),1)
+ue_libupdate_engine_exported_shared_libraries += \
+    libshill-client
+endif  # local_use_shill == 1
 ifeq ($(local_use_binder),1)
 ue_libupdate_engine_exported_shared_libraries += \
     libbinder \
@@ -343,16 +354,19 @@
     weave_service_factory.cc
 ifeq ($(local_use_dbus),1)
 LOCAL_SRC_FILES += \
-    connection_manager.cc \
     dbus_connection.cc \
     dbus_service.cc \
-    libcros_proxy.cc \
+    libcros_proxy.cc
+endif  # local_use_dbus == 1
+ifeq ($(local_use_shill),1)
+LOCAL_SRC_FILES += \
+    connection_manager.cc \
     shill_proxy.cc \
     update_manager/real_shill_provider.cc
-else   # local_use_dbus == 1
+else   # local_use_shill != 1
 LOCAL_SRC_FILES += \
     connection_manager_android.cc
-endif  # local_use_dbus == 1
+endif  # local_use_shill == 1
 ifeq ($(local_use_binder),1)
 LOCAL_AIDL_INCLUDES += $(LOCAL_PATH)/binder_bindings
 LOCAL_SRC_FILES += \
@@ -1059,12 +1073,12 @@
 LOCAL_SHARED_LIBRARIES += \
     $(ue_libupdate_engine_android_exported_shared_libraries:-host=)
 endif  # local_use_omaha == 1
-ifeq ($(local_use_dbus),1)
+ifeq ($(local_use_shill),1)
 LOCAL_SRC_FILES += \
     connection_manager_unittest.cc \
     fake_shill_proxy.cc \
     update_manager/real_shill_provider_unittest.cc
-endif  # local_use_dbus == 1
+endif  # local_use_shill == 1
 ifeq ($(local_use_libcros),1)
 LOCAL_SRC_FILES += \
     chrome_browser_proxy_resolver_unittest.cc
diff --git a/update_engine.gyp b/update_engine.gyp
index b892672..9e8d735 100644
--- a/update_engine.gyp
+++ b/update_engine.gyp
@@ -56,6 +56,7 @@
       'USE_LIBCROS=<(USE_libcros)',
       'USE_MTD=<(USE_mtd)',
       'USE_OMAHA=1',
+      'USE_SHILL=1',
       'USE_WEAVE=<(USE_buffet)',
     ],
     'include_dirs': [
diff --git a/update_manager/state_factory.cc b/update_manager/state_factory.cc
index 6c8808b..2b3ce63 100644
--- a/update_manager/state_factory.cc
+++ b/update_manager/state_factory.cc
@@ -25,6 +25,9 @@
 #endif  // USE_DBUS
 
 #include "update_engine/common/clock_interface.h"
+#if USE_DBUS
+#include "update_engine/dbus_connection.h"
+#endif  // USE_DBUS
 #include "update_engine/update_manager/fake_shill_provider.h"
 #include "update_engine/update_manager/real_config_provider.h"
 #include "update_engine/update_manager/real_device_policy_provider.h"
@@ -33,11 +36,10 @@
 #include "update_engine/update_manager/real_system_provider.h"
 #include "update_engine/update_manager/real_time_provider.h"
 #include "update_engine/update_manager/real_updater_provider.h"
-#if USE_DBUS
-#include "update_engine/dbus_connection.h"
+#if USE_SHILL
 #include "update_engine/shill_proxy.h"
 #include "update_engine/update_manager/real_shill_provider.h"
-#endif  // USE_DBUS
+#endif  // USE_SHILL
 
 using std::unique_ptr;
 
@@ -58,13 +60,16 @@
           brillo::make_unique_ptr(
               new org::chromium::SessionManagerInterfaceProxy(bus)),
           policy_provider));
-  unique_ptr<RealShillProvider> shill_provider(
-      new RealShillProvider(new chromeos_update_engine::ShillProxy(), clock));
 #else
   unique_ptr<RealDevicePolicyProvider> device_policy_provider(
       new RealDevicePolicyProvider(policy_provider));
-  unique_ptr<FakeShillProvider> shill_provider(new FakeShillProvider());
 #endif  // USE_DBUS
+#if USE_SHILL
+  unique_ptr<RealShillProvider> shill_provider(
+      new RealShillProvider(new chromeos_update_engine::ShillProxy(), clock));
+#else
+  unique_ptr<FakeShillProvider> shill_provider(new FakeShillProvider());
+#endif  // USE_SHILL
   unique_ptr<RealRandomProvider> random_provider(new RealRandomProvider());
   unique_ptr<RealSystemProvider> system_provider(new RealSystemProvider(
       system_state->hardware(), system_state->boot_control(), libcros_proxy));
@@ -75,9 +80,9 @@
   if (!(config_provider->Init() &&
         device_policy_provider->Init() &&
         random_provider->Init() &&
-#if USE_DBUS
+#if USE_SHILL
         shill_provider->Init() &&
-#endif  // USE_DBUS
+#endif  // USE_SHILL
         system_provider->Init() &&
         time_provider->Init() &&
         updater_provider->Init())) {
