Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(552)

Issue 2846803002: making neteq_unittest_tools always available (Closed)

Created:
3 years, 7 months ago by mbonadei
Modified:
3 years, 7 months ago
Reviewers:
kjellander_webrtc
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

making neteq_unittest_tools always available BUG=None

Patch Set 1 #

Patch Set 2 : disabling gn check on neteq_unittest_tools #

Unified diffs Side-by-side diffs Delta from patch set Stats (+100 lines, -93 lines) Patch
M webrtc/modules/audio_coding/BUILD.gn View 1 3 chunks +100 lines, -93 lines 0 comments Download

Messages

Total messages: 5 (2 generated)
mbonadei
On 2017/04/27 09:29:02, mbonadei wrote: > mailto:mbonadei@webrtc.org changed reviewers: > + mailto:kjellander@webrtc.org The error is: ...
3 years, 7 months ago (2017-04-27 09:37:46 UTC) #3
mbonadei
I confirm that 'gn path' was right. It is not about pulling the dependency, it ...
3 years, 7 months ago (2017-04-27 09:58:28 UTC) #4
kjellander_webrtc
3 years, 7 months ago (2017-04-27 10:44:48 UTC) #5
On 2017/04/27 09:58:28, mbonadei wrote:
> I confirm that 'gn path' was right.
> 
> It is not about pulling the dependency, it is about depending on a target
> in the '//webrtc/test/BUILD.gn' file.
> 
> I commented the dependency on '//webrtc/test:rtp_test_utils' (disabling
> 'gn check' for that target) and now it is able to generate build files.
> 
> So, I think that when Gn parses a BUILD.gn file it is eagerly checking that
> all the targets listed in that file are buildable.

Aha! I wasn't aware of this, but I've run into similar issues before. What we
could do is to hide
the problematic targets inside an if(!build_with_chromium) condition. That could
be an easier way. We might even be able to put such a condition in
third_party/gflags/BUILD.gn and try to work on getting some kind of standalone
build working with build_with_chromium=true (it has never worked in the past,
but I think it can be done).

> In our case it breaks because '//third_party/gflags' is not buildable, because
> chromium has their own flags library.
> 
> So, fuzzers are not the problem per se. The problem is that we cannot depend
on
> targets in '//webrtc/test/BUILD.gn' because that file is full of dependencies
on
> '//third_party/gflags'.

Great observation.

> A possible solution is to refactor that BUILD.gn file so we can extract
> libraries
> in another BUILD.gn file and keep all the targets related to running tests in
> another BUILD.gn file.

I think the easiest thing to try first is to hide the problematic parts of
webrtc/test/BUILD.gn using the approach above. Then we can do additional
refactorings if needed.

Please make sure you also communicate with hlundin@ since he's working on
https://codereview.webrtc.org/2845013003/

Powered by Google App Engine
This is Rietveld 408576698