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.