diff --git a/Doxy.page.h b/Doxy.page.h new file mode 100644 index 0000000000000000000000000000000000000000..6823ef05afa29c17b12642955940b663d24877db --- /dev/null +++ b/Doxy.page.h @@ -0,0 +1,49 @@ +/*! + +\defgroup data_structures Data structures. +\defgroup debugging Project debugging API. +\defgroup hashing Hashing functions. +\defgroup logging Logging API. +\defgroup server Server API. +\defgroup network Networking. +\defgroup query_processing DNS query processing. +\defgroup zonedb Zone database. +\defgroup statistics Statistics module (optional). +\defgroup utils Utilities, constants and macros. +\defgroup tests Unit tests. + + +\mainpage CuteDNS API documentation. + +CuteDNS is an open-source, high-performace, purely authoritative DNS server. +- Multi-threaded architecture +- Supports all important DNS protocols + - Full and incremental zone transfers + - Dynamic zone updates + - EDNS0 and DNSSEC compliant (including NSEC3) + +<h2>Requirements</h2> +- ldns (at least 1.6.4): http://www.nlnetlabs.nl/projects/ldns/ +- liburcu (at least 0.4.5): http://lttng.org/urcu + +<h2>Installation</h2> + +\code +make +bin/cutedns samples/example.com.zone +\endcode + +<h2>API modules</h2> +- \ref data_structures +- \ref debugging +- \ref hashing +- \ref logging +- \ref server +- \ref network +- \ref query_processing +- \ref zonedb +- \ref statistics +- \ref utils +- \ref tests + + */ diff --git a/Doxyfile b/Doxyfile index 82d966dde90b0d027f8bec201664aee569a93548..49eff37737424483db6679551c0771dbb37a98a8 100644 --- a/Doxyfile +++ b/Doxyfile @@ -115,7 +115,7 @@ INLINE_INHERITED_MEMB = NO # path before files name in the file list and in the header files. If set # to NO the shortest path that makes the file name unique will be used. -FULL_PATH_NAMES = YES +FULL_PATH_NAMES = NO # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag # can be used to strip a user-defined part of the path. Stripping is @@ -312,25 +312,25 @@ EXTRACT_ALL = YES # If the EXTRACT_PRIVATE tag is set to YES all private members of a class # will be included in the documentation. -EXTRACT_PRIVATE = YES +EXTRACT_PRIVATE = NO # If the EXTRACT_STATIC tag is set to YES all static members of a file # will be included in the documentation. -EXTRACT_STATIC = YES +EXTRACT_STATIC = NO # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) # defined locally in source files will be included in the documentation. # If set to NO only classes defined in header files are included. -EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_CLASSES = NO # This flag is only useful for Objective-C code. When set to YES local # methods, which are defined in the implementation section but not in # the interface are included in the documentation. # If set to NO (the default) only methods in the interface are included. -EXTRACT_LOCAL_METHODS = YES +EXTRACT_LOCAL_METHODS = NO # If this flag is set to YES, the members of anonymous namespaces will be # extracted and appear in the documentation as a namespace called @@ -520,7 +520,7 @@ LAYOUT_FILE = # The QUIET tag can be used to turn on/off the messages that are generated # by doxygen. Possible values are YES and NO. If left blank NO is used. -QUIET = NO +QUIET = YES # The WARNINGS tag can be used to turn on/off the warning messages that are # generated by doxygen. Possible values are YES and NO. If left blank @@ -547,7 +547,7 @@ WARN_IF_DOC_ERROR = YES # wrong or incomplete parameter documentation, but not about the absence of # documentation. -WARN_NO_PARAMDOC = NO +WARN_NO_PARAMDOC = YES # The WARN_FORMAT tag determines the format of the warning messages that # doxygen can produce. The string should contain the $file, $line, and $text @@ -573,7 +573,7 @@ WARN_LOGFILE = # directories like "/usr/src/myproject". Separate the files or directories # with spaces. -INPUT = src/ +INPUT = src/ Doxy.page.h # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is diff --git a/Makefile b/Makefile index 3833cf5d4d4306d197ac48689e005cec4b85aa97..d00d197a2de87a0c52e0b6ef79e07affee6d9e47 100644 --- a/Makefile +++ b/Makefile @@ -59,9 +59,12 @@ $(OBJ_DIR)%.o : %.c @echo "$(COL_WHITE)Compiling $(COL_CYAN)$@: $(COL_BLUE)$< $(COL_END)" @$(CC) $(CFLAGS) $(addprefix -I ,$(INC_DIRS)) -c -o $@ $< -### Cleaning ### -.PHONY: clean +### Cleaning and documentation ### +.PHONY: clean doc clean: @echo "$(COL_WHITE)Cleaning object files...$(COL_RED)" @rm -vf ${OBJ_DIR}/*.o @echo "$(COL_WHITE)done$(COL_END)" + +doc: + @doxygen "Doxyfile"