OOMMF Home next up previous contents index
Next: OOMMF Batch System Up: Command Line Utilities Previous: ODT Column Extraction: odtcols


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.

Launching
The pimake launch command is:

tclsh oommf.tcl pimake [standard options] \
   [-d] [-i] [-k] [target]
where
-d
Print verbose information about dependencies.
-i
Normally an error halts operation. When -i is specified, ignore errors and try to continue updating all dependencies of target.
-k
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 filename
Write output messages to the named file instead of to standard out. Useful for capturing debug information to send to OOMMF developers.
target
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:

upgrade
Used immediately after unpacking a distribution, it removes any files which were part of a previous release, but are not part of the unpacked distrubtion.
all
Creates all files created by the configure target (see below). Compiles and links all the executables and libraries. Constructs all index files.
configure
Creates subdirectories with the same name as the platform type. Constructs a port.h file which includes C++ header information specific to the platform.
objclean
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.
clean
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.
distclean
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.
maintainer-clean
Remove all files which can possibly be generated from other files. Regeneration of those files might require specialized developer tools. This target is not recommended for end-users, but may be helpful for developers.
help
Print a summary of the standard targets.

OOMMF Home next up previous Contents index

OOMMF Documentation Team
January 15, 2004