[Dune] duneapps

Christian Engwer christi at uni-hd.de
Wed Sep 1 15:00:36 CEST 2004


Hallo,

ich hatte gestern eine ganz verrueckte Idee 8-) Ich habe in duneapps
einfach so make eingegeben.

Leider hat es nicht funktioniert. Ich habe schon ein wenig
aufgeraeumt, damit moeglichst viel baut, bzw. habe manche Teile auch
einfach erstmal rausgenommen.

Mir ist folgendes aufgefallen:
1) tester/main.cc kompiliert bei mir garnicht, ich habe auch nicht so
   ohne weiteres den Fehler finden koennen. Gleiches gilt fuer
   examples/integration/integrate.cc ...
   Vielleicht koennte jemand, der sich mit den beiden Programmen
   auskennt nochmal reinschauen. Ich weiss nicht, ob das ,,nur'' ein
   lokales Problem ist, oder wirklich was im Code nicht stimmt.
2) Manche Programme erwarten zusaetzliche Sachen, die nicht
   immer erwartet werden koennen.
   a) Albertgrid
      Ich habe einige Tests jetzt mal mit einen "if ALBERT" im
      Makefile.am versehen, was aber auch nicht so schoen ist. Ich
      denken, wenn wir Tests haben, die nicht eine spezielles Gitter
      testen sollten wir versuchen diese so zu schreieben, dass sie
      erstmal eines der Standardgitter serwenden, die bei Dune
      freihaus kommen.
   b) DIM und DIM_OF_WORLD
      für manche Gitter ist nötig diese anzugeben, aber nicht
      immer. Von Simplegrid z.B. kann ich mehrer Instanzen mit
      unterschiedlichen Dimensionen anlegen. Daher sollten wir nicht
      ein global eineindeutiges DIM verlangen. Ist dies in eine
      Programm dochmal der Fall sollten wir zumindest nicht einfach
      aussteigen, sondern lieber einen Fallback haben.
   Generell sollten wir dadrauf achten, dass der komplette Baum
   durchlaeuft, egal, welche Module man aktiviert hat oder
   nicht. D.h. Wenn ein Programm ein spezielles Modul benoetigt,
   sollte dieses mit if im Makefile.am erzwungen werden.
   Sollte ein Modul nicht zwingend erforderlich sein, sollte man mit
   den HAVE_ defines aus config.h im sourcefile entscheiden, was zu
   tun ist.

Sollte das alles so klappen, waere der Vorteil, dass man schnller
sieht, wo wirklich Fehler sind. Man koennte dann auch einfach, nachdem
man was an dune selbst geaendert hat mal ein ,,make clean all'' in
duneapps laufen lassen, um schon mal die schlimmsten Patzer zu finden.

Cheers Christian

PS: DuneApps: towards a trouble free ,,make all'' ;-)




More information about the Dune mailing list