CMakeLists.txt 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. set(LIB_SRCS src/hwmon.cpp
  2. src/sensor.cpp
  3. src/temp.cpp
  4. src/fan.cpp
  5. src/pwmfan.cpp
  6. src/loader.cpp
  7. src/guibase.cpp
  8. src/config.cpp)
  9. set(LIB_PRIVATE_LIBRARIES Qt5::Qml
  10. KF5::Auth
  11. KF5::ConfigCore)
  12. set(LIB_PUBLIC_LIBRARIES Qt5::Core)
  13. if(NOT NO_SYSTEMD)
  14. set(LIB_SRCS ${LIB_SRCS}
  15. src/systemdcommunicator.cpp)
  16. set(LIB_PRIVATE_LIBRARIES ${LIB_PRIVATE_LIBRARIES}
  17. Qt5::DBus)
  18. endif(NOT NO_SYSTEMD)
  19. find_package(Qt5Qml REQUIRED)
  20. find_package(KF5 COMPONENTS Auth Config REQUIRED)
  21. include_directories(${Qt5Qml_INCLUDE_DIRS})
  22. add_library(fancontrol_gui_lib SHARED ${LIB_SRCS})
  23. target_link_libraries(fancontrol_gui_lib PRIVATE ${LIB_PRIVATE_LIBRARIES} PUBLIC ${LIB_PUBLIC_LIBRARIES})
  24. target_compile_features(fancontrol_gui_lib PRIVATE cxx_lambdas)
  25. generate_export_header(fancontrol_gui_lib)
  26. if(INSTALL_SHARED)
  27. install(TARGETS fancontrol_gui_lib ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
  28. endif(INSTALL_SHARED)