#28716: Create a mingw-w64-clang project -------------------------------------------------+------------------------- Reporter: gk | Owner: tbb- | team Type: task | Status: | needs_review Priority: High | Milestone: Component: Applications/Tor Browser | Version: Severity: Normal | Resolution: Keywords: tbb-rbm, TorBrowserTeam201902R, | Actual Points: GeorgKoppen201902 | Parent ID: #28238 | Points: Reviewer: | Sponsor: -------------------------------------------------+-------------------------
Comment (by cypherpunks33): Some more notes: There are different approaches in LLVM to become the default system for everything, and sooner or later it will start adding new features, inherently incompatible with GCC/MSVC/etc. This will require making changes to the current build systems. There are two ways: making build scripts for LLVM or adjusting GCC ones. In the latter we should decide whether to maintain the best compatibility with GCC or transform it into the GCC-incompatible one (which will become a native LLVM one after transition). IIRC, you usually prefer a transition plan with dropping the previous system support. And you've already started to replace `gcc` with `clang`, etc. But it seems it's too early to make incompatible changes. We should check first whether all LLVM tools support that. I propose to make the full GNU (not only GCC) compatible drop-in replacement. LLVM even has `LLVM_INSTALL_BINUTILS_SYMLINKS=TRUE` for that. Also we should use the latest CMake and Ninja as recommended: "Please use the latest available CMake for your platform to avoid surprises." It is needed for "The check-all target (i.e. ninja check-all) will run the regression tests to ensure everything is in working order." (BTW, where is Mozilla doing it or https://llvm.org/docs/AdvancedBuilds.html#stage-non- determinism after stage3?) Big thanks for trying to upstream lld patch! It is the right way to go. Some minor notes: > Since r332613 lld has the option of setting the timestamp in PE headers to `0` Not lld, lld-link. It can set timestamp to any 32-bit value. > However, we need a patch for lld's MingW Chinese hero Ming W.? :) > to pass this option on in our cross-compilation case It turns out it's much harder to pass the options properly than hardcode them. Actually, we need much more changes to lld (and lld-link) to have the required features. Is it possible to invite Martin to the discussion? -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28716#comment:46> 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