CMakeLists.txt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. set(TARGET addressbook)
  2. set(CMAKE_INCLUDE_CURRENT_DIR ON)
  3. set(CMAKE_AUTOMOC ON)
  4. set(CMAKE_AUTORCC ON)
  5. find_package(Qt5 COMPONENTS Core Quick Network REQUIRED)
  6. set(GENERATED_HEADERS
  7. addressbookclient.h
  8. address.h
  9. contact.h
  10. contacts.h
  11. globalenums.h
  12. job.h
  13. listframe.h
  14. phonenumber.h
  15. simpleresult.h
  16. globalenums.h)
  17. file(GLOB PROTO_FILES ABSOLUTE ${CMAKE_CURRENT_SOURCE_DIR}/proto/addressbook.proto)
  18. generate_qtprotobuf(TARGET ${TARGET}
  19. OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/generated
  20. PROTO_FILES ${PROTO_FILES}
  21. GENERATED_HEADERS ${GENERATED_HEADERS})
  22. file(GLOB SOURCES main.cpp
  23. addressbookengine.cpp
  24. universallistmodel.cpp
  25. universallistmodelbase.cpp)
  26. file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/../addressbookserver/cert.pem DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
  27. add_executable(${TARGET} ${SOURCES} resources.qrc)
  28. add_dependencies(${TARGET} ${QtProtobufGen})
  29. target_include_directories(${TARGET} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/generated)
  30. target_link_libraries(${TARGET} ${GRPC_LIBRARY_TARGET} ${PROTOBUF_LIBRARY_TARGET} ${QtProtobufGen} Qt5::Quick Qt5::Qml)