-// Copyright (C) 2007
+// Copyright (C) 2007
// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
// Stefan Bund <g0dil@berlios.de>
framework however semi-automatically creates the necessary cross-reference information to
cross-link the different module documentations. The unit-tests as well are run on a per-module
basis.
-
+
\section Standard Build Configuration
When the \c SConsctruct and \c SConscript files are build using the default SENFSCons helpers,
by default all libraries and binaries are built. Some additional targets are
<dl><dt><tt>scons all_tests</tt></dt><dd>Build all unit tests</dd>
-
+
<dt><tt>scons all_docs</tt></dt><dd>Build documentation of all modules</dd>
-
+
<dt><tt>scons all</tt></dt><dd>Build all targets including binaries, libraries, documentation,
- tests andpossible further targets </dd>
+ tests and possible further targets </dd>
<dt><tt>scons -u doc</tt></dt><dd>Run from within a module directory will build the
documentation of that module</dd>
directory.
\see
- \ref sconstruct \n
- \ref sconscript \n
+ \ref sconstruct \n
+ \ref sconscript \n
\ref sconfig \n
\ref builder
*/
invokes the module \c SConscript files. To simplify the configuration, the SENFScons python
package is provided. This package has helper utilities to simplify standard tasks.
- In \c senfscons/SConstruct.tempalte you may find an example SConstruct file. Copy this to the
+ In \c senfscons/SConstruct.template you may find an example SConstruct file. Copy this to the
project root (under the name \c SConstruct) to start a new project. You can then modify and
configure it to your wishes.
The general structure of the \c SConstruct file is
\li make the \c senfscons directory accessible
\li tell the SENFScons infrastructure, which frameworks you intend to use and let SENFScons
- built a construction environment for you
+ built a construction environment for you
\li configure the construction environment
\li load module sconscript file
\li specify global build targets
The first part, <i>making the \c senfscons directory accessible</i> will always stay the
same. See the template file for how this is done.
-
+
<i>Simplifying the use of more complex frameworks</i> is one of the most important things why
SENFScons exists. If you only use very simple libraries, the configuration is quite
simple. However for more complex frameworks the configuration can get quite complicated. This is
and have a prefix of \c Use. See \ref use.
After all frameworks are configured, you can use SEFNScons.MakeEnvironment() to create a
- corretly configured construction environment.
+ correctly configured construction environment.
To <i>configure the construction environment</i> you can set Variables in the construction
environment. See the SCons manpage for a list of supported variables. Some additional variables
software. Just remember, you can use all of python and all of SCons here. SENFScons just
provides some additional helpers to make things simpler and more concise.
- \see
- \ref use \n
- \ref target
+ \see
+ \ref use \n
+ \ref target
*/
/** \page sconscript The Module 'SConscript' Files
targets of every module.
\see
- \ref target
+ \ref target
*/
/** \page sconfig The 'SConfig' File
-
+
To configure the build environment to the local environment, a \c SConfig file may be created in
the projects root directory. The supported parameters are
-
- <dl><dt>\c CXX</dt><dd>C++ compiler to use</dd>
- <dt>\c EXTRA_DEFINES</dt><dd>preprocessor symbols to be defined locally</dd>
- <dt>\c EXTRA_LIBS</dt><dd>additional libraries needed for a local build</dd></dl>
+
+ <dl>
+ <dt>\c CXX</dt>
+ <dd>C++ compiler to use</dd>
+ <dt>\c EXTRA_DEFINES</dt>
+ <dd>preprocessor symbols to be defined locally</dd>
+ <dt>\c EXTRA_LIBS</dt>
+ <dd>additional libraries needed for a local build</dd>
+ </dl>
Additionally, the \ref use define additional configuration variables which may be set here.
*/
// mode: c++
// fill-column: 100
// c-file-style: "senf"
+// indent-tabs-mode: nil
+// ispell-local-dictionary: "american"
// mode: flyspell
// mode: auto-fill
-// ispell-local-dictionary: "american"
// End: