Extract Flang's runtime library to use the LLVM_ENABLE_RUNTIME mechanism. It will only become active when `LLVM_ENABLE_RUNTIMES=flang-rt` is used, which also changes the `FLANG_INCLUDE_RUNTIME` to `OFF` so the old runtime build rules do not conflict. This also means that unless `LLVM_ENABLE_RUNTIMES=flang-rt` is passed, nothing changes with the current build process. Motivation: * Consistency with LLVM's other runtime libraries (compiler-rt, libc, libcxx, openmp offload, ...) * Allows compiling the runtime for multiple targets at once using the LLVM_RUNTIME_TARGETS configuration options * Installs the runtime into the compiler's per-target resource directory so it can be automatically found even when cross-compiling Also see RFC discussion at https://discourse.llvm.org/t/rfc-use-llvm-enable-runtimes-for-flangs-runtime/80826
13 lines
288 B
Fortran
13 lines
288 B
Fortran
! REQUIRES: flang-rt
|
|
! UNSUPPORTED: offload-cuda
|
|
|
|
! Verify that flang can correctly build executables.
|
|
|
|
! RUN: %flang -L"%libdir" %s -o %t
|
|
! RUN: env LD_LIBRARY_PATH="$LD_LIBRARY_PATH:%libdir" %t | FileCheck %s
|
|
|
|
! CHECK: Hello, World!
|
|
program hello
|
|
print *, "Hello, World!"
|
|
end program
|