Update tools to invoke Soong properly

Update tools to invoke Soong properly now that "make" is no longer used.
This commit contains a few other changes to how host tools are built /
invoked.

Test: cd system/timezone; update-tzdata.py
Change-Id: Idb2e46e18df97e0f2e0eded4cd4668c875b3777a
diff --git a/tzdatautil.py b/tzdatautil.py
index 3f82227..5a67836 100644
--- a/tzdatautil.py
+++ b/tzdatautil.py
@@ -15,6 +15,7 @@
 from __future__ import print_function
 
 import os
+import subprocess
 import sys
 
 """Shared functions for use in tzdata scripts."""
@@ -33,3 +34,9 @@
     print('Multiple %s files found unexpectedly %s' % (file_prefix, matching_files))
     sys.exit(1)
 
+
+def InvokeSoong(android_build_top, build_modules):
+  old_cwd = os.getcwd()
+  os.chdir(android_build_top)
+  subprocess.check_call(['build/soong/soong_ui.bash', '--make-mode', '-j30'] + build_modules)
+  os.chdir(old_cwd)