UI build: use custom build script, support --watch

This CL switches the UI build from GN+ninja to a custom
JS-based build script. The main reason for this is the
fact that incremental builds are incredibly slow today
and that is unsolvable with any build system which is
based on invoking tsc + rollup on every change.
This instead leverages the --watch mode of tsc and
rollup.

Change-Id: Ifc87abeed609a89b8bde8349870e43d17ba6ec33
33 files changed
tree: 4a87f43f8887c826066b17bd068191367a83f2d3
  1. .github/
  2. bazel/
  3. build_overrides/
  4. buildtools/
  5. debian/
  6. docs/
  7. examples/
  8. gn/
  9. include/
  10. infra/
  11. protos/
  12. src/
  13. test/
  14. tools/
  15. ui/
  16. .clang-format
  17. .clang-tidy
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. Android.bp
  23. Android.bp.extras
  24. BUILD
  25. BUILD.extras
  26. BUILD.gn
  27. CHANGELOG
  28. codereview.settings
  29. DIR_METADATA
  30. heapprofd.rc
  31. LICENSE
  32. METADATA
  33. MODULE_LICENSE_APACHE2
  34. OWNERS
  35. perfetto.rc
  36. PRESUBMIT.py
  37. README.chromium
  38. README.md
  39. TEST_MAPPING
  40. traced_perf.rc
  41. WORKSPACE
README.md

Perfetto - System profiling, app tracing and trace analysis

Perfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.

See https://perfetto.dev/docs or the /docs/ directory for documentation.