Commit de360731 authored by Marco Agnese's avatar Marco Agnese

make README, INSTALL and COPYING consistent with dune-istl

parent 204f88c4
Pipeline #753 passed with stage
in 35 minutes and 17 seconds
This diff is collapsed.
LICENSE.md
\ No newline at end of file
......@@ -14,8 +14,8 @@ list of available modules.
To compile the modules Dune has to check several components of
your system and whether prerequisites within the modules are met. For
the ease of users we have designed a custom build system on top of the
automake tools. Run
the ease of users we have designed a custom build system on top of CMake.
Run
./dune-common/bin/dunecontrol all
......@@ -37,7 +37,7 @@ need to run
to install Dune (you may need root-permissions for the install
part depending on the prefix set)
A more comprehensive introduction to the build system can be found in [2].
A more comprehensive introduction to the build system can be found in [0].
Passing options to the build process
------------------------------------
......@@ -45,50 +45,31 @@ Passing options to the build process
Using the dunecontrol script the following atomic commands can be
executed:
- autogen (runs autogen in each module, only needed when downloaded
via svn)
- configure (runs the configure tests for each module
- exec (executes a command in each module directory)
- make (runs make for each module)
- update (updates the svn version)
- configure (runs the CMake configuration tests for each module)
- exec (executes a command in each module source directory)
- bexec (executes a command in each module build directory)
- make (builds each module)
- update (updates the Git or Subversion version)
The composite command all simply runs autogen, configure and make for
The composite command all simply runs configure and make for
each module.
As it is often not convenient (and for the target all impossible) to
specify the options for each command as parameters after the call, one
can pass the options via file specified by the --opts=<file>
option. For each atomic command one specify the options via a ine
<COMMANY_UPPERCASE>_FLAGS=<flags> # e.g.: MAKE_FLAGS=install
The available options for make and svn are the natural ones. The
configure commands available can be found by issuing
dunecontrol --only=dune-common configure --help
and for autogen by
dunecontrol --only=dune-common autogen --help
(In the svn version this has to be calles after running autogen.)
As it is often not convenient to specify the desired options after
the duncontroll call, one can pass the options via a file specified
by the --opts=<file> option. Specify the options via the variable
CMAKE_FLAGS=<flags>
An example of an options file is
# use a special compiler (g++ version 3.4) and install to a custom
# directory, default is /usr/local/bin
CONFIGURE_FLAGS="CXX=g++-3.4 --prefix='/tmp/Hu Hu'"
# Set the default target of make to install. Now the call above will
# not just build the DUNE modules but also install it
MAKE_FLAGS=install
# The default versions of automake and autogen are not sufficient
# therefore we need to specify what versions to use
AUTOGEN_FLAGS="--ac=2.59 --am=1.9
# use a special compiler (g++ version 5.0),
# install to a custom directory, default is /usr/local/bin,
# disable the external library SuperLU,
# and use Ninja-build instead of make as the build-tool
CMAKE_FLAGS="-DCMAKE_CXX_COMPILER=g++-5 -DCMAKE_INSTALL_PREFIX='/tmp/HuHu' -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=true -GNinja"
Links
-----
0. http://www.dune-project.org/doc/installation-notes.html
1. http://www.dune-project.org/download.html
2. http://dune-project.org/doc/buildsystem/buildsystem.pdf
0. https://www.dune-project.org/doc/installation
1. https://dune-project.org/releases
This diff is collapsed.
DUNE-library
============
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox
for solving partial differential equations with grid-based methods.
The main intention is to create slim interfaces allowing an efficient use of
legacy and/or new libraries. Using C++ techniques DUNE allows to use very
different implementation of the same concept (i.e. grid, solver, ...) under
a common interface with a very low overhead.
DUNE was designed with flexibility in mind. It supports easy discretization
using methods, like Finite Elements, Finite Volume and also Finite
Differences. Through separation of data structures DUNE allows fast Linear
Algebra like provided in the ISTL module, or usage of external libraries
like blas.
This package contains the basic DUNE grid classes.
Dependencies
------------
dune-grid depends on the following software packages
- pkg-config
- icc (C/C++) >= 7.0 or GNU C, C++ >=3.4
- dune-common module
The following software is recommend but optional:
- MPI (either OpenMPI, lam, or mpich suffice)
- External grids:
* ALBERTA [4]
* UG [5]
For a full explanation of the DUNE installation process please read
the installation notes [0]. The following introduction is meant for
the impatient.
License
-------
The DUNE-library and headers are licensed under version 2 of the GNU
General Public License, with the so-called "runtime exception", as
follows:
As a special exception, you may use the DUNE source files as part
of a software library or application without restriction.
Specifically, if other files instantiate templates or use macros or
inline functions from one or more of the DUNE source files, or you
compile one or more of the DUNE source files and link them with
other files to produce an executable, this does not by itself cause
the resulting executable to be covered by the GNU General Public
License. This exception does not however invalidate any other
reasons why the executable file might be covered by the GNU General
Public License.
This licence clones the one of the libstc++ library. For further
implications of this library please see their licence page [3]
See the file COPYING for full copying permissions.
Installation
------------
Short installation instructions can be found in file INSTALL. For the
full instructions please see [0].
Links
-----
0. http://www.dune-project.org/doc/installation-notes.html
1. http://www.dune-project.org/download.html
2. http://dune-project.org/doc/buildsystem/buildsystem.pdf
3. http://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.license
4. http://www.alberta-fem.de
5. http://www.iwr.uni-heidelberg.de/frame/iwrwikiequipment/software/ug
Preparing the SVN-sources
=========================
Additional to the software mentioned in README you'll need the
following programs installed on your system:
automake >= 1.5
autoconf >= 2.50
libtool
For the documentation to build you'll need doxygen, wml, convert and latex
installed.
Dune also features a self-test. As some grid-components (e.g. Alberta,
UG) depend on external libraries their self-tests will only run if
those libraries are found. The pathes would then need to be passed via
--with-...= parameters.
Important! If you don't want to develop Dune itself you won't need to
provide external components! The Dune-library and -headers are
independent of other libraries, instead the applications can choose
what parts to use.
DUNE-library
============
DUNE, the Distributed and Unified Numerics Environment is a modular toolbox
for solving partial differential equations with grid-based methods.
The main intention is to create slim interfaces allowing an efficient use of
legacy and/or new libraries. Using C++ techniques DUNE allows to use very
different implementation of the same concept (i.e. grid, solver, ...) under
a common interface with a very low overhead.
DUNE was designed with flexibility in mind. It supports easy discretization
using methods, like Finite Elements, Finite Volume and also Finite
Differences. Through separation of data structures DUNE allows fast Linear
Algebra like provided in the ISTL module, or usage of external libraries
like blas.
This package contains the basic DUNE grid classes.
More information
----------------
Check dune-common for more details concerning dependencies, known bugs,
license and installation.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment