diff --git a/tools/Android.mk b/tools/Android.mk
index e5255b9..e3731ef 100644
--- a/tools/Android.mk
+++ b/tools/Android.mk
@@ -28,36 +28,6 @@
 LOCAL_IS_HOST_MODULE := true
 
 include $(BUILD_PREBUILT)
-jack_admin_script := $(LOCAL_INSTALLED_MODULE)
-
-##################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := jack-launcher
-LOCAL_SRC_FILES := jack-launcher.jar
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE_TAGS := optional
-LOCAL_MODULE_SUFFIX := $(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_BUILT_MODULE_STEM := jack-launcher$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_IS_HOST_MODULE := true
-
-include $(BUILD_PREBUILT)
-jack_launcher_jar := $(LOCAL_INSTALLED_MODULE)
-
-##################################
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := jack-server
-jack_server_version := 4.1.ALPHA
-LOCAL_SRC_FILES := jack-server-$(jack_server_version).jar
-LOCAL_MODULE_CLASS := JAVA_LIBRARIES
-LOCAL_MODULE_TAGS := optional
-LOCAL_MODULE_SUFFIX := $(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_BUILT_MODULE_STEM := jack-launcher$(COMMON_JAVA_PACKAGE_SUFFIX)
-LOCAL_IS_HOST_MODULE := true
-
-include $(BUILD_PREBUILT)
-jack_server_jar := $(LOCAL_INSTALLED_MODULE)
 
 ##################################
 include $(CLEAR_VARS)
@@ -86,34 +56,9 @@
 LOCAL_MODULE_SUFFIX := $(HOST_EXECUTABLE_SUFFIX)
 LOCAL_BUILT_MODULE_STEM := jack$(HOST_EXECUTABLE_SUFFIX)
 LOCAL_IS_HOST_MODULE := true
+LOCAL_REQUIRED_MODULES := jack-admin
 
-available_jack_jars := $(wildcard $(LOCAL_PATH)/jacks/jack-*.jar)
-
-include $(BUILD_SYSTEM)/base_rules.mk
-
-ifneq ($(ANDROID_JACK_VM_ARGS),)
-jack_vm_args := $(ANDROID_JACK_VM_ARGS)
-else
-jack_vm_args := -Dfile.encoding=UTF-8 -XX:+TieredCompilation
-endif
-
-$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/jack $(jack_launcher_jar) $(jack_server_jar) $(jack_admin_script) $(available_jack_jars) | $(ACP)
-	@echo "Build: $@"
-ifneq ($(dist_goal),)
-	$(hide) $(jack_admin_script) stop-server 2>&1 || (exit 0)
-	$(hide) $(jack_admin_script) kill-server 2>&1 || (exit 0)
-	$(hide) $(jack_admin_script) uninstall-server 2>&1 || (exit 0)
-endif
-	$(hide) $(jack_admin_script) install-server $(jack_launcher_jar) $(jack_server_jar)  2>&1 || (exit 0)
-ifneq ($(dist_goal),)
-	mkdir -p "$(DIST_DIR)/logs/jack/"
-	$(hide) JACK_SERVER_VM_ARGUMENTS="$(jack_vm_args) -Dcom.android.jack.server.log.file=$(abspath $(DIST_DIR))/logs/jack/jack-server-%u-%g.log" $(jack_admin_script) start-server 2>&1 || exit 0
-else
-	$(hide) JACK_SERVER_VM_ARGUMENTS="$(jack_vm_args)" $(jack_admin_script) start-server 2>&1 || exit 0
-endif
-	$(hide) $(jack_admin_script) update server $(jack_server_jar) $(jack_server_version) 2>&1 || exit 0
-	$(hide) $(foreach jack_jar,$(available_jack_jars),$(jack_admin_script) update jack $(jack_jar) $(patsubst $(PRIVATE_PATH)/jacks/jack-%.jar,%,$(jack_jar)) || exit 47;)
-	$(copy-file-to-target)
+include $(BUILD_PREBUILT)
 
 ##################################
 include $(CLEAR_VARS)
diff --git a/tools/jack_server_setup.mk b/tools/jack_server_setup.mk
new file mode 100644
index 0000000..bf7d298
--- /dev/null
+++ b/tools/jack_server_setup.mk
@@ -0,0 +1,57 @@
+#
+# Copyright (C) 2015 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+LOCAL_PATH:= $(call my-dir)
+
+jack_server_version := 4.1.ALPHA
+jack_server_jar := $(LOCAL_PATH)/jack-server-$(jack_server_version).jar
+
+
+ifneq ($(ANDROID_JACK_VM_ARGS),)
+jack_vm_args := $(ANDROID_JACK_VM_ARGS)
+else
+jack_vm_args := -Dfile.encoding=UTF-8 -XX:+TieredCompilation
+endif
+available_jack_jars := $(wildcard $(LOCAL_PATH)/jacks/jack-*.jar)
+
+ifdef JACK_SERVER
+ifneq ($(JACK_SERVER),true)
+jack_server_disabled=true
+endif
+endif
+
+.PHONY: setup-jack-server
+setup-jack-server : PRIVATE_JACK_ADMIN := $(LOCAL_PATH)/jack-admin
+setup-jack-server : PRIVATE_PATH := $(LOCAL_PATH)
+setup-jack-server : PRIVATE_SERVER_VERSION := $(jack_server_version)
+setup-jack-server : PRIVATE_SERVER_JAR := $(jack_server_jar)
+setup-jack-server: $(JACK) $(LOCAL_PATH)/jack-launcher.jar $(jack_server_jar) $(available_jack_jars)
+ifndef jack_server_disabled
+	@echo Ensure Jack server is installed and started
+ifneq ($(dist_goal),)
+	$(hide) $(PRIVATE_JACK_ADMIN) stop-server 2>&1 || (exit 0)
+	$(hide) $(PRIVATE_JACK_ADMIN) kill-server 2>&1 || (exit 0)
+	$(hide) $(PRIVATE_JACK_ADMIN) uninstall-server 2>&1 || (exit 0)
+endif
+	$(hide) $(PRIVATE_JACK_ADMIN) install-server $(PRIVATE_PATH)/jack-launcher.jar $(PRIVATE_SERVER_JAR)  2>&1 || (exit 0)
+ifneq ($(dist_goal),)
+	$(hide) mkdir -p "$(DIST_DIR)/logs/jack/"
+	$(hide) JACK_SERVER_VM_ARGUMENTS="$(jack_vm_args) -Dcom.android.jack.server.log.file=$(abspath $(DIST_DIR))/logs/jack/jack-server-%u-%g.log" $(PRIVATE_JACK_ADMIN) start-server 2>&1 || exit 0
+else
+	$(hide) JACK_SERVER_VM_ARGUMENTS="$(jack_vm_args)" $(PRIVATE_JACK_ADMIN) start-server 2>&1 || exit 0
+endif
+	$(hide) $(PRIVATE_JACK_ADMIN) update server $(PRIVATE_SERVER_JAR) $(PRIVATE_SERVER_VERSION) 2>&1 || exit 0
+	$(hide) $(foreach jack_jar,$(available_jack_jars),$(PRIVATE_JACK_ADMIN) update jack $(jack_jar) $(patsubst $(PRIVATE_PATH)/jacks/jack-%.jar,%,$(jack_jar)) || exit 47;)
+endif
\ No newline at end of file
