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}
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}
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}
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}
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}
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}
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}
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}
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}
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