OOMMF Home next up previous contents index
Next: Problem Specification File Formats Up: Command Line Utilities Previous: OOMMF and Process ID

Platform-Independent Make: pimake

The application pimake is similar in operation to the Unix utility program make, but it is written entirely in Tcl so that it will run anywhere Tcl is installed. Like make, pimake controls the building of one file, the target, from other files. Just as make is controlled by rules in files named Makefile or makefile, pimake is controlled by rules in files named makerules.tcl.

The pimake launch command is:

tclsh oommf.tcl pimake [standard options] \
   [-d] [-i] [-k] [-out file] [target]
Print verbose information about dependencies.
Normally an error halts operation. When -i is specified, ignore errors and try to continue updating all dependencies of target.
Normally an error halts operation. When -k is specified, and an error is encountered, stop processing dependencies which depend on the error, but continue updating other dependencies of target.
-out file
Write output to named file instead of to the standard output.
The file to build. May also be (and usually is) a symbolic target name. See below for standard symbolic targets. By default, the first target in makerules.tcl is built.

There are several targets which may be used as arguments to pimake to achieve different tasks. Each target builds in the current directory and all subdirectories. The standard targets are:

Used immediately after unpacking a distribution, it removes any files which were part of a previous release, but are not part of the unpacked distribution.
Creates all files created by the configure target (see below). Compiles and links all the executables and libraries. Constructs all index files.
Creates subdirectories with the same name as the platform type. Constructs a ocport.h file which includes C++ header information specific to the platform.
Removes the intermediate object files created by the compile and link steps. Leaves working executables in place. Leaves OOMMF in the state of its distribution with pre-compiled executables.
Removes the files removed by the objclean target. Also removes the executables and libraries created by the all target. Leaves the files generated by the configure target.
Removes the files removed by the clean target. Also removes all files and directories generated by configure target. Leaves only the files which are part of the source code distribution.
Remove all files which can possibly be generated from other files. The generation might require specialized developer tools. This target is not recommended for end-users, but may be helpful for developers.
Print a summary of the standard targets.

OOMMF Home next up previous Contents index

OOMMF Documentation Team
May 11, 2021