Guidelines for Packaging NTCC Modules


Guidance for Makefiles:


Guidance for Naming Conventions:

To avoid potential name conflicts of public f90 modules and public header files between various packages, follow these conventions:

file type name destination usage
header <name>.h <PREFIX>/include/<package> #include "<package>/<name>.h"
-I <PREFIX>/include
f90 module <package>_<name> <PREFIX>/mod USE <package>_<name>
-M<PREFIX>/mod
library lib<name>.a <PREFIX>/lib -L<PREFIX>/lib -l<package>
executable <name> <PREFIX>/bin add to PATH
script <name> <PREFIX>/etc add to PATH

Example: package xyz produces library libxyz.a and contains f90 module xyz_aaa and headerfile xxx.h
When installed in PREFIX=$HOME
usage would be:

in fortran source:
#include "xyz/xxx.h"
      USE xyz_AAA

compiler flags: -M$HOME/mod -I$HOME/include
linker flags:   -L$HOME/lib -lxyz
Note: -M is vendor dependent and could be -p or -I.


Send mail to transp_support with questions, comments, etc.
Home Guide for Submitters Review Procedures Modules Library

This project is sponsored by the Office of Fusion Energy Sciences of the U. S. Department of Energy.