解耦chromium gn配置

Chromium是由gn来管理工程的。有时候我们需要基于chromium的代码做一些开发,由于Chromium工程实在太大,因此我们不想把自己的工程跟chromium的工程放在同一个代码仓库里。最好有一种办法可以让我们的gn工程不用侵入chromium原来的工程而让两者结合在一起。

我们可以用gn里面的root_extra_deps做到这一点,如下面的生成工程的命令所示:

gn gen out/test --ide=vs2017 --filters=//base:*;//v8:*;//gin:*;//test:*;//learn/v8:* --sln=1test --no-deps --args="is_debug=true use_jumbo_build=true remove_webcore_debug_symbols = false is_component_build=false target_cpu =\"x86\" enable_nacl = false is_clang = true root_extra_deps = [\"//test\"]"

在root_extra_deps里面指定我们需要挂载到chromium工程的目录gn,这样生成的生成就会引用到我们的工程。