## ## Licensed to the Apache Software Foundation (ASF) under one ## or more contributor license agreements. See the NOTICE file ## distributed with this work for additional information ## regarding copyright ownership. The ASF licenses this file ## to you under the Apache License, Version 2.0 (the ## "License"); you may not use this file except in compliance ## with the License. You may obtain a copy of the License at ## ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, ## software distributed under the License is distributed on an ## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ## KIND, either express or implied. See the License for the ## specific language governing permissions and limitations ## under the License. ## # The dipatch book is written in markdown, this generates a HTML version. # Requires pandoc, available on yum-based systems as pandoc. set(src ${CMAKE_CURRENT_SOURCE_DIR}) set(bin ${CMAKE_CURRENT_BINARY_DIR}) # Generate the schema chapter of the book. set(schema, "${CMAKE_SOURCE_DIR}/python/qpid_router/management/qdrouterd.json") set(py_management ${CMAKE_SOURCE_DIR}/python/qpid_dispatch_internal/management) add_custom_command( OUTPUT schema.md COMMAND ${RUN} -s ${src}/schema_md.py 1> schema.md DEPENDS ${py_management}/schema_doc.py ${py_management}/schema.py ${schema} ${src}/schema_md.py ${schema}) set(BOOK ${src}/introduction.md ${src}/using.md ${src}/addressing.md ${src}/amqp-mapping.md ${bin}/schema.md) # Install markdown documentation in the doc directory. install_doc(FILES ${BOOK} DESTINATION ${QD_DOC_INSTALL_DIR}) if(USE_PANDOC) set(PD_ARGS --standalone --toc --number-sections -f markdown -V "title=Qpid Dispatch Router Book") # Generate a book with the given suffix. Extra arguments are passed to pandoc macro(generate_book SUFFIX) set(OUTPUT ${bin}/book${SUFFIX}) add_custom_command( OUTPUT ${OUTPUT} COMMAND ${PANDOC} ${PD_ARGS} -o ${OUTPUT} ${ARGN} ${BOOK} DEPENDS man ${BOOK} ) install_doc(FILES ${OUTPUT} DESTINATION ${QD_DOC_INSTALL_DIR}) set(BOOKS ${BOOKS} ${OUTPUT}) endmacro() generate_book(.html) # Complete HTML document. generate_book(.html.in --template ${src}/site-html.pd) # Headless fragment for Qpid website. if (USE_PDFLATEX) generate_book(.pdf) # Complete PDF document. endif(USE_PDFLATEX) endif(USE_PANDOC) # Target to generate all chapters and books. add_custom_target(book DEPENDS ${BOOK} ${BOOKS}) add_dependencies(book man) # Note: adding man to book DEPENDS does not work on cmake 2.6.4 add_dependencies(doc book) # Note: adding man to book DEPENDS does not work on cmake 2.6.4