Skip to content
This repository was archived by the owner on May 18, 2019. It is now read-only.

Commit 210af85

Browse files
rfrankeOpenModelica-Hudson
authored andcommitted
Re-add local ModelicaExternalC to Cpp runtime, ticket:5227
They had been removed in commit 9062175, but are needed to avoid unclear dependencies from MSL to HDF5 (and ZLIB). Belonging to [master]: - #2804
1 parent 7f7fb53 commit 210af85

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

SimulationRuntime/cpp/CMakeLists.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ OPTION(TRILINOS_ROOT "TRILINOS ROOT" "")
9191
OPTION(USE_CPP_03 "USE_CPP_03" OFF)
9292

9393
#Set Variables
94+
SET(MODELICAEXTERNALCDIR "${CMAKE_SOURCE_DIR}/../../3rdParty/ModelicaExternalC/C-Sources")
95+
9496
IF(NOT FMU_TARGET)
9597
IF(MSVC)
9698
SET(LIBINSTALLEXT "lib/omc/cpp/msvc" CACHE STRINGz "library directory")
@@ -113,6 +115,12 @@ SET(SystemName ${LIBPREFIX}System${LIBSUFFIX})
113115
SET(OMCFactoryName ${LIBPREFIX}OMCFactory${LIBSUFFIX})
114116
SET(MathName ${LIBPREFIX}Math${LIBSUFFIX})
115117

118+
SET(ModelicaExternalName ModelicaExternalC) # only static version
119+
SET(ModelicaTablesName ModelicaStandardTables) # only static version
120+
SET(ModelicaIOName ModelicaIO) # only static version
121+
SET(ModelicaMatIOName ModelicaMatIO) # only static version
122+
SET(LibZName zlib) # only static version
123+
116124
SET(SimulationSettings ${LIBPREFIX}SimulationSettings${LIBSUFFIX})
117125
SET(SimControllerName ${LIBPREFIX}SimController${LIBSUFFIX})
118126
SET(CVodeName ${LIBPREFIX}CVode${LIBSUFFIX})
@@ -837,6 +845,7 @@ add_subdirectory(Core/Solver)
837845
add_subdirectory(Core/Math)
838846
add_subdirectory(Core/Utils/Modelica)
839847
add_subdirectory(Core/Utils/extension)
848+
add_subdirectory(Core/ModelicaExternalC)
840849

841850
if(NOT FMU_TARGET)
842851
# add projects for generating a simulator
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Build default ModelicaExternalC libs (without extra flags like HAVE_HDF5).
2+
# Note: zlib is only here because it is referred to from MSL Tables and
3+
# thus passed to the linker. It is not used by default ModelicaMatIO though.
4+
5+
cmake_minimum_required(VERSION 2.8.9)
6+
project(${ModelicaExternalName})
7+
8+
include_directories(${MODELICAEXTERNALCDIR})
9+
add_definitions(-DDUMMY_FUNCTION_USERTAB) # yet an extra flag
10+
11+
add_library(${ModelicaExternalName} STATIC ${MODELICAEXTERNALCDIR}/ModelicaFFT.c ${MODELICAEXTERNALCDIR}/ModelicaInternal.c ${MODELICAEXTERNALCDIR}/ModelicaRandom.c ${MODELICAEXTERNALCDIR}/ModelicaStrings.c)
12+
add_library(${ModelicaTablesName} STATIC ${MODELICAEXTERNALCDIR}/ModelicaStandardTables.c)
13+
add_library(${ModelicaIOName} STATIC ${MODELICAEXTERNALCDIR}/ModelicaIO.c)
14+
add_library(${ModelicaMatIOName} STATIC ${MODELICAEXTERNALCDIR}/ModelicaMatIO.c)
15+
add_library(${LibZName} STATIC ${MODELICAEXTERNALCDIR}/zlib/adler32.c ${MODELICAEXTERNALCDIR}/zlib/compress.c ${MODELICAEXTERNALCDIR}/zlib/crc32.c ${MODELICAEXTERNALCDIR}/zlib/deflate.c ${MODELICAEXTERNALCDIR}/zlib/gzclose.c ${MODELICAEXTERNALCDIR}/zlib/gzlib.c ${MODELICAEXTERNALCDIR}/zlib/gzread.c ${MODELICAEXTERNALCDIR}/zlib/gzwrite.c ${MODELICAEXTERNALCDIR}/zlib/infback.c ${MODELICAEXTERNALCDIR}/zlib/inffast.c ${MODELICAEXTERNALCDIR}/zlib/inflate.c ${MODELICAEXTERNALCDIR}/zlib/inftrees.c ${MODELICAEXTERNALCDIR}/zlib/trees.c ${MODELICAEXTERNALCDIR}/zlib/uncompr.c ${MODELICAEXTERNALCDIR}/zlib/zutil.c)
16+
17+
install(TARGETS ${ModelicaExternalName} DESTINATION ${LIBINSTALLEXT})
18+
install(TARGETS ${ModelicaTablesName} DESTINATION ${LIBINSTALLEXT})
19+
install(TARGETS ${ModelicaIOName} DESTINATION ${LIBINSTALLEXT})
20+
install(TARGETS ${ModelicaMatIOName} DESTINATION ${LIBINSTALLEXT})
21+
install(TARGETS ${LibZName} DESTINATION ${LIBINSTALLEXT})

0 commit comments

Comments
 (0)