diff options
author | lloyd <[email protected]> | 2011-04-18 15:32:33 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2011-04-18 15:32:33 +0000 |
commit | 590ba658562924d3aba0147690c4110d63b4f4ae (patch) | |
tree | 1348f14553fa8d484f2ba5ebdc58ddf6452d198e /src | |
parent | e62da81415097726b2f8689dadbc645de278eeb6 (diff) |
Integrate building docs using Sphinx and Doxygen into the makefile
proper. Enabled using --use-sphinx and --use-doxygen options, both of
which default to false. If Sphinx isn't enabled, the ReST sources are
copied directly (a case where having a very readable source format
comes in handy...)
The reference manual (either Sphinx processed into HTML, or the raw
source) and the Doxygen output (if enabled) are copied into the doc
directory upon install on Unix. Currently not done on Windows, the
install target is fairly bogus there currently, and hasn't been tested
in some time.
Diffstat (limited to 'src')
-rw-r--r-- | src/build-data/botan.doxy.in | 66 | ||||
-rw-r--r-- | src/build-data/makefile/nmake.in | 6 | ||||
-rw-r--r-- | src/build-data/makefile/unix.in | 27 | ||||
-rw-r--r-- | src/build-data/makefile/unix_shr.in | 32 |
4 files changed, 45 insertions, 86 deletions
diff --git a/src/build-data/botan.doxy.in b/src/build-data/botan.doxy.in index 2f76a756b..52021c01f 100644 --- a/src/build-data/botan.doxy.in +++ b/src/build-data/botan.doxy.in @@ -1,12 +1,9 @@ # Doxyfile 1.5.4 -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- -DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = Botan PROJECT_NUMBER = %{version} -OUTPUT_DIRECTORY = doc/doxygen +OUTPUT_DIRECTORY = %{doc_output_dir}/doxygen +DOXYFILE_ENCODING = UTF-8 CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES @@ -33,6 +30,7 @@ SIP_SUPPORT = NO DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES TYPEDEF_HIDES_STRUCT = NO + #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -63,6 +61,7 @@ MAX_INITIALIZER_LINES = 30 SHOW_USED_FILES = YES SHOW_DIRECTORIES = NO FILE_VERSION_FILTER = + #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- @@ -73,6 +72,7 @@ WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_FORMAT = "$file:$line: $text" WARN_LOGFILE = + #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- @@ -112,7 +112,7 @@ IGNORE_PREFIX = # configuration options related to the HTML output #--------------------------------------------------------------------------- GENERATE_HTML = YES -HTML_OUTPUT = html +HTML_OUTPUT = . HTML_FILE_EXTENSION = .html HTML_HEADER = HTML_FOOTER = @@ -129,56 +129,7 @@ DISABLE_INDEX = NO ENUM_VALUES_PER_LINE = 4 GENERATE_TREEVIEW = NO TREEVIEW_WIDTH = 250 -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- -GENERATE_LATEX = NO -LATEX_OUTPUT = latex -LATEX_CMD_NAME = latex -MAKEINDEX_CMD_NAME = makeindex -COMPACT_LATEX = NO -PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = -PDF_HYPERLINKS = NO -USE_PDFLATEX = NO -LATEX_BATCHMODE = NO -LATEX_HIDE_INDICES = NO -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- -GENERATE_RTF = NO -RTF_OUTPUT = rtf -COMPACT_RTF = NO -RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- -GENERATE_MAN = NO -MAN_OUTPUT = man -MAN_EXTENSION = .3 -MAN_LINKS = NO -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- -GENERATE_XML = NO -XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = -XML_PROGRAMLISTING = YES -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- -GENERATE_AUTOGEN_DEF = NO -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- -GENERATE_PERLMOD = NO -PERLMOD_LATEX = NO -PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = + #--------------------------------------------------------------------------- # Configuration options related to the preprocessor #--------------------------------------------------------------------------- @@ -191,6 +142,7 @@ INCLUDE_FILE_PATTERNS = PREDEFINED = EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES + #--------------------------------------------------------------------------- # Configuration::additions related to external references #--------------------------------------------------------------------------- @@ -199,6 +151,7 @@ GENERATE_TAGFILE = ALLEXTERNALS = NO EXTERNAL_GROUPS = YES PERL_PATH = /usr/bin/perl + #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- @@ -226,6 +179,7 @@ DOT_TRANSPARENT = YES DOT_MULTI_TARGETS = NO GENERATE_LEGEND = YES DOT_CLEANUP = YES + #--------------------------------------------------------------------------- # Configuration::additions related to the search engine #--------------------------------------------------------------------------- diff --git a/src/build-data/makefile/nmake.in b/src/build-data/makefile/nmake.in index 9ca071da3..3e20d988a 100644 --- a/src/build-data/makefile/nmake.in +++ b/src/build-data/makefile/nmake.in @@ -17,6 +17,7 @@ DESTDIR = %{prefix} ### Aliases for Common Programs AR = %{ar_command} +COPY = copy CD = @cd ECHO = @echo INSTALL = %{install_cmd_exec} @@ -30,8 +31,6 @@ RMDIR = @rmdir ### File Lists CHECK = check -DOCS = %{doc_files} - HEADERS = %{include_files} LIBOBJS = %{lib_objs} @@ -67,6 +66,9 @@ $(BOTAN_LIB): $(LIBOBJS) !Endif ### Fake Targets +docs: +%{build_doc_commands} + clean: $(RM) %{build_dir}\lib\* %{build_dir}\checks\* $(RM) *.manifest *.exp *.dll diff --git a/src/build-data/makefile/unix.in b/src/build-data/makefile/unix.in index ea51c999e..1a1128f81 100644 --- a/src/build-data/makefile/unix.in +++ b/src/build-data/makefile/unix.in @@ -24,6 +24,8 @@ PKGCONFIG = %{botan_pkgconfig} # Aliases for Common Programs AR = %{ar_command} +COPY = cp +COPY_R = cp -r CD = @cd ECHO = @echo INSTALL_CMD_EXEC = %{install_cmd_exec} @@ -38,8 +40,6 @@ RM_R = @rm -rf # File Lists CHECK = %{check_prefix}check -DOCS = %{doc_files} - HEADERS = %{include_files} LIBOBJS = %{lib_objs} @@ -71,12 +71,12 @@ $(STATIC_LIB): $(LIBOBJS) $(RANLIB) $(STATIC_LIB) # Fake Targets -.PHONY = doxygen clean distclean install static +.PHONY = docs clean distclean install static static: $(STATIC_LIB) -doxygen: - doxygen %{build_dir}/botan.doxy +docs: +%{build_doc_commands} clean: $(RM_R) %{build_dir}/lib/* %{build_dir}/checks/* @@ -84,22 +84,23 @@ clean: distclean: clean $(RM_R) %{build_dir} - $(RM_R) %{doc_src_dir}/doxygen %{doc_src_dir}/botan.doxy $(RM) Makefile* $(CONFIG_SCRIPT) $(PKGCONFIG) -install: $(LIBRARIES) +install: $(LIBRARIES) docs $(ECHO) "Installing Botan into $(DESTDIR)... " $(MKDIR_INSTALL) $(DOCDIR) + $(COPY_R) %{doc_output_dir}/* $(DOCDIR) + $(MKDIR_INSTALL) $(HEADERDIR) - $(MKDIR_INSTALL) $(LIBDIR) - $(MKDIR_INSTALL) $(BINDIR) - $(MKDIR_INSTALL) $(PKGCONF_DIR) - for i in $(DOCS); do \ - $(INSTALL_CMD_DATA) $$i $(DOCDIR); \ - done for i in $(HEADERS); do \ $(INSTALL_CMD_DATA) $$i $(HEADERDIR); \ done + + $(MKDIR_INSTALL) $(LIBDIR) $(INSTALL_CMD_DATA) $(STATIC_LIB) $(LIBDIR) + + $(MKDIR_INSTALL) $(BINDIR) $(INSTALL_CMD_EXEC) $(CONFIG_SCRIPT) $(BINDIR) + + $(MKDIR_INSTALL) $(PKGCONF_DIR) $(INSTALL_CMD_DATA) $(PKGCONFIG) $(PKGCONF_DIR) diff --git a/src/build-data/makefile/unix_shr.in b/src/build-data/makefile/unix_shr.in index 06a7c3354..c311d9924 100644 --- a/src/build-data/makefile/unix_shr.in +++ b/src/build-data/makefile/unix_shr.in @@ -26,6 +26,8 @@ PKGCONFIG = %{botan_pkgconfig} # Aliases for Common Programs AR = %{ar_command} +COPY = cp +COPY_R = cp -r CD = @cd ECHO = @echo INSTALL_CMD_EXEC = %{install_cmd_exec} @@ -40,8 +42,6 @@ RM_R = @rm -rf # File Lists CHECK = %{check_prefix}check -DOCS = %{doc_files} - HEADERS = %{include_files} LIBOBJS = %{lib_objs} @@ -83,14 +83,14 @@ $(SHARED_LIB): $(LIBOBJS) $(LN) $(SHARED_LIB) $(SYMLINK) # Fake Targets -.PHONY = doxygen clean distclean install static shared +.PHONY = docs clean distclean install static shared static: $(STATIC_LIB) shared: $(SHARED_LIB) -doxygen: - doxygen %{build_dir}/botan.doxy +docs: +%{build_doc_commands} clean: $(RM_R) %{build_dir}/lib/* %{build_dir}/checks/* @@ -98,24 +98,26 @@ clean: distclean: clean $(RM_R) %{build_dir} - $(RM_R) %{doc_src_dir}/doxygen %{doc_src_dir}/botan.doxy $(RM) Makefile* $(CONFIG_SCRIPT) $(PKGCONFIG) -install: $(LIBRARIES) +install: $(LIBRARIES) docs $(ECHO) "Installing Botan into $(DESTDIR)... " $(MKDIR_INSTALL) $(DOCDIR) + $(COPY_R) %{doc_output_dir}/* $(DOCDIR) + $(MKDIR_INSTALL) $(HEADERDIR) - $(MKDIR_INSTALL) $(LIBDIR) - $(MKDIR_INSTALL) $(BINDIR) - $(MKDIR_INSTALL) $(PKGCONF_DIR) - for i in $(DOCS); do \ - $(INSTALL_CMD_DATA) $$i $(DOCDIR); \ - done for i in $(HEADERS); do \ $(INSTALL_CMD_DATA) $$i $(HEADERDIR); \ done + + $(MKDIR_INSTALL) $(LIBDIR) $(INSTALL_CMD_DATA) $(STATIC_LIB) $(LIBDIR) - $(INSTALL_CMD_EXEC) $(CONFIG_SCRIPT) $(BINDIR) $(INSTALL_CMD_EXEC) $(SHARED_LIB) $(LIBDIR) - $(INSTALL_CMD_DATA) $(PKGCONFIG) $(PKGCONF_DIR) $(CD) $(LIBDIR); $(LN) $(SHARED_LIB) $(SYMLINK) + $(CD) $(LIBDIR); $(LN) $(SHARED_LIB) $(SONAME) + + $(MKDIR_INSTALL) $(BINDIR) + $(INSTALL_CMD_EXEC) $(CONFIG_SCRIPT) $(BINDIR) + + $(MKDIR_INSTALL) $(PKGCONF_DIR) + $(INSTALL_CMD_DATA) $(PKGCONFIG) $(PKGCONF_DIR) |