-
Notifications
You must be signed in to change notification settings - Fork 298
/
CMakeLists.txt
62 lines (44 loc) · 2.71 KB
/
CMakeLists.txt
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
find_package(curl REQUIRED)
find_package(Intl REQUIRED)
find_package(Iconv REQUIRED)
find_package(BLAS REQUIRED)
# find_package(ZLIB REQUIRED) # We use the minizip lib from 3rdParty/FMIL
set(OMC_RUNTIIME_SOURCES Error_omc.cpp Print_omc.c ErrorMessage.cpp
System_omc Lapack_omc.cpp Settings_omc.cpp
UnitParserExt_omc.cpp unitparser.cpp
IOStreamExt_omc.cpp Socket_omc.c
ZeroMQ_omc.c getMemorySize.c OMSimulator_omc.c
is_utf8.c om_curl.c om_unzip.c
ptolemyio_omc.cpp SimulationResults_omc.c
systemimplmisc.cpp
)
add_library(omcruntime STATIC ${OMC_RUNTIIME_SOURCES})
add_library(omc::compiler::runtime ALIAS omcruntime)
target_compile_features(omcruntime PRIVATE cxx_std_11)
target_link_libraries(omcruntime PUBLIC curl)
target_link_libraries(omcruntime PUBLIC Intl)
target_link_libraries(omcruntime PUBLIC iconv)
target_link_libraries(omcruntime PUBLIC BLAS::BLAS)
target_link_libraries(omcruntime PUBLIC OpenModelicaRuntimeC)
target_link_libraries(omcruntime PUBLIC omc::3rd::lpsolve55)
target_link_libraries(omcruntime PUBLIC omc::3rd::libzmq)
target_link_libraries(omcruntime PUBLIC omc::3rd::FMIL::minizip) # We use the minizip lib from 3rdParty/FMIL
# target_link_libraries(omcruntime PUBLIC omc::3rd::gc)
target_include_directories(omcruntime INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(omcruntime PRIVATE ${OMCompiler_SOURCE_DIR}) #for revision.h
set(OMC_BACKENDRUNTIIME_SOURCES HpcOmSchedulerExt_omc.cpp HpcOmBenchmarkExt_omc.cpp
TaskGraphResults_omc.cpp BackendDAEEXT_omc.cpp
matching.c matching_cheap.c Dynload_omc.cpp FMI_omc.c cJSON.c
)
add_library(omcbackendruntime STATIC ${OMC_BACKENDRUNTIIME_SOURCES})
add_library(omc::compiler::backendruntime ALIAS omcbackendruntime)
target_link_libraries(omcbackendruntime PUBLIC OpenModelicaRuntimeC)
target_link_libraries(omcbackendruntime PUBLIC omc::3rd::fmilib::shared) # We use the minizip lib from 3rdParty/FMIL
target_link_libraries(omcbackendruntime PUBLIC omc::3rd::gc)
target_include_directories(omcbackendruntime INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories(omcbackendruntime PRIVATE ${OMCompiler_SOURCE_DIR}) #for revision.h
set(OMC_GRAPH_STREAM_SOURCES GraphStreamExt_omc.cpp)
add_library(omcgraphstream STATIC ${OMC_GRAPH_STREAM_SOURCES})
add_library(omc::compiler::graphstream ALIAS omcgraphstream)
target_link_libraries(omcgraphstream PUBLIC OpenModelicaRuntimeC)
target_link_libraries(omcgraphstream PUBLIC omc::3rd::netstream)