forked from lcompilers/lpython
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
66 lines (58 loc) · 1.45 KB
/
Copy pathCMakeLists.txt
File metadata and controls
66 lines (58 loc) · 1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
set(SRC
parser/preprocessor.cpp
parser/tokenizer.cpp
parser/parser.tab.cc
parser/parser.cpp
semantics/ast_symboltable_visitor.cpp
semantics/ast_body_visitor.cpp
semantics/ast_to_asr.cpp
semantics/python_ast_to_asr.cpp
fortran_evaluator.cpp
pickle.cpp
python_serialization.cpp
ast_serialization.cpp
cwrapper.cpp
ast_to_src.cpp
ast_to_openmp.cpp
mod_to_asr.cpp
utils.cpp
../bin/tpl/whereami/whereami.cpp
)
if (WITH_XEUS)
set(SRC ${SRC}
fortran_kernel.cpp
)
endif()
if (WITH_JSON)
set(SRC ${SRC}
ast_to_json.cpp
)
endif()
add_library(lfortran_lib ${SRC})
target_link_libraries(lfortran_lib asr lfortran_runtime_static ZLIB::ZLIB)
target_include_directories(lfortran_lib BEFORE PUBLIC ${lfortran_SOURCE_DIR}/src)
target_include_directories(lfortran_lib BEFORE PUBLIC ${lfortran_BINARY_DIR}/src)
if (WITH_XEUS)
target_link_libraries(lfortran_lib xeus)
endif()
if (WITH_JSON)
target_link_libraries(lfortran_lib p::rapidjson)
endif()
if (WITH_BFD)
target_link_libraries(lfortran_lib p::bfd)
endif()
if (WITH_LINK)
target_link_libraries(lfortran_lib p::link)
endif()
if (WITH_EXECINFO)
target_link_libraries(lfortran_lib p::execinfo)
endif()
if (WITH_LLVM)
target_link_libraries(lfortran_lib p::llvm)
endif()
#install(TARGETS lfortran_lib
# RUNTIME DESTINATION bin
# ARCHIVE DESTINATION lib
# LIBRARY DESTINATION lib
#)
add_subdirectory(tests)