CMakeLists.txt 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. include(Documentation)
  2. set(LINGUAS
  3. de
  4. es
  5. fr
  6. it
  7. ja
  8. nl
  9. pl
  10. pt_BR
  11. pt
  12. )
  13. set(ENTITIES
  14. apt.ent
  15. apt-verbatim.ent
  16. ../vendor/${CURRENT_VENDOR}/apt-vendor.ent
  17. )
  18. if(WITH_DOC)
  19. add_docbook(apt-doc HTML TEXT ALL
  20. DOCUMENTS
  21. guide.dbk
  22. offline.dbk
  23. INSTALL ${CMAKE_INSTALL_DOCDIR}/../apt-doc
  24. LINGUAS ${LINGUAS}
  25. DEPENDS ${ENTITIES}
  26. )
  27. add_docbook(libapt-pkg-doc HTML TEXT ALL
  28. DOCUMENTS
  29. design.dbk
  30. dpkg-tech.dbk
  31. files.dbk
  32. method.dbk
  33. INSTALL ${CMAKE_INSTALL_DOCDIR}/../libapt-pkg-doc
  34. LINGUAS ${LINGUAS}
  35. DEPENDS ${ENTITIES}
  36. )
  37. find_package(Doxygen REQUIRED)
  38. file(GLOB_RECURSE apt_pkg "../apt-pkg/*.h" "../apt-pkg/*.cc")
  39. configure_file(Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
  40. add_custom_command(
  41. OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/doxygen.stamp
  42. COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
  43. COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_CURRENT_BINARY_DIR}/doxygen.stamp
  44. DEPENDS ${apt_pkg} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
  45. )
  46. add_custom_target(apt-doxygen ALL
  47. DEPENDS ${PROJECT_BINARY_DIR}/doc/doxygen.stamp
  48. )
  49. install(DIRECTORY ${PROJECT_BINARY_DIR}/doc/doxygen/html
  50. DESTINATION ${CMAKE_INSTALL_DOCDIR}/../libapt-pkg-doc
  51. PATTERN "*.map" EXCLUDE
  52. PATTERN "*.md5" EXCLUDE
  53. )
  54. endif()
  55. add_docbook(apt-man MANPAGE ALL
  56. DOCUMENTS
  57. apt.8.xml
  58. apt-cache.8.xml
  59. apt-cdrom.8.xml
  60. apt.conf.5.xml
  61. apt-config.8.xml
  62. apt-extracttemplates.1.xml
  63. apt-ftparchive.1.xml
  64. apt-get.8.xml
  65. apt-key.8.xml
  66. apt-mark.8.xml
  67. apt_preferences.5.xml
  68. apt-secure.8.xml
  69. apt-sortpkgs.1.xml
  70. sources.list.5.xml
  71. DEPENDS ${ENTITIES}
  72. LINGUAS ${LINGUAS}
  73. )
  74. add_update_po4a(update-po4a po/${PROJECT_NAME}-doc.pot "po/header.pot.txt")
  75. add_subdirectory(examples)