Skip to content

[Flang-RT] Build libflang_rt.so #121782

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 167 commits into from
Feb 17, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
72e3c5d
[Flang] Introduce FortranSupport
Meinersbur Jan 24, 2025
71015c8
[Flang] Promote FortranEvaluateTesting library
Meinersbur Jan 24, 2025
2e50a1f
[Flang] Don't use FortranDecimal for runtime
Meinersbur Jan 24, 2025
4c676f4
users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME
Meinersbur Jan 24, 2025
875607f
[Flang] Rename libFortranRuntime.a to libflang_rt.a
Meinersbur Jan 24, 2025
7e369b5
[Flang][NFC] Move runtime library files to flang-rt
Meinersbur Jan 24, 2025
f670816
[Flang] LLVM_ENABLE_RUNTIMES=flang-rt
Meinersbur Jan 24, 2025
b05c9a0
[Flang-RT] Build libflang_rt.so
Meinersbur Jan 24, 2025
24fb760
Sort files alphabetically
Meinersbur Jan 27, 2025
0810293
Merge branch 'main' into users/meinersbur/flang_runtime_FortranSupport
Meinersbur Jan 27, 2025
a7cd5b2
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Jan 27, 2025
962958a
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Jan 27, 2025
70326fe
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Jan 27, 2025
a2a68ba
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Jan 27, 2025
c5e6acc
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Jan 27, 2025
f2e1535
Move new file pointer.cpp
Meinersbur Jan 27, 2025
4643eaf
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Jan 27, 2025
bcde051
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Jan 27, 2025
b02e9ad
Suggest both options to build Flang-RT
Meinersbur Jan 28, 2025
b9ab00d
Move files back to Common
Meinersbur Jan 29, 2025
f3e9c15
add missing includes
Meinersbur Jan 29, 2025
8349624
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Jan 29, 2025
e5f2532
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Jan 29, 2025
9e8a785
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Jan 29, 2025
c3924da
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Jan 29, 2025
b9bbae9
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Jan 29, 2025
e4286e5
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Jan 29, 2025
6722f5e
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Jan 29, 2025
6a7bd03
Use C++style comments for header guards
Meinersbur Jan 29, 2025
db749b9
Use C++style comments for header guards II
Meinersbur Jan 29, 2025
d3c1b9a
Merge branch 'main' into users/meinersbur/flang_runtime_FortranSupport
Meinersbur Jan 30, 2025
d9023dd
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Jan 30, 2025
eda88d9
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Jan 30, 2025
aa1770b
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Jan 30, 2025
1b988f0
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Jan 30, 2025
8d6bdf0
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Jan 30, 2025
4b93839
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Jan 30, 2025
b41db96
Post-merge fixes
Meinersbur Jan 30, 2025
3ce4b52
Post-merge fixes
Meinersbur Jan 30, 2025
9fce9ef
Post-merge fixes
Meinersbur Jan 30, 2025
c172e09
Merge branch 'users/meinersbur/flang_runtime_move-files' into HEAD
Meinersbur Jan 30, 2025
51011af
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Jan 30, 2025
c86aa90
Rename to flang_rt.runtime, flang_rt.quadmath, flang_rt.cuda
Meinersbur Feb 3, 2025
f4729e6
Conditionalize runtime example
Meinersbur Feb 3, 2025
6bb9de2
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 3, 2025
4303d5a
Rename to libflang_rt.<component>.(a|so)
Meinersbur Feb 3, 2025
f97c774
build fixes
Meinersbur Feb 3, 2025
d2f17f8
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 3, 2025
8fae565
forgotten change
Meinersbur Feb 3, 2025
8e8b338
Rename to flang_rt.runtime, flang_rt.quadmath, flang_rt.cuda
Meinersbur Feb 3, 2025
0282bd6
Avoid change noise
Meinersbur Feb 3, 2025
be9a0a2
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 3, 2025
5bc9686
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 3, 2025
919fda0
Post-merge fixes
Meinersbur Feb 3, 2025
7dc5f20
Merge branch 'main' into users/meinersbur/flang_runtime_FortranSupport
Meinersbur Feb 4, 2025
88ecb82
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Feb 4, 2025
993564a
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Feb 4, 2025
7875cff
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 4, 2025
4498646
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 4, 2025
3477620
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 4, 2025
fb125e0
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 4, 2025
d0cf509
Post-merge fixes
Meinersbur Feb 4, 2025
eb70027
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 4, 2025
0a4dfcc
Merge branch 'main' into users/meinersbur/flang_runtime_FortranSupport
Meinersbur Feb 4, 2025
0a9c5fd
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Feb 4, 2025
d509bef
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Feb 4, 2025
8e3ddbf
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 4, 2025
b2a6556
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 4, 2025
901be28
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 4, 2025
d175cac
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 4, 2025
8a0a3e8
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 4, 2025
7158e15
Merge remote-tracking branch 'official/main' into users/meinersbur/fl…
Meinersbur Feb 5, 2025
b286a88
clang-format includes
Meinersbur Feb 6, 2025
40b2f71
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Feb 6, 2025
080f30c
Merge commit 'b815a3942a0b0a9e7aab6b269ffdb0e93abc4368' into users/me…
Meinersbur Feb 6, 2025
919919f
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Feb 6, 2025
8096d45
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Feb 6, 2025
d35bea0
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 6, 2025
a446bad
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 6, 2025
8ef26b6
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 6, 2025
77d821c
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 6, 2025
5e438fa
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 6, 2025
778f516
Adapt BSD test
Meinersbur Feb 6, 2025
4c9e378
Merge branch 'main' into users/meinersbur/flang_runtime_FortranSupport
Meinersbur Feb 6, 2025
08a7bbc
Merge branch 'users/meinersbur/flang_runtime_FortranSupport' into use…
Meinersbur Feb 6, 2025
3f99cd5
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Feb 6, 2025
1fbd2c5
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 6, 2025
b45a08d
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 6, 2025
1bff4ab
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 6, 2025
4c21fb9
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 6, 2025
3a8557e
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 6, 2025
8ce70e5
Adapt BSD test for rename
Meinersbur Feb 6, 2025
fb7bc11
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 6, 2025
45795cd
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 6, 2025
6c0fd0e
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 6, 2025
f258e0e
Use C++ header guards III
Meinersbur Feb 6, 2025
d222eee
Merge commit '02fa340711d9b990b50a0daf65eb850404884137' into users/me…
Meinersbur Feb 6, 2025
06a81de
Merge branch 'users/meinersbur/flang_runtime_Testing' into users/mein…
Meinersbur Feb 6, 2025
0edd103
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 6, 2025
f9a1569
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 6, 2025
6708dc3
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 6, 2025
66292f0
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 6, 2025
a9a5488
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 6, 2025
2f30a9a
Merge commit '8fb1b3f4b23ecc2fc39f1a1c07244304565cfb21' into users/me…
Meinersbur Feb 7, 2025
ed4c3a6
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 7, 2025
3a996b3
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 7, 2025
7eef009
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 7, 2025
07fda1e
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 7, 2025
c87b596
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 7, 2025
9262520
Merge commit '98e118ca435d280ff1c3540eb5e9b4140b44a1b4' into users/me…
Meinersbur Feb 7, 2025
d4909ad
Merge branch 'users/meinersbur/flang_runtime_FortranDecimal' into use…
Meinersbur Feb 7, 2025
51f424e
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 7, 2025
ddb8425
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 7, 2025
faf5ddc
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 7, 2025
6f42d31
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 7, 2025
e3098d3
[Flang] Optionally do not compile the runtime in-tree
Meinersbur Feb 7, 2025
2b8e70b
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 7, 2025
4205ce8
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 7, 2025
08f5e1f
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 7, 2025
4154338
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 7, 2025
8b7be99
Merge branch 'main' (early part) into users/meinersbur/flang_runtime_…
Meinersbur Feb 8, 2025
9c5e121
Merge branch 'main' into users/meinersbur/flang_runtime_FLANG_INCLUDE…
Meinersbur Feb 8, 2025
6f2d9c9
Merge branch 'users/meinersbur/flang_runtime_FLANG_INCLUDE_RUNTIME' i…
Meinersbur Feb 8, 2025
d512ee0
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 8, 2025
aae7258
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 8, 2025
8672070
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 8, 2025
6b46210
Specifically refer to flang_rt.runtime in comments
Meinersbur Feb 8, 2025
17d7e90
Merge commit '5c8c2b3db54395073e3183f89167156df29dff61' into users/me…
Meinersbur Feb 8, 2025
abe3d27
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 8, 2025
ab5e2b9
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 8, 2025
8364c99
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 8, 2025
c7e786e
Merge branch 'main' (early part) into users/meinersbur/flang_runtime_…
Meinersbur Feb 8, 2025
61ae434
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 8, 2025
bbede04
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 8, 2025
92a5985
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 8, 2025
d3cc786
Merge commit '5c8c2b3db54395073e3183f89167156df29dff61' into users/me…
Meinersbur Feb 8, 2025
74e7836
Merge branch 'users/meinersbur/flang_runtime_flang_rt' into users/mei…
Meinersbur Feb 8, 2025
6391795
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 8, 2025
68d021f
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 8, 2025
19fe1a3
Disable LTO
Meinersbur Feb 10, 2025
6ca63cf
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 10, 2025
8b91f2f
Undo move of CUDA/allocator.h
Meinersbur Feb 10, 2025
c7f8098
Apply darker formatting
Meinersbur Feb 11, 2025
aa2a779
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 11, 2025
60f62e0
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 11, 2025
9a88083
Merge commit 'c6654806949f0498fdd2d009b66e62041c21de36' into users/me…
Meinersbur Feb 13, 2025
8bdea32
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 13, 2025
cf75514
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 13, 2025
276020f
Fix setting option default
Meinersbur Feb 13, 2025
f301045
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 13, 2025
1796827
Undo llvm-test-suite workaround
Meinersbur Feb 13, 2025
0ac4e0b
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 13, 2025
b12d925
Merge commit '660cdace559a8dbe44ebf2222b854bf3f39a5f62' into users/me…
Meinersbur Feb 13, 2025
ff761f6
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 13, 2025
0f208a4
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 13, 2025
1ee1300
Post-merge fixes
Meinersbur Feb 13, 2025
c6c168a
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 13, 2025
c7d6b01
Re-apply llvm-test-suite workaround
Meinersbur Feb 13, 2025
55a2f6d
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 14, 2025
2f21466
Post-merge fixes
Meinersbur Feb 13, 2025
c9a7900
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 14, 2025
b0333ef
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 14, 2025
c2c7bb2
Merge branch 'main' into users/meinersbur/flang_runtime_move-files
Meinersbur Feb 16, 2025
6fa8982
Merge branch 'users/meinersbur/flang_runtime_move-files' into users/m…
Meinersbur Feb 16, 2025
574e2c0
Merge remote-tracking branch 'official/main' into users/meinersbur/fl…
Meinersbur Feb 16, 2025
9ab5920
Merge branch 'main' into users/meinersbur/flang_runtime
Meinersbur Feb 17, 2025
02ecc27
Merge branch 'users/meinersbur/flang_runtime' into users/meinersbur/f…
Meinersbur Feb 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions flang-rt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,15 @@ endif ()
extend_path(FLANG_RT_INSTALL_RESOURCE_LIB_PATH "${FLANG_RT_INSTALL_RESOURCE_PATH}" "${toolchain_lib_subdir}")
cmake_path(NORMAL_PATH FLANG_RT_OUTPUT_RESOURCE_DIR)
cmake_path(NORMAL_PATH FLANG_RT_INSTALL_RESOURCE_PATH)
# FIXME: For the libflang_rt.so, the toolchain resource lib dir is not a good
# destination because it is not a ld.so default search path.
# The machine where the executable is eventually executed may not be the
# machine where the Flang compiler and its resource dir is installed, so
# setting RPath by the driver is not an solution. It should belong into
# /usr/lib/<triple>/libflang_rt.so, like e.g. libgcc_s.so.
# But the linker as invoked by the Flang driver also requires
# libflang_rt.so to be found when linking and the resource lib dir is
# the only reliable location.
cmake_path(NORMAL_PATH FLANG_RT_OUTPUT_RESOURCE_LIB_DIR)
cmake_path(NORMAL_PATH FLANG_RT_INSTALL_RESOURCE_LIB_PATH)

