solutions = [
{ "name" : 'src/electron',
"url" : 'https://github.com/electron/electron@v22.0.0-alpha.1',
"deps_file" : 'DEPS',
"managed" : False,
"custom_deps" : {
},
"custom_vars": {},
},
]
gclient sync --with_branch_heads --with_tags
(electron 的deps 有添加hooks 操作,会直接拉取chrome以及子仓库,并将patch 打好)# 进入 src 目录
cd src
# 设置临时的环境变量
set CHROMIUM_BUILDTOOLS_PATH=%cd%\buildtools
# 生成工程(Testing)
gn gen out/Testing --args="import(\"//electron/build/args/testing.gn\")"
# 生成工程(Release)
gn gen out/Release --args="import(\"//electron/build/args/release.gn\")"
# 生成工程(debug)
gn gen out/Debug --args="import(\"//electron/build/args/debug.gn\")"
# 编译 testing 版本
ninja -C out/Testing electron
注:部分版本chromium 已经将ninja 放在了third_party下,但是有些版本deps 中没有带,需要去高版本拷贝再sync使用