On Fri, Feb 10, 2023 at 01:07:39AM +0000, Brooks Davis wrote: > On Thu, Feb 09, 2023 at 04:59:45PM -0800, Steve Kargl wrote: > > On Thu, Feb 09, 2023 at 02:07:11PM -0800, Steve Kargl wrote: > > > TL:DR: Please disable building flang in devel/llvm16. > > > > > > > > > I was hoping to test the to Fortran compilers included in > > > devel/llvm16. Unfortunately, neither flang16 nor flang-new16 > > > are usable. > > > > This seems to work for a simple program. Have no idea if > > the order of libs is correct. > > > > --- flang16.orig 2023-02-09 16:57:35.384452000 -0800 > > +++ flang16 2023-02-09 16:57:57.163685000 -0800 > > @@ -7,5 +7,9 @@ > > [ -L "$tool" ] && tool=$(/bin/realpath $tool) > > tool=${tool##*/} > > tool="${LLVM_PREFIX}/bin/${tool%${LLVM_SUFFIX}}" > > -LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LLVM_PREFIX}/lib" > > \ > > - exec "${tool}" "${@}" > > +#LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LLVM_PREFIX}/lib" > > \ > > +# exec "${tool}" "${@}" > > +exec "${tool}" "${@}" -L${LLVM_PREFIX}/lib \ > > +-lFortranCommon -lFortranDecimal -lFortranEvaluate \ > > +-lFortranLower -lFortranParser -lFortranSemantics \ > > +-lFortran_main -lFortranRuntime -lm > > I'm somewhat minded to either turn it off by default or apply > https://reviews.llvm.org/D143592 locally. There's a contingent that > seems to think flang must be essentially perfect before they make it at > all usable and that seems a backwards to me. >
Yes, I'm aware of that exchange. It's the former PGI and NVidia guys hold flang and flang-new back. To be fair, these are the guys doing much of the heavy lifting with the implementation. The above works if one is compile to an executable, e.g., 'flang16 -o z a.f90'. If one compiles to object files as is done with compiling a library, you see flang16 -O2 -pipe -w -c zerrec.f flang: warning: -lFortranCommon: 'linker' input unused flang: warning: -lFortranDecimal: 'linker' input unused flang: warning: -lFortranEvaluate: 'linker' input unused flang: warning: -lFortranLower: 'linker' input unused flang: warning: -lFortranParser: 'linker' input unused flang: warning: -lFortranSemantics: 'linker' input unused flang: warning: -lFortran_main: 'linker' input unused flang: warning: -lFortranRuntime: 'linker' input unused flang: warning: -lm: 'linker' input unused flang: warning: argument unused during compilation: '-L/usr/local/llvm16/lib' On the the bright, the tests for netlib BLAS all pass, and the tests for LAPACK also appear to work. -- Steve