Expand All @@ -129,6 +138,27 @@ cmake_path(NORMAL_PATH FLANG_RT_INSTALL_RESOURCE_LIB_PATH)
option(FLANG_RT_INCLUDE_TESTS "Generate build targets for the flang-rt unit and regression-tests." "${LLVM_INCLUDE_TESTS}")


option(FLANG_RT_ENABLE_STATIC "Build Flang-RT as a static library." ON)
if (WIN32)
# Windows DLL currently not implemented.
set(FLANG_RT_ENABLE_SHARED OFF)
else ()
# TODO: Enable by default to increase test coverage, and which version of the
# library should be the user's choice anyway.
# Currently, the Flang driver adds `-L"libdir" -lflang_rt` as linker
# argument, which leaves the choice which library to use to the linker.
# Since most linkers prefer the shared library, this would constitute a
# breaking change unless the driver is changed.
option(FLANG_RT_ENABLE_SHARED "Build Flang-RT as a shared library." OFF)
endif ()
if (NOT FLANG_RT_ENABLE_STATIC AND NOT FLANG_RT_ENABLE_SHARED)
message(FATAL_ERROR "
Must build at least one type of library
(FLANG_RT_ENABLE_STATIC=ON, FLANG_RT_ENABLE_SHARED=ON, or both)
")
endif ()


set(FLANG_RT_EXPERIMENTAL_OFFLOAD_SUPPORT "" CACHE STRING "Compile Flang-RT with GPU support (CUDA or OpenMP)")
set_property(CACHE FLANG_RT_EXPERIMENTAL_OFFLOAD_SUPPORT PROPERTY STRINGS
""
Expand Down
Loading