Skip to content
Snippets Groups Projects
Commit 45b16e89 authored by Thimo Neubauer's avatar Thimo Neubauer
Browse files

added internal grid check. Doesn't check much yet but the

infrastructure exists now

[[Imported from SVN: r84]]
parent 7690949c
No related branches found
No related tags found
No related merge requests found
# $Id$
# don't follow the full GNU-standard
AUTOMAKE_OPTIONS = foreign
# need automake >= 1.5
AUTOMAKE_OPTIONS = foreign 1.5
SUBDIRS = common fem grid operator solver lib istl doc m4
......
DUNE-library
============
[descriptional text missing]
Getting started
---------------
The easiest way to use Dune is to rename this directory "dune" if it
has a different name and tell the application about it. That's
it. Really. :)
To compile a small library Dune has to check several components of
your system. Run
./configure
to commence those tests. Don't worry about messages telling you that
libraries are missing: they are only needed for grid-self-checks we
need for developing.
You can use
./configure --prefix=PATH
if you don't want Dune to be installed into /usr/local
If you want to install the Dune-headers globally on your system run
the following as "root":
After configuration
./configure && make install
make
make install
build and install Dune (you may need root-permissions for the install
part depending on the prefix set)
License
-------
......
......@@ -10,11 +10,87 @@ following programs installed on your system:
libtool
Run the script
For the documentation to build you'll need doxygen and latex
installed.
Dune also features a self-test. As some grid-components (e.g. Albert,
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.
Getting started
---------------
If these preliminaries are met, you should run the script
./autogen.sh
to get a ./configure-script.
which calls the GNU autoconf/automake to create a ./configure-script
and the Makefiles. The configure-script is automatically called and
you're ready to perform a
make
to build the library and documentation. Dune can be installed into
your system via
make install
You can provide a --prefix=PATH parameter to autogen to install the
components into PATH/lib, PATH/include, ... instead of the default
/usr/local/lib, /usr/local/include
Passing options to ./configure
------------------------------
autogen.sh also calls the newly created configure-script to
conveniently pass on options about the used compiler. Thus you'll have
to provide autogen.sh any options you want configure to get, e.g.
./autogen.sh --with-albert=... --with-ug=...
Choosing the compiler and the options
-------------------------------------
The selection of the compiler works as follows: if --gnu or --intel is
passed to autogen it reads the content of gcc.opts or icc.opts to get
the default compiler flags. With the option --optim you can switch the
compiler-specific optimization parameters on.
If you want to change the compiler options to your favourites you can
either
- adapt the appropriate .opts-file and rerun autogen.sh. Please don't
commit this changed file to CVS if you're not sure if the options
work for everybody.
- copy an existing .opts-file to a new name, change the options and
use
./autogen.sh --opts=my.opts
More info
---------
See
./autogen.sh --help
and (if it exists)
./configure --help
for further options.
The full build-system is described in the doc/Buildsystem
$Id$
......
......@@ -88,7 +88,7 @@ libtoolize --force
# prepare everything
echo "--> aclocal..."
aclocal$AMVERS
aclocal$AMVERS -I m4
# applications should provide a config.h for now
#echo "--> autoheader..."
......
......@@ -9,6 +9,7 @@ AC_CONFIG_SRCDIR([grid/common/grid.hh])
# Checks for programs.
AC_PROG_CXX
AC_LANG_PUSH([C++])
# don't build shared libs per default, this is way better for debugging...
AC_DISABLE_SHARED
......@@ -21,6 +22,20 @@ AC_CHECK_PROGS([BIBTEX], [bibtex], [true])
AC_CHECK_PROGS([DVIPDF], [dvipdf], [true])
AC_CHECK_PROGS([DVIPS], [dvips], [true])
echo
echo Checking for libraries the self-test could use:
echo
# -- check for other grid-libs so that they may be included into tests
# Albert-check
DUNE_PATH_ALBERT
DUNE_PATH_ALBERTA
# UG-check
DUNE_PATH_UG
DUNE_PATH_AMIRAMESH
# Yaspgrid-check
DUNE_MPI
# create symlink for consistent paths even when $(top_srcdir) is not
# called dune/ (if filesystem/OS supports symlinks)
AC_PROG_LN_S
......@@ -61,6 +76,12 @@ fi
# preset variable to path such that #include <dune/...> works
AC_SUBST(AM_CPPFLAGS)
echo
echo Note: the libraries checked for above are only used for the self-test of Dune.
echo The library itself will build and the headers will work even if
echo Albert, UG, Amiramesh, MPI, etc. cannot be found.
echo
# write output
AC_CONFIG_FILES([Makefile
common/Makefile
......@@ -71,8 +92,11 @@ AC_CONFIG_FILES([Makefile
fem/operator/Makefile
grid/Makefile
grid/albertgrid/Makefile
grid/bsgrid/Makefile
grid/common/Makefile
grid/sgrid/Makefile
grid/test/Makefile
grid/uggrid/Makefile
grid/yaspgrid/Makefile
istl/Makefile
istl/doc/Makefile
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment