diff --git a/doc/Makefile.am b/doc/Makefile.am
index 3c52869d68b72797facf4d2ca19d0dfc5cd430c9..4cb49f7b93109120ccda8fc80d99353fcfcdee79 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -18,7 +18,7 @@ CURDIR=doc
 BASEDIR=..
 
 # install the html pages
-docdir=$(datadir)/doc/dune
+docdir=$(datadir)/doc/dune-common
 doc_DATA = $(PAGES)
 EXTRA_DIST = $(PAGES)
 
diff --git a/doc/devel/Makefile.am b/doc/devel/Makefile.am
index 47eefc6f1b6ed38649ca6c9489e3bc4aa495b9b4..0fa0e673a2753c15bf83d6b959a83d0b7ac4ddb3 100644
--- a/doc/devel/Makefile.am
+++ b/doc/devel/Makefile.am
@@ -12,7 +12,7 @@ BASEDIR=../..
 CURDIR=doc/devel
 
 # install the html pages
-docdir=$(datadir)/doc/dune/devel
+docdir=$(datadir)/doc/dune-common/devel
 doc_DATA = $(PAGES)
 EXTRA_DIST= $(PAGES)
 
diff --git a/doc/doxygen/Doxyfile b/doc/doxygen/Doxyfile
index ada548ff7c33a9e273af4b89c49bd04c523a59a2..54ac5a70e7b93d813bea512a6f00c9c94c8a3330 100644
--- a/doc/doxygen/Doxyfile
+++ b/doc/doxygen/Doxyfile
@@ -130,7 +130,7 @@ STRIP_FROM_INC_PATH    =
 # (but less readable) file names. This can be useful is your file systems 
 # doesn't support long names like on DOS, Mac, or CD-ROM.
 
-SHORT_NAMES            = NO
+SHORT_NAMES            = YES
 
 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
 # will interpret the first line (until the first dot) of a JavaDoc-style 
diff --git a/doc/doxygen/Makefile.am b/doc/doxygen/Makefile.am
index 897d8945dd4d64cbae5228a19b791993f1a0b283..9301cc0e67ef9b52a7c03c0168cbc0bb0fdb2c78 100644
--- a/doc/doxygen/Makefile.am
+++ b/doc/doxygen/Makefile.am
@@ -1,25 +1,22 @@
 # $Id$
 
 # distribute these files:
-DOXY_DIST = Doxyfile Doxydep \
-  doxy-footer.html doxy-header.html dune-doxy.css mainpage
+#DOXY_DIST = Doxyfile Doxydep \
+#  doxy-footer.html doxy-header.html dune-doxy.css mainpage
 
 if BUILD_DOCS
-  WHAT = bestpractice.html doxygen-tag
+  DOXYGENTAG = doxygen-tag
+  WHAT = bestpractice.html
 endif
 
-#we need this in the distribution
-EXTRA_DIST = bestpractice.html $(DOXY_DIST)
-
-DISTCLEANFILES = doxygen.log
+DISTCLEANFILES = doxygen.log doxygen-tag
 
-all: $(WHAT)
+all: $(WHAT) html
 
 # setting like in dune-web
 BASEDIR=../..
 CURDIR=doc/doxygen
 EXTRAINSTALL = doxygen.log
-
 # EXTRAINSTALL in the html subdirectory
 DOXYGENINSTALL = *.html *.css *.png *.gif
 
@@ -33,6 +30,24 @@ DOYXFILE_OVERWRITE = echo "HTML_HEADER = $(DOXYGENHEADER)"; \
   echo "HTML_STYLESHEET = $(DOXYGENSTYLESHEET)";
 endif
 
+
+#we need this in the distribution
+EXTRA_DIST = $(WHAT) html $(DOXYGENHEADER)
+
+doxygendir = $(datadir)/doc/dune-common/doxygen
+doxygen_DATA = $(WHAT)
+
+install-data-local: html
+	$(mkinstalldirs) $(DESTDIR)/$(doxygendir); \
+	list="$(srcdir)/html/*.html $(srcdir)/html/*.css $(srcdir)/html/*.png $(srcdir)/html/*.gif"; \
+	for p in $$list; do \
+		$(install_sh_DATA) $$p $(DESTDIR)/$(doxygendir); \
+	done
+
+uninstall-local:
+	rm -f $(DESTDIR)/$(doxygendir)/*.html $(DESTDIR)/$(doxygendir)/*.css \
+	$(DESTDIR)/$(doxygendir)/*.png $(DESTDIR)/$(doxygendir)/*.gif
+
 # what files does the doxygen-generated stuff depend on (find-syntax)
 DEPENDON = -name \*.cc -o -name \*.hh -o -name \*.png
 
@@ -43,14 +58,18 @@ doxy-header.html:BASEDIR=../../..
 # check dependency ourself to be robust
 doxygen-tag: FORCE $(DOXYGENHEADER)
 	set -e; \
+	if test -e Doxyfile; then \
 	if test ! -e doxygen-tag || test x"`find $(top_srcdir) \( $(DEPENDON) \) -a -cnewer doxygen-tag -print`" != x ; then \
 	  echo Running doxygen. This may take a while... ; \
 	  ( cat Doxyfile; $(DOYXFILE_OVERWRITE) ) > Doxyfile.tmp; \
 	  $(DOXYGEN) Doxyfile.tmp > doxygen.log 2>&1 <&- ; \
 	  rm -f Doxyfile.tmp; \
 	  touch doxygen-tag ; \
+	fi; \
 	fi
 
+html: $(DOXYGENTAG)
+
 # how to install the doxygen documentation
 doxygen-install:
 	if test -d $(DUNEWEBDIR) && test -r $(DUNEWEBDIR)/Make.global ; then \