Update compiledump.py with more options for feature splits

* Place generated feature jars in --output location if directory
* Add --ignore-features option to compile without feature splits
* Don't pass --feature options to D8 as it is not supported by D8

Change-Id: I6add6825f62e46f8f0ce27d9223181219d2e88dc
diff --git a/tools/compiledump.py b/tools/compiledump.py
index c888eb4..ce09db8 100755
--- a/tools/compiledump.py
+++ b/tools/compiledump.py
@@ -141,6 +141,13 @@
                         choices=['debug', 'release'],
                         default=None)
     parser.add_argument(
+        '--ignore-features',
+        help="Don't split into features when features are present."
+            ' Instead include feature code in main app output.'
+            ' This is always the case when compiler is d8.',
+        default=False,
+        action='store_true')
+    parser.add_argument(
         '--no-build',
         help="Don't build when using --version main",
         default=False,
@@ -354,7 +361,9 @@
 
 
 def determine_feature_output(feature_jar, temp):
-    return os.path.join(temp, os.path.basename(feature_jar)[:-4] + ".out.jar")
+    return os.path.join(
+        args.output if args.output and os.path.isdir(args.output) else temp,
+        os.path.basename(feature_jar)[:-4] + ".out.jar")
 
 
 def determine_program_jar(args, dump):
@@ -584,10 +593,13 @@
         else:
             cmd.extend(['--source', program_jar])
         for feature_jar in dump.feature_jars():
-            cmd.extend([
-                '--feature-jar', feature_jar,
-                determine_feature_output(feature_jar, temp)
-            ])
+            if not args.ignore_features and compiler != 'd8':
+                cmd.extend([
+                    '--feature-jar', feature_jar,
+                    determine_feature_output(feature_jar, temp)
+                ])
+            else:
+                cmd.append(feature_jar)
         if dump.library_jar():
             cmd.extend(['--lib', dump.library_jar()])
         if dump.classpath_jar() and not is_l8_compiler(compiler):