32 Commits

Author SHA1 Message Date
henrikg
71df77bba0 Remove overridden basictypes.h.
* Use (u)intxx_t for (u)intxx typedefs for all platforms.
* Always include stdint.h.
* Add RTC_ prefix to ARCH_XXX macros.

Chromium did the (u)intxx_t change in
https://codereview.chromium.org/117323010 and
https://codereview.chromium.org/639293007

BUG=chromium:468375
TBR=perkj@webrtc.org (for trivial talk/* changes)
NOTRY=true
NOPRESUBMIT=true

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

Cr-Commit-Position: refs/heads/master@{#9983}
2015-09-18 08:48:39 +00:00
henrikg
97395b64ca Remove dependency on Chromium's base/logging.h in diagnostic_logging.h.
Depends on https://codereview.webrtc.org/1335923002/

BUG=chromium:468375

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

Cr-Commit-Position: refs/heads/master@{#9965}
2015-09-17 09:06:14 +00:00
henrikg
91d6edef35 Add RTC_ prefix to (D)CHECKs and related macros.
We must remove dependency on Chromium, i.e. we can't use Chromium's base/logging.h. That means we need to define these macros in WebRTC also when doing Chromium builds. And this causes redefinition.

Alternative solutions:
* Check if we already have defined e.g. CHECK, and don't define them in that case. This makes us depend on include order in Chromium, which is not acceptable.
* Don't allow using the macros in WebRTC headers. Error prone since if someone adds it there by mistake it may compile fine, but later break if a header in added or order is changed in Chromium. That will be confusing and hard to enforce.
* Ensure that headers that are included by an embedder don't include our macros. This would require some heavy refactoring to be maintainable and enforcable.
* Changes in Chromium for this is obviously not an option.

BUG=chromium:468375
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#9964}
2015-09-17 07:24:51 +00:00
henrikg
384194369b Consolidate constructormagic macros with Chromium version and remove Chromium override.
Part of work removing dependency on Chromium's base.

Only adds "= delete". From https://codereview.chromium.org/1151443003 :
"This will guarantee the error to be at compile time, and not rely on the call visibility (private)."

In consequence of that change, fixed an illegal copy and removed a bunch of unused variables.

Depends on https://codereview.webrtc.org/1345433002/

BUG=chromium:468375
(in particular comment #37)
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#9954}
2015-09-16 13:33:25 +00:00
henrikg
3c089d751e Add RTC_ prefix to contructormagic macros.
We must remove dependency on Chromium, i.e. we can't use Chromium's base/logging.h. That means we need to define these macros in WebRTC also when doing Chromium builds. And this causes redefinition.

* DISALLOW_ASSIGN -> RTC_DISALLOW_ASSIGN
* DISALLOW_COPY_AND_ASSIGN -> RTC_DISALLOW_COPY_AND_ASSIGN
* DISALLOW_IMPLICIT_CONSTRUCTORS -> RTC_DISALLOW_IMPLICIT_CONSTRUCTORS

Related CL: https://codereview.webrtc.org/1335923002/

BUG=chromium:468375
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#9953}
2015-09-16 12:37:52 +00:00
henrikg
8dba03d6d7 Temporarily define RTC_DISALLOW_ASSIGN in Chromium constructormagic override.
The override will be removed shortly in https://codereview.webrtc.org/1342543004/ This is to make the FYI bots happy meanwhile.

BUG=chromium:468375
TBR=tommi@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#9951}
2015-09-16 11:45:31 +00:00
tommi
9a78d22822 Revert of Consolidate constructormagic macros with Chromium version and remove Chromium override. (patchset #4 id:60001 of https://codereview.webrtc.org/1316363005/ )
Reason for revert:
Had to revert since FYI bots stopped compiling.  Example failure:

[94/9470] CXX obj\third_party\webrtc\modules\video_processing\main\source\video_processing_sse2.content_analysis_sse2.obj
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\third_party\webrtc\modules\video_coding\codecs\h264\webrtc_h264.h264.obj.rsp /c ..\..\third_party\webrtc\modules\video_coding\codecs\h264\h264.cc /Foobj\third_party\webrtc\modules\video_coding\codecs\h264\webrtc_h264.h264.obj /Fdobj\third_party\webrtc\modules\webrtc_h264.cc.pdb
e:\b\build\slave\win\build\src\base\macros.h(28) : error C2220: warning treated as error - no 'object' file generated
e:\b\build\slave\win\build\src\base\macros.h(28) : warning C4005: 'DISALLOW_COPY_AND_ASSIGN' : macro redefinition
        e:\b\build\slave\win\build\src\third_party\webrtc\base\constructormagic.h(27) : see previous definition of 'DISALLOW_COPY_AND_ASSIGN'
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\third_party\webrtc\base\rtc_base_approved.bitbuffer.obj.rsp /c ..\..\third_party\webrtc\base\bitbuffer.cc /Foobj\third_party\webrtc\base\rtc_base_approved.bitbuffer.obj /Fdobj\third_party\webrtc\base\rtc_base_approved.cc.pdb
e:\b\build\slave\win\build\src\base\macros.h(28) : error C2220: warning treated as error - no 'object' file generated
e:\b\build\slave\win\build\src\base\macros.h(28) : warning C4005: 'DISALLOW_COPY_AND_ASSIGN' : macro redefinition
        e:\b\build\slave\win\build\src\third_party\webrtc\base\constructormagic.h(27) : see previous definition of 'DISALLOW_COPY_AND_ASSIGN'
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\third_party\webrtc\modules\audio_processing\logging\audio_processing.aec_logging_file_handling.obj.rsp /c ..\..\third_party\webrtc\modules\audio_processing\logging\aec_logging_file_handling.cc /Foobj\third_party\webrtc\modules\audio_processing\logging\audio_processing.aec_logging_file_handling.obj /Fdobj\third_party\webrtc\modules\audio_processing.cc.pdb
e:\b\build\slave\win\build\src\base\macros.h(28) : error C2220: warning treated as error - no 'object' file generated
e:\b\build\slave\win\build\src\base\macros.h(28) : warning C4005: 'DISALLOW_COPY_AND_ASSIGN' : macro redefinition
        e:\b\build\slave\win\build\src\third_party\webrtc\base\constructormagic.h(27) : see previous definition of 'DISALLOW_COPY_AND_ASSIGN'
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "E:\b\depot_tools\win_toolchain\vs2013_files\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\third_party\webrtc\modules\audio_processing\beamformer\audio_processing.nonlinear_beamformer.obj.rsp /c ..\..\third_party\webrtc\modules\audio_processing\beamformer\nonlinear_beamformer.cc /Foobj\third_party\webrtc\modules\audio_processing\beamformer\audio_processing.nonlinear_beamformer.obj /Fdobj\third_party\webrtc\modules\audio_processing.cc.pdb
e:\b\build\slave\win\build\src\base\macros.h(28) : error C2220: warning treated as error - no 'object' file generated
e:\b\build\slave\win\build\src\base\macros.h(28) : warning C4005: 'DISALLOW_COPY_AND_ASSIGN' : macro redefinition
        e:\b\build\slave\win\build\src\third_party\webrtc\base\constructormagic.h(27) : see previous definition of 'DISALLOW_COPY_AND_ASSIGN'

Original issue's description:
> Consolidate constructormagic macros with Chromium version and remove Chromium override.
>
> Part of work removing dependency on Chromium's base.
>
> Only adds "= delete". From https://codereview.chromium.org/1151443003 :
> "This will guarantee the error to be at compile time, and not rely on the call visibility (private)."
>
> In consequence of that change, fixed an illegal copy and removed a bunch of unused variables.
>
> BUG=chromium:468375 (in particular comment #37)
> NOTRY=true
>
> Committed: https://crrev.com/0de8ff488d92e0bc6b7b65662898ff5e955cda93
> Cr-Commit-Position: refs/heads/master@{#9913}

TBR=andrew@webrtc.org,henrikg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:468375 (in particular comment #37)

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

Cr-Commit-Position: refs/heads/master@{#9914}
2015-09-10 08:42:03 +00:00
henrikg
0de8ff488d Consolidate constructormagic macros with Chromium version and remove Chromium override.
Part of work removing dependency on Chromium's base.

Only adds "= delete". From https://codereview.chromium.org/1151443003 :
"This will guarantee the error to be at compile time, and not rely on the call visibility (private)."

In consequence of that change, fixed an illegal copy and removed a bunch of unused variables.

BUG=chromium:468375 (in particular comment #37)
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#9913}
2015-09-10 06:43:49 +00:00
henrikg
3dfe5d3d41 Remove arraysize.h gcc hack and Chromium override.
Part of work removing dependency on Chromium's base.

BUG=468375 (in particular comment #37)

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

Cr-Commit-Position: refs/heads/master@{#9880}
2015-09-08 07:57:41 +00:00
Tommi
32c2023fb6 Attempt at fixing error on the Chrome Windows FYI bots.
It looks like our basictypes.h file in the overrides folder is including the file it is overriding due to include path precedence (Chrome's is lower than WebRTCs).

TBR=henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/51909004

Cr-Commit-Position: refs/heads/master@{#9280}
2015-05-25 19:22:23 +00:00
Andrew MacDonald
469c2c04aa Make Config::default_value leak instead of having an exit-time destructor.
I wanted to use Config::Get in Chromium code, but it triggered the following
warning:
../../third_party/webrtc/common.h:89:20: error: declaration requires an exit-time destructor [-Werror,-Wexit-time-destructors]
    static const T def;
                   ^
../../third_party/webrtc/common.h:110:10: note: in instantiation of function template specialization requested here
  return default_value<T>();
         ^

I assume we don't hit this in webrtc because the warning is disabled.

This also switches to the RTC_ prefix from the deprecated LIBJINGLE_.

Needed due to this Chromium CL:
https://codereview.chromium.org/1148843004/

R=andresp@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/53459004

Cr-Commit-Position: refs/heads/master@{#9268}
2015-05-23 00:50:33 +00:00
Tommi
a4463b2b8a Further updates to fix libjingle logging.
Since libjingle log constant values decrease as severety goes up while Chrome's increase, I decided to handle the verbosity level check explicitly and convert libjingle severity over to chrome constants only when we log.
This also requires updating the unittests on the Chrome side.

BUG=chromium:401963
TBR=magjed@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/51839004

Cr-Commit-Position: refs/heads/master@{#9189}
2015-05-14 02:18:15 +00:00
Tommi
99eeee39eb Fix logging in Chrome.
The constants we were using for severities don't match Chrome's, so I added a little translation function.
A longer term fix could be to simply use the same values as in Chrome to not need the translation.
That will however be a bigger change.

BUG=chromium:401963
TBR=magjed@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/50949004

Cr-Commit-Position: refs/heads/master@{#9188}
2015-05-13 21:49:38 +00:00
Thiago Farina
ae0f0ee79e Cleanup: Remove DISALLOW_EVIL_CONSTRUCTORS macro.
Just use the less-evil version, DISALLOW_COPY_AND_ASSIGN macro.

This should help with my TODO in
https://chromium.googlesource.com/chromium/src/+/master/base/macros.h#33

Tested on Linux with the following command lines:

$ rm -rf out/
$ gn gen //out/Debug --args='is_debug=true target_cpu="x64" build_with_chromium=false'
$ ninja -C out/Debug

BUG=None
TEST=see above
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/50599004

Patch from Thiago Farina <tfarina@chromium.org>.

Cr-Commit-Position: refs/heads/master@{#8927}
2015-04-04 23:56:56 +00:00
Henrik Kjellander
722ef1fb59 Remove henrike@ from OWNERS
Since he has left the team.

R=henrike@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/48789004

Cr-Commit-Position: refs/heads/master@{#8913}
2015-04-01 15:08:49 +00:00
tommi@webrtc.org
c4709a2930 Split C++ class from macro overrides to fix Chromium build
BUG=chromium:468375
TBR=kjellander@webrtc.org,ajm@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/51409004

Cr-Commit-Position: refs/heads/master@{#8786}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8786 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-19 07:26:21 +00:00
tommi@webrtc.org
f696e49c9a Re-landing perf improvement for libjingle logging after reverting the general change.
This contains only a part of r8635 that I just reverted to unblock the roll.

TBR=perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/42259004

Cr-Commit-Position: refs/heads/master@{#8643}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8643 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 12:18:14 +00:00
tommi@webrtc.org
52130b6412 Revert 8635 "Make LS_ logging constants to match Chromium's logg..."
LibjingleLoggingTests in Chromium started failing so more thought needs to be applied here.
Would be good to get he perf improvement in though.

> Make LS_ logging constants to match Chromium's logging constants when building with Chrome.
> This was causing logging to be done at incorrect levels and filters not work as expected.
> 
> R=perkj@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/40239004

TBR=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/43649004

Cr-Commit-Position: refs/heads/master@{#8642}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8642 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-07 12:09:40 +00:00
tommi@webrtc.org
66f153f89f Make LS_ logging constants to match Chromium's logging constants when building with Chrome.
This was causing logging to be done at incorrect levels and filters not work as expected.

R=perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40239004

Cr-Commit-Position: refs/heads/master@{#8635}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8635 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 15:56:46 +00:00
aluebs@webrtc.org
30142bbe07 Add arraysize to overrides to avoid macros redefinitions in Chromium
This fixes the Webrtc in Chrome FYI bots breaking.

TBR=ajm

Review URL: https://webrtc-codereview.appspot.com/36149004

Cr-Commit-Position: refs/heads/master@{#8371}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8371 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-14 02:46:13 +00:00
andresp@webrtc.org
ff689be3c0 Use std::min and std::max instead of self-defined functions such as rtc::_min/_max.
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35079004

Cr-Commit-Position: refs/heads/master@{#8347}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8347 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-12 11:55:32 +00:00
andresp@webrtc.org
53d9012faf Clean kForever from basictypes and move it to the interfaces that actually have it.
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/33269004

Cr-Commit-Position: refs/heads/master@{#8296}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8296 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 14:19:39 +00:00
kwiberg@webrtc.org
2ebfac5649 Remove COMPILE_ASSERT and use static_assert everywhere
COMPILE_ASSERT is no longer needed now that we have C++11's
static_assert.

R=aluebs@webrtc.org, andrew@webrtc.org, hellner@chromium.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39469004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8058 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 10:51:54 +00:00
pbos@webrtc.org
e728ee03ba Remove or rename typedefs with _t prefixes.
_t prefixes are reserved for additional typenames in POSIX.

R=henrik.lundin@webrtc.org, hta@webrtc.org, stefan@webrtc.org
BUG=162

Review URL: https://webrtc-codereview.appspot.com/36559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7931 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-17 13:43:55 +00:00
henrike@webrtc.org
e387cc0d37 webrtc/overrides: add OWNERS-file.
BUG=N/A
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/27529004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7205 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 08:04:28 +00:00
pbos@webrtc.org
dc8dcb4b8c Narrower include for constructormagic.h in Chromium.
Replacing #include of "base/basictypes.h" in
overrides/webrtc/base/constructormagic.h with "base/macros.h". Our
version of constructormagic.h is not meant to include the base types,
only DISALLOW_COPY_AND_ASSIGN etc.

This fix is also a workaround for our overrides in Chromium seemingly
including the wrong things for certain webrtc targets like
audio_processing, so it looks like this #include "base/basictypes.h"
didn't include Chromium's base/basictypes.h but webrtc/base/basictypes.h
somehow, hence DISALLOW_COPY_AND_ASSIGN wasn't defined, causing the
revert in r7151.

R=henrike@webrtc.org, tommi@webrtc.org
BUG=3070
TEST=Chromium still builds locally with this change.

Review URL: https://webrtc-codereview.appspot.com/27509004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7204 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 07:44:33 +00:00
glaznev@webrtc.org
ab7073a1e8 Partial implementation of rtc::LogMessage in chromium overrides.
rtc::LogMessage::LogToDebug used in peerconnection_jni.cc.

BUG=https://crbug.com/412276
R=glaznev@webrtc.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25459004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7186 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-15 19:16:21 +00:00
henrike@webrtc.org
a148704b4b Rename webrtc/base's IS_ALIGNED macro to RTC_IS_ALIGNED to avoid conflict between webrtc/base/basictypes.h and third_party/.../vpx_codec.h.
BUG=3380
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17579005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6215 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-21 16:52:14 +00:00
pbos@webrtc.org
6aeeac95ca Fix Windows debug compile of overrides/ logging.
Compile error detected when trying to roll to chromium. Adding a cast
of base::PlatformThread::CurrentId() to base::subtle::Atomic32 to match
types in DCHECK_EQ().

See logging.cc error in:
http://build.chromium.org/p/tryserver.chromium/builders/win_chromium_compile_dbg/builds/19944/steps/compile%20%28with%20patch%29/logs/stdio

R=mflodman@webrtc.org, perkj@webrtc.org
TBR=henrike@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/17529004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6173 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-15 13:56:56 +00:00
henrike@webrtc.org
f048872e91 Adds a modified copy of talk/base to webrtc/base. It is the first step in
migrating talk/base to webrtc/base.

BUG=N/A
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17479005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6129 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-13 18:00:26 +00:00
perkj@webrtc.org
e9a604accd Revert 6107 "Adds a modified copy of talk/base to webrtc/base. I..."
This breaks Chromium FYI builds and prevent roll of webrtc/libjingle to Chrome.

http://chromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Win%20Builder/builds/457


> Adds a modified copy of talk/base to webrtc/base. It is the first step in migrating talk/base to webrtc/base.
> 
> BUG=N/A
> R=andrew@webrtc.org, wu@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/12199004

TBR=henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14479004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6116 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-13 08:15:48 +00:00
henrike@webrtc.org
2c7d1b39b9 Adds a modified copy of talk/base to webrtc/base. It is the first step in migrating talk/base to webrtc/base.
BUG=N/A
R=andrew@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12199004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6107 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-12 18:03:09 +00:00