You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

magicmind.cmake 2.4 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. find_library(MAGICMIND_LIBRARY
  2. NAMES libmagicmind.so
  3. PATHS ${ALTER_LD_LIBRARY_PATHS} "$ENV{NEUWARE_HOME}/lib64" ${CMAKE_INSTALL_PREFIX}
  4. HINTS ${ALTER_LIBRARY_PATHS}
  5. PATH_SUFFIXES lib lib64
  6. DOC "MAGICMIND library." )
  7. if(MAGICMIND_LIBRARY STREQUAL "MAGICMIND_LIBRARY-NOTFOUND")
  8. message(FATAL_ERROR "Can not find MAGICMIND Library")
  9. endif()
  10. get_filename_component(__found_magicmind_root "${MAGICMIND_LIBRARY}/../../" REALPATH)
  11. find_path(MAGICMIND_INCLUDE_DIR
  12. NAMES common.h
  13. HINTS "$ENV{NEUWARE_HOME}/include" ${__found_magicmind_root}
  14. PATH_SUFFIXES include
  15. DOC "Path to MAGICMIND include directory." )
  16. if(MAGICMIND_INCLUDE_DIR STREQUAL "MAGICMIND_INCLUDE_DIR-NOTFOUND")
  17. message(FATAL_ERROR "Can not find MAGICMIND Library")
  18. endif()
  19. file(STRINGS "${MAGICMIND_INCLUDE_DIR}/common.h" MAGICMIND_MAJOR REGEX "^#define MM_MAJOR_VERSION [0-9]+.*$")
  20. file(STRINGS "${MAGICMIND_INCLUDE_DIR}/common.h" MAGICMIND_MINOR REGEX "^#define MM_MINOR_VERSION [0-9]+.*$")
  21. file(STRINGS "${MAGICMIND_INCLUDE_DIR}/common.h" MAGICMIND_PATCH REGEX "^#define MM_PATCH_VERSION [0-9]+.*$")
  22. string(REGEX REPLACE "^#define MM_MAJOR_VERSION ([0-9]+).*$" "\\1" MAGICMIND_VERSION_MAJOR "${MAGICMIND_MAJOR}")
  23. string(REGEX REPLACE "^#define MM_MINOR_VERSION ([0-9]+).*$" "\\1" MAGICMIND_VERSION_MINOR "${MAGICMIND_MINOR}")
  24. string(REGEX REPLACE "^#define MM_PATCH_VERSION ([0-9]+).*$" "\\1" MAGICMIND_VERSION_PATCH "${MAGICMIND_PATCH}")
  25. set(MAGICMIND_VERSION_STRING "${MAGICMIND_VERSION_MAJOR}.${MAGICMIND_VERSION_MINOR}.${MAGICMIND_VERSION_PATCH}")
  26. add_library(libmagicmind SHARED IMPORTED)
  27. set_target_properties(libmagicmind PROPERTIES
  28. IMPORTED_LOCATION ${MAGICMIND_LIBRARY}
  29. INTERFACE_INCLUDE_DIRECTORIES ${MAGICMIND_INCLUDE_DIR}
  30. )
  31. message(STATUS "Found MAGICMIND: ${__found_magicmind_root} (found version: ${MAGICMIND_VERSION_STRING})")
  32. find_library(MAGICMIND_RUNTIME_LIBRARY
  33. NAMES libmagicmind_runtime.so
  34. PATHS "${__found_magicmind_root}/lib64"
  35. )
  36. if(MAGICMIND_RUNTIME_LIBRARY STREQUAL "MAGICMIND_RUNTIME_LIBRARY-NOTFOUND")
  37. message(FATAL_ERROR "Can not find MAGICMIND_RUNTIME Library")
  38. else()
  39. message(STATUS "Found MAGICMIND_RUNTIME: ${MAGICMIND_RUNTIME_LIBRARY}")
  40. endif()
  41. add_library(libmagicmind_runtime SHARED IMPORTED)
  42. set_target_properties(libmagicmind_runtime PROPERTIES
  43. IMPORTED_LOCATION ${MAGICMIND_RUNTIME_LIBRARY}
  44. )