gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


Makefile

[ Top ] [ Makefile Entries ]

NAME

Makefile

PURPOSE

This is the main Makefile of the GiBUU code.

you may compile your code via

   make [VAR=val | ...]

with VAR = ...

FORT:

  • FORT = ifx,ifort,gfortran,...
  • FORT = /path/to/compiler/XXX

MODE:

  • MODE = opt0,opt1,opt2,opt3
  • MODE = opt4
  • MODE = opt5
  • MODE = lto
  • MODE = prof
  • MODE = callGraph

STATIC:

  • STATIC = 0|1

FPE:

  • FPE = 0|1|2|3

ARCH:

  • ARCH = 32

ARGS:

  • ARGS = "..."

withROOT:

  • withROOT=1

withHepMC3:

  • withHEPMC3=1

NOTES

The most aggresive optimization you can get with:

  • make FORT=gfortran-... ARGS="-march=native" ...
  • make FORT=gfortran-... ARGS="-march=native" MODE=lto ...
  • make FORT=ifort-... ARGS="-xHost" ...
  • make FORT=ifort-... ARGS="-xHost" MODE=ipo ...


all

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make all

PURPOSE

This is the main target. It builds the GiBUU executable.


bw

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make bw

PURPOSE

Black and white compiling. Useful for piping compilation output to a log file.


clean

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make clean

PURPOSE

Removes all "#*" and "*~" files from the tree. These are files generated by editing the code.


cleanEXE

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make cleanEXE

PURPOSE

Remove all "*.x" files from the tree.


cleanOBJ

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make cleanOBJ

PURPOSE

Remove all "*.o" and "*.mod" files from the directory "objects".


cleanLIB

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make cleanLIB

PURPOSE

Remove all "*.a" files from the directory "objects/LIB/lib".


veryclean

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make veryclean

PURPOSE

First calls the targets "clean", "cleanEXE" and "cleanOBJ", then removes all "*.o" and "*.mod" files from the tree, removes all symlinks in the objects/ directory and deletes version.f90.


superclean

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make superclean

PURPOSE

First calls the target "veryclean", then removes all "fort.*" files from the tree.


svnclean

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make svnclean

PURPOSE

Remove all files which are not included in the svn repository.

NOTES

This is very dangerous, since it removes all unversioned files in the GiBUU directory! Don't use it unless you know exactly what you're doing!


jobcard

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make jobcard

PURPOSE

This target builds a master job card in testRun/jobCards, which includes all switches.


doku

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make doku

PURPOSE

This target rebuilds the whole html documentation by calling ROBODoc.


showDoku

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make showdoku

PURPOSE

This target opens the documentation with firefox.


svnupdate

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make svnupdate

PURPOSE

This target performs an svn update of the code and input.


update

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make update

PURPOSE

This target performs an svn update and thereafter recompiles the whole code.


allTests

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make allTests

PURPOSE

This target builds all test cases (the testRun directories are listed in "Makefile.testRun.List").


renew

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make renew

PURPOSE

If dramatical changes were done on the tree structure, directories added or deleted etc you should call "make renew" before you call "make".

This target implies a call of "veryclean". Then in every directory the corresponding local Makefile is deleted and finally updated.


cleanTestRun

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make cleanTestRun

PURPOSE

Clean up the directory "testRun" (by removing files like *.dat, *.tex, fort.*, main.run and waitBar.eps).


CallGraph

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make CallGraph

PURPOSE

Create call-graph stuff.

NOTES

This target is not working from scratch. You have to call "make renew" and then "make CallGraph FORT=gfortran" or similar, since only gfortran reports the necessary RTL files.


PlotCallGraph

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make PlotCallGraph

PURPOSE

Creates a plot of the call graph in svg format.

NOTES

Requires the 'graphviz' tools (www.graphviz.org/). The perl script 'egypt' v1.10 is used (www.gson.org/egypt/). Only works with gfortran.


ModGraph

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make ModGraph

PURPOSE

Creates a plot of the module dependency graph in svg format.

NOTES

Requires the 'graphviz' tools (www.graphviz.org/). Only works with gfortran.


version

[ Top ] [ Makefile ] [ Makefile Entries ]

NAME

make version

PURPOSE

Renew version info.