Generate HTML documentation
This commit is contained in:
parent
a9148f8352
commit
47dd510384
@ -147,7 +147,7 @@ set(USE_SQLITE3 0)
|
||||
set(USE_LEVELDB 0)
|
||||
set(USE_REDIS 0)
|
||||
|
||||
OPTION(ENABLE_ANY_DATABASE "Enable any available database backends")
|
||||
OPTION(ENABLE_ANY_DATABASE "Enable any available database backends" True)
|
||||
OPTION(ENABLE_ALL_DATABASES "Enable all possible database backends")
|
||||
OPTION(ENABLE_SQLITE3 "Enable sqlite3 backend" True)
|
||||
OPTION(ENABLE_LEVELDB "Enable LevelDB backend")
|
||||
@ -217,7 +217,6 @@ if(NOT USE_SQLITE3 AND NOT USE_LEVELDB AND NOT USE_REDIS)
|
||||
message(SEND_ERROR "No database backends are configured, or none could be found")
|
||||
endif(NOT USE_SQLITE3 AND NOT USE_LEVELDB AND NOT USE_REDIS)
|
||||
|
||||
|
||||
include_directories(
|
||||
"${PROJECT_BINARY_DIR}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
@ -264,11 +263,13 @@ target_link_libraries(
|
||||
${LINK_LIBRARIES}
|
||||
)
|
||||
|
||||
add_subdirectory(doc)
|
||||
|
||||
# CPack
|
||||
|
||||
file(GLOB META_FILES RELATIVE "${CMAKE_HOME_DIRECTORY}" AUTHORS COPYING LICENSE.* README.rst)
|
||||
file(GLOB DOC_RST_FILES RELATIVE "${CMAKE_HOME_DIRECTORY}" doc/*.rst)
|
||||
file(GLOB DOC_HTML_FILES RELATIVE "${CMAKE_HOME_DIRECTORY}" doc/*.html)
|
||||
string(REPLACE ".rst" ".html" DOC_HTML_FILES "${DOC_RST_FILES}")
|
||||
file(GLOB DOC_IMAGE_FILES RELATIVE "${CMAKE_HOME_DIRECTORY}" doc/images/*)
|
||||
set(COLORS_FILES
|
||||
colors.txt
|
||||
|
1
doc/.gitignore
vendored
Normal file
1
doc/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
*.html
|
63
doc/CMakeLists.txt
Normal file
63
doc/CMakeLists.txt
Normal file
@ -0,0 +1,63 @@
|
||||
project(minetestmapper CXX)
|
||||
cmake_minimum_required(VERSION 2.6)
|
||||
cmake_policy(SET CMP0003 NEW)
|
||||
|
||||
if(NOT DEFINED USE_RST2HTML)
|
||||
set(USE_RST2HTML -1)
|
||||
endif(NOT DEFINED USE_RST2HTML)
|
||||
|
||||
SET(ENABLE_HTML_DOCUMENTATION_DOC "Convert rst documents to html or fail")
|
||||
SET(DISABLE_HTML_DOCUMENTATION_DOC "Don't convert rst documents to html")
|
||||
OPTION(ENABLE_HTML_DOCUMENTATION ${ENABLE_HTML_DOCUMENTATION_DOC} False)
|
||||
OPTION(DISABLE_HTML_DOCUMENTATION ${DISABLE_HTML_DOCUMENTATION_DOC} False)
|
||||
|
||||
# Find rst to html converter
|
||||
if(ENABLE_HTML_DOCUMENTATION AND DISABLE_HTML_DOCUMENTATION)
|
||||
message(WARNING "ENABLE_HTML_DOCUMENTATION and DISABLE_HTML_DOCUMENTATION are both enabled. Reinitializing rst to html conversion.")
|
||||
set(ENABLE_HTML_DOCUMENTATION False CACHE BOOL ${ENABLE_HTML_DOCUMENTATION_DOC} FORCE)
|
||||
set(DISABLE_HTML_DOCUMENTATION False CACHE BOOL ${DISABLE_HTML_DOCUMENTATION_DOC} FORCE)
|
||||
set(USE_RST2HTML -1)
|
||||
endif(ENABLE_HTML_DOCUMENTATION AND DISABLE_HTML_DOCUMENTATION)
|
||||
|
||||
find_package(Docutils)
|
||||
if(DOCUTILS_FOUND)
|
||||
message(STATUS "Python docutils found (rst2html: ${RST2HTML_EXECUTABLE})")
|
||||
else(DOCUTILS_FOUND)
|
||||
message(STATUS "Python docutils not found")
|
||||
endif(DOCUTILS_FOUND)
|
||||
|
||||
if(ENABLE_HTML_DOCUMENTATION)
|
||||
set(USE_RST2HTML 1)
|
||||
message(STATUS "Conversion of documentation to html enabled as requested")
|
||||
elseif(DISABLE_HTML_DOCUMENTATION)
|
||||
set(USE_RST2HTML 0)
|
||||
message(STATUS "Conversion of documentation to html disabled as requested")
|
||||
elseif(USE_RST2HTML EQUAL -1)
|
||||
# First time, and no preference specified: choose depending
|
||||
# on availability of rst2html
|
||||
if (DOCUTILS_FOUND)
|
||||
set(USE_RST2HTML 1)
|
||||
message(STATUS "Conversion of documentation to html enabled (because python docutils found)")
|
||||
else (DOCUTILS_FOUND)
|
||||
set(USE_RST2HTML 0)
|
||||
message(STATUS "Conversion of documentation to html disabled (because python docutils not found)")
|
||||
endif (DOCUTILS_FOUND)
|
||||
elseif(USE_RST2HTML EQUAL 0)
|
||||
message(STATUS "Conversion of documentation to html disabled (because disabled previously)")
|
||||
elseif(USE_RST2HTML EQUAL 1)
|
||||
message(STATUS "Conversion of documentation to html enabled (because enabled previously)")
|
||||
endif(ENABLE_HTML_DOCUMENTATION)
|
||||
|
||||
if(USE_RST2HTML AND NOT DOCUTILS_FOUND)
|
||||
message(SEND_ERROR "Conversion of documentation to html is enabled, but python docutils was not found.")
|
||||
endif(USE_RST2HTML AND NOT DOCUTILS_FOUND)
|
||||
|
||||
# Save USE_RST2HTML for next invocation
|
||||
set(USE_RST2HTML ${USE_RST2HTML} CACHE INTERNAL "Internal use - do not modify")
|
||||
|
||||
file(GLOB DOC_RST_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" *.rst)
|
||||
string(REPLACE ".rst" ".html" DOC_HTML_FILES "${DOC_RST_FILES}")
|
||||
|
||||
add_custom_target(htmldoc ALL DEPENDS ${DOC_HTML_FILES})
|
||||
RST2HTML(${DOC_RST_FILES})
|
||||
|
Loading…
x
Reference in New Issue
Block a user