1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
/*
* aegis - project change supervisor
* This file is in the Public Domain, 2004, Peter Miller.
*
* The ${quote ...} construct is used to quote filenames which contain
* shell special characters. A minimum of quoting is performed, so if
* the filenames do not contain shell special characters, no quotes will
* be used.
*/
/*
* Compare two files using GNU diff. The -U -1 option produces an output
* with inserts and deletes shown line, with the whole file as context.
* This is usually superior to -c, as it shows what happened
* more clearly (and it takes less space). The -b option could be added
* to compare runs of white space as equal.
*
* This command is used by aed(1) to produce a difference listing when
* file in the development directory was originally copied from the
* current version in the baseline.
*
* All of the command substitutions described in aesub(5) are available.
* In addition, the following substitutions are also available:
*
* ${ORiginal}
* The absolute path name of a file containing the version
* originally copied. Usually in the baseline.
* ${Input}
* The absolute path name of the edited version of the file.
* Usually in the development directory.
* ${Output}
* The absolute path name of the file in which to write the
* difference listing. Usually in the development directory.
*
* An exit status of 0 means successful, even of the files differ (and
* they usually do). An exit status which is non-zero means something
* is wrong. (So we need to massage the exit status, because diff does
* things a little differently.)
*
* The non-zero exit status may be used to overload this command with
* extra tests, such as line length limits. The difference files must
* be produced in addition to these extra tests.
*/
diff_command =
"set +e; diff -U -1 -a ${quote $original} ${quote $input} "
"> ${quote $output}; test $? -le 1";
/*
* Here is a possible diff_command that could be used if
* dealing with binary files is required.
*
* If the return code from the original diff is greater then 1, then
* make sure that diff spit out the 'Binary files differ message'
* and return 0, otherwise return 1
*
diff_command =
"set +e; "
"diff -U -1 -a ${quote $original} ${quote $input} > ${quote $output}; "
"if test $? -gt 1; then "
"grep -q '^Binary' ${quote $output}; "
"test $? -eq 0; "
"else true; fi";
*
*/
|