Clone of https://chromium.googlesource.com/chromium/src/build with Mozilla's local modifications
Перейти к файлу
Peter Wen 8a0a1a308d Android: Parallelize javac post-processing
We do a number of tasks in javac.py after the javac command completes:
- Move annotation processor generated files to out/Default/gen.
  - Scan all java files (including aforesaid generated ones) to
    construct .apk.jar.info files.
- Pack all .class (and other files?) into a .jar file for future build
  steps.

This CL splits out these tasks and does them in parallel, in particular
also processing java files in parallel.

Estimated incremental build savings: ~1.2s

Bug: 906803
Change-Id: Ic7a4d4e4cee998ea15f90a1c435de34e60780a3a
Reviewed-on: https://chromium-review.googlesource.com/c/1352806
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#613227}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d0df151404f2c6d421121690b073b088d8ab1464
2018-12-03 20:38:31 +00:00
android Android: Parallelize javac post-processing 2018-12-03 20:38:31 +00:00
args Enable WebRTC on Fuchsia by default. 2017-12-15 02:27:25 +00:00
chromeos Don't fail when unknown args are passed down to cros VM tast tests. 2018-11-29 21:35:55 +00:00
cipd [android] Move CIPD dependencies into DEPS. (RELAND) 2018-03-24 00:23:27 +00:00
config win: Always set strip_absolute_paths_from_debug_symbols, independent of goma. 2018-12-03 19:47:21 +00:00
docs writing_gn_templates.md: target_gen_dir vs target_out_dir 2018-11-27 16:07:55 +00:00
experimental Remove GTK2 code 2018-08-22 21:52:02 +00:00
fuchsia Roll Fuchsia SDK from 59b243456fcd to f52930ef0ef6 2018-12-03 06:56:42 +00:00
git-hooks Silence git-hooks/pre-commit in the absence of .gitmodules (take 2). 2014-04-05 00:29:14 +00:00
internal Remove GYP files in breakpad, build, and tools. 2016-09-12 19:55:25 +00:00
ios Set Python shebang in build to /usr/bin/env python 2017-07-05 14:42:43 +00:00
linux Revert "SafeStack: Add a SafeStack build configuration" 2018-11-27 20:25:22 +00:00
mac Support dummy commit for LASTCHANGE 2018-08-01 02:09:56 +00:00
sanitizers Revert "Add default sanitizer options for Windows." 2018-11-22 08:42:50 +00:00
secondary/third_party Android: including AndroidManifests in test sdks 2018-11-08 22:43:43 +00:00
toolchain mac: Don't set DEVELOPER_DIR env var for compiles. 2018-12-03 17:08:23 +00:00
util Always write //build/util/LASTCHANGE.committime. 2018-08-16 22:17:50 +00:00
win Remove some of the PGO build scripts 2018-11-07 19:20:44 +00:00
.gitignore Ignore compiled Python files. 2018-08-27 17:55:15 +00:00
BUILD.gn Add support for include_dirs to gn check. 2018-01-23 20:30:03 +00:00
OWNERS Add tikuta to OWNERS under build directory 2018-07-30 11:38:07 +00:00
OWNERS.status Add global status comments for owners 2017-04-07 07:03:46 +00:00
README.md Add doc link //build/android/docs/README.md -> incremental_install/README.md 2018-11-27 18:49:20 +00:00
apply_locales.py Move apply_locales.py from src/chrome/tools/build/ to src/build/. 2010-03-09 02:00:21 +00:00
branding_value.sh Adding a general script to fetch values from the BRANDING files. 2009-05-19 14:10:09 +00:00
build-ctags.sh Change build-ctags.sh output file name from ".tags" to "tags" 2014-12-09 20:36:25 +00:00
build_config.h Add Windows ARM64 support to Chromium build scripts. 2018-10-16 19:37:14 +00:00
buildflag.h Tiny fix in buildflag.h comment 2016-03-31 21:02:11 +00:00
buildflag_header.gni Rename buildflag_header targets in base for consistency 2018-02-22 02:08:08 +00:00
check_gn_headers.py Make dirty checking in check_gn_headers.py more robust 2017-06-17 00:12:04 +00:00
check_gn_headers_unittest.py Print detailed info in check_gn_headers.py 2017-06-13 10:21:23 +00:00
check_gn_headers_whitelist.txt mac: Remove now-unused manage_passwords_icon.h/cc 2018-10-09 16:11:47 +00:00
check_return_value.py check_return_value.py should drop stderr of the command it runs. 2014-04-03 07:36:32 +00:00
ciopfs.sha1 Download ciopfs from a hook in win/cross builds. 2018-02-01 20:36:45 +00:00
clobber.py Fix src/build/clobber.py 2018-04-09 15:32:48 +00:00
common.croc Remove references to sconsbuild. 2013-10-12 02:38:29 +00:00
common.gypi Gut gyp_chromium, common.gypi. 2016-09-21 22:29:06 +00:00
compiled_action.gni Add nasm support to Chromium, use it for boringssl. 2018-11-08 01:27:52 +00:00
compute_build_timestamp.py Reland "win: write a deterministic-ish timestamp into the PE/COFF header instead of the current time" 2018-08-17 02:42:02 +00:00
copy_test_data_ios.py Fix handling of spaces with paths in copy_test_data.py 2012-11-09 18:04:50 +00:00
cp.py Normalize output path to cp.py 2013-04-30 01:57:11 +00:00
detect_host_arch.py [MIPS64] Add mips64 for detect_host_arch and sysroot_mips64 download in DEPS. 2018-09-05 06:01:04 +00:00
dir_exists.py gyp performance: don't invoke python to check dir existance 2014-04-16 21:52:49 +00:00
dotfile_settings.gni Move the "atspi2" target to a separate BUILD.gn file 2018-11-30 23:10:19 +00:00
download_nacl_toolchains.py Let download_nacl_toolchains.py no longer check GYP_DEFINES. 2018-11-26 20:55:42 +00:00
download_translation_unit_tool.py Modify download_translation_unit_tool.py to work on Windows. 2018-05-22 22:53:13 +00:00
env_dump.py Set Python shebang in build to /usr/bin/env python 2017-07-05 14:42:43 +00:00
extract_from_cab.py Fix spelling: "supress" -> "suppress" 2013-11-02 02:05:53 +00:00
find_depot_tools.py find_depot_tools: put DEPS'd depot_tools first 2017-10-10 21:36:39 +00:00
find_isolated_tests.py Add a script that can discover *.isolated files in a directory. 2014-02-28 19:46:52 +00:00
fix_gn_headers.py Support checking and fixing non-existing header files in GN 2017-04-29 07:12:17 +00:00
gdb-add-index gdb-add-index now removes its temp directory 2016-06-01 20:21:54 +00:00
get_landmines.py The Great Blink mv for source files, part 2. 2018-04-07 15:32:37 +00:00
gn_helpers.py Make gn_helpers.py safely ignore comments. 2018-11-06 00:42:09 +00:00
gn_helpers_unittest.py Make gn_helpers.py safely ignore comments. 2018-11-06 00:42:09 +00:00
gn_run_binary.py Print Windows crash codes in hex 2018-02-15 00:08:36 +00:00
gyp_chromium Revert of Remove the top-level GYP files (or stub them out). (patchset #2 id:20001 of https://codereview.chromium.org/2299543008/ ) 2016-09-07 16:43:47 +00:00
gyp_chromium.py Remove dead code dealing with gyp. 2018-11-28 22:42:10 +00:00
gyp_environment.py Remove dead code dealing with gyp. 2018-11-28 22:42:10 +00:00
install-build-deps-android.sh Add profile-unpacking build deps to Linux 2018-05-10 22:24:17 +00:00
install-build-deps.sh Add libgtk-3-0:i386 to backwards-compatible list 2018-11-29 00:08:31 +00:00
install-chroot.sh build: Fix common misspellings 2017-08-01 09:03:13 +00:00
landmine_utils.py [build] Remove gyp usage from landmines script 2018-02-20 23:27:59 +00:00
landmines.py [build] Remove gyp usage from landmines script 2018-02-20 23:27:59 +00:00
mac_toolchain.py Disable Hermetic Mac toolchain on macOS 10.14+. 2018-11-13 01:44:43 +00:00
nocompile.gni build: Pass on dependencies of nocompile tests 2018-09-10 15:25:30 +00:00
package_mac_toolchain.py Don't strip DNTDocumentationSupport for hermetic bundles. 2017-06-01 14:49:01 +00:00
precompile.cc Use precompiled headers for most large projects where the .gyp file 2011-09-07 14:14:54 +00:00
precompile.h Add base::stack, convert std::stack uses use it. 2017-10-02 18:55:28 +00:00
print_python_deps.py Create isolation target for WebView CTS tests and capture gn-paths arg in pydeps. 2018-09-20 19:32:39 +00:00
protoc_java.py Reland "[protoc] Use protoc's lite java plugin and runtime" 2018-12-01 00:08:52 +00:00
protoc_java.pydeps android: build: Use .pydeps file to store Python dependencies. 2018-08-07 07:12:36 +00:00
redirect_stdout.py [Mac/GN] Add targets to run dump_syms and create the dSYM archive. 2016-06-09 22:59:07 +00:00
rm.py Unbreak mac component build. 2016-09-23 22:48:01 +00:00
run_swarming_xcode_install.py run_swarming_xcode_install: Add --dimension and a name tag 2017-09-28 22:25:40 +00:00
sample_arg_file.gn Add support for customizing GN's args text. 2017-03-04 02:32:43 +00:00
sanitize-mac-build-log.sed Cleanup sanitize build sed and sh scripts. 2013-10-31 04:21:14 +00:00
sanitize-mac-build-log.sh Cleanup sanitize build sed and sh scripts. 2013-10-31 04:21:14 +00:00
sanitize-win-build-log.sed Remove removed (and outdated anyway) Perl IDL compiler line from sed script 2014-02-27 15:00:45 +00:00
sanitize-win-build-log.sh Cleanup sanitize build sed and sh scripts. 2013-10-31 04:21:14 +00:00
shim_headers.gni Unbundle openh264 2017-05-22 12:52:46 +00:00
split_static_library.gni Don't use split_static_library when lld is used 2018-07-18 15:27:42 +00:00
swarming_xcode_install.py Install Xcode via swarming. 2017-09-15 13:17:50 +00:00
symlink.gni [android] Tweak data deps to include two chromium tool binaries. (RELAND) 2016-11-11 19:19:23 +00:00
symlink.py Revert of Add work-around to symlink.gni to avoid "not up-to-date" ninja errors (patchset #1 id:1 of https://codereview.chromium.org/2344243002/ ) 2016-09-20 22:16:30 +00:00
timestamp.gni Fix a typo in a comment. 2018-08-17 15:40:50 +00:00
tree_truth.sh Print project path in build/tree_truth.sh (fix typo) 2014-11-11 16:53:33 +00:00
update-linux-sandbox.sh Fix build/update-linux-sandbox.sh with POSIX sh 2018-08-28 04:54:31 +00:00
vs_toolchain.py Copy Windows ARM64 VC runtime from correct location 2018-11-21 14:04:12 +00:00
whitespace_file.txt whitespace: now test CQ. 2018-08-09 21:07:23 +00:00
win_is_xtree_patched.py Fix xtree patch check, and in turn C4702 disabling 2015-01-07 23:42:34 +00:00
write_build_date_header.py Revert "win: Make chrome.7z generation more deterministic." 2018-11-05 12:14:55 +00:00
write_buildflag_header.py New build flag system, convert Google Now flag 2015-11-26 09:22:27 +00:00

README.md

About

//build contains:

  • Core GN templates and configuration
  • Core Python build scripts

Since this directory is DEPS'ed in by some other repositories (webrtc, pdfium, v8, etc), it should be kept as self-contained as possible by not referring to files outside of it. Some exceptions exist (//testing, select //third_party subdirectories), but new dependencies tend to break these other projects, and so should be avoided.

Contents

  • //build/config - Common templates via .gni files.
  • //build/toolchain - GN toolchain definitions.
  • Other .py files - Some are used by GN/Ninja. Some by gclient hooks, some are just random utilities.

Files referenced by //.gn:

  • //build/BUILDCONFIG.gn - Included by all BUILD.gn files.
  • //build/secondary - An overlay for BUILD.gn files. Enables adding BUILD.gn to directories that live in sub-repositories.
  • //build_overrides - Refer to //build_overrides/README.md.

Docs