nypatchy(1) tool to work with specialized-format patches


nypatchy pam fort cradle print cc as data [ fort2 cc2 as2 data2 ]


nypatchy is a tool for working with Patchy Master Files (PAM files). A PAM file is an ordinary text file (generally with a three-letter extension of ".car") that holds source code interleaved with special pre-processing instructions for nypatchy. The source code may be in C, FORTRAN, assembly language, or a combination of these. The pre-processing instructions allow one to maintain separate optional patches independently, for instance in the case of architecture-specific code. Details of the pre-processing commands used by nypatchy are beyond the scope of this man page; the reader should refer to the full manual available from CERN.

Telling nypatchy which set of patches to use may be done on standard input or via a so-called cradle file. Typically the cradle file will contain one or more +USE statements as well as +EXE and +QUIT, for instance in the case of the isajet Monte Carlo generator:



In the command line shown above, pam is the PAM file, if any. fort is the name of the primary output source code file, if any. cradle is the name of the cradle file, if any (default is standard input, for instance a here-doc). print is the name of the file to receive printed output (the default is standard output). cc, as, data are the names of the source code output files for data types CC, AS, DATA. The remaining parameters are the source code output files to receive diverted material for respective data types FORT, CC, AS, DATA.

Parameters may be omitted by substituting a dash - for them. Trailing parameters may be cut short by giving "." or ".go"; the latter commences execution immediately rather than starting the nypatchy interactive prompt.

nypatchy will return to the shell a code of 0 if successful, 1 if there is a warning, and 2 if an error occurs. Since the program stops creating output, but continues to run (in order to check for further errors) if an error occurs, the user should be sure to test the error code $? after any nypatchy run.


nypatchy -- xyz .go
reads the cradle (instructions) from file xyz.cra, which must list all other files to be used.
nypatchy .go << EOF

has the cradle given as a here-document.
nypatchy zebra.car zebra.fca zebra.cra zebra.lis .go
reads the PAM file zebra.car, outputting the resulting source code to zebra.fca, taking the cradle from zebra.cra, with printing done to zebra.lis.


This manual page was written by Kevin McCarty <[email protected]> for the Debian GNU/Linux system (but may be used by others). It is licensed under the GNU General Public License, version 2 or later (at your choice).


Copyright (C) Kevin B. McCarty, 2008.