Advertisement
gessha

Model CMakeLists v1

Feb 14th, 2024
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CMake 1.25 KB | None | 0 0
  1. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
  2. set(PLUGIN "Model")
  3.  
  4. set(
  5.     SRC
  6.     plugin.cpp
  7.     model.cpp
  8. )
  9.  
  10. set(CMAKE_AUTOMOC ON)
  11.  
  12. add_library(${PLUGIN} MODULE ${SRC})
  13. set_target_properties(${PLUGIN} PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PLUGIN})
  14. qt5_use_modules(${PLUGIN} Qml Quick DBus)
  15.  
  16. ## model requires ggml
  17.  
  18. # Find ggml include directory
  19. find_path(GGML_INCLUDE_DIR NAMES ggml/ggml.h PATH_SUFFIXES include)
  20.  
  21. # Find ggml library
  22. find_library(GGML_LIBRARIES NAMES ggml PATH_SUFFIXES lib)
  23.  
  24. message(STATUS "ggml include dir=${GGML_INCLUDE_DIR}")
  25. message(STATUS "ggml lib=${GGML_LIBRARIES}")
  26.  
  27. # Check if ggml is found
  28. if (GGML_INCLUDE_DIR AND GGML_LIBRARIES)
  29.     include_directories(${GGML_INCLUDE_DIR})
  30.     target_link_libraries(${PLUGIN} ${GGML_LIBRARIES})
  31. else()
  32.     message(FATAL_ERROR "ggml not found. Please make sure it is installed or provide the correct paths.")
  33. endif()
  34.  
  35. ## model requires ggml
  36.  
  37. execute_process(
  38.     COMMAND dpkg-architecture -qDEB_HOST_MULTIARCH
  39.     OUTPUT_VARIABLE ARCH_TRIPLET
  40.     OUTPUT_STRIP_TRAILING_WHITESPACE
  41. )
  42.  
  43. set(QT_IMPORTS_DIR "/lib/${ARCH_TRIPLET}")
  44.  
  45. install(TARGETS ${PLUGIN} DESTINATION ${QT_IMPORTS_DIR}/${PLUGIN}/)
  46. install(FILES qmldir DESTINATION ${QT_IMPORTS_DIR}/${PLUGIN}/)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement