/*
 * fstrcmp - fuzzy string compare library
 * Copyright (C) 2009 Peter Miller
 * Written by Peter Miller <pmiller@opensource.org.au>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or (at
 * your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program. If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * This is the project ``config'' file.  It controls many aspects of
 * how Aegis interacts with your project.
 */

/*
 * Compare three files using merge(1) from the RCS paackage.  Conflicts
 * are marked in the output.
 *
 * This command is used by aed(1) to produce a difference listing when a file
 * in the development directory is out of date compared to 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 common ancestor
 *      version of ${MostRecent} and {$Input}.  Usually the version originally
 *      copied into the change.  Usually in a temporary file.
 * ${Most_Recent}
 *      The absolute path name of a file containing the most recent version.
 *      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.
 *
 * The "merge -L" options are used to specify labels for the baseline and the
 *      development directory, respectively, when conflict lines are inserted
 *      into the result.
 * The "merge -p" options is used to specify that the results are to be printed
 *      on the standard output.
 */

merge_command =
    "set +e; "
    "merge -p -L baseline -L Historical -L C$c "
        "${quote $mostrecent} ${quote $original} ${quote $input} "
        "> ${quote $output}; "
    "test $? -le 1";
