Hi ports --Attached is a new port, lang/flang. Flang is a Fortran compiler targeting LLVM.
Some notes on this:1. This is actually two ports in one. The Flang group maintains their own modified version of clang to support flang. I have applied all the clang-related patches from devel/llvm to this version of clang as well. This modified version of clang is also used to build flang. 2. The package installs the modified clang and flang to the ${PREFIX}/flang prefix. We don't want people accidentally using the modified clang except with flang, and we obviously don't want devel/llvm and lang/flang to conflict. 3. Much of the flang work is based off the FreeBSD port with some extra OpenBSD-specific tweaks (notably, ripping out the asynchronous file handling, since we don't have aio.h nor the aio_* functions). Flang is perfectly happy without it. 4. FreeBSD chose to run ldconfig to add ${PREFIX}/flang/lib. I chose to symlink the libraries to ${PREFIX}/lib.
5. All this stuff is amd64 only. It's an upstream limitation. 6. This requires devel/openmp, which I sent in a previous email.I took some F90 program examples from a Fortran book on Wikipedia, and they all worked. Additionally, some of the compiler is written in F95, so the simple act of compiling flang tests flang.
OK? ~Brian
flang.tgz
Description: Binary data