@@ -7,8 +7,8 @@ set(_fmu4cpp_root "${_fmu4cpp_root}" CACHE INTERNAL "")
77function (generateFMU modelIdentifier )
88
99 set (options WITH_SOURCES)
10- set (oneValueArgs RESOURCE_FOLDER DESTINATION)
11- set (multiValueArgs FMI_VERSIONS SOURCES LINK_TARGETS COMPILE_DEFINITIONS)
10+ set (oneValueArgs RESOURCE_FOLDER DOC_FOLDER DESTINATION)
11+ set (multiValueArgs FMI_VERSIONS SOURCES INCLUDE_DIRS LINK_TARGETS COMPILE_DEFINITIONS)
1212 cmake_parse_arguments (FMU "${options} " "${oneValueArgs} " "${multiValueArgs} " ${ARGN} )
1313
1414 set (fmuResultDir "${CMAKE_BINARY_DIR } /models" )
@@ -25,6 +25,10 @@ function(generateFMU modelIdentifier)
2525 set (FMU_RESOURCE_FOLDER "" )
2626 endif ()
2727
28+ if (NOT FMU_DOC_FOLDER)
29+ set (FMU_DOC_FOLDER "" )
30+ endif ()
31+
2832 # Require at least one fmi version; default to fmi2 if none provided
2933 if (NOT FMU_FMI_VERSIONS)
3034 message (FATAL_ERROR "generateFMU requires at least one FMI version to be specified" )
@@ -41,6 +45,11 @@ function(generateFMU modelIdentifier)
4145
4246 add_library (${model_objects_target} OBJECT ${FMU_SOURCES} )
4347 target_include_directories (${model_objects_target} PUBLIC "${_fmu4cpp_root} /export/include" )
48+ # apply user-provided include dirs to the object target
49+ if (FMU_INCLUDE_DIRS)
50+ target_include_directories (${model_objects_target} PRIVATE ${FMU_INCLUDE_DIRS} )
51+ endif ()
52+ # apply user-provided link targets to the object target
4453 if (FMU_LINK_TARGETS)
4554 target_link_libraries (${model_objects_target} PRIVATE ${FMU_LINK_TARGETS} )
4655 endif ()
@@ -135,8 +144,15 @@ macro(_package_fmu)
135144 if (FMU_WITH_SOURCES AND fmiVersion STREQUAL "fmi3" )
136145 list (APPEND TAR_INPUTS "${modelOutputDir} /sources" "${modelOutputDir} /sources/buildDescription.xml" )
137146 endif ()
147+
148+ if (NOT FMU_DOC_FOLDER STREQUAL "" )
149+ message ("[generateFMU-${fmiVersion} ] Using documentation folder=${FMU_DOC_FOLDER} for model '${modelIdentifier} '" )
150+ file (COPY "${FMU_DOC_FOLDER} /" DESTINATION "${modelOutputDir} /documentation" )
151+ list (PREPEND TAR_INPUTS "documentation" )
152+ endif ()
153+
138154 if (NOT FMU_RESOURCE_FOLDER STREQUAL "" )
139- message ("[generateFMU-${fmiVersion} ] Using resourceFolder =${FMU_RESOURCE_FOLDER} for model '${modelIdentifier} '" )
155+ message ("[generateFMU-${fmiVersion} ] Using resource folder =${FMU_RESOURCE_FOLDER} for model '${modelIdentifier} '" )
140156 file (COPY "${FMU_RESOURCE_FOLDER} /" DESTINATION "${modelOutputDir} /resources" )
141157 list (PREPEND TAR_INPUTS "resources" )
142158 endif ()
0 commit comments