Opened 2 months ago

Closed 3 days ago

#25837 closed defect (fixed)

Integrate fxc2 into our build setup for Windows Tor Browser builds

Reported by: gk Owned by: tbb-team
Priority: Very High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-rbm, ff60-esr, TorBrowserTeam201806R
Cc: tom, sukhbir Actual Points:
Parent ID: #26203 Points:
Reviewer: Sponsor:

Description

Starting with https://bugzilla.mozilla.org/show_bug.cgi?id=1365859 Mozilla is using a closed-source tool, called fxc, during the build to autocreate D3D11 shaders during the build.

We don't want to do that. So, tjr set down and wrote a tool, called fxc2 (https://github.com/tomrittervg/fxc2), that we can compile and then use during the build via wine(!) to do the autogeneration for us. See: https://bugzilla.mozilla.org/show_bug.cgi?id=1370007 for details.

We need to integrate that setup into our Windows build process for Tor Browser 8.

Child Tickets

Change History (10)

comment:1 Changed 2 months ago by tom

Cc: tom added

An unfortunate aspect of this is it still uses a closed-source MSFT dll. For trustworthiness purposes, you'll probably want to agree upon the hash of that dll. You can consider the existing one in the repo my vote for the correct version.

comment:2 Changed 3 weeks ago by gk

Cc: sukhe added
Keywords: TorBrowserTeam201805 added
Parent ID: #24631#26203
Priority: MediumVery High

comment:3 Changed 3 weeks ago by gk

Cc: sukhbir added; sukhe removed

CCing the real sukhe

comment:4 Changed 2 weeks ago by sukhbir

Status: newneeds_review

#26204 has a branch that integrates fxc2 and also d3dcompiler_47.dll.

comment:5 Changed 11 days ago by gk

Keywords: TorBrowserTeam201806 added; TorBrowserTeam201805 removed

Moving our tickets to June 2018

comment:6 Changed 4 days ago by cypherpunks

IIUC, Firefox autogenerates ps_4_0_level_9_3 which is old SM2. So what's wrong with https://github.com/wine-mirror/wine/tree/master/dlls/d3dcompiler_47?

comment:7 in reply to:  4 ; Changed 3 days ago by boklm

I am now testing a build with the following changes compared to the patch from branch azadi/bug-26203:

comment:8 in reply to:  7 Changed 3 days ago by boklm

Keywords: TorBrowserTeam201806R added; TorBrowserTeam201806 removed

Replying to boklm:

I am now testing a build with the following changes compared to the patch from branch azadi/bug-26203:

The build finished correctly. I have now squashed the changes listed in comment 7 in a commit in branch bug_25837_v2:
https://gitweb.torproject.org/user/boklm/tor-browser-build.git/commit/?h=bug_25837_v2&id=fdfd5600c985d1aff96a6e822c8138fb4a5dbe95

I also checked that the d3dcompiler_47.dll included in commit 079f5c7b9f6ea0b7e5504bb53abf8709cc92835d from https://github.com/azadi/fxc2.git are the same that I get after downloading the win32 and win64 versions of firefox 60.0.2esr.

comment:10 in reply to:  9 Changed 3 days ago by gk

Resolution: fixed
Status: needs_reviewclosed

Replying to boklm:

Branch bug_25837_v3 has the some commit rebased on master:
https://gitweb.torproject.org/user/boklm/tor-browser-build.git/commit/?h=bug_25837_v3&id=1689bd25bb1edc62c25cb11846bc0dd5b9a8e30c

Looks good. I merged sukhe's commit and your fixups to master with commit 57693e01837f0fc7c60bb056e5b752f5f67a987b. We are done here, I think.

Note: See TracTickets for help on using tickets.