CMakeLists.txt 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # This file is part of Desktop App Toolkit,
  2. # a set of libraries for developing nice desktop applications.
  3. #
  4. # For license and copyright information please follow this link:
  5. # https://github.com/desktop-app/legal/blob/master/LEGAL
  6. add_library(external_qr_code_generator INTERFACE IMPORTED GLOBAL)
  7. add_library(desktop-app::external_qr_code_generator ALIAS external_qr_code_generator)
  8. if (DESKTOP_APP_USE_PACKAGED)
  9. find_library(DESKTOP_APP_QRCODE_LIBRARIES NAMES qrcodegencpp)
  10. find_path(DESKTOP_APP_QRCODE_INCLUDE_DIRS NAMES qrcodegen.hpp QrCode.hpp PATH_SUFFIXES qrcodegencpp qrcodegen)
  11. if (DESKTOP_APP_QRCODE_LIBRARIES AND DESKTOP_APP_QRCODE_INCLUDE_DIRS)
  12. target_include_directories(external_qr_code_generator SYSTEM INTERFACE ${DESKTOP_APP_QRCODE_INCLUDE_DIRS})
  13. target_link_libraries(external_qr_code_generator INTERFACE ${DESKTOP_APP_QRCODE_LIBRARIES})
  14. return()
  15. endif()
  16. endif()
  17. add_library(external_qr_code_generator_bundled STATIC)
  18. init_target(external_qr_code_generator_bundled "(external)")
  19. set(qr_loc ${third_party_loc}/QR)
  20. set(qr_src ${qr_loc}/cpp)
  21. nice_target_sources(external_qr_code_generator_bundled ${qr_src}
  22. PRIVATE
  23. qrcodegen.cpp
  24. qrcodegen.hpp
  25. )
  26. target_include_directories(external_qr_code_generator_bundled
  27. PUBLIC
  28. ${qr_src}
  29. )
  30. target_link_libraries(external_qr_code_generator
  31. INTERFACE
  32. external_qr_code_generator_bundled
  33. )