Add proxy headers to ensure that even when the base tracing is disabled,
some stub implementations of perfetto::TracedValue are available and the
end users of the API don't have to worry about whether base tracing is
enabled or not.
R=skyostil@chromium.org
BUG=1137154
TEST=compiled with enable_base_tracing=false
Change-Id: Id89c1d3bea76ab3bf57cffda969903a63db3574a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2723791
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
Commit-Queue: Alexander Timin <altimin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#859231}
Replace includes of third_party/perfetto/include headers with
//base/trace_event/base_tracing.h, and updates the presubmit check to
avoid such includes in the future.
Also adds a warning for includes to pbzero headers to remind us to keep
enable_base_tracing=false working when adding typed events.
This should also help unblock the base => WebRTC roll together with
https://crrev.com/c/2717767.
Change-Id: I1d17801e209b19de37ca0081de351897ea7c3643
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2717824
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
Commit-Queue: Eric Seckler <eseckler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#857663}
Base code should include base_tracing.h instead of trace_event impl
headers, so that base can build with enable_base_tracing = false.
Previously, a presubmit check emitted a warning if a trace_event
implementation header was included outside trace_event implementation
directories. This modifies the warning into an error, which can be
bypassed via a source code comment.
TBR: rsesek@chromium.org
Bug: 1093406
Change-Id: Ic82f399390ededd12c04ad6005de8f68929bae87
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2264555
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Commit-Queue: Eric Seckler <eseckler@chromium.org>
Cr-Commit-Position: refs/heads/master@{#782901}
In order to support Perfetto-powered typed trace events in //base, we
will add a dependency on //third_party/perfetto. This dependency would
be hard to support in libchrome -- for that reason, we're making
tracing support in //base optional at build time.
This patch introduces a gn arg that enables base's tracing support.
Disabling it is not supported in Chrome, but base_unittests and
libchrome can also be built & run with enable_base_tracing=false.
When support is disabled, a large part of the TRACE_EVENT API surface
is mocked out with an empty implementation, so that few other places in
//base code require preprocessor ifdefs.
Doc: https://docs.google.com/document/d/1UQ4Ez7B-TeowijOUuMXuoWj1amZcQ7E2abt3s4jaAEY/edit?usp=sharing
Test: args.gn: enable_base_tracing=false
Bug: 1065905,1006541
Change-Id: I067e85411c51659626af0713ccfa6c18cfffc3e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2207225
Commit-Queue: Eric Seckler <eseckler@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
Cr-Commit-Position: refs/heads/master@{#774081}
Objective-C interfaces are disallowed in base because of a bug related
to plugins.
There are no plugins on iOS, and //base/ios is not compiled for other
platforms.
Review URL: https://codereview.chromium.org/708513002
Cr-Commit-Position: refs/heads/master@{#303007}
Clean up redundant PRESUBMIT files.
linux_redux has been 100% red since at least August 2014,
and is presumably not useful.
BUG=380709
R=sergiyb@chromium.org
Review URL: https://codereview.chromium.org/685363002
Cr-Commit-Position: refs/heads/master@{#302067}
This removes some configs that were here below in an attempt to reduce
the tryserver load.
They can be added later slowly after we verify they don't cause unnecessary
load. Note that CQ was not checking them anyway, so they were losing at least
50% CL coverage.
TBR=maruel
BUG=317931
Review URL: https://codereview.chromium.org/198333003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256739 0039d316-1c4b-4281-b951-d872f2087c98
That matches the CQ bots, and they're significantly faster.
The global trybots are added to all subdirectory PRESUBMITs automatically, so remove win, linux, mac from subdirectory PRESUBMITs (instead of changing them too).
BUG=99521
TEST=`git try` creates faster tryjobs.
TBR=willchan (net), akalin (sync)
Review URL: http://codereview.chromium.org/8162009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113979 0039d316-1c4b-4281-b951-d872f2087c98
Make sure that:
- shebang is only present for executable files
- shebang is #!/usr/bin/env python
- __main__ is only present for executable files
- file's executable bit is coherent
Also fix EOF LF to be only one.
* Do not fix them all at once otherwise the CL would be too large.
TBR=jamiewalch@chromium.org
BUG=105108
TEST=
Review URL: http://codereview.chromium.org/8665013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111427 0039d316-1c4b-4281-b951-d872f2087c98
Chrome sync is dependent on other areas of chrome, and patches committed to
these areas could potentially break sync. In the past, we have seen
sync integration test failures caused by patches to net, jingle and base.
This patch adds a PRESUBMIT.py file to each of these directories, that
will result the sync integration tests being run on any code that
touches these directories as part of their try runs.
BUG=70311
TEST=modify something under base, net or jingle and do a "git try" or "gcl try"
Review URL: http://codereview.chromium.org/6624086
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77242 0039d316-1c4b-4281-b951-d872f2087c98