Name Description Size Coverage
aar.py Processes an Android AAR file. 7341 -
aar.pydeps 231 -
aidl.py Invokes Android's aidl 2193 -
aidl.pydeps 255 -
apkbuilder.py Adds the code parts to a resource APK. 22603 -
apkbuilder.pydeps 308 -
assert_static_initializers.py Checks the number of static initializers in an APK's library. 3685 -
assert_static_initializers.pydeps 276 -
binary_baseline_profile.py Creates a binary profile from an HRF + dex + mapping. 1899 -
binary_baseline_profile.pydeps 291 -
bundletool.py Simple wrapper around the bundletool tool. Bundletool is distributed as a versioned jar file. This script abstracts the location and version of this jar file, as well as the JVM invokation. 1360 -
bytecode_rewriter.py Wrapper script around ByteCodeRewriter subclass scripts. 1222 -
bytecode_rewriter.pydeps 273 -
check_flag_expectations.py Compare the flags with the checked in list. 3399 -
check_flag_expectations.pydeps 310 -
check_for_missing_direct_deps.py Checks for incomplete direct deps. 12087 -
check_for_missing_direct_deps.pydeps 1112 -
compile_java.py Zips files from compilation into a single jar. 27089 -
compile_java.pydeps 1424 -
compile_java_tests.py Tests for compile_java.py 2817 -
compile_kt.py Runs the Kotlin compiler. 6221 -
compile_kt.pydeps 1434 -
compile_resources.py Compile Android resources into an intermediate APK. This can also generate an R.txt, and an .srcjar file containing the proper final R.java class for all resource packages the APK depends on. This will crunch images with aapt2. 40139 -
compile_resources.pydeps 1352 -
copy_ex.py Copies files to a directory. 4103 -
copy_ex.pydeps 243 -
create_apk_operations_script.py \ #!/usr/bin/env python3 # # This file was generated by build/android/gyp/create_apk_operations_script.py import os import sys def main(): script_directory = os.path.dirname(__file__) resolve = lambda p: p if p is None else os.path.abspath(os.path.join( script_directory, p)) sys.path.append(resolve(${APK_OPERATIONS_DIR})) import apk_operations output_dir = resolve(${OUTPUT_DIR}) apk_operations.Run( output_dir, resolve(${APK_PATH}), [resolve(p) for p in ${ADDITIONAL_APK_PATHS}], resolve(${INC_JSON_PATH}), ${FLAGS_FILE}, ${TARGET_CPU}, resolve(${MAPPING_PATH})) if __name__ == '__main__': sys.exit(main()) 2722 -
create_apk_operations_script.pydeps 282 -
create_app_bundle.py Create an Android application bundle from one or more bundle modules. 23608 -
create_app_bundle.pydeps 2113 -
create_app_bundle_apks.py Creates an .apks from an .aab. 1870 -
create_app_bundle_apks.pydeps 1338 -
create_bundle_wrapper_script.py Create a wrapper script to manage an Android App Bundle. 4763 -
create_bundle_wrapper_script.pydeps 306 -
create_java_binary_script.py Creates a simple script to run a java "binary". This creates a script that sets up the java command line for running a java jar. This includes correctly setting the classpath and the main class. 4721 -
create_java_binary_script.pydeps 297 -
create_r_java.py Writes a dummy R.java file from a list of R.txt files. 2551 -
create_r_java.pydeps 1190 -
create_r_txt.py Writes a dummy R.txt file from a resource zip. 1044 -
create_r_txt.pydeps 1191 -
create_size_info_files.py Creates size-info/*.info files used by SuperSize. 6830 -
create_size_info_files.pydeps 311 -
create_stub_manifest.py Generates AndroidManifest.xml for a -Stub.apk. 1977 -
create_stub_manifest.pydeps 305 -
create_test_apk_wrapper_script.py Create a wrapper script to run a test apk using apk_operations.py. 2897 -
create_test_apk_wrapper_script.pydeps 288 -
create_ui_locale_resources.py Generate a zip archive containing localized locale name Android resource strings! This script takes a list of input Chrome-specific locale names, as well as an output zip file path. Each output file will contain the definition of a single string resource, named 'current_locale', whose value will be the matching Chromium locale name. E.g. values-en-rUS/strings.xml will define 'current_locale' as 'en-US'. 2805 -
create_ui_locale_resources.pydeps 1229 -
create_unwind_table.py Creates a table of unwind information in Android Chrome's bespoke format. 40120 -
create_unwind_table_tests.py Tests for create_unwind_table.py. This test suite contains tests for the custom unwind table creation for 32-bit arm builds. 44120 -
dex.py 21986 -
dex.pydeps 297 -
dex_test.py \ some initial message Warning in ../../clank/third_party/google3/pg_confs/java_com_google_protobuf_lite_proguard.pgcfg: Rule matches the static final field `java.lang.String com.google.protobuf.BaseGeneratedExtensionRegistryLite.CONTAINING_TYPE_0`, which may have been inlined: -identifiernamestring class com.google.protobuf.*GeneratedExtensionRegistryLite { static java.lang.String CONTAINING_TYPE_*; } Warning: some message Warning in gen/.../Foo.jar:Bar.class: Type `libcore.io.Memory` was not found, it is required for default or static interface methods desugaring of `void Bar.a(long, byte)` Warning: Missing class com.google.android.apps.gsa.search.shared.service.proto.PublicStopClientEvent (referenced from: com.google.protobuf.GeneratedMessageLite$GeneratedExtension com.google.protobuf.BaseGeneratedExtensionRegistryLite.findLiteExtensionByNumber(com.google.protobuf.MessageLite, int)) Missing class com.google.android.gms.feedback.ApplicationProperties (referenced from: com.google.protobuf.GeneratedMessageLite$GeneratedExtension com.google.protobuf.BaseGeneratedExtensionRegistryLite.findLiteExtensionByNumber(com.google.protobuf.MessageLite, int)) 2430 -
dist_aar.py Creates an Android .aar file. 7174 -
dist_aar.pydeps 281 -
errorprone.py Run Error Prone. 10143 -
errorprone.pydeps 1434 -
extract_unwind_tables.py Extracts the unwind tables in from breakpad symbol files Runs dump_syms on the given binary file and extracts the CFI data into the given output file. The output file is a binary file containing CFI rows ordered based on function address. The output file only contains rows that match the most popular rule type in CFI table, to reduce the output size and specify data in compact format. See doc https://github.com/google/breakpad/blob/main/docs/symbol_files.md. 1. The CFA rules should be of postfix form "SP <val> +". 2. The RA rules should be of postfix form "CFA <val> + ^". Note: breakpad represents dereferencing address with '^' operator. The output file has 2 tables UNW_INDEX and UNW_DATA, inspired from ARM EHABI format. The first table contains function addresses and an index into the UNW_DATA table. The second table contains one or more rows for the function unwind information. The output file starts with 4 bytes counting the number of entries in UNW_INDEX. Then UNW_INDEX table and UNW_DATA table. UNW_INDEX contains two columns of N rows each, where N is the number of functions. 1. First column 4 byte rows of all the function start address as offset from start of the binary, in sorted order. 2. For each function addr, the second column contains 2 byte indices in order. The indices are offsets (in count of 2 bytes) of the CFI data from start of UNW_DATA. The last entry in the table always contains CANT_UNWIND index to specify the end address of the last function. UNW_DATA contains data of all the functions. Each function data contains N rows. The data found at the address pointed from UNW_INDEX will be: 2 bytes: N - number of rows that belong to current function. N * 4 bytes: N rows of data. 16 bits : Address offset from function start. 14 bits : CFA offset / 4. 2 bits : RA offset / 4. The function is not added to the unwind table in following conditions: C1. If length of the function code (number of instructions) is greater than 0xFFFF (2 byte address span). This is because we use 16 bits to refer to offset of instruction from start of the address. C2. If the function moves the SP by more than 0xFFFF bytes. This is because we use 14 bits to denote CFA offset (last 2 bits are 0). C3. If the Return Address is stored at an offset >= 16 from the CFA. Some functions which have variable arguments can have offset upto 16. TODO(ssid): We can actually store offset 16 by subtracting 1 from RA/4 since we never have 0. C4: Some functions do not have unwind information defined in dwarf info. These functions have index value CANT_UNWIND(0xFFFF) in UNW_INDEX table. Usage: extract_unwind_tables.py --input_path [root path to unstripped chrome.so] --output_path [output path] --dump_syms_path [path to dump_syms binary] 10376 -
extract_unwind_tables_tests.py Tests for extract_unwind_tables.py This test suite contains various tests for extracting CFI tables from breakpad symbol files. 4307 -
filter_zip.py Returns a function to strip paths for the given patterns. Args: exclude_globs: List of globs that if matched should be excluded. include_globs: List of globs that if not matched should be excluded. Returns: * None if no filters are needed. * A function "(path) -> path" that returns None when |path| should be stripped, or |path| otherwise. 2107 -
filter_zip.pydeps 273 -
finalize_apk.py Signs and aligns an APK. 2536 -
find.py Finds files in directories. 767 -
flatc_java.py Generate java source files from flatbuffer files. This is the action script for the flatbuffer_java_library template. 1299 -
flatc_java.pydeps 273 -
gcc_preprocess.py 2597 -
gcc_preprocess.pydeps 285 -
gcc_preprocess_tests.py Tests for gcc_preprocess.py This test suite contains various tests for the 'java_cpp_template' build rule, which uses the gcc preprocessor to turn a template into Java code. 3826 -
generate_android_wrapper.py 1154 -
generate_linker_version_script.py Generate linker version scripts for Chrome on Android shared libraries. 3254 -
generate_linker_version_script.pydeps 312 -
ijar.py 1079 -
ijar.pydeps 234 -
jacoco_instr.py Instruments classes and jar files. This script corresponds to the 'jacoco_instr' action in the Java build process. Depending on whether jacoco_instrument is set, the 'jacoco_instr' action will call the instrument command which accepts a jar and instruments it using jacococli.jar. 8641 -
jacoco_instr.pydeps 279 -
java_cpp_enum.py Represents a C++ enum that must be converted to java. Args: original_enum_name: The name of the enum itself, without its package. If every entry starts with this value, this prefix is removed. class_name_override: the name for the enum in java. If None, the original enum name is used. enum_package: The java package in which this enum must be defined entries: A list of pairs. Each pair contains an enum entry, followed by either None or the value of this entry. The definition could be, for example, an integer, an expression `2 << 5`, or another enun entry. comments: A list of pairs. Each pair contains an entry and a comment associated to this entry. fixed_type: The type encoding this enum. Should belong to `ENUM_FIXED_TYPE_ALLOWLIST`. is_flag: Whether this value is used as a boolean flag whose entries can be xored together. 18555 -
java_cpp_enum.pydeps 305 -
java_cpp_enum_tests.py Tests for enum_preprocess.py. This test suite contains various tests for the C++ -> Java enum generator. 32322 -
java_cpp_features.py // This following string constants were inserted by // {SCRIPT_NAME} // From // {SOURCE_PATHS} // Into // {TEMPLATE_PATH} 3413 -
java_cpp_features.pydeps 317 -
java_cpp_features_tests.py Tests for java_cpp_features.py. This test suite contains various tests for the C++ -> Java base::Feature generator. 6686 -
java_cpp_strings.py // This following string constants were inserted by // {SCRIPT_NAME} // From // {SOURCE_PATHS} // Into // {TEMPLATE_PATH} 3172 -
java_cpp_strings.pydeps 314 -
java_cpp_strings_tests.py Tests for java_cpp_strings.py. This test suite contains various tests for the C++ -> Java string generator. 5188 -
java_google_api_keys.py // Copyright 2015 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // This file is autogenerated by // ${SCRIPT_NAME} // From // ${SOURCE_PATH} package ${PACKAGE}; public class ${CLASS_NAME} { ${CONSTANT_ENTRIES} } 3499 -
java_google_api_keys.pydeps 319 -
java_google_api_keys_tests.py Tests for java_google_api_keys.py. This test suite contains various tests for the C++ -> Java Google API Keys generator. 1050 -
javac_output_processor.py Contains helper class for processing javac output. 6277 -
jinja_template.py Renders one or more template files using the Jinja template engine. 6580 -
jinja_template.pydeps 1869 -
lint.py Runs Android's lint tool. 23059 -
lint.pydeps 278 -
merge_manifest.py Merges dependency Android manifests into a root manifest. 6040 -
merge_manifest.pydeps 287 -
nocompile_test.py Checks that compiling targets in BUILD.gn file fails. 6769 -
optimize_resources.py Parses command line options. Returns: An options object as from argparse.ArgumentParser.parse_args() 5200 -
optimize_resources.pydeps 276 -
OWNERS 121 -
prepare_resources.py Process Android resource directories to generate .resources.zip and R.txt files. 7565 -
prepare_resources.pydeps 1295 -
process_native_prebuilt.py 1179 -
process_native_prebuilt.pydeps 291 -
proguard.py 27240 -
proguard.pydeps 338 -
proto -
rename_java_classes.py 1722 -
rename_java_classes.pydeps 276 -
system_image_apks.py Generates APKs for use on system images. 1887 -
system_image_apks.pydeps 249 -
test -
trace_event_bytecode_rewriter.py Wrapper script around TraceEventAdder script. 2351 -
trace_event_bytecode_rewriter.pydeps 309 -
tracereferences.py Runs R8's TraceReferences tool to ensure DEX files are valid. 6526 -
tracereferences.pydeps 288 -
turbine.py Wraps the turbine jar and expands @FileArgs. 6170 -
turbine.pydeps 1425 -
unused_resources.py 4459 -
unused_resources.pydeps 1178 -
util -
validate_inputs.py Ensures inputs exist and writes a stamp file. 827 -
validate_static_library_dex_references.py 3158 -
validate_static_library_dex_references.pydeps 409 -
write_build_config.py 95965 -
write_build_config.pydeps 1184 -
write_native_libraries_java.py Writes list of native libraries to srcjar file. 4675 -
write_native_libraries_java.pydeps 324 -
zip.py Archives a set of files. 3053 -
zip.pydeps 252 -