Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2002)

Unified Diff: build/android/gyp/jar.py

Issue 596303002: Revert of Revert of [Android] JUnit runner + gyp changes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@deps-changes
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/all.gyp ('k') | build/android/gyp/javac.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/android/gyp/jar.py
diff --git a/build/android/gyp/jar.py b/build/android/gyp/jar.py
index d3636d71418e2e9038980e096c51bf5093b2da21..17f968c3e893044e44e0babea896b7e55fddbe88 100755
--- a/build/android/gyp/jar.py
+++ b/build/android/gyp/jar.py
@@ -12,7 +12,8 @@
from util import build_utils
from util import md5_check
-def Jar(class_files, classes_dir, jar_path):
+
+def Jar(class_files, classes_dir, jar_path, manifest_file=None):
jar_path = os.path.abspath(jar_path)
# The paths of the files in the jar will be the same as they are passed in to
@@ -20,7 +21,11 @@
# options.classes_dir so the .class file paths in the jar are correct.
jar_cwd = classes_dir
class_files_rel = [os.path.relpath(f, jar_cwd) for f in class_files]
- jar_cmd = ['jar', 'cf0', jar_path] + class_files_rel
+ jar_cmd = ['jar', 'cf0', jar_path]
+ if manifest_file:
+ jar_cmd[1] += 'm'
+ jar_cmd.append(os.path.abspath(manifest_file))
+ jar_cmd.extend(class_files_rel)
record_path = '%s.md5.stamp' % jar_path
md5_check.CallAndRecordIfStale(
@@ -34,13 +39,14 @@
build_utils.Touch(jar_path, fail_if_missing=True)
-def JarDirectory(classes_dir, excluded_classes, jar_path):
+def JarDirectory(classes_dir, excluded_classes, jar_path, manifest_file=None):
class_files = build_utils.FindInDirectory(classes_dir, '*.class')
for exclude in excluded_classes:
class_files = filter(
lambda f: not fnmatch.fnmatch(f, exclude), class_files)
- Jar(class_files, classes_dir, jar_path)
+ Jar(class_files, classes_dir, jar_path, manifest_file=manifest_file)
+
def main():
parser = optparse.OptionParser()
@@ -52,8 +58,12 @@
options, _ = parser.parse_args()
+ if options.excluded_classes:
+ excluded_classes = build_utils.ParseGypList(options.excluded_classes)
+ else:
+ excluded_classes = []
JarDirectory(options.classes_dir,
- build_utils.ParseGypList(options.excluded_classes),
+ excluded_classes,
options.jar_path)
if options.stamp:
« no previous file with comments | « build/all.gyp ('k') | build/android/gyp/javac.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698