forked from OpenModelica/OpenModelica
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathomsimulator.cmake
53 lines (43 loc) · 2.43 KB
/
omsimulator.cmake
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
include(ExternalProject)
include(ProcessorCount)
ProcessorCount(NUM_PROCESSPRS)
ExternalProject_Add(OMSimulator_external
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/OMSimulator
PREFIX OMSimulator
#--Configure step-------------
CONFIGURE_COMMAND COMMAND ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_CURRENT_SOURCE_DIR}/OMSimulator
-j${NUM_PROCESSPRS}
config-3rdParty
CERES=OFF
host_short=${CMAKE_LIBRARY_ARCHITECTURE}
CMAKE=${CMAKE_COMMAND}
COMMAND ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_CURRENT_SOURCE_DIR}/OMSimulator
-j${NUM_PROCESSPRS}
config-OMSimulator
OMSYSIDENT=OFF
OMBUILDDIR=${CMAKE_CURRENT_BINARY_DIR}/OMSimulator
host_short=${CMAKE_LIBRARY_ARCHITECTURE}
CMAKE=${CMAKE_COMMAND}
#--Build step-----------------
BUILD_COMMAND COMMAND ${CMAKE_MAKE_PROGRAM} -C ${CMAKE_CURRENT_SOURCE_DIR}/OMSimulator
-j${NUM_PROCESSPRS}
OMSimulator
OMBUILDDIR=${CMAKE_CURRENT_BINARY_DIR}/OMSimulator
host_short=${CMAKE_LIBRARY_ARCHITECTURE}
CMAKE=${CMAKE_COMMAND}
#--Install step---------------
INSTALL_COMMAND ""
)
set_target_properties(OMSimulator_external PROPERTIES EXCLUDE_FROM_ALL TRUE)
add_library(libOMSimulator SHARED IMPORTED)
set_target_properties(libOMSimulator PROPERTIES
IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/OMSimulator/lib/x86_64-linux-gnu/omc/libOMSimulator.so
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR}/OMSimulator/src/OMSimulatorLib
)
add_dependencies(libOMSimulator OMSimulator_external)
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/OMSimulator/
DESTINATION ${CMAKE_INSTALL_PREFIX}
USE_SOURCE_PERMISSIONS
# Exclude the directories created by CMake's ExternalProject
PATTERN src EXCLUDE
PATTERN tmp EXCLUDE)