1 # Define a build target that builds a no-op executable, so we can ensure 2 # a target for generator expression use regardless of other changes elsewhere 3 # in the build system 4 add_executable(db_dir_info db_dir_info.c) 5 set_target_properties(db_dir_info PROPERTIES FOLDER "DocBook") 6 7 # We need various configuration files set up for DocBook processing tools 8 add_subdirectory(resources) 9 10 # Rework CMake binary and source paths for DocBook templates - if we 11 # have spaces in the paths, they will cause a problem. 12 string(REPLACE " " "%20" DOCBOOK_BINARY_DIR "${CMAKE_BINARY_DIR}") 13 string(REPLACE " " "%20" DOCBOOK_SOURCE_DIR "${CMAKE_SOURCE_DIR}") 14 15 # Files for PDF products 16 if(BRLCAD_EXTRADOCS_PDF) 17 # Apache FOP needs a couple of config files set up 18 set(srcdir ${CMAKE_CURRENT_SOURCE_DIR}) 19 configure_file(${CMAKE_SOURCE_DIR}/doc/docbook/fop.xconf.in ${CMAKE_BINARY_DIR}/doc/docbook/fop.xconf) 20 DISTCLEAN("${CMAKE_BINARY_DIR}/doc/docbook/fop.xconf") 21 endif(BRLCAD_EXTRADOCS_PDF) 22 23 # For the html files, we need brlcad.css 24 add_custom_command( 25 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/brlcad_css-${CMAKE_CFG_INTDIR}-done 26 COMMAND "${CMAKE_COMMAND}" -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/css/brlcad.css $<TARGET_FILE_DIR:db_dir_info>/${RBIN_DIR}/${DOC_DIR}/html/css/brlcad.css 27 COMMAND "${CMAKE_COMMAND}" -E touch ${CMAKE_CURRENT_BINARY_DIR}/brlcad_css-${CMAKE_CFG_INTDIR}-done 28 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/css/brlcad.css 29 ) 30 add_custom_target(brlcad_css DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/brlcad_css-${CMAKE_CFG_INTDIR}-done) 31 set_target_properties(brlcad_css PROPERTIES FOLDER "DocBook") 32 install(FILES css/brlcad.css DESTINATION ${DOC_DIR}/html/css) 33 DISTCLEAN(${CMAKE_CFG_INTDIR}/${DOC_DIR}/html/css/brlcad.css) 34 35 # Include CMake macros for DocBook. 36 include(${BRLCAD_SOURCE_DIR}/misc/CMake/DocBook.cmake) 37 38 add_subdirectory(articles) 39 add_subdirectory(books) 40 add_subdirectory(devguides) 41 add_subdirectory(lessons) 42 add_subdirectory(presentations) 43 add_subdirectory(specifications) 44 add_subdirectory(system) 45 46 set(ignore_files 47 CMakeLists.txt 48 README 49 README.DB_authors_notes 50 css/brlcad.css 51 db_dir_info.c 52 fop.xconf.in 53 log4j.properties 54 ) 55 CMAKEFILES(${ignore_files}) 56 57 # Local Variables: 58 # tab-width: 8 59 # mode: cmake 60 # indent-tabs-mode: t 61 # End: 62 # ex: shiftwidth=2 tabstop=8