Advertisement
Guest User

sundials-cmake.patch

a guest
Oct 23rd, 2019
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CMake 3.67 KB | None | 0 0
  1. Index: /OMCompiler/SimulationRuntime/cpp/CMakeLists.txt
  2. --- a/OMCompiler/SimulationRuntime/cpp/CMakeLists.txt
  3. +++ b/OMCompiler/SimulationRuntime/cpp/CMakeLists.txt
  4. @@ -551,33 +551,34 @@
  5.    MESSAGE(STATUS "Sundials library:")
  6.    MESSAGE(STATUS "${SUNDIALS_LIBRARY_RELEASE_HOME}")
  7.  
  8. -
  9. -  FIND_PATH(SUNDIALS_INCLUDE_DIR cvode/cvode.h PATHS ${SUNDIALS_INLCUDE_HOME})
  10. -  IF (NOT SUNDIALS_INCLUDE_DIR)
  11. +  SET(SUNDIALS_INCLUDE_DIR "${SUNDIALS_INLCUDE_HOME}")
  12. +  IF (NOT EXISTS "${SUNDIALS_INLCUDE_HOME}/cvode/cvode.h")
  13.      MESSAGE(FATAL_ERROR "Could not find Sundials; compile omc first")
  14. -  ELSE(NOT SUNDIALS_INCLUDE_DIR)
  15. -    INCLUDE_DIRECTORIES(${SUNDIALS_INCLUDE_DIR})
  16. -    # Extract the version number from sundials_config.h
  17. -    FIND_PATH(SUNDIALS_CONFIG_FILE "sundials_config.h" ${SUNDIALS_INCLUDE_DIR} "${SUNDIALS_INCLUDE_DIR}/sundials")
  18. -    SET(SUNDIALS_CONFIG_FILE "${SUNDIALS_CONFIG_FILE}/sundials_config.h")
  19. -    FILE(READ "${SUNDIALS_CONFIG_FILE}" SUNDIALS_CONFIG_FILE_CONTENT)
  20. -    STRING(REGEX MATCH "#define SUNDIALS_PACKAGE_VERSION .([0-9]+)\\.([0-9]+)\\.([0-9]+)." SUNDIALS_CONFIG_FILE_CONTENT ${SUNDIALS_CONFIG_FILE_CONTENT})
  21. -    STRING(REGEX REPLACE "#define SUNDIALS_PACKAGE_VERSION .([0-9]+)\\.([0-9]+)\\.([0-9]+)." "\\1;\\2;\\3" SUNDIALS_CONFIG_FILE_VERSION ${SUNDIALS_CONFIG_FILE_CONTENT})
  22. -    LIST(GET SUNDIALS_CONFIG_FILE_VERSION 0 SUNDIALS_MAJOR_VERSION)
  23. -    IF(SUNDIALS_MAJOR_VERSION)
  24. -      ADD_DEFINITIONS("-DSUNDIALS_MAJOR_VERSION=${SUNDIALS_MAJOR_VERSION}")
  25. -    ELSE()
  26. -      MESSAGE(FATAL_ERROR "Could not determine sundials version")
  27. -    ENDIF()
  28. -    LIST(GET SUNDIALS_CONFIG_FILE_VERSION 1 SUNDIALS_MINOR_VERSION)
  29. -    IF(SUNDIALS_MINOR_VERSION)
  30. -      ADD_DEFINITIONS("-DSUNDIALS_MINOR_VERSION=${SUNDIALS_MINOR_VERSION}")
  31. -    ELSE()
  32. -      MESSAGE(FATAL_ERROR "Could not determine sundials version")
  33. -    ENDIF()
  34. -    LIST(GET SUNDIALS_CONFIG_FILE_VERSION 2 SUNDIALS_PATCH_VERSION)
  35. -    MESSAGE(STATUS "Using sundials ${SUNDIALS_MAJOR_VERSION}.${SUNDIALS_MINOR_VERSION}.${SUNDIALS_PATCH_VERSION}")
  36.    ENDIF()
  37. +  INCLUDE_DIRECTORIES(${SUNDIALS_INCLUDE_DIR})
  38. +  # Extract the version number from sundials_config.h
  39. +  SET(SUNDIALS_CONFIG_FILE "${SUNDIALS_INCLUDE_DIR}/sundials/sundials_config.h")
  40. +  IF(NOT EXISTS "${SUNDIALS_CONFIG_FILE}")
  41. +    MESSAGE(FATAL_ERROR "Could not find sundials_config.h")
  42. +  ENDIF()
  43. +  FILE(READ "${SUNDIALS_CONFIG_FILE}" SUNDIALS_CONFIG_FILE_CONTENT)
  44. +  MESSAGE(STATUS "Found config file ${SUNDIALS_CONFIG_FILE}")
  45. +  STRING(REGEX MATCH "#define SUNDIALS_PACKAGE_VERSION .([0-9]+)\\.([0-9]+)\\.([0-9]+)." SUNDIALS_CONFIG_FILE_CONTENT ${SUNDIALS_CONFIG_FILE_CONTENT})
  46. +  STRING(REGEX REPLACE "#define SUNDIALS_PACKAGE_VERSION .([0-9]+)\\.([0-9]+)\\.([0-9]+)." "\\1;\\2;\\3" SUNDIALS_CONFIG_FILE_VERSION ${SUNDIALS_CONFIG_FILE_CONTENT})
  47. +  LIST(GET SUNDIALS_CONFIG_FILE_VERSION 0 SUNDIALS_MAJOR_VERSION)
  48. +  IF(SUNDIALS_MAJOR_VERSION)
  49. +    ADD_DEFINITIONS("-DSUNDIALS_MAJOR_VERSION=${SUNDIALS_MAJOR_VERSION}")
  50. +  ELSE()
  51. +    MESSAGE(FATAL_ERROR "Could not determine sundials version")
  52. +  ENDIF()
  53. +  LIST(GET SUNDIALS_CONFIG_FILE_VERSION 1 SUNDIALS_MINOR_VERSION)
  54. +  IF(SUNDIALS_MINOR_VERSION)
  55. +    ADD_DEFINITIONS("-DSUNDIALS_MINOR_VERSION=${SUNDIALS_MINOR_VERSION}")
  56. +  ELSE()
  57. +    MESSAGE(FATAL_ERROR "Could not determine sundials version")
  58. +  ENDIF()
  59. +  LIST(GET SUNDIALS_CONFIG_FILE_VERSION 2 SUNDIALS_PATCH_VERSION)
  60. +MESSAGE(STATUS "Using sundials ${SUNDIALS_MAJOR_VERSION}.${SUNDIALS_MINOR_VERSION}.${SUNDIALS_PATCH_VERSION}")
  61.  
  62.    FIND_LIBRARY(SUNDIALS_NVECSERIAL_LIB "sundials_nvecserial" NO_DEFAULT_PATH NO_SYSTEM_ENVIRONMENT_PATH PATHS ${SUNDIALS_LIBRARY_RELEASE_HOME} $ENV{SUNDIALS_ROOT}/lib)
  63.    IF(NOT SUNDIALS_NVECSERIAL_LIB)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement