Move build -> gn/standalone Make it explicit that those gn files are only for the standalone build. Bug: 68710794 Change-Id: I7e2a15219d63b62bf8f249becfdbf39fda2cc183
diff --git a/.gn b/.gn index 10d8679..d96dec4 100644 --- a/.gn +++ b/.gn
@@ -1 +1 @@ -buildconfig = "//build/BUILDCONFIG.gn" +buildconfig = "//gn/standalone/BUILDCONFIG.gn"
diff --git a/.travis.yml b/.travis.yml index e432830..3013aaa 100644 --- a/.travis.yml +++ b/.travis.yml
@@ -132,14 +132,14 @@ install: - | if [[ "$CFG" != android-* ]]; then - build/install-build-deps --no-android + tools/install-build-deps --no-android else - build/install-build-deps + tools/install-build-deps fi script: - - build/gn gen out/dist --args="${GN_ARGS}" --check - - build/ninja -C out/dist -j8 all + - tools/gn gen out/dist --args="${GN_ARGS}" --check + - tools/ninja -C out/dist -j8 all - | TEST_TARGETS=" perfetto_tests @@ -151,9 +151,9 @@ done else TARGET_ARCH=$(echo $CFG | cut -d- -f3) - build/run_android_emulator $TARGET_ARCH --pid /tmp/emulator.pid -v & + tools/run_android_emulator $TARGET_ARCH --pid /tmp/emulator.pid -v & for TEST_TARGET in $TEST_TARGETS; do - build/run_android_test out/dist "$TEST_TARGET" + tools/run_android_test out/dist "$TEST_TARGET" done fi
diff --git a/README.md b/README.md index 77c9e30..64bffcd 100644 --- a/README.md +++ b/README.md
@@ -15,7 +15,8 @@ Get the code ------------ ### Prerequisites -All dependent libraries are self-hosted and pulled by the `build/install-build-deps` script. +All dependent libraries are self-hosted and pulled by the +`tools/install-build-deps` script. The only requirements on the host are python, git and a compiler (preferably clang, gcc is maintained best-effort): `$ sudo apt-get update && sudo apt-get install git clang python` @@ -43,18 +44,18 @@ ------------------ ### Build from a standalone checkout If you are a chromium developer and have depot_tools installed you can avoid -the `build/` prefix below and just use gn/ninja from depot_tools. +the `tools/` prefix below and just use gn/ninja from depot_tools. -`$ build/install-build-deps` to install third-party build deps (NDK etc) +`$ tools/install-build-deps` to install third-party build deps (NDK etc) -`$ build/gn args out/android` to generate build files and enter in the editor: +`$ tools/gn args out/android` to generate build files and enter in the editor: ``` target_os = "android" # Leave empty for local testing target_cpu = "arm" or "arm64" # Only when building for Android ``` (See the [Build Configurations](#build-configurations) section below for more) -`$ build/ninja -C out/android all` +`$ tools/ninja -C out/android all` ### Build from the Android tree @@ -65,7 +66,7 @@ --------- ### On the host (Linux / OSX) ``` -$ build/ninja -C out/default (tracing_unittests | tracing_benchmarks) +$ tools/ninja -C out/default (tracing_unittests | tracing_benchmarks) $ out/default/tracing_unittests --gtest_help ``` @@ -73,10 +74,10 @@ Either connect a device in [ADB mode][adb-docs] or use the bundled emulator. To start the emulator: -`$ build/run_android_emulator (arm | arm64) &` +`$ tools/run_android_emulator (arm | arm64) &` To run the tests (either on the emulator or physical device): -`$ build/run_android_test out/default tracing_unittests` +`$ tools/run_android_test out/default tracing_unittests` Build configurations
diff --git a/buildtools/BUILD.gn b/buildtools/BUILD.gn index 814188d..6868064 100644 --- a/buildtools/BUILD.gn +++ b/buildtools/BUILD.gn
@@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/libc++/libc++.gni") +import("//gn/standalone/libc++/libc++.gni") # Mimimal config to be used in production (i.e. non-test) targets. This is # really just to allowing include "gtest/gtest_prod.h" for the FRIEND_TEST macro @@ -50,7 +50,7 @@ source_set("gtest") { testonly = true include_dirs = [ "googletest/googletest" ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] public_configs = [ ":googletest_config" ] all_dependent_configs = [ ":googletest_config" ] sources = [ @@ -60,7 +60,7 @@ source_set("gtest_main") { testonly = true - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] configs += [ ":googletest_config" ] sources = [ "googletest/googletest/src/gtest_main.cc", @@ -70,7 +70,7 @@ source_set("gmock") { testonly = true include_dirs = [ "googletest/googlemock" ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] public_configs = [ ":googletest_config" ] all_dependent_configs = [ ":googletest_config" ] sources = [ @@ -79,7 +79,7 @@ } # This config is applied to the autogenerated .pb.{cc,h} files in -# //build/proto_library.gni. This config is propagated up to the source sets +# //gn/standalone/proto_library.gni. This config is propagated up to the source sets # that depend on generated proto headers. Therefore this should stay as lean and # clean as possible in terms of -W-no* suppressions. Thankfully the # autogenerated .pb.h headers violate less warnings than the libprotobuf_* @@ -161,7 +161,7 @@ "protobuf/src/google/protobuf/stubs/time.cc", "protobuf/src/google/protobuf/wire_format_lite.cc", ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] public_configs = [ ":protobuf_config" ] } @@ -224,7 +224,7 @@ "protobuf/src/google/protobuf/wire_format.cc", "protobuf/src/google/protobuf/wrappers.pb.cc", ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] public_configs = [ ":protobuf_config" ] } @@ -326,7 +326,7 @@ "protobuf/src/google/protobuf/compiler/subprocess.cc", "protobuf/src/google/protobuf/compiler/zip_writer.cc", ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] public_configs = [ ":protobuf_config" ] } @@ -338,7 +338,7 @@ sources = [ "protobuf/src/google/protobuf/compiler/main.cc", ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] } } # host_toolchain @@ -368,18 +368,18 @@ ] include_dirs = [ "libunwind/include" ] configs -= [ - "//build:extra_warnings", - "//build:no_exceptions", - "//build:no_rtti", + "//gn/standalone:extra_warnings", + "//gn/standalone:no_exceptions", + "//gn/standalone:no_rtti", # When building with msan, libunwind itself triggers memory violations # that causes msan to get stuck into an infinite loop. Just don't # instrument libunwind itself. - "//build/sanitizers:sanitizers_cflags", + "//gn/standalone/sanitizers:sanitizers_cflags", ] configs += [ ":libc++config", - "//build/sanitizers:sanitizer_options_link_helper", + "//gn/standalone/sanitizers:sanitizer_options_link_helper", ] } @@ -409,13 +409,13 @@ sources += [ "libcxxabi/src/cxa_thread_atexit.cpp" ] } configs -= [ - "//build:extra_warnings", - "//build:no_exceptions", - "//build:no_rtti", + "//gn/standalone:extra_warnings", + "//gn/standalone:no_exceptions", + "//gn/standalone:no_rtti", ] configs += [ ":libc++config", - "//build/sanitizers:sanitizer_options_link_helper", + "//gn/standalone/sanitizers:sanitizer_options_link_helper", ] deps = [ ":libunwind", @@ -461,13 +461,13 @@ "libcxx/src/variant.cpp", ] configs -= [ - "//build:extra_warnings", - "//build:no_exceptions", - "//build:no_rtti", + "//gn/standalone:extra_warnings", + "//gn/standalone:no_exceptions", + "//gn/standalone:no_rtti", ] configs += [ ":libc++config", - "//build/sanitizers:sanitizer_options_link_helper", + "//gn/standalone/sanitizers:sanitizer_options_link_helper", ] defines = [ "_LIBCPP_BUILDING_LIBRARY" ] deps = [ @@ -526,5 +526,5 @@ defines = [ "HAVE_POSIX_REGEX" ] public_configs = [ ":benchmark_config" ] all_dependent_configs = [ ":benchmark_config" ] - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] }
diff --git a/gn/BUILD.gn b/gn/BUILD.gn index 92fba54..41b5217 100644 --- a/gn/BUILD.gn +++ b/gn/BUILD.gn
@@ -83,8 +83,8 @@ public_configs = [ ":default_config" ] if (!build_with_chromium) { public_deps = [ - "//build/libc++:deps", - "//build/sanitizers:deps", + "//gn/standalone/libc++:deps", + "//gn/standalone/sanitizers:deps", ] } }
diff --git a/gn/proto_library.gni b/gn/proto_library.gni index 97b95d2..3ccdeab 100644 --- a/gn/proto_library.gni +++ b/gn/proto_library.gni
@@ -15,9 +15,7 @@ import("//build_overrides/build.gni") if (!build_with_chromium) { - # TODO(primiano): Just move //build/proto_library.gni inside this branch, - # there is no need to have that in //build at this point. - import("//build/proto_library.gni") + import("//gn/standalone/proto_library.gni") } else { import("//third_party/protobuf/proto_library.gni") }
diff --git a/build/BUILD.gn b/gn/standalone/BUILD.gn similarity index 97% rename from build/BUILD.gn rename to gn/standalone/BUILD.gn index 916b448..59f60fd 100644 --- a/build/BUILD.gn +++ b/gn/standalone/BUILD.gn
@@ -12,8 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/android.gni") -import("//build/sanitizers/sanitizers.gni") +import("//gn/standalone/android.gni") +import("//gn/standalone/sanitizers/sanitizers.gni") config("extra_warnings") { cflags = [
diff --git a/build/BUILDCONFIG.gn b/gn/standalone/BUILDCONFIG.gn similarity index 75% rename from build/BUILDCONFIG.gn rename to gn/standalone/BUILDCONFIG.gn index 26f5fb0..b1d103f 100644 --- a/build/BUILDCONFIG.gn +++ b/gn/standalone/BUILDCONFIG.gn
@@ -45,17 +45,17 @@ } default_configs = [ - "//build:debug_symbols", - "//build:default", - "//build:extra_warnings", - "//build:no_exceptions", - "//build:no_rtti", - "//build/libc++:config", - "//build/sanitizers:sanitizers_cflags", + "//gn/standalone:debug_symbols", + "//gn/standalone:default", + "//gn/standalone:extra_warnings", + "//gn/standalone:no_exceptions", + "//gn/standalone:no_rtti", + "//gn/standalone/libc++:config", + "//gn/standalone/sanitizers:sanitizers_cflags", ] if (!is_debug) { - default_configs += [ "//build:release" ] + default_configs += [ "//gn/standalone:release" ] } set_defaults("source_set") { @@ -71,13 +71,13 @@ # libc++ itself on these targets. set_defaults("shared_library") { configs = default_configs - configs += [ "//build:shared_library" ] + configs += [ "//gn/standalone:shared_library" ] } set_defaults("executable") { configs = default_configs - configs += [ "//build:executable" ] + configs += [ "//gn/standalone:executable" ] } -set_default_toolchain("//build/toolchain:gcc_like") -host_toolchain = "//build/toolchain:gcc_like_host" +set_default_toolchain("//gn/standalone/toolchain:gcc_like") +host_toolchain = "//gn/standalone/toolchain:gcc_like_host"
diff --git a/build/android.gni b/gn/standalone/android.gni similarity index 100% rename from build/android.gni rename to gn/standalone/android.gni
diff --git a/build/build_tool_wrapper.py b/gn/standalone/build_tool_wrapper.py similarity index 100% rename from build/build_tool_wrapper.py rename to gn/standalone/build_tool_wrapper.py
diff --git a/build/libc++/BUILD.gn b/gn/standalone/libc++/BUILD.gn similarity index 100% rename from build/libc++/BUILD.gn rename to gn/standalone/libc++/BUILD.gn
diff --git a/build/libc++/libc++.gni b/gn/standalone/libc++/libc++.gni similarity index 97% rename from build/libc++/libc++.gni rename to gn/standalone/libc++/libc++.gni index c128d10..3306590 100644 --- a/build/libc++/libc++.gni +++ b/gn/standalone/libc++/libc++.gni
@@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/sanitizers/sanitizers.gni") +import("//gn/standalone/sanitizers/sanitizers.gni") declare_args() { # Background:
diff --git a/build/proto_library.gni b/gn/standalone/proto_library.gni similarity index 97% rename from build/proto_library.gni rename to gn/standalone/proto_library.gni index 5317379..90c7819 100644 --- a/build/proto_library.gni +++ b/gn/standalone/proto_library.gni
@@ -93,7 +93,7 @@ # The XXX_gen action that generates the .pb.{cc,h} files. action(action_name) { visibility = [ ":$source_set_name" ] - script = "//build/build_tool_wrapper.py" + script = "//gn/standalone/build_tool_wrapper.py" sources = proto_sources outputs = get_path_info(protogens, "abspath") @@ -162,7 +162,7 @@ sources = get_target_outputs(":$action_name") - configs -= [ "//build:extra_warnings" ] + configs -= [ "//gn/standalone:extra_warnings" ] if (defined(invoker.extra_configs)) { configs += invoker.extra_configs }
diff --git a/build/sanitizers/BUILD.gn b/gn/standalone/sanitizers/BUILD.gn similarity index 98% rename from build/sanitizers/BUILD.gn rename to gn/standalone/sanitizers/BUILD.gn index eac8963..0fec24a 100644 --- a/build/sanitizers/BUILD.gn +++ b/gn/standalone/sanitizers/BUILD.gn
@@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/sanitizers/sanitizers.gni") +import("//gn/standalone/sanitizers/sanitizers.gni") # Link dependencies for sanitizers for executables. group("deps") {
diff --git a/build/sanitizers/blacklist.txt b/gn/standalone/sanitizers/blacklist.txt similarity index 100% rename from build/sanitizers/blacklist.txt rename to gn/standalone/sanitizers/blacklist.txt
diff --git a/build/sanitizers/sanitizers.gni b/gn/standalone/sanitizers/sanitizers.gni similarity index 93% rename from build/sanitizers/sanitizers.gni rename to gn/standalone/sanitizers/sanitizers.gni index 3729701..95f40d1 100644 --- a/build/sanitizers/sanitizers.gni +++ b/gn/standalone/sanitizers/sanitizers.gni
@@ -12,9 +12,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/android.gni") -import("//build/sanitizers/vars.gni") -import("//build/toolchain/llvm.gni") +import("//gn/standalone/android.gni") +import("//gn/standalone/sanitizers/vars.gni") +import("//gn/standalone/toolchain/llvm.gni") declare_args() { sanitizer_lib_base_name_ = ""
diff --git a/build/sanitizers/vars.gni b/gn/standalone/sanitizers/vars.gni similarity index 100% rename from build/sanitizers/vars.gni rename to gn/standalone/sanitizers/vars.gni
diff --git a/build/toolchain/BUILD.gn b/gn/standalone/toolchain/BUILD.gn similarity index 98% rename from build/toolchain/BUILD.gn rename to gn/standalone/toolchain/BUILD.gn index 2380d98..251c7c2 100644 --- a/build/toolchain/BUILD.gn +++ b/gn/standalone/toolchain/BUILD.gn
@@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/android.gni") +import("//gn/standalone/android.gni") import("llvm.gni") declare_args() {
diff --git a/build/toolchain/linux_find_llvm.py b/gn/standalone/toolchain/linux_find_llvm.py similarity index 100% rename from build/toolchain/linux_find_llvm.py rename to gn/standalone/toolchain/linux_find_llvm.py
diff --git a/build/toolchain/llvm.gni b/gn/standalone/toolchain/llvm.gni similarity index 96% rename from build/toolchain/llvm.gni rename to gn/standalone/toolchain/llvm.gni index 4d30d0d..ae490ad 100644 --- a/build/toolchain/llvm.gni +++ b/gn/standalone/toolchain/llvm.gni
@@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import("//build/sanitizers/vars.gni") +import("//gn/standalone/sanitizers/vars.gni") declare_args() { is_hermetic_clang = is_clang && is_linux_host && using_sanitizer
diff --git a/build/toolchain/mac_find_llvm.py b/gn/standalone/toolchain/mac_find_llvm.py similarity index 100% rename from build/toolchain/mac_find_llvm.py rename to gn/standalone/toolchain/mac_find_llvm.py
diff --git a/protos/ftrace/BUILD.gn b/protos/ftrace/BUILD.gn index 0816b59..78ef707 100644 --- a/protos/ftrace/BUILD.gn +++ b/protos/ftrace/BUILD.gn
@@ -25,7 +25,7 @@ action_foreach("generate_full_protos") { visibility = [ ":*" ] - script = "../../build/generate_full_protos.py" + script = "generate_full_protos.py" sources = ftrace_proto_names # TODO(hjd): Add support for subdirectories.
diff --git a/build/generate_full_protos.py b/protos/ftrace/generate_full_protos.py similarity index 100% rename from build/generate_full_protos.py rename to protos/ftrace/generate_full_protos.py
diff --git a/src/ipc/ipc_library.gni b/src/ipc/ipc_library.gni index 3a31c73..5231351 100644 --- a/src/ipc/ipc_library.gni +++ b/src/ipc/ipc_library.gni
@@ -16,7 +16,7 @@ import("//build_overrides/build.gni") if (!build_with_chromium) { - import("//build/proto_library.gni") + import("//gn/standalone/proto_library.gni") } else { import("//third_party/protobuf/proto_library.gni") }
diff --git a/src/protozero/protozero_library.gni b/src/protozero/protozero_library.gni index ffaedca..2894490 100644 --- a/src/protozero/protozero_library.gni +++ b/src/protozero/protozero_library.gni
@@ -15,7 +15,7 @@ import("//build_overrides/build.gni") if (!build_with_chromium) { - import("//build/proto_library.gni") + import("//gn/standalone/proto_library.gni") } else { import("//third_party/protobuf/proto_library.gni") }
diff --git a/build/android_emulators/arm.ini b/tools/android_emulators/arm.ini similarity index 100% rename from build/android_emulators/arm.ini rename to tools/android_emulators/arm.ini
diff --git a/build/android_emulators/arm64.ini b/tools/android_emulators/arm64.ini similarity index 100% rename from build/android_emulators/arm64.ini rename to tools/android_emulators/arm64.ini
diff --git a/build/build_all_configs.py b/tools/build_all_configs.py similarity index 96% rename from build/build_all_configs.py rename to tools/build_all_configs.py index e792205..00fc1cf 100755 --- a/build/build_all_configs.py +++ b/tools/build_all_configs.py
@@ -73,7 +73,7 @@ if not os.path.isdir(out_base_dir): os.mkdir(out_base_dir) - gn = os.path.join(ROOT_DIR, 'build', 'gn') + gn = os.path.join(ROOT_DIR, 'tools', 'gn') for config_name, gn_args in configs.iteritems(): print '\n\033[32mBuilding %-20s[%s]\033[0m' % (config_name, ','.join(gn_args)) @@ -84,7 +84,7 @@ print ' '.join(gn_cmd) subprocess.check_call(gn_cmd, cwd=ROOT_DIR, env={'EDITOR':'true'}) if args.build: - ninja = os.path.join(ROOT_DIR, 'build', 'ninja') + ninja = os.path.join(ROOT_DIR, 'tools', 'ninja') ninja_cmd = [ninja, '-C', '.', args.build] subprocess.check_call(ninja_cmd, cwd=out_dir)
diff --git a/build/gn b/tools/gn similarity index 100% rename from build/gn rename to tools/gn
diff --git a/build/install-build-deps b/tools/install-build-deps similarity index 100% rename from build/install-build-deps rename to tools/install-build-deps
diff --git a/build/ninja b/tools/ninja similarity index 100% rename from build/ninja rename to tools/ninja
diff --git a/build/run-buildtools-binary.sh b/tools/run-buildtools-binary.sh similarity index 94% rename from build/run-buildtools-binary.sh rename to tools/run-buildtools-binary.sh index 4634994..4a9cd47 100644 --- a/build/run-buildtools-binary.sh +++ b/tools/run-buildtools-binary.sh
@@ -34,7 +34,7 @@ BIN_PATH="$PROJECT_ROOT/buildtools/$OS/$CMD" if [ ! -x "$BIN_PATH" ]; then - echo "Cannot find $BIN_PATH. Run build/install-build-deps first." + echo "Cannot find $BIN_PATH. Run tools/install-build-deps first." exit 1 fi
diff --git a/build/run_android_emulator b/tools/run_android_emulator similarity index 94% rename from build/run_android_emulator rename to tools/run_android_emulator index 32f024f..6a923c7 100755 --- a/build/run_android_emulator +++ b/tools/run_android_emulator
@@ -23,11 +23,11 @@ parser = argparse.ArgumentParser() parser.add_argument('--verbose', '-v', action='store_true') parser.add_argument('--pid', help='(optional) save pid into given file') - parser.add_argument('image', help='arm|arm64 (see //build/android_emulators)') + parser.add_argument('image', help='arm|arm64 (see //tools/android_emulators)') args = parser.parse_args() root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - ini = os.path.join(root_dir, 'build', 'android_emulators', args.image + '.ini') + ini = os.path.join(root_dir, 'tools', 'android_emulators', args.image + '.ini') assert os.path.exists(ini), 'File not found: ' + ini avd_dir = os.path.join(root_dir, 'buildtools', 'emulator_images')
diff --git a/build/run_android_test b/tools/run_android_test similarity index 96% rename from build/run_android_test rename to tools/run_android_test index 83aa845..efab789 100755 --- a/build/run_android_test +++ b/tools/run_android_test
@@ -103,7 +103,7 @@ def EnumerateDataDeps(): - with open(os.path.join(ROOT_DIR, 'build', 'test_data.txt')) as f: + with open(os.path.join(ROOT_DIR, 'tools', 'test_data.txt')) as f: lines = f.readlines() for line in (line.strip() for line in lines if not line.startswith('#')): assert os.path.exists(line), line @@ -114,8 +114,7 @@ parser = argparse.ArgumentParser() parser.add_argument('--no-cleanup', '-n', action='store_true') parser.add_argument('out_dir', help='out/android/') - parser.add_argument('test_name', help='perfetto_tests', - default='perfetto_tests') + parser.add_argument('test_name', help='perfetto_tests') parser.add_argument('cmd_args', nargs=argparse.REMAINDER) args = parser.parse_args()
diff --git a/build/test_data.txt b/tools/test_data.txt similarity index 100% rename from build/test_data.txt rename to tools/test_data.txt