diff options
author | David Sommerseth <dazo@users.sourceforge.net> | 2009-09-22 14:30:39 +0200 |
---|---|---|
committer | David Sommerseth <dazo@users.sourceforge.net> | 2009-09-22 14:30:39 +0200 |
commit | bd75afcc2d7c4714bee568b7fed37f840aaee9ac (patch) | |
tree | 8f05d9498528f2c8cf374c5f5f4fbb7c0dccf07c /doxygen | |
parent | 02e5c0d3d43295124fe4c284bdaa0d2b4217e87d (diff) | |
download | eurephia-bd75afcc2d7c4714bee568b7fed37f840aaee9ac.tar.gz eurephia-bd75afcc2d7c4714bee568b7fed37f840aaee9ac.tar.xz eurephia-bd75afcc2d7c4714bee568b7fed37f840aaee9ac.zip |
Improved Doxygen generation, added index page
Diffstat (limited to 'doxygen')
-rw-r--r-- | doxygen/Doxygen.conf | 16 | ||||
-rw-r--r-- | doxygen/doxygen_mainpage.h | 129 |
2 files changed, 137 insertions, 8 deletions
diff --git a/doxygen/Doxygen.conf b/doxygen/Doxygen.conf index 18b9ab3..7737845 100644 --- a/doxygen/Doxygen.conf +++ b/doxygen/Doxygen.conf @@ -25,20 +25,20 @@ DOXYFILE_ENCODING = UTF-8 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. -PROJECT_NAME = "eurephia" +PROJECT_NAME = "eurephia v1.0 - Developer" # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = "eurephia v1.0" +# PROJECT_NUMBER = 0 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. # If a relative path is entered, it will be relative to the location # where doxygen was started. If left blank the current directory will be used. -OUTPUT_DIRECTORY = ./doxygen +OUTPUT_DIRECTORY = eurephia-devel # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create # 4096 sub-directories (in 2 levels) under the output directory of each output @@ -114,7 +114,7 @@ FULL_PATH_NAMES = YES # If left blank the directory from which doxygen is run is used as the # path to strip. -STRIP_FROM_PATH = +STRIP_FROM_PATH = ../ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells @@ -350,7 +350,7 @@ HIDE_UNDOC_CLASSES = NO # If set to NO (the default) these declarations will be included in the # documentation. -HIDE_FRIEND_COMPOUNDS = NO +HIDE_FRIEND_COMPOUNDS = YES # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any # documentation blocks found inside the body of a function. @@ -557,7 +557,7 @@ WARN_FORMAT = "$file:$line: $text" # and error messages should be written. If left blank the output is written # to stderr. -WARN_LOGFILE = +WARN_LOGFILE = doxygen.log #--------------------------------------------------------------------------- # configuration options related to the input files @@ -568,7 +568,7 @@ WARN_LOGFILE = # directories like "/usr/src/myproject". Separate the files or directories # with spaces. -INPUT = common/ database/ database/sqlite database/sqlite/administration eurephiadm/ eurephiadm/commands plugin/ plugin/firewall plugin/firewall/iptables utils/ +INPUT = ../common/ ../database/ ../database/sqlite ../database/sqlite/administration ../eurephiadm/ ../eurephiadm/commands ../plugin/ ../plugin/firewall ../plugin/firewall/iptables ../utils/ . # 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 @@ -597,7 +597,7 @@ RECURSIVE = NO # excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. -EXCLUDE = .git/ test/ doxygen/ database/eurephiadb-driver_template.c +EXCLUDE = ../.git/ ../test/ ../doxygen/eurephia-devel ../database/eurephiadb-driver_template.c # The EXCLUDE_SYMLINKS tag can be used select whether or not files or # directories that are symbolic links (a Unix filesystem feature) are excluded diff --git a/doxygen/doxygen_mainpage.h b/doxygen/doxygen_mainpage.h new file mode 100644 index 0000000..af2de0d --- /dev/null +++ b/doxygen/doxygen_mainpage.h @@ -0,0 +1,129 @@ +/* mainpage.h -- Doxygen main page - only to be used by doxygen + * + * GPLv2 only - Copyright (C) 2008 + * David Sommerseth <dazo@users.sourceforge.net> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; version 2 + * of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +/** + * @mainpage eurephia v1.0 developers reference + * @section overview Overview of the source tree + * eurephia is built up in a modular way and code reuse is an important element. The source + * tree is divided into several smaller parts where each part or module is located. + * + * The project is written strictly in C, but the administration utility makes use of XSLT + * as a template engine to display reports. + * + * - <b>common/</b> + * - This is where all source code used by all modules should be expected to reside + * + * - <b>database/</b> + * - Everything connected to the database API is found here. The generic database modules + * will also be located in the root of this directory. Each database driver must reside + * in a separate directory + * + * - <b>database/sqlite/</b> + * - The SQLite3 database driver (edb-sqlite.so) is located here + * - @ref edb-sqlite.c + * + * - <b>eurephiadm/</b> + * - Everything connected to the eurephiadm, the console based administration utility. + * - @ref eurephiadm.c + * + * - <b>eurephia/command/</b> + * - eurephiadm is built up by a set of commands. Each command is found in separate + * files here. + * + * - <b>plugin/</b> + * - The OpenVPN plug-in (eurephia-auth.so) is located in this directory + * - @ref eurephia-auth.c + * + * - <b>plugin/firewall/</b> + * - The generic parts for the firewall integration of the plug-in + * + * - <b>plugin/firewall/iptables/</b> + * - The iptables "driver" (efw-iptables.so) for the firewall integration + * - @ref efw-iptables.c + * + * - <b>utils/</b> + * - Utilities which is not installed during make install. The eurephia_init program + * resides here together with saltdecode. eurephia_init is used to configure a new + * eurephia database, while saltdecode is used for debugging and will decode + * the password salt hashing information. + * - @ref eurephia_init.c saltdecode.c + * + * <hr> + * @section build Building eurephia and installing + * Run the <i>./configure</i> script to prepare the build. This script requires + * <a href="http://www.cmake.org">CMake</a> (at least version 2.6) to be installed. The configure + * script will require some parameters, depending on which features being prepared in the build. + * For a complete overview of all parameters, see <i>./configure --help</i> + * + * Then run <i>make</i> to do the build. + * + * To install eurephia, Run <i>make install</i>. + * <hr> + * @section patches How to contribute + * Contributions to the source code will be very much appreciated. Patches should be based + * on the master branch in the git tree. Patches should be uploaded to the project web site + * on sourceforge.net + * + * http://sourceforge.net/tracker/?group_id=236344&atid=1099762 + * + * Contributed patches should be prepared by using the + * <a href="http://www.kernel.org/pub/software/scm/git/docs/git-format-patch.html">git format-patch</a> + * command. + * + * <hr> + * @section locations Locations + * - <b>Website</b> + * - http://www.eurephia.net/ + * + * - <b>Community places</b> + * - http://sourceforge.net/projects/eurephia + * - IRC: irc.freenode.net, @#eurephia + * + * - <b>Trackers</b> + * - Bugs: http://sourceforge.net/tracker/?group_id=236344&atid=1099760 + * - Patches: http://sourceforge.net/tracker/?group_id=236344&atid=1099762 + * + * - <b>Source code</b> + * - git repository: git://eurephia.git.sourceforge.net/gitroot/eurephia/eurephia + * - Browse the source code: http://eurephia.git.sourceforge.net/git/gitweb-index.cgi + * + * <hr> + * @section contact Contact + * - David Sommerseth (irc: dazo) <dazo@users.sourceforge.net> + * + * <hr> + * @section requirements Requirements + * + * Generic requirements for building eurephia + * - <a href="http://www.cmake.org/">CMake</a> + * + * The following header files and libraries is required to build eurephia: + * + * - <b>eurephia-auth</b> - OpenVPN authentication plug-in + * - <a href="http://www.sqlite.org">SQLite3</a> + * - <a href="http://www.openvpn.net/index.php/open-source/downloads.html">OpenVPN source tree</a> + * + * - <b>eurephia administration utility</b> (eurephiadm and eurephia_init) + * - <a href="http://www.sqlite.org">SQLite3</a> + * - <a href="http://www.xmlsoft.org/">libxml2</a> + * - <a href="http://xmlsoft.org/XSLT/">libxslt2</a> + * + */ |