Gary Klimowicz | 9e7548a | 2019-12-20 20:52:07 | [diff] [blame] | 1 | #===-- runtime/CMakeLists.txt ----------------------------------------------===# |
peter klausler | 6261c09 | 2018-05-16 17:22:33 | [diff] [blame] | 2 | # |
Gary Klimowicz | 9e7548a | 2019-12-20 20:52:07 | [diff] [blame] | 3 | # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
4 | # See https://llvm.org/LICENSE.txt for license information. | ||||
5 | # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||||
peter klausler | 6261c09 | 2018-05-16 17:22:33 | [diff] [blame] | 6 | # |
Gary Klimowicz | cea1040 | 2020-01-10 20:12:03 | [diff] [blame] | 7 | #===------------------------------------------------------------------------===# |
peter klausler | 6261c09 | 2018-05-16 17:22:33 | [diff] [blame] | 8 | |
Isuru Fernando | ea5efd1 | 2020-03-12 20:28:35 | [diff] [blame] | 9 | include(CheckCXXSymbolExists) |
10 | include(CheckCXXSourceCompiles) | ||||
11 | check_cxx_symbol_exists(strerror string.h HAVE_STRERROR) | ||||
12 | check_cxx_symbol_exists(strerror_r string.h HAVE_STRERROR_R) | ||||
13 | # Can't use symbol exists here as the function is overloaded in C++ | ||||
14 | check_cxx_source_compiles( | ||||
15 | "#include <string.h> | ||||
16 | int main() { | ||||
17 | char buf[4096]; | ||||
18 | return strerror_s(buf, 4096, 0); | ||||
19 | } | ||||
20 | " | ||||
21 | HAVE_DECL_STRERROR_S) | ||||
22 | |||||
23 | if (NOT (HAVE_STRERROR OR HAVE_STRERROR_R OR HAVE_DECL_STRERROR_S)) | ||||
24 | message(FATAL_ERROR "None of strerror, strerror_r, strerror_s found.") | ||||
25 | endif() | ||||
26 | |||||
27 | configure_file(config.h.cmake config.h) | ||||
Isuru Fernando | bb73d1b | 2020-06-08 19:13:58 | [diff] [blame] | 28 | # include_directories is used here instead of target_include_directories |
29 | # because add_flang_library creates multiple objects (STATIC/SHARED, OBJECT) | ||||
30 | # with different names | ||||
31 | include_directories(AFTER ${CMAKE_CURRENT_BINARY_DIR}) | ||||
Isuru Fernando | ea5efd1 | 2020-03-12 20:28:35 | [diff] [blame] | 32 | |
Mehdi Chinoune | 2d6b9db | 2020-04-16 12:34:17 | [diff] [blame] | 33 | add_flang_library(FortranRuntime |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 34 | ISO_Fortran_binding.cpp |
peter klausler | 4d54bb7 | 2020-03-30 23:37:30 | [diff] [blame] | 35 | allocatable.cpp |
peter klausler | f7be251 | 2020-01-24 00:59:27 | [diff] [blame] | 36 | buffer.cpp |
peter klausler | e372e0f | 2021-03-31 16:14:08 | [diff] [blame] | 37 | complex-reduction.c |
peter klausler | c1db35f | 2021-05-20 17:37:03 | [diff] [blame^] | 38 | copy.cpp |
peter klausler | 4d54bb7 | 2020-03-30 23:37:30 | [diff] [blame] | 39 | character.cpp |
peter klausler | 95696d5 | 2020-02-05 00:55:45 | [diff] [blame] | 40 | connection.cpp |
peter klausler | 4fede8b | 2020-12-07 22:46:24 | [diff] [blame] | 41 | derived.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 42 | descriptor.cpp |
peter klausler | 50e0b29 | 2021-05-12 19:07:51 | [diff] [blame] | 43 | dot-product.cpp |
peter klausler | 3b63571 | 2020-02-13 22:41:56 | [diff] [blame] | 44 | edit-input.cpp |
45 | edit-output.cpp | ||||
peter klausler | f7be251 | 2020-01-24 00:59:27 | [diff] [blame] | 46 | environment.cpp |
peter klausler | beb5ac8 | 2021-04-22 21:23:45 | [diff] [blame] | 47 | extrema.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 48 | file.cpp |
peter klausler | beb5ac8 | 2021-04-22 21:23:45 | [diff] [blame] | 49 | findloc.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 50 | format.cpp |
peter klausler | 95696d5 | 2020-02-05 00:55:45 | [diff] [blame] | 51 | internal-unit.cpp |
peter klausler | 3b63571 | 2020-02-13 22:41:56 | [diff] [blame] | 52 | iostat.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 53 | io-api.cpp |
54 | io-error.cpp | ||||
55 | io-stmt.cpp | ||||
56 | main.cpp | ||||
peter klausler | 5e1421b | 2021-05-17 21:06:44 | [diff] [blame] | 57 | matmul.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 58 | memory.cpp |
peter klausler | 78a39d2 | 2021-04-02 16:30:31 | [diff] [blame] | 59 | misc-intrinsic.cpp |
peter klausler | 6a1c3ef | 2021-05-05 18:37:49 | [diff] [blame] | 60 | namelist.cpp |
peter klausler | 5f6c5c6 | 2021-04-01 19:59:59 | [diff] [blame] | 61 | numeric.cpp |
peter klausler | e111404 | 2021-04-07 20:14:14 | [diff] [blame] | 62 | random.cpp |
peter klausler | e372e0f | 2021-03-31 16:14:08 | [diff] [blame] | 63 | reduction.cpp |
peter klausler | beb5ac8 | 2021-04-22 21:23:45 | [diff] [blame] | 64 | product.cpp |
peter klausler | 8df28f0 | 2020-11-10 23:13:02 | [diff] [blame] | 65 | stat.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 66 | stop.cpp |
peter klausler | beb5ac8 | 2021-04-22 21:23:45 | [diff] [blame] | 67 | sum.cpp |
Alexis Perry | 352d347 | 2020-01-28 02:18:45 | [diff] [blame] | 68 | terminator.cpp |
69 | tools.cpp | ||||
70 | transformational.cpp | ||||
71 | type-code.cpp | ||||
peter klausler | f7be251 | 2020-01-24 00:59:27 | [diff] [blame] | 72 | unit.cpp |
peter klausler | 3b63571 | 2020-02-13 22:41:56 | [diff] [blame] | 73 | unit-map.cpp |
peter klausler | a8fed82 | 2018-08-02 18:45:11 | [diff] [blame] | 74 | |
Mehdi Chinoune | 2d6b9db | 2020-04-16 12:34:17 | [diff] [blame] | 75 | LINK_LIBS |
peter klausler | 491122d | 2020-01-16 21:51:25 | [diff] [blame] | 76 | FortranDecimal |
peter klausler | a8fed82 | 2018-08-02 18:45:11 | [diff] [blame] | 77 | ) |