#25483: Windows reproducible build of snowflake --------------------------------------+-------------------- Reporter: arlolra | Owner: (none) Type: defect | Status: new Priority: Medium | Milestone: Component: - Select a component | Version: Severity: Normal | Keywords: Actual Points: | Parent ID: Points: | Reviewer: Sponsor: | --------------------------------------+-------------------- Breaking this out from https://trac.torproject.org/projects/tor/ticket/19001#comment:36, where dcf wrote,
> I pushed some preliminary code for getting started with a windows reproducible build. > https://gitweb.torproject.org/user/dcf/tor-browser-bundle.git/log/?h =snowflake-windows&id=0f48dc9e1904fa0643576fc8dcf3db50a4d2f959 > > It doesn't work yet; after `./mkbundle-windows.sh versions.alpha`, it eventually fails with: > {{{ > + /home/ubuntu/build/webrtc/src/out_bootstrap/gn gen out/Release '-- args= target_os="win" target_cpu="x86" is_debug=false treat_warnings_as_errors=false is_component_build=false is_clang=true use_sysroot=false clang_use_chrome_plugins=false clang_base_path="/home/ubuntu/build/clang" rtc_include_opus=false rtc_include_ilbc=false rtc_include_internal_audio_device=false rtc_include_tests=true' > ERROR at //build/config/BUILDCONFIG.gn:239:3: Assertion failed. > assert(target_os == host_os, "Win cross-compiles only work on win hosts.") > ^----- > Win cross-compiles only work on win hosts. > }}} > But at this point one can ssh into the build VM and start debugging the build failures. Some further notes from what we've discovered so far. * https://chromium.googlesource.com/chromium/src/+/master/docs/win_cross.md says that we need to add `target_os = ['win']` to our `.gclient` file before calling `gclient sync` to get some additional deps. * https://chromium.googlesource.com/chromium/tools/depot_tools.git/+/master/win_toolchain/README.md says that Googlers have access to the necessary toolchain, but we don't. * https://chromium.googlesource.com/chromium/tools/depot_tools.git/+/master/win_toolchain/package_from_installed.py points to a method of creating it from a fresh VM. Presumably we can use https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/ and the community version of Visual Studio (steps to reproduce will follow) -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25483> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online
_______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs