X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/aec477bf61da4290c0436c026c7c1efd57f65e45..a7d97238d0dca19abc00d07ccdcdf2f58c4e0d67:/tools/cmake/MakeLib.cmake diff --git a/tools/cmake/MakeLib.cmake b/tools/cmake/MakeLib.cmake index b1a72d6fb7..f41f3b70af 100644 --- a/tools/cmake/MakeLib.cmake +++ b/tools/cmake/MakeLib.cmake @@ -2,6 +2,7 @@ # On macOS, specify that rpath is useful to look for the dependencies # See https://gitlab.kitware.com/cmake/community/wikis/doc/cmake/RPATH-handling and Java.cmake +# TODO: is it still useful now that Java is gone? For Python maybe? set(CMAKE_MACOSX_RPATH TRUE) if(APPLE) SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) # When installed, use system path @@ -26,19 +27,36 @@ set_property(TARGET simgrid add_dependencies(simgrid maintainer_files) -if(enable_model-checking) +if("${CMAKE_SYSTEM}" MATCHES "Linux") + add_library(sthread SHARED ${STHREAD_SRC}) + set_property(TARGET sthread + APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") + target_link_libraries(sthread simgrid) +else() + set(EXTRA_DIST ${EXTRA_DIST} ${STHREAD_SRC}) +endif() + +if(HAVE_MMALLOC) + add_library(sgmalloc SHARED ${SGMALLOC_SRC}) + set_property(TARGET sgmalloc + APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") +endif() + +if(SIMGRID_HAVE_MC) add_executable(simgrid-mc ${MC_SIMGRID_MC_SRC}) target_link_libraries(simgrid-mc simgrid) set_target_properties(simgrid-mc PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") set_property(TARGET simgrid-mc - APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") + APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") install(TARGETS simgrid-mc # install that binary without breaking the rpath on Mac RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}/) add_dependencies(tests-mc simgrid-mc) + if("${CMAKE_SYSTEM}" MATCHES "Linux") + add_dependencies(tests-mc sthread) + endif() endif() - # Compute the dependencies of SimGrid ##################################### # search for dlopen @@ -77,6 +95,10 @@ if(HAVE_GRAPHVIZ) endif() endif() +if(SIMGRID_HAVE_JSON) + target_link_libraries(simgrid nlohmann_json::nlohmann_json) +endif() + if(NOT ${DL_LIBRARY} STREQUAL "") SET(SIMGRID_DEP "${SIMGRID_DEP} ${DL_LIBRARY}") endif() @@ -122,7 +144,7 @@ if(enable_smpi) if ("${CMAKE_SYSTEM_VERSION}" STRGREATER_EQUAL "12") set(SIMGRID_DEP "${SIMGRID_DEP} -lpgmath") endif() - if ("${CMAKE_SYSTEM_VERSION}" MATCHES "12\.1") + if ("${CMAKE_SYSTEM_VERSION}" MATCHES "12\\.1") set(SIMGRID_DEP "${SIMGRID_DEP} -lomp") endif() endif() @@ -167,9 +189,6 @@ target_link_libraries(simgrid ${SIMGRID_DEP}) if(enable_maintainer_mode) add_dependencies(simgrid smpi_generated_headers_call_location_tracing) endif() -if(enable_maintainer_mode AND PYTHON_EXE) - add_dependencies(simgrid simcalls_generated_src) -endif() if(enable_maintainer_mode AND BISON_EXE AND LEX_EXE) add_dependencies(simgrid automaton_generated_src) endif()