Commit Graph

383 Commits

Author SHA1 Message Date
3795376ba1 replace NtpTime->Clock with Clock->NtpTime dependency
BUG=None

Review-Url: https://codereview.webrtc.org/2393723004
Cr-Commit-Position: refs/heads/master@{#16519}
2017-02-09 19:15:25 +00:00
9aa3f0a200 Reland of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2657563002/ )
Reason for revert:
Starting to work on a fix (it seems that there are third_party dependencies that depends on the path to the webrtc.gni file)

Original issue's description:
> Revert of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2651543003/ )
>
> Reason for revert:
> This was causing the following failure: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/838/steps/generate_build_files/logs/stdio
>
> Original issue's description:
> > Moving webrtc.gni up one level from build/
> >
> > BUG=webrtc:7030
> >
> > Review-Url: https://codereview.webrtc.org/2651543003
> > Cr-Commit-Position: refs/heads/master@{#16241}
> > Committed: 35a32700fc
>
> TBR=kjellander@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7030
>
> Review-Url: https://codereview.webrtc.org/2657563002
> Cr-Commit-Position: refs/heads/master@{#16244}
> Committed: 69dc7dbe24

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7030

Review-Url: https://codereview.webrtc.org/2654773002
Cr-Commit-Position: refs/heads/master@{#16247}
2017-01-24 14:58:22 +00:00
69dc7dbe24 Revert of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2651543003/ )
Reason for revert:
This was causing the following failure: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/838/steps/generate_build_files/logs/stdio

Original issue's description:
> Moving webrtc.gni up one level from build/
>
> BUG=webrtc:7030
>
> Review-Url: https://codereview.webrtc.org/2651543003
> Cr-Commit-Position: refs/heads/master@{#16241}
> Committed: 35a32700fc

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7030

Review-Url: https://codereview.webrtc.org/2657563002
Cr-Commit-Position: refs/heads/master@{#16244}
2017-01-24 13:14:35 +00:00
35a32700fc Moving webrtc.gni up one level from build/
BUG=webrtc:7030

Review-Url: https://codereview.webrtc.org/2651543003
Cr-Commit-Position: refs/heads/master@{#16241}
2017-01-24 12:49:35 +00:00
62ffe9a339 Reland of Delete unused code from systeminfo. (patchset #1 id:1 of https://codereview.webrtc.org/2584563004/ )
Reason for revert:
Relanding as downstream has been fixed.

Original issue's description:
> Revert of Delete unused code from systeminfo. (patchset #3 id:40001 of https://codereview.webrtc.org/2578323005/ )
>
> Reason for revert:
> Breaks downstream build.
>
> Original issue's description:
> > Delete unused code from systeminfo.
> >
> > BUG=webrtc:6906
> >
> > Review-Url: https://codereview.webrtc.org/2578323005
> > Cr-Commit-Position: refs/heads/master@{#15655}
> > Committed: 617ca316e9
>
> TBR=perkj@webrtc.org,kthelgason@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> BUG=webrtc:6906
>
> Review-Url: https://codereview.webrtc.org/2584563004 .
> Cr-Commit-Position: refs/heads/master@{#15660}
> Committed: ffb865f3e0

TBR=perkj@webrtc.org,skvlad@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6906

Review-Url: https://codereview.webrtc.org/2614693002
Cr-Commit-Position: refs/heads/master@{#15956}
2017-01-09 09:22:16 +00:00
c7c26a0e64 Reland of place basictypes.h with stdint.h for int_t types. (patchset #1 id:1 of https://codereview.webrtc.org/2603203003/ )
Reason for revert:
Doing a reland where systeminfo.cc includes basictypes.h so that CPU_X86 etc. are defined when they are checked/used.

Original issue's description:
> Revert of Replace basictypes.h with stdint.h for int_t types. (patchset #1 id:1 of https://codereview.webrtc.org/2604043002/ )
>
> Reason for revert:
> Very likely cause of Chromium import bot breakage (unused function '__cpuid'), TBD why.
>
> Original issue's description:
> > Replace basictypes.h with stdint.h for int_t types.
> >
> > Removes basictypes.h for types that only makes use of it for fixed-size-int
> > typedefs and replaces it with stdint.h.
> >
> > BUG=webrtc:6853
> > R=tommi@webrtc.org
> >
> > Review-Url: https://codereview.webrtc.org/2604043002
> > Cr-Commit-Position: refs/heads/master@{#15867}
> > Committed: 7fd1a75300
>
> TBR=tommi@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6853
>
> Review-Url: https://codereview.webrtc.org/2603203003
> Cr-Commit-Position: refs/heads/master@{#15869}
> Committed: 7eb0e23bcf

BUG=webrtc:6853
TBR=tommi@webrtc.org

Review-Url: https://codereview.webrtc.org/2609783002
Cr-Commit-Position: refs/heads/master@{#15873}
2017-01-02 16:42:32 +00:00
7eb0e23bcf Revert of Replace basictypes.h with stdint.h for int_t types. (patchset #1 id:1 of https://codereview.webrtc.org/2604043002/ )
Reason for revert:
Very likely cause of Chromium import bot breakage (unused function '__cpuid'), TBD why.

Original issue's description:
> Replace basictypes.h with stdint.h for int_t types.
>
> Removes basictypes.h for types that only makes use of it for fixed-size-int
> typedefs and replaces it with stdint.h.
>
> BUG=webrtc:6853
> R=tommi@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2604043002
> Cr-Commit-Position: refs/heads/master@{#15867}
> Committed: 7fd1a75300

TBR=tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6853

Review-Url: https://codereview.webrtc.org/2603203003
Cr-Commit-Position: refs/heads/master@{#15869}
2017-01-02 15:32:25 +00:00
7fd1a75300 Replace basictypes.h with stdint.h for int_t types.
Removes basictypes.h for types that only makes use of it for fixed-size-int
typedefs and replaces it with stdint.h.

BUG=webrtc:6853
R=tommi@webrtc.org

Review-Url: https://codereview.webrtc.org/2604043002
Cr-Commit-Position: refs/heads/master@{#15867}
2017-01-02 14:58:46 +00:00
fe50b4d750 Make class of static functions in rtp_to_ntp.h:
- UpdateRtcpList
- RtpToNtp

class RtpToNtpEstimator
- UpdateMeasurements
- Estimate

List with rtcp measurements is now private.

BUG=none

Review-Url: https://codereview.webrtc.org/2574133003
Cr-Commit-Position: refs/heads/master@{#15762}
2016-12-22 15:53:51 +00:00
ffb865f3e0 Revert of Delete unused code from systeminfo. (patchset #3 id:40001 of https://codereview.webrtc.org/2578323005/ )
Reason for revert:
Breaks downstream build.

Original issue's description:
> Delete unused code from systeminfo.
>
> BUG=webrtc:6906
>
> Review-Url: https://codereview.webrtc.org/2578323005
> Cr-Commit-Position: refs/heads/master@{#15655}
> Committed: 617ca316e9

TBR=perkj@webrtc.org,kthelgason@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6906

Review-Url: https://codereview.webrtc.org/2584563004 .
Cr-Commit-Position: refs/heads/master@{#15660}
2016-12-17 00:48:28 +00:00
617ca316e9 Delete unused code from systeminfo.
BUG=webrtc:6906

Review-Url: https://codereview.webrtc.org/2578323005
Cr-Commit-Position: refs/heads/master@{#15655}
2016-12-16 14:07:03 +00:00
43c5a974b4 Delete stl_util.h. Unused since cl https://codereview.webrtc.org/2447103002
BUG=None

Review-Url: https://codereview.webrtc.org/2570833002
Cr-Commit-Position: refs/heads/master@{#15590}
2016-12-14 08:07:44 +00:00
c9badd52c8 Add comment to metrics.h
BUG=None
NOTRY=True
TBR=rkaplow@chromium.org,asapersson@webrtc.org

Review-Url: https://codereview.webrtc.org/2557693002
Cr-Commit-Position: refs/heads/master@{#15439}
2016-12-06 11:59:08 +00:00
fa07b910a9 Delete unused spreadsort implementation.
BUG=None

Review-Url: https://codereview.webrtc.org/2546863003
Cr-Commit-Position: refs/heads/master@{#15417}
2016-12-05 11:03:26 +00:00
f29e05d774 Add linearly spaced counting histograms
This change adds HistogramFactoryGetCountsLinear and
RTC_HISTOGRAM_COUNTS_LINEAR. Note that the default implementation of
HistogramFactoryGetCounts in metrics_default.cc also provides a
linearly spaced histogram, while the Chrome UMA implementation
provides exponentially spaced buckets.

BUG=none

Review-Url: https://codereview.webrtc.org/2548463002
Cr-Commit-Position: refs/heads/master@{#15367}
2016-12-01 17:58:53 +00:00
26bddb92f0 Replace test_support_main by test_main and get rid of test_support_main_threaded_mac
test_support_main_threaded_mac doesn't seem to be used. It looks like it was
last used about a year and a half ago, and was removed in
https://webrtc-codereview.appspot.com/55379004

BUG=webrtc:6424
R=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2540693002
Cr-Commit-Position: refs/heads/master@{#15332}
2016-11-30 14:12:10 +00:00
1731c9cb4c Use swap instead of copy in RtcHistogram::GetAndReset.
BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/2268323002
Cr-Commit-Position: refs/heads/master@{#15311}
2016-11-30 08:29:17 +00:00
af476c737f RTC_[D]CHECK_op: Remove "u" suffix on integer constants
There's no longer any need to make the two arguments have the same
signedness, so we can drop the "u" suffix on literal integer
arguments.

NOPRESUBMIT=true
BUG=webrtc:6645

Review-Url: https://codereview.webrtc.org/2535593002
Cr-Commit-Position: refs/heads/master@{#15280}
2016-11-28 23:21:51 +00:00
b7e7b49551 Use NtpTime in RtcpMeasurement instead of uint sec/uint frac.
BUG=webrtc:6579

Review-Url: https://codereview.webrtc.org/2435053004
Cr-Commit-Position: refs/heads/master@{#15125}
2016-11-17 10:27:20 +00:00
b4af3d673a Remove all references to GYP
Remove all .gyp and .gypi files.
Remove entries from OWNERS files for *.isolate, *.gyp, *.gypi
Remove unused scripts in webrtc/build.

BUG=webrtc:6323
R=henrika@webrtc.org, phoglund@webrtc.org

Review URL: https://codereview.webrtc.org/2509703002 .

Cr-Commit-Position: refs/heads/master@{#15107}
2016-11-16 19:11:38 +00:00
de9e5fffa2 Add stats for frequency offset when converting RTP timestamp to NTP time.
- Add histogram: "WebRTC.Video.RtpToNtpFreqOffsetInKhz"

  The absolute value of the difference between the estimated frequency during RTP timestamp to NTP time conversion and the actual value (i.e. 90 kHz) is measured per received video frame. The max offset during 40 second intervals is stored. The average of these stored offsets per received video stream is recorded when a stream is removed.

Updated rtp_to_ntp.cc:
- Add validation for only inserting newer RTCP sender reports to the rtcp list.

- Move calculation of frequency/offset (from RTP/NTP timestamp pairs) to UpdateRtcpList. Calculated when a new RTCP SR in inserted (and not in RtpToNtpMs per packet).

BUG=webrtc:6579

Review-Url: https://codereview.webrtc.org/2385763002
Cr-Commit-Position: refs/heads/master@{#14891}
2016-11-02 14:14:10 +00:00
c4d2dc4e02 Delete DataLog abstraction, which was almost unused.
Configuration with rtc_enable_data_logging = true was broken in cl
https://codereview.webrtc.org/2054373002/ (which deleted the
FileWrapper::WriteText method), and apparently noone noticed.

BUG=None

Review-Url: https://codereview.webrtc.org/2439473002
Cr-Commit-Position: refs/heads/master@{#14719}
2016-10-21 08:53:01 +00:00
e40a7ee007 GN: Exclude suppressions of Chromium Clang warnings for Chromium builds.
These suppressions are causing GN errors when Chromium targets are depending
directly on WebRTC targets (needed for https://codereview.chromium.org/2413103004)

BUG=webrtc:4256
NOTRY=True

Review-Url: https://codereview.webrtc.org/2408133008
Cr-Commit-Position: refs/heads/master@{#14644}
2016-10-17 06:56:20 +00:00
de3f844a20 Fixed flaky clock_unittest by using relative comparison.
ClockTest.NtpTime was checking that the two methods for getting the
system time are returning a value that is within a fixed error margin
(100 ms) of each other. Unfortunately, even such a wide margin was
sometimes exceeded on heavily loaded machines
(https://build.chromium.org/p/client.webrtc/builders/Mac%20Asan/builds/9235/steps/system_wrappers_unittests/logs/stdio).

This CL changes the test to sandwich clock->CurrentNtp() between
clock->CurrentNtpTimeInMilliseconds(). This way the test will pass no
matter how much time elapses between the two method calls, as long as
the clock is monotonic.

Repeated test runs showed that there may be 1 ms worth of rounding error
between the two methods of getting time, so we have to allow that.

BUG=None.

Review-Url: https://codereview.webrtc.org/2393063002
Cr-Commit-Position: refs/heads/master@{#14520}
2016-10-05 08:55:10 +00:00
ac9f876bc0 Sort #includes that got unsorted when gmock.h and gtest.h moved to webrtc/test/
gmock.h and gtest.h were moved (or rather, got wrappers so that we
could put some icky compatibility hacks in one place instead of 500)
in this CL: https://codereview.webrtc.org/2358993004/

NOPRESUBMIT=true
BUG=webrtc:6398

Review-Url: https://codereview.webrtc.org/2381013002
Cr-Commit-Position: refs/heads/master@{#14464}
2016-10-01 05:29:53 +00:00
3cc47ebd2d Add sanity check for decreasing RTP timestamp in RtpToNtpMs.
The capture time for a frame (capture_ms) is set later (in ViEEncoder::IncomingCapturedFrame) than the timestamp.
Could potentially cause the RTP timestamp in consecutive RTCP SR to decrease.
Example:
// Frame1 46371: timestamp:2732, capture_ms:46373, rtcp SR ms: 46423 -> estimated current RTP timestamp:2732+(46423-46373)*90 = 7232
// Frame2 46404: timestamp:5702, capture_ms:46412, rtcp SR ms: 46428 -> estimated current RTP timestamp:5702+(46428-46412)*90 = 7142
// Diff:  33 ms:          33 ms,            39 ms,              5 ms

BUG=b/31154867

Review-Url: https://codereview.webrtc.org/2354843003
Cr-Commit-Position: refs/heads/master@{#14454}
2016-09-30 10:16:26 +00:00
77eab70470 Enable the -Wundef warning for clang
NOPRESUBMIT=true
BUG=webrtc:6398

Review-Url: https://codereview.webrtc.org/2358993004
Cr-Commit-Position: refs/heads/master@{#14425}
2016-09-29 00:42:08 +00:00
b62dbbe985 GN: Change rtc_source_set targets --> rtc_static_library
This changes most non-test related rtc_source_set targets to be
rtc_static_library instead. Targets without any .cc files are excluded.
This should bring back the build behavior we used to have with GYP
(i.e. same symbols exported in the libjingle_peerconnection.a file, which
are used by some downstream projects).

After doing an Android build with these changes:
$ nm --defined-only -g -C out/Release/lib.unstripped/libjingle_peerconnection_so.so | grep -i createpeerconnectionf
00077c51 T Java_org_webrtc_PeerConnectionFactory_nativeCreatePeerConnectionFactory
$ nm --defined-only -g -C out/Release/obj/webrtc/api/libjingle_peerconnection.a | grep -i createpeerconnectionf
00000001 T webrtc::CreatePeerConnectionFactory(rtc::Thread*, rtc::Thread*, rtc::Thread*, webrtc::AudioDeviceModule*, cricket::WebRtcVideoEncoderFactory*, cricket::WebRtcVideoDecoderFactory*)
00000001 T webrtc::CreatePeerConnectionFactory()

See https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/cookbook.md#Note-on-static-libraries
for more details on this.

NOTICE: This should be further cleaned up in the future, to reduce
binary bloat and unnecessary linking time. Right now it's more
important to restore the desired build output though.

BUG=webrtc:6410, chromium:630755

Review-Url: https://codereview.webrtc.org/2361623004
Cr-Commit-Position: refs/heads/master@{#14364}
2016-09-23 07:38:58 +00:00
519da00bb3 Roll chromium_revision cf9457edb7..cede888c27 (416297:419407)
This is a reland of https://codereview.webrtc.org/2348133003/ which
was reverted.
This CL adds a copy of Chromium's build/filename_rules.gypi into
webrtc/build and includes it in webrtc/build/common.gypi.
This was needed since the file was dropped in crrev.com/8c0eb8ed76
The revision of filename_rules.gypi being added is:
5b20e75e68/build/filename_rules.gypi

Change log: cf9457edb7..cede888c27
Full diff: cf9457edb7..cede888c27

Changed dependencies:
* src/buildtools: adb8bf4e8f..6115afa0ea
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/bc61769e49..ed6c5d3910
* src/third_party/ffmpeg: 35740fc7b7..3c7a098821
* src/third_party/libFuzzer/src: 96e97b48e8..eb9b8b0366
* src/third_party/libvpx/source/libvpx: e66cd132f0..4282d29355
DEPS diff: cf9457edb7..cede888c27/DEPS

Clang version changed 280106:280836
Details: cf9457edb7..cede888c27/tools/clang/scripts/update.py

NOTRY=True
TBR=marpan@webrtc.org,
BUG=None

Review-Url: https://codereview.webrtc.org/2351163002
Cr-Commit-Position: refs/heads/master@{#14310}
2016-09-20 20:23:12 +00:00
5b980d1c97 Revert of Roll chromium_revision cf9457edb7..cede888c27 (416297:419407) (patchset #3 id:40001 of https://codereview.webrtc.org/2348133003/ )
Reason for revert:
Reverts a large number of tests downstream, will need more investigation before relanding.

Original issue's description:
> Roll chromium_revision cf9457edb7..cede888c27 (416297:419407)
>
> Change log: cf9457edb7..cede888c27
> Full diff: cf9457edb7..cede888c27
>
> Changed dependencies:
> * src/buildtools: adb8bf4e8f..6115afa0ea
> * src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/bc61769e49..ed6c5d3910
> * src/third_party/ffmpeg: 35740fc7b7..3c7a098821
> * src/third_party/libFuzzer/src: 96e97b48e8..eb9b8b0366
> * src/third_party/libvpx/source/libvpx: e66cd132f0..4282d29355
> DEPS diff: cf9457edb7..cede888c27/DEPS
>
> Clang version changed 280106:280836
> Details: cf9457edb7..cede888c27/tools/clang/scripts/update.py
>
> NOTRY=True
> TBR=marpan@webrtc.org,
> BUG=None
>
> Committed: https://crrev.com/afef413cc481dc4a28dff8bdf39cbbc59dfd255e
> Cr-Commit-Position: refs/heads/master@{#14282}

TBR=ehmaldonado@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None

Review-Url: https://codereview.webrtc.org/2348203002
Cr-Commit-Position: refs/heads/master@{#14284}
2016-09-19 08:55:21 +00:00
afef413cc4 Roll chromium_revision cf9457edb7..cede888c27 (416297:419407)
Change log: cf9457edb7..cede888c27
Full diff: cf9457edb7..cede888c27

Changed dependencies:
* src/buildtools: adb8bf4e8f..6115afa0ea
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/bc61769e49..ed6c5d3910
* src/third_party/ffmpeg: 35740fc7b7..3c7a098821
* src/third_party/libFuzzer/src: 96e97b48e8..eb9b8b0366
* src/third_party/libvpx/source/libvpx: e66cd132f0..4282d29355
DEPS diff: cf9457edb7..cede888c27/DEPS

Clang version changed 280106:280836
Details: cf9457edb7..cede888c27/tools/clang/scripts/update.py

NOTRY=True
TBR=marpan@webrtc.org,
BUG=None

Review-Url: https://codereview.webrtc.org/2348133003
Cr-Commit-Position: refs/heads/master@{#14282}
2016-09-19 06:59:03 +00:00
71b8393b6a Remove name parameter from HistogramAdd function.
This name is only used for a DCHECK. Having it as a parameter leads to unnecessary string copying even on release builds.

This CL instead adds a GetHistogramName function that is only called on debug builds.

Checking if pointer is null is also moved outside HistogramAdd function. Having it there is confusing since Chromium implementation doesn't have it there.

BUG=webrtc:6329

Review-Url: https://codereview.webrtc.org/2337883003
Cr-Commit-Position: refs/heads/master@{#14263}
2016-09-16 13:56:20 +00:00
17f008bf33 GYP: Remove targets inside include_tests==1 that are converted to GN.
Remove a large number of targets that are no longer built, to reduce maintenance.
Only targets that have a GN version were removed.

BUG=webrtc:6323
NOTRY=True
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2340773003
Cr-Commit-Position: refs/heads/master@{#14231}
2016-09-15 11:57:39 +00:00
1d02d3e5e6 Remove RTC_LOGGED_* macro.
BUG=

Review-Url: https://codereview.webrtc.org/2326843003
Cr-Commit-Position: refs/heads/master@{#14174}
2016-09-10 05:40:34 +00:00
a41c13e6a2 OWNERS: Make everyone able to change *.gn,*.gni files.
Project-wide change to make it possible for all team members
to do changes to GN files.

NOTRY=True
R=kwiberg@webrtc.org
TBR=henrika@webrtc.org

Review URL: https://codereview.webrtc.org/2320043002 .

Cr-Commit-Position: refs/heads/master@{#14163}
2016-09-09 12:51:48 +00:00
2a5f371df3 Make UMA stats creation available in the Java interface.
Only has counts stats right now but enumeration stats can easily be added in the future if needed.

BUG=webrtc:6313

Review-Url: https://codereview.webrtc.org/2320473002
Cr-Commit-Position: refs/heads/master@{#14146}
2016-09-09 07:11:54 +00:00
e9cc686293 GN Templates: Move common_inherited_config to the template.
Remove common_inherited_config from the targets and add it to the
template instead.

BUG=webrtc:6187
NOTRY=True

Review-Url: https://codereview.webrtc.org/2311843002
Cr-Commit-Position: refs/heads/master@{#14069}
2016-09-05 13:10:23 +00:00
7a2ce0b738 GN Templates: Move common_config to the template.
Remove common_config from the targets' config and add
it to the template instead.

BUG=webrtc:6187
NOTRY=True

Review-Url: https://codereview.webrtc.org/2300413002
Cr-Commit-Position: refs/heads/master@{#14063}
2016-09-05 08:35:48 +00:00
38a2132b02 GN: Introduce templates.
Defines the rtc_executable, rtc_source_set, rtc_test and
rtc_static_library templates.

These templates provide no functionality yet, but will enable common
configuration to be introduced, avoiding repetition in every target

Changes summary:
- Prepend rtc_ to test, source_set, executable and static_library targets
- Change "configs -= [" to "suppressed_configs += ["
- Include webrtc/build/webrtc.gni where it wasn't included yet
- Delete import("//testing/test.gni"), since rtc_test makes it unnecessary.

BUG=webrtc:6187
TBR=henrik.lundin@webrtc.org,tommi@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2301053002
Cr-Commit-Position: refs/heads/master@{#14043}
2016-09-02 11:10:41 +00:00
3e3b6f2805 Remove Chromium Clang warnings only on Windows.
A previous CL (https://codereview.webrtc.org/2281513002) broke Windows, Mac and Linux bots in WebRTC's Chromium FYI, by suppressing these warnings when they hadn't been set.

This CL fixes it suppressing warnings only on Windows.

Example failures:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/6540
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/16588
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/9655

BUG=webrtc:6255
NOTRY=True

Review-Url: https://codereview.webrtc.org/2284333002
Cr-Commit-Position: refs/heads/master@{#13951}
2016-08-29 09:56:10 +00:00
d02fe4b53b GN: Fix windows clang errors. Attempt 2.
BUG=webrtc:6255
NOTRY=True

Review-Url: https://codereview.webrtc.org/2281513002
Cr-Commit-Position: refs/heads/master@{#13942}
2016-08-26 20:31:34 +00:00
1e8ed4a801 Replace calls to assert() with RTC_DCHECK_*() in .c code
We have RTC_CHECK and RTC_DCHECK for C now, so we should use it. It's
one fewer difference between our C and C++ code.

NOPRESUBMIT=true

Review-Url: https://codereview.webrtc.org/2274083002
Cr-Commit-Position: refs/heads/master@{#13930}
2016-08-26 11:33:41 +00:00
d8dd190a08 GN: Fix test_support_unittests and MIPS compile issue.
Move the webrtc/test/test_support/metrics sources into
test_support[_unittests] targets.
This is essentially reverting https://webrtc-codereview.appspot.com/5789004
and moving these sources back to the right target.

Add missing foreman_cif.yuv resource needed for these tests.

For MIPS, a compile error was surfacing for logcat_trace_context.h when
flipping bot to GN, which was fixed.

BUG=webrtc:5949
NOTRY=True

Review-Url: https://codereview.webrtc.org/2267113002
Cr-Commit-Position: refs/heads/master@{#13860}
2016-08-23 11:52:19 +00:00
714dd4e532 GN: Update tests to have the correct shard timeout value on Android.
TBR=mflodman@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2231413002
Cr-Commit-Position: refs/heads/master@{#13741}
2016-08-15 09:29:19 +00:00
84cab205f5 UMA log for audio_device Init and Start(Playout|Recording). Make Init return a more specific error code, if possible.
BUG=webrtc:5761
R=asapersson@webrtc.org, henrika@webrtc.org

Review URL: https://codereview.webrtc.org/2103863004 .

Cr-Commit-Position: refs/heads/master@{#13361}
2016-07-01 11:35:31 +00:00
a6219cc3ef FileWrapper[Impl] modifications and actually remove the "Impl" class.
This is a somewhat involved refactoring of this class. Here's an overview of the changes:

* FileWrapper can now be used as a regular class and instances allocated on the stack.
* The type now has support for move semantics and copy isn't allowed.
* New public ctor with FILE* that can be used instead of OpenFromFileHandle.
* New static Open() method.  The intent of this is to allow opening a file and getting back a FileWrapper instance.  Using this method instead of Create(), will allow us in the future to make the FILE* member pointer, to be const and simplify threading (get rid of the lock).
* Rename the Open() method to is_open() and make it inline.
* The FileWrapper interface is no longer a pure virtual interface.  There's only one implementation so there's no need to go through a vtable for everything.
* Functionality offered by the class, is now reduced.  No support for looping (not clear if that was actually useful to users of that flag), no need to implement the 'read_only_' functionality in the class, since file APIs implement that already, no support for *not* managing the file handle (this wasn't used).  OpenFromFileHandle always "manages" the file.
* Delete the unused WriteText() method and don't support opening files in text mode.  Text mode is only different on Windows and on Windows it translates \n to \r\n, which means that files such as log files, could have a slightly different format on Windows than other platforms.  Besides, tools on Windows can handle UNIX line endings.
* Remove FileName(), change Trace code to manage its own path.
* Rename id_ member variable to file_.
* Removed the open_ member variable since the same functionality can be gotten from just checking the file pointer.
* Don't call CloseFile inside of Write.  Write shouldn't be changing the state of the class beyond just attempting to write.
* Remove concept of looping from FileWrapper and never close inside of Read()
* Changed stream base classes to inherit from a common base class instead of both defining the Rewind method. Ultimately, Id' like to remove these interfaces and just have FileWrapper.
* Remove read_only param from OpenFromFileHandle
* Renamed size_in_bytes_ to position_, since it gets set to 0 when Rewind() is called (and the size actually does not change).
* Switch out rw lock for CriticalSection. The r/w lock was only used for reading when checking the open_ flag.

BUG=

Review-Url: https://codereview.webrtc.org/2054373002
Cr-Commit-Position: refs/heads/master@{#13155}
2016-06-15 17:30:18 +00:00
aff499c9bf GN: Fix errors in rtc_include_tests conditions
https://codereview.webrtc.org/2043873003 forgot to flip the
logic.

BUG=webrtc:5949
TBR=phoglund@webrtc.org
NOTRY=True

Review URL: https://codereview.webrtc.org/2037403003 .

Cr-Commit-Position: refs/heads/master@{#13055}
2016-06-06 21:04:16 +00:00
e72db17556 GN: Use rtc_include_tests variable to exclude tests.
This is closer to what the GYP build does, and is more readable.

BUG=webrtc:5949
TBR=phoglund@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2043873003
Cr-Commit-Position: refs/heads/master@{#13054}
2016-06-06 21:00:09 +00:00
dc0dbad5e5 GN: Exclude tools and tests in Chromium builds.
BUG=webrtc:5949
TBR=guidou@webrtc.org
NOTRY=True

Review URL: https://codereview.webrtc.org/2038493002 .

Cr-Commit-Position: refs/heads/master@{#13015}
2016-06-02 11:29:13 +00:00
729b21f97f Add clz functions (Count number of Leading Zero bits), 32-and 64-bit variants
Using __builtin_clz on gcc/clang, and a fallback implementation
otherwise.

Also redefine WebRtcSpl_GetSizeInBits(x) as simply 32 - clz32(x).

BUG=chromium:601787

Review-Url: https://codereview.webrtc.org/2014023002
Cr-Commit-Position: refs/heads/master@{#13014}
2016-06-02 11:02:22 +00:00