On 2020-09-09 10:31 +0100, Ken Moffat via blfs-dev wrote: > On Tue, Sep 08, 2020 at 12:50:16PM -0500, Bruce Dubbs via blfs-dev wrote: > > On 9/8/20 6:19 AM, Ken Moffat via blfs-dev wrote: > > > On Mon, Aug 17, 2020 at 07:00:08PM +0100, Ken Moffat via blfs-dev wrote: > > > > On Mon, Aug 17, 2020 at 01:33:49PM +0800, Xi Ruoyao via blfs-dev wrote: > > > > > I just drafted js78 page. When it was built, the building system > > > > > utilized some > > > > > LLVM tools (llvm-objdump and llvm-profdata). > > > > > > > > > > Is a rustc built with shipped LLVM providing llvm-objdump and llvm- > > > > > profdata, > > > > > which could be used during firefox or js build? If not we should list > > > > > LLVM as a > > > > > firefox/js hard dependency. > > > > > > > > It seems to. > > > > > > > > On my experimental build last month with llvm-11-rc I had to build > > > > rust with its shipped llvm. Clearly I had already installed those > > > > two programs, but looking at the log I see > > > > > > > > [1656/1728] Linking CXX executable bin/llvm-objdump > > > > and > > > > [1620/1728] Linking CXX executable bin/llvm-profdata > > > > > > > > In my current build with system llvm neither of those is mentioend > > > > in the log. > > > > > > > Coming back to this, two points: > > > > > > 1. It might be that we should anyway list clang from llvm as a hard > > > dependency. At some point before we released 10.0 I had hidden > > > clang on this system - I guess that was while exploring thunderbird > > > builds with gcc - and forgotten to reinstate it. > > > > > > Today I was trying to build firefox-81beta (if anyone else wants to > > > build 81, please read the wiki - creating the python virtual > > > environments has been separated out of ./mach build) and eventually > > > got it to run ./mach build, only to fail because it couldn't find > > > clang which is apparently needed for cbindgen to use. > > > > > > I have not yet played with current firefox-esr in the absence of > > > clang, nor current js68, but I see from my firefox-78.2.0esr log: > > > > > > 0:22.46 checking for cbindgen... /usr/bin/cbindgen > > > 0:22.46 checking for rustfmt... /opt/rustc/bin/rustfmt > > > 0:22.46 checking for clang for bindgen... /usr/bin/clang++ > > > 0:22.46 checking for libclang for bindgen... /usr/lib/libclang.so > > > 0:22.46 checking that libclang is new enough... yes > > > > > > In practice, at the moment with rust using system llvm we recommend > > > clang, but when llvm has its next release we'll probably have to > > > drop back to the shipped llvm again, so bigger and slower llvm > > > compiles. > > > > > > 2. In llvm, should we recommend clang instead of listing it as > > > optional ? > > > > Yes. > > > > At the moment, both clang and compiler-rt are listed as > > > optional. On my less-capable desktop/notebook machines I don't > > > build compiler-rt, but obviously I build clang on all of them. > > > I guess the real question is: > > > > > > Do BLFS users build llvm without clang, and if so, what do they use > > > it for ? > > > > I do not know. I always build both clang and compiler-rt, but to be honest, > > I don't know what we would use compiler-rt for. > > > > -- Bruce > > Hi Bruce, > > I've now confirmed that with firefox-78.2.0esr the initial configury > fails in the same way if clang is not available. That is, of > course, on a build using CC=gcc CXX=g++.
But js78 builds successfully without clang. (I moved libclang.so and clang executables away.) I'm still not sure about llvm-profdata and llvm-objdump. -- Xi Ruoyao <xry...@mengyan1223.wang> School of Aerospace Science and Technology, Xidian University -- http://lists.linuxfromscratch.org/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page