diff options
Diffstat (limited to 'host/docs')
| -rw-r--r-- | host/docs/CMakeLists.txt | 152 | 
1 files changed, 76 insertions, 76 deletions
diff --git a/host/docs/CMakeLists.txt b/host/docs/CMakeLists.txt index 8a9c8b7f4..c65bc2c0a 100644 --- a/host/docs/CMakeLists.txt +++ b/host/docs/CMakeLists.txt @@ -12,8 +12,8 @@  ########################################################################  # Setup general Doxygen variables  ######################################################################## -FIND_PACKAGE(Doxygen) -SET(ENABLE_MANUAL_OR_DOXYGEN false) +find_package(Doxygen) +set(ENABLE_MANUAL_OR_DOXYGEN false)  ########################################################################  # Setup Manual (using Doxygen) @@ -26,102 +26,102 @@ LIBUHD_REGISTER_COMPONENT("Manual" ENABLE_MANUAL ON "DOXYGEN_FOUND" OFF OFF)  # If no:  # - Make FPGA Manual reference link to our website -IF(ENABLE_MANUAL) -    SET(ENABLE_MANUAL_OR_DOXYGEN true) +if(ENABLE_MANUAL) +    set(ENABLE_MANUAL_OR_DOXYGEN true)      # First: Set up UHD manual only -    FILE(GLOB manual_sources "*.dox") -    SET(DOXYGEN_DEPENDENCIES ${manual_sources}) -    SET(DOXYGEN_INPUT_DIRS "${CMAKE_SOURCE_DIR}/docs ${CMAKE_CURRENT_BINARY_DIR}") -    SET(DOXYGEN_DEP_COMPONENT "manual") -    SET(DOXYGEN_FPGA_MANUAL_REFERENCE "<a href=\"http://files.ettus.com/manual/md_fpga.html\">Part III: FPGA Manual</a>") -    SET(DOXYGEN_STRIP_EXTRA "") -    SET(DOXYGEN_EXCLUDE_DIRS "") -    IF(NOT ENABLE_RFNOC) -        SET(DOXYGEN_EXCLUDE_DIRS "${DOXYGEN_EXCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/include/uhd/rfnoc") -    ENDIF(NOT ENABLE_RFNOC) +    file(GLOB manual_sources "*.dox") +    set(DOXYGEN_DEPENDENCIES ${manual_sources}) +    set(DOXYGEN_INPUT_DIRS "${CMAKE_SOURCE_DIR}/docs ${CMAKE_CURRENT_BINARY_DIR}") +    set(DOXYGEN_DEP_COMPONENT "manual") +    set(DOXYGEN_FPGA_MANUAL_REFERENCE "<a href=\"http://files.ettus.com/manual/md_fpga.html\">Part III: FPGA Manual</a>") +    set(DOXYGEN_STRIP_EXTRA "") +    set(DOXYGEN_EXCLUDE_DIRS "") +    if(NOT ENABLE_RFNOC) +        set(DOXYGEN_EXCLUDE_DIRS "${DOXYGEN_EXCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/include/uhd/rfnoc") +    endif(NOT ENABLE_RFNOC)      # Now, check if we have the FPGA sources as well.      # If so, pull them in: -    IF(HAS_FPGA_SUBMODULE) -        FILE(GLOB_RECURSE fpga_manual_sources "${FPGA_SUBMODULE_DIR}/docs/*.md") -        LIST(APPEND manual_sources ${fpga_manual_sources}) -        SET(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${FPGA_SUBMODULE_DIR}/docs") -        SET(DOXYGEN_FPGA_MANUAL_REFERENCE "\\subpage md_fpga \"Part III: FPGA Manual\"") -	SET(DOXYGEN_STRIP_EXTRA "${FPGA_SUBMODULE_DIR}/docs") -    ENDIF(HAS_FPGA_SUBMODULE) -    CONFIGURE_FILE( +    if(HAS_FPGA_SUBMODULE) +        file(GLOB_RECURSE fpga_manual_sources "${FPGA_SUBMODULE_DIR}/docs/*.md") +        list(APPEND manual_sources ${fpga_manual_sources}) +        set(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${FPGA_SUBMODULE_DIR}/docs") +        set(DOXYGEN_FPGA_MANUAL_REFERENCE "\\subpage md_fpga \"Part III: FPGA Manual\"") +	set(DOXYGEN_STRIP_EXTRA "${FPGA_SUBMODULE_DIR}/docs") +    endif(HAS_FPGA_SUBMODULE) +    configure_file(          ${CMAKE_CURRENT_SOURCE_DIR}/mainpage.dox.in          ${CMAKE_CURRENT_BINARY_DIR}/mainpage.dox      @ONLY) -ENDIF(ENABLE_MANUAL) +endif(ENABLE_MANUAL)  ########################################################################  # Setup API documentation (using Doxygen)  ########################################################################  LIBUHD_REGISTER_COMPONENT("API/Doxygen" ENABLE_DOXYGEN ON "DOXYGEN_FOUND" OFF OFF) -OPTION(ENABLE_DOXYGEN_FULL "Use Doxygen to document the entire source tree (not just API)" OFF) -OPTION(ENABLE_DOXYGEN_DOT "Let Doxygen use dot (requires graphviz)" OFF) -OPTION(ENABLE_DOXYGEN_SHORTNAMES "Let Doxygen use shorter filenames (helps on Windows)" OFF) +option(ENABLE_DOXYGEN_FULL "Use Doxygen to document the entire source tree (not just API)" OFF) +option(ENABLE_DOXYGEN_DOT "Let Doxygen use dot (requires graphviz)" OFF) +option(ENABLE_DOXYGEN_SHORTNAMES "Let Doxygen use shorter filenames (helps on Windows)" OFF) -IF(LIBUHDDEV_PKG) -    SET(PKG_DOC_DIR share/doc/libuhd-dev) -ENDIF(LIBUHDDEV_PKG) +if(LIBUHDDEV_PKG) +    set(PKG_DOC_DIR share/doc/libuhd-dev) +endif(LIBUHDDEV_PKG) -IF(ENABLE_DOXYGEN) -    SET(ENABLE_MANUAL_OR_DOXYGEN true) +if(ENABLE_DOXYGEN) +    set(ENABLE_MANUAL_OR_DOXYGEN true)      #make doxygen directory depend on the header files -    FILE(GLOB_RECURSE header_files ${CMAKE_SOURCE_DIR}/include/*.hpp) -    FILE(GLOB_RECURSE h_files ${CMAKE_SOURCE_DIR}/include/*.h) -    LIST(APPEND header_files ${h_files}) -    SET(DOXYGEN_DEPENDENCIES ${DOXYGEN_DEPENDENCIES} ${header_files} "${CMAKE_SOURCE_DIR}/lib/rfnoc/nocscript/gen_basic_funcs.py") -    IF(ENABLE_DOXYGEN_FULL) -        SET(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/lib ${CMAKE_SOURCE_DIR}/python") -    ELSE(ENABLE_DOXYGEN_FULL) -        SET(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${CMAKE_SOURCE_DIR}/include") -    ENDIF(ENABLE_DOXYGEN_FULL) - -    SET(DOXYGEN_DEP_COMPONENT "doxygen") -ENDIF(ENABLE_DOXYGEN) +    file(GLOB_RECURSE header_files ${CMAKE_SOURCE_DIR}/include/*.hpp) +    file(GLOB_RECURSE h_files ${CMAKE_SOURCE_DIR}/include/*.h) +    list(APPEND header_files ${h_files}) +    set(DOXYGEN_DEPENDENCIES ${DOXYGEN_DEPENDENCIES} ${header_files} "${CMAKE_SOURCE_DIR}/lib/rfnoc/nocscript/gen_basic_funcs.py") +    if(ENABLE_DOXYGEN_FULL) +        set(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/lib ${CMAKE_SOURCE_DIR}/python") +    else(ENABLE_DOXYGEN_FULL) +        set(DOXYGEN_INPUT_DIRS "${DOXYGEN_INPUT_DIRS} ${CMAKE_SOURCE_DIR}/include") +    endif(ENABLE_DOXYGEN_FULL) + +    set(DOXYGEN_DEP_COMPONENT "doxygen") +endif(ENABLE_DOXYGEN)  ########################################################################  # Run Doxygen (on code and/or manual, depending on CMake flags)  ######################################################################## -IF(ENABLE_MANUAL_OR_DOXYGEN) +if(ENABLE_MANUAL_OR_DOXYGEN)      #generate the doxygen configuration file -    SET(CMAKE_CURRENT_BINARY_DIR_DOXYGEN ${CMAKE_CURRENT_BINARY_DIR}/doxygen) -    IF(ENABLE_DOXYGEN_DOT) -        SET(DOXYGEN_HAVE_DOT "YES") -    ELSE(ENABLE_DOXYGEN_DOT) -        SET(DOXYGEN_HAVE_DOT "NO") -    ENDIF(ENABLE_DOXYGEN_DOT) -    IF(ENABLE_DOXYGEN_SHORTNAMES) -        SET(DOXYGEN_SHORT_NAMES "YES") -    ELSE(ENABLE_DOXYGEN_SHORTNAMES) -        SET(DOXYGEN_SHORT_NAMES "NO") -    ENDIF(ENABLE_DOXYGEN_SHORTNAMES) - -    CONFIGURE_FILE( +    set(CMAKE_CURRENT_BINARY_DIR_DOXYGEN ${CMAKE_CURRENT_BINARY_DIR}/doxygen) +    if(ENABLE_DOXYGEN_DOT) +        set(DOXYGEN_HAVE_DOT "YES") +    else(ENABLE_DOXYGEN_DOT) +        set(DOXYGEN_HAVE_DOT "NO") +    endif(ENABLE_DOXYGEN_DOT) +    if(ENABLE_DOXYGEN_SHORTNAMES) +        set(DOXYGEN_SHORT_NAMES "YES") +    else(ENABLE_DOXYGEN_SHORTNAMES) +        set(DOXYGEN_SHORT_NAMES "NO") +    endif(ENABLE_DOXYGEN_SHORTNAMES) + +    configure_file(          ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in          ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile      @ONLY)      #make doxygen directory depend on the header files -    FILE(GLOB_RECURSE header_files ${CMAKE_SOURCE_DIR}/include/*.hpp) -    ADD_CUSTOM_COMMAND( +    file(GLOB_RECURSE header_files ${CMAKE_SOURCE_DIR}/include/*.hpp) +    add_custom_command(          OUTPUT ${CMAKE_CURRENT_BINARY_DIR_DOXYGEN} DEPENDS ${DOXYGEN_DEPENDENCIES}          COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile          COMMENT "Generating documentation with doxygen"      )      #make the doxygen generation a built-time dependency -    ADD_CUSTOM_TARGET(doxygen_docs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR_DOXYGEN}) +    add_custom_target(doxygen_docs ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR_DOXYGEN})      UHD_INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR_DOXYGEN} DESTINATION ${PKG_DOC_DIR} COMPONENT ${DOXYGEN_DEP_COMPONENT}) -ENDIF(ENABLE_MANUAL_OR_DOXYGEN) +endif(ENABLE_MANUAL_OR_DOXYGEN)  ########################################################################  # List of man page sources  ######################################################################## -SET(man_page_sources +set(man_page_sources      octoclock_firmware_burner.1      uhd_cal_rx_iq_balance.1      uhd_cal_tx_dc_offset.1 @@ -139,23 +139,23 @@ SET(man_page_sources  ########################################################################  # Setup man pages  ######################################################################## -FIND_PACKAGE(GZip) +find_package(GZip)  # No elegant way in CMake to reverse a boolean -IF(NOT WIN32) -    SET(NOT_WIN32 TRUE) -ENDIF(NOT WIN32) +if(NOT WIN32) +    set(NOT_WIN32 TRUE) +endif(NOT WIN32)  LIBUHD_REGISTER_COMPONENT("Man Pages" ENABLE_MAN_PAGES ON "GZIP_FOUND;NOT_WIN32" OFF OFF) -IF(ENABLE_MAN_PAGES) +if(ENABLE_MAN_PAGES)      #Generate man pages -    FOREACH(manfile ${man_page_sources}) +    foreach(manfile ${man_page_sources})          #make the gzip file depend on the text file -        STRING(REPLACE ".1" "" PROGRAM_NAME "${manfile}") -        SET(gzfile "${CMAKE_CURRENT_BINARY_DIR}/${manfile}.gz") -        SET(manfile "${CMAKE_CURRENT_SOURCE_DIR}/${manfile}") -        ADD_CUSTOM_COMMAND( +        string(REPLACE ".1" "" PROGRAM_NAME "${manfile}") +        set(gzfile "${CMAKE_CURRENT_BINARY_DIR}/${manfile}.gz") +        set(manfile "${CMAKE_CURRENT_SOURCE_DIR}/${manfile}") +        add_custom_command(              OUTPUT ${gzfile}              DEPENDS ${manfile}              COMMAND ${GZIP_EXECUTABLE} -9 -cf ${manfile} > ${gzfile} @@ -163,10 +163,10 @@ IF(ENABLE_MAN_PAGES)          )          #make the man page target depend on the gz file -        LIST(APPEND man_page_gz_files ${gzfile}) +        list(APPEND man_page_gz_files ${gzfile})          UHD_INSTALL(FILES ${gzfile} DESTINATION ${PKG_MAN_DIR} COMPONENT manpages) -    ENDFOREACH(manfile ${man_page_sources}) +    endforeach(manfile ${man_page_sources})      #make the man pages a build-time dependency -    ADD_CUSTOM_TARGET(man_page_gzips ALL DEPENDS ${man_page_gz_files}) -ENDIF(ENABLE_MAN_PAGES) +    add_custom_target(man_page_gzips ALL DEPENDS ${man_page_gz_files}) +endif(ENABLE_MAN_PAGES)  | 
