On Thu, Jul 04 2019, Jeremie Courreges-Anglas <j...@wxcvbn.org> wrote: > On Tue, Jul 02 2019, Charlene Wendling <juliana...@posteo.jp> wrote: >> Hi! >> >>> On Sun, Jun 30 2019, Sebastien Marie <sema...@online.fr> wrote: >>> > On Sun, Jun 30, 2019 at 12:55:44AM +0200, Jeremie Courreges-Anglas >>> > wrote: >>> >> >>> >> Here's the diff I'm testing right now. I have merged the llvm >>> >> patches this morning and I did not double check them so far, but >>> >> this lets llvm, include-what-you-use, rust and ripgrep build on >>> >> amd64. mozillas are building on amd64, llvm still compiling on >>> >> sparc64. >>> >> >>> >> Sebastien, I guess we'll need to coordinate regarding rust-1.35 / >>> >> rust-1.36 and llvm-7 / llvm-8. >>> > >>> > I think you have more work than me to push a tested llvm-8. so you >>> > should go first, and I will redo a part of my work for upgrading rust >>> > to 1.36, using llvm-8. >>> >>> I guess it's going to be easier for me this way, I'm not completely >>> sure. After all, rust doesn't build on the slower archs that need to be >>> tested with llvm-8. Anyway, the current rust version seems to cope fine >>> with llvm-8 so upgrading llvm first sound appealing. >>> >>> > I will use the diff to prepare llvm-8 packages on my buildhosts and >>> > test rust-1.36 with that. >>> >>> Please use this updated diff which adds py-recommonmark[0] as a build >>> dep. Sorry for the obvious oversight! >>> >>> [0] https://marc.info/?l=openbsd-ports&m=156189089024457&w=2 >> >> On macppc it fails while packaging [1] because some .a aren't built, >> as such i've modified a bit the PLISTs. > > Thanks (again) for this. > >> I guess it's because on macppc only the powerpc target is built. > > Yep. > >> devel/include-what-you-use still doesn't build with the same error >> llvm-7 has [2], probably for the same reason. > > I had missed that one. iwyu.cc: > > --8<-- > int main(int argc, char **argv) { > // Must initialize X86 target to be able to parse Microsoft inline > // assembly. We do this unconditionally, because it allows an IWYU > // built for non-X86 targets to parse MS inline asm without choking. > LLVMInitializeX86TargetInfo(); > LLVMInitializeX86TargetMC(); > LLVMInitializeX86AsmParser(); > -->8-- > > For the ports tree I guess an #ifndef __powerpc__ would be enough.
Jonathan, Charlene, please see the diff below. >> I'm sending the diff with only the PLIST changes done. sysutils/free >> builds and runs fine with forced COMPILER. I'll report any arising issues. > > As discussed privately PLIST/PFRAG were still not right but that was easy > to fix. On top of this I had missed some bits when doing the merge of > OpenBSD.cpp, which resulted in -lcompiler_rt being incorrectly used > instead of libgcc on sparc64 (rather, where libestdc++ is used). > I spotted this thanks to a failure in devel/cbmc. > > Here's the latest diff. It still doesn't merge all the changes from > base but the differences don't seem to matter for the correctness of the > compiled code, so I might address this later. Hopefully this version > can go in soonish so that semarie@ can proceed to updating lang/rust. > > Feedback, reviews, tests, oks etc welcome, as usual. The latest diff needed yet another PLIST fix. This update has been committed, including the include-what-you-use version bump. I will now work on syncing the remaining differences between base-clang and ports-clang. Thank you all. Tentative fix for include-what-you-use on powerpc. Index: patches/patch-iwyu_cc =================================================================== RCS file: patches/patch-iwyu_cc diff -N patches/patch-iwyu_cc --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-iwyu_cc 6 Jul 2019 15:15:53 -0000 @@ -0,0 +1,19 @@ +$OpenBSD$ + +devel/llvm is built without X86 target support on powerpc. + +Index: iwyu.cc +--- iwyu.cc.orig ++++ iwyu.cc +@@ -4066,9 +4066,11 @@ int main(int argc, char **argv) { + // Must initialize X86 target to be able to parse Microsoft inline + // assembly. We do this unconditionally, because it allows an IWYU + // built for non-X86 targets to parse MS inline asm without choking. ++#ifndef __powerpc__ + LLVMInitializeX86TargetInfo(); + LLVMInitializeX86TargetMC(); + LLVMInitializeX86AsmParser(); ++#endif + + // The command line should look like + // path/to/iwyu -Xiwyu --verbose=4 [-Xiwyu --other_iwyu_flag]... CLANG_FLAGS... foo.cc -- jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE