This commit was generated by cvs2svn to compensate for changes in r175261,
which included commits to RCS files with non-trunk default branches.
This commit is contained in:
commit
8c012b9f91
@ -49,9 +49,11 @@ Jim Kingdon and others at Cygnus Support <info@cygnus.com> wrote the
|
|||||||
remote repository access code.
|
remote repository access code.
|
||||||
|
|
||||||
Larry Jones and Derek Price <derek@ximbiot.com> have been maintaining and
|
Larry Jones and Derek Price <derek@ximbiot.com> have been maintaining and
|
||||||
enhancing CVS for some years. Mark D. Baushke <mdb@cvshome.org> came on in
|
enhancing CVS for some years. Mark D. Baushke <mdb@gnu.org> came on in
|
||||||
2003.
|
2003.
|
||||||
|
|
||||||
|
Conrad Pino <Conrad@Pino.com> began maintaining the Windows port in 2004.
|
||||||
|
|
||||||
There have been many, many contributions not listed here. Consult the
|
There have been many, many contributions not listed here. Consult the
|
||||||
individual ChangeLog files in each directory for a more complete idea.
|
individual ChangeLog files in each directory for a more complete idea.
|
||||||
|
|
||||||
|
@ -88,22 +88,6 @@ an incorrect value, though this does not explain why symptoms have only been
|
|||||||
noticed under BSDI.
|
noticed under BSDI.
|
||||||
|
|
||||||
|
|
||||||
* Spaces in arguments to `cvs diff' are currently split on spaces and tabs
|
|
||||||
before being passed to diff. This can often cause diff to abort since it can
|
|
||||||
no longer interpret its options string and if it can, coincidentally,
|
|
||||||
interpret its option string, then the problem may be output in unexpected
|
|
||||||
formats.
|
|
||||||
|
|
||||||
|
|
||||||
* `release' of a project subdir does not remove the `subdir' entry from
|
|
||||||
`./CVS/Entries'.
|
|
||||||
|
|
||||||
|
|
||||||
* Most of the remote commands are encountering assertion failures when listing
|
|
||||||
the toplevel of the repository (e.g. `cvs rlog .'). This appears to be
|
|
||||||
related to the symlinked CVS root fix.
|
|
||||||
|
|
||||||
|
|
||||||
* Status
|
* Status
|
||||||
|
|
||||||
/*-------.
|
/*-------.
|
||||||
|
@ -1,3 +1,281 @@
|
|||||||
|
2006-06-09 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note client/server conflict fix.
|
||||||
|
|
||||||
|
2006-05-25 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* configure.in: Accept --with-rsh argument to set RSH_DFLT in config.h.
|
||||||
|
Prefer `remsh' to `rsh' when autodetecting and comment rationale.
|
||||||
|
|
||||||
|
2006-04-27 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* acinclude.m4 (ACX_WITH_GSSAPI): Detect libgss for HP-UX.
|
||||||
|
* NEWS: Note that GSSAPI builds under HP-UX.
|
||||||
|
(Report from Larry Jones <lawrence.jones@ugs.com>.)
|
||||||
|
|
||||||
|
2006-03-07 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note rtag fixes.
|
||||||
|
|
||||||
|
2006-02-26 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note CVSADM fix as an efficiency improvement.
|
||||||
|
|
||||||
|
2006-02-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note unconditional val-tags lock removal.
|
||||||
|
|
||||||
|
* NEWS: Note history buffer overflow fix.
|
||||||
|
|
||||||
|
2006-01-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note nonblocking flow control pipe fix.
|
||||||
|
|
||||||
|
2005-12-09 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note misc doc & bug fixes.
|
||||||
|
|
||||||
|
2005-12-07 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note recognition of :extssh:.
|
||||||
|
|
||||||
|
2005-10-18 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* KEYS: New file, suggested by Antoine Lexy-Lambert <antoine@gmx.de>.
|
||||||
|
* README: Mention KEYS file.
|
||||||
|
|
||||||
|
2005-09-26 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
[bug #14639]
|
||||||
|
* acinclude.m4: Find the crypto library on FreeBSD 5.x.
|
||||||
|
Patch from Serguei E. Leontiev <lse@CryptoPro.ru>.
|
||||||
|
|
||||||
|
* NEWS: Note FreeBSD 5.x GSSAPI fix.
|
||||||
|
|
||||||
|
* NEWS: Note fsync'd commits.
|
||||||
|
|
||||||
|
2005-09-24 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS, HACKING: Standardize on Automake 1.9.6.
|
||||||
|
|
||||||
|
2005-09-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Mention conflict fixes.
|
||||||
|
|
||||||
|
2005-09-13 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* TESTS: Mention new $username8 & $anyusername variables.
|
||||||
|
|
||||||
|
2005-09-04 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* NEWS: s/bug-cvs@gnu.org/bug-cvs@nongnu.org/.
|
||||||
|
* configure.in: s/info-cvs@gnu.org/info-cvs@nongnu.org/.
|
||||||
|
* configure: Regenerated.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* AUTHORS, DEVEL-CVS, HACKING, README: Update links, email addresses,
|
||||||
|
& mailing list descriptions.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* FAQ: Update links.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* HACKING, INSTALL, README, README.VMS, configure.in: Update links and
|
||||||
|
email addresses.
|
||||||
|
|
||||||
|
2005-08-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* www/.htaccess: Remove this file.
|
||||||
|
|
||||||
|
2005-08-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.spec.in: Note last spec file change in internal ChangeLog.
|
||||||
|
|
||||||
|
2005-08-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note spec file repair.
|
||||||
|
|
||||||
|
2005-08-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.spec.in: Update links to point to Savannah. s/Copyright/License/
|
||||||
|
for RPM 4.mumble.
|
||||||
|
|
||||||
|
2005-08-30 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* NEWS: Note import locking fix.
|
||||||
|
|
||||||
|
2005-07-12 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* FAQ, HACKING, INSTALL: Add copyright notices.
|
||||||
|
|
||||||
|
2005-07-11 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* FAQ, HACKING, INSTALL: Update license notices.
|
||||||
|
|
||||||
|
2005-06-02 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note server compression hang fix.
|
||||||
|
|
||||||
|
2005-06-01 Conrad T. Pino <Conrad@Pino.com>
|
||||||
|
|
||||||
|
* makewin32.cmd: Add Windows NT command file to build CVS Project.
|
||||||
|
Imported from revision 1.2 on feature branch.
|
||||||
|
|
||||||
|
2005-05-27 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note diff space split fix.
|
||||||
|
* BUGS: Remove diff space split note.
|
||||||
|
|
||||||
|
2005-05-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* INSTALL: Add footnote about compiling a CVS checkout of CVS on a
|
||||||
|
case-insensitive UNIX file system like Mac OS X.
|
||||||
|
|
||||||
|
2005-05-02 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* TODO (231): Renumber as...
|
||||||
|
(234): ...this to match numbering on 1.12.x.
|
||||||
|
|
||||||
|
2005-05-02 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* TODO (231): New item.
|
||||||
|
(22, 30, 31): Remove completed items.
|
||||||
|
|
||||||
|
2005-05-02 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note new val-tags locks.
|
||||||
|
|
||||||
|
2005-04-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note new history locks.
|
||||||
|
|
||||||
|
2005-04-20 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note log overflow fix.
|
||||||
|
|
||||||
|
2005-04-15 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note Klocwork fixes.
|
||||||
|
|
||||||
|
2005-04-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note contrib Perl taint vulnerability fix.
|
||||||
|
|
||||||
|
2005-03-23 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* ylwrap: New file.
|
||||||
|
|
||||||
|
2005-03-15 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* HACKING, NEWS: Note new Automake version.
|
||||||
|
|
||||||
|
2005-03-04 Jim Hyslop <jhyslop@ieee.org>
|
||||||
|
|
||||||
|
* NEWS: Note fix for compile errors on IRIX 5.3.
|
||||||
|
|
||||||
|
2005-02-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note recent watch on/off fileattr fix.
|
||||||
|
|
||||||
|
2005-01-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* AUTHORS: Add Conrad Pino.
|
||||||
|
* README: Update copyright notice.
|
||||||
|
|
||||||
|
2005-01-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note some recent changes.
|
||||||
|
|
||||||
|
2004-11-17 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note "red file" fix source inclusion.
|
||||||
|
|
||||||
|
2004-11-05 Conrad T. Pino <Conrad@Pino.com>
|
||||||
|
|
||||||
|
* cvsnt.dep: Regenerated after complete rebuild.
|
||||||
|
* cvsnt.mak: Regenerated after complete rebuild.
|
||||||
|
|
||||||
|
2004-11-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* HACKING, NEWS: Note new Autoconf & Automake versions.
|
||||||
|
|
||||||
|
2004-10-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note xreadlink fix.
|
||||||
|
|
||||||
|
2004-10-26 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note GSSAPI error message fix.
|
||||||
|
|
||||||
|
2004-10-19 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note resurrection fix.
|
||||||
|
|
||||||
|
2004-10-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note new import branch verification.
|
||||||
|
|
||||||
|
2004-09-25 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* configure.in: Use doc/mkman.pl as source for doc/mkman.
|
||||||
|
|
||||||
|
2004-09-08 Conrad T. Pino <Conrad@Pino.com>
|
||||||
|
|
||||||
|
* cvsnt.dsp: Add "windows-NT/JmgStat.c" to project. Add
|
||||||
|
"windows-NT/JmgStat.h" to project. Add "lib/xsize.h" to project.
|
||||||
|
* cvsnt.dep: Regenerated for "cvsnt.dsp" change.
|
||||||
|
* cvsnt.mak: Regenerated for "cvsnt.dsp" change.
|
||||||
|
|
||||||
|
2004-09-07 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note Windows DST fix.
|
||||||
|
|
||||||
|
2004-09-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* HACKING: Codify backwards compatibility conventions. Remove outdated
|
||||||
|
reference to very old MSVC++ releases.
|
||||||
|
|
||||||
|
2004-08-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note compliance of log_accum.pl with Perl 5.8.5.
|
||||||
|
|
||||||
|
2004-08-24 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* TODO (24, 49, 92, 113): Remove completed/obsolescent items.
|
||||||
|
|
||||||
|
2004-08-24 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* BUGS: Remove release subdir note. This was fixed with the commit on
|
||||||
|
2004-02-25, based on Matthew Ogilvie's patch.
|
||||||
|
|
||||||
|
2004-08-24 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note r* . fix.
|
||||||
|
* BUGS: Remove r* . note.
|
||||||
|
|
||||||
|
2004-08-24 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note invalid tag fix.
|
||||||
|
|
||||||
|
2004-08-24 Mark D. Baushke <mdb@cvshome.org>
|
||||||
|
|
||||||
|
* NEWS: Note that modules -a bugfix has a change in behavior.
|
||||||
|
|
||||||
|
2004-06-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note Conrad's Windows fix.
|
||||||
|
|
||||||
|
2004-06-21 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* .cvsignore: Ignore GPG signature files for distributions.
|
||||||
|
|
||||||
|
2004-06-10 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* NEWS: Note manual update.
|
||||||
|
|
||||||
2004-06-09 Derek Price <derek@ximbiot.com>
|
2004-06-09 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
* NEWS: Note Stefan & Sebastian's security fixes.
|
* NEWS: Note Stefan & Sebastian's security fixes.
|
||||||
|
@ -3,37 +3,6 @@
|
|||||||
This file, DEVEL-CVS, contains the policies by which the CVS
|
This file, DEVEL-CVS, contains the policies by which the CVS
|
||||||
development group operates. Also see the HACKING file.
|
development group operates. Also see the HACKING file.
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
|
||||||
Charter for the devel-cvs mailing list:
|
|
||||||
|
|
||||||
The CVS Developers' List <dev@ccvs.cvshome.org> exists to help people
|
|
||||||
with access to the CVS source repository co-ordinate changes, make
|
|
||||||
releases, and administer the repository.
|
|
||||||
|
|
||||||
Everyone who has been given checkin access to the repository for the
|
|
||||||
CVS sources should read devel-cvs. Only those with checkin access may
|
|
||||||
send messages to the list.
|
|
||||||
|
|
||||||
The devel-cvs list may be used to discuss:
|
|
||||||
- administrivia regarding the CVS source repository and release
|
|
||||||
process, and
|
|
||||||
- changes and features intended for inclusion in the official CVS
|
|
||||||
release (either source code or documentation), which someone plans
|
|
||||||
to implement, or has implemented.
|
|
||||||
|
|
||||||
The devel-cvs list should not be used to discuss:
|
|
||||||
- changes or features to packages other than the CVS release
|
|
||||||
(e.g., related packages like tkCVS, RAD/CVS, or other groups'
|
|
||||||
distributions of CVS, like RCVS, etc.),
|
|
||||||
- changes which nobody has offered to implement, or
|
|
||||||
- the philosophy of CVS (as opposed to a specific change to CVS).
|
|
||||||
These topics should either go on info-cvs, or have a new mailing list
|
|
||||||
created for them.
|
|
||||||
|
|
||||||
The topic restrictions in this charter do not reflect the development
|
|
||||||
group's future plans for CVS; rather, they reflect a topic
|
|
||||||
classification which the group finds helpful.
|
|
||||||
|
|
||||||
----------------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
Policies regarding the CVS source repository:
|
Policies regarding the CVS source repository:
|
||||||
|
|
||||||
|
@ -1,3 +1,24 @@
|
|||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
CVS is Copyright (C) 1989-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
CVS 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 1, or (at your option)
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
More details are available in the COPYING file but, in simplified
|
||||||
|
terms, this means that any distributed modifications you make to
|
||||||
|
this software must also be released under the GNU General Public
|
||||||
|
License.
|
||||||
|
|
||||||
|
CVS 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.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
This file contains a CVS FAQ. Until 1995 it was maintained by David
|
This file contains a CVS FAQ. Until 1995 it was maintained by David
|
||||||
Grubbs. It was out of date and not being maintained, but it had a
|
Grubbs. It was out of date and not being maintained, but it had a
|
||||||
certain following and in 1997 Pascal Molli decided to start
|
certain following and in 1997 Pascal Molli decided to start
|
||||||
@ -13,13 +34,14 @@ until someone can write some code to extract data from a FAQ-O-Matic
|
|||||||
and insert things like tables of contents).
|
and insert things like tables of contents).
|
||||||
|
|
||||||
The answers which are dated "6/13/1997" below are really from the 1995
|
The answers which are dated "6/13/1997" below are really from the 1995
|
||||||
FAQ, for the most part. Many of them are out of date. If you have
|
FAQ, for the most part. Many of them are out of date. The current FAQ may
|
||||||
some time, you are encouraged to double-check them against other
|
be found at <http://ximbiot.com/cvs/wiki/index.php?title=CVS_FAQ>. If you have
|
||||||
sources like the Cederqvist manual and update the FAQ. If you don't
|
some time, you are encouraged to export that FAQ as text and import it here.
|
||||||
have such time, take them with a grain of salt or a few.
|
If you don't have such time, take the answers in this file with at least a few
|
||||||
|
grains of salt.
|
||||||
|
|
||||||
Since Feb. 2000 CVS is being maintained by OpenAvenue, Inc. and many of
|
Since August, 2005, many of the existing CVS resources have been centralized on
|
||||||
the existing resources have been centeralized on http://www.cvshome.org.
|
<http://cvs.nongnu.org> & <http://ximbiot.com>.
|
||||||
|
|
||||||
Category: /, all questions
|
Category: /, all questions
|
||||||
|
|
||||||
@ -1899,7 +1921,8 @@ You can branch a branch.
|
|||||||
GIC is no longer being maintained and tkCVS is recommended
|
GIC is no longer being maintained and tkCVS is recommended
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
For more on tkCVS, see http://www.cvshome.org/dev/addontkcvs.html.
|
For more on tkCVS, see
|
||||||
|
<http://ximbiot.com/cvs/cvshome/dev/addontkcvs.html>.
|
||||||
|
|
||||||
kingdon@cyclic.com
|
kingdon@cyclic.com
|
||||||
|
|
||||||
|
@ -1,10 +1,29 @@
|
|||||||
How to write code for CVS
|
How to write code for CVS
|
||||||
|
|
||||||
|
* License of CVS
|
||||||
|
|
||||||
|
CVS is Copyright (C) 1989-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
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 1, or (at your option)
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
More details are available in the COPYING file but, in simplified
|
||||||
|
terms, this means that any distributed modifications you make to
|
||||||
|
this software must also be released under the GNU General Public
|
||||||
|
License.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
* Source
|
* Source
|
||||||
|
|
||||||
Patches against the development version of CVS are most likely to be accepted:
|
Patches against the development version of CVS are most likely to be accepted:
|
||||||
|
|
||||||
$ cvs -d:pserver:anoncvs@cvs.cvshome.org/cvsroot co ccvs
|
$ CVS_RSH=ssh cvs -d:ext:anoncvs@savannah.nongnu.org:/cvsroot/cvs co ccvs
|
||||||
|
|
||||||
* Compiler options
|
* Compiler options
|
||||||
|
|
||||||
@ -13,13 +32,28 @@ detect many programming errors. This is not the default because it
|
|||||||
might cause spurious warnings, but at least on some machines, there
|
might cause spurious warnings, but at least on some machines, there
|
||||||
should be no spurious warnings. For example:
|
should be no spurious warnings. For example:
|
||||||
|
|
||||||
$ CFLAGS="-g -Wall" ./configure
|
$ CFLAGS="-g -Wall" ./configure
|
||||||
|
|
||||||
Configure is not very good at remembering this setting; it will get
|
Configure is not very good at remembering this setting; it will get
|
||||||
wiped out whenever you do a ./config.status --recheck, so you'll need
|
wiped out whenever you do a ./config.status --recheck, so you'll need
|
||||||
to use:
|
to use:
|
||||||
|
|
||||||
$ CFLAGS="-g -Wall" ./config.status --recheck
|
$ CFLAGS="-g -Wall" ./config.status --recheck
|
||||||
|
|
||||||
|
* Backwards Compatibility
|
||||||
|
|
||||||
|
Only bug fixes are accepted into the stable branch. New features should be
|
||||||
|
applied to the trunk.
|
||||||
|
|
||||||
|
If it is not inextricable from a bug fix, CVS's output (to stdout/stderr)
|
||||||
|
should not be changed on the stable branch in order to best support scripts and
|
||||||
|
other tools which parse CVS's output. It is ok to change output between
|
||||||
|
feature releases (on the trunk), though such changes should be noted in the
|
||||||
|
NEWS file.
|
||||||
|
|
||||||
|
Changes in the way CVS responds to command line options, config options, etc.
|
||||||
|
should be accompanied by deprecation warnings for an entire stable series of
|
||||||
|
releases before being changed permanently, if at all possible.
|
||||||
|
|
||||||
* Indentation style
|
* Indentation style
|
||||||
|
|
||||||
@ -100,10 +134,6 @@ Generally speaking the GNU coding standards are mostly used by CVS
|
|||||||
and perhaps an exception or two we haven't mentioned). This is the
|
and perhaps an exception or two we haven't mentioned). This is the
|
||||||
file standards.text at the GNU FTP sites.
|
file standards.text at the GNU FTP sites.
|
||||||
|
|
||||||
Filenames for .c and .h files may contain _ but should not contain -
|
|
||||||
(the latter causes Visual C++ 2.1 to create makefiles which Visual C++
|
|
||||||
4.0 cannot use).
|
|
||||||
|
|
||||||
* Regenerating Build Files
|
* Regenerating Build Files
|
||||||
|
|
||||||
On UNIX, if you wish to change the Build files, you will need Autoconf and
|
On UNIX, if you wish to change the Build files, you will need Autoconf and
|
||||||
@ -115,13 +145,13 @@ have the same versions the developers do, so the rules to run them
|
|||||||
automatically aren't included in the generated Makefiles unless you run
|
automatically aren't included in the generated Makefiles unless you run
|
||||||
configure with the --enable-maintainer-mode option.
|
configure with the --enable-maintainer-mode option.
|
||||||
|
|
||||||
The CVS Makefiles and configure script were built using Automake 1.7.9 and
|
The CVS Makefiles and configure script were built using Automake 1.9.6 and
|
||||||
Autoconf 2.58, respectively.
|
Autoconf 2.59, respectively.
|
||||||
|
|
||||||
There is a known bug in Autoconf 2.57 that will prevent the configure
|
There is a known bug in Autoconf 2.57 that will prevent the configure
|
||||||
scripts it generates from working on some platforms. Other combinations of
|
scripts it generates from working on some platforms. Other combinations of
|
||||||
autotool versions may or may not work. If you get other versions to work,
|
autotool versions may or may not work. If you get other versions to work,
|
||||||
please send a report to <bug-cvs@gnu.org>.
|
please send a report to <bug-cvs@nongnu.org>.
|
||||||
|
|
||||||
* Writing patches (strategy)
|
* Writing patches (strategy)
|
||||||
|
|
||||||
@ -174,7 +204,7 @@ for each issue. Use context diffs or unidiffs for patches.
|
|||||||
|
|
||||||
Include words like "I grant permission to distribute this patch under
|
Include words like "I grant permission to distribute this patch under
|
||||||
the terms of the GNU Public License" with your patch. By sending a
|
the terms of the GNU Public License" with your patch. By sending a
|
||||||
patch to bug-cvs@gnu.org, you implicitly grant this permission.
|
patch to bug-cvs@nongnu.org, you implicitly grant this permission.
|
||||||
|
|
||||||
Submitting a patch to bug-cvs is the way to reach the people who have
|
Submitting a patch to bug-cvs is the way to reach the people who have
|
||||||
signed up to receive such submissions (including CVS developers), but
|
signed up to receive such submissions (including CVS developers), but
|
||||||
@ -203,27 +233,21 @@ intentional, to avoid a last minute rush to get new features in.
|
|||||||
|
|
||||||
* Mailing lists
|
* Mailing lists
|
||||||
|
|
||||||
Anyone can add themselves to the following mailing lists:
|
In addition to the mailing lists listed in the README file, developers should
|
||||||
|
take particular note of the following mailling lists:
|
||||||
|
|
||||||
dev. Unless you are accepted as a CVS developer as
|
bug-cvs: This is the list which users are requested to send bug reports
|
||||||
described in the DEVEL-CVS file, you will only be able to
|
to. General CVS development and design discussions also take place on
|
||||||
read this list, not send to it. The charter of the list is
|
this list.
|
||||||
also in DEVEL-CVS.
|
info-cvs: This list is intended for user questions, but general CVS
|
||||||
cvs. The only messages sent to this list are sent
|
development and design discussions sometimes take place on this list.
|
||||||
|
cvs-cvs: The only messages sent to this list are sent
|
||||||
automatically, via the CVS `loginfo' mechanism, when someone
|
automatically, via the CVS `loginfo' mechanism, when someone
|
||||||
checks something in to the master CVS repository.
|
checks something in to the master CVS repository.
|
||||||
test-results. The only messages sent to this list are sent
|
cvs-test-results: The only messages sent to this list are sent
|
||||||
automatically, daily, by a script which runs "make check"
|
automatically, daily, by a script which runs "make check"
|
||||||
and "make remotecheck" on the master CVS sources.
|
and "make remotecheck" on the master CVS sources.
|
||||||
To subscribe to dev, cvs, or test-results, send
|
|
||||||
a message to "<list>-subscribe@ccvs.cvshome.org" or visit
|
|
||||||
http://ccvs.cvshome.org/servlets/ProjectMailingListList and follow the
|
|
||||||
instructions there.
|
|
||||||
|
|
||||||
One other list related to CVS development is bug-cvs. This is the
|
To subscribe to any of these lists, send mail to <list>-request@nongnu.org
|
||||||
list which users are requested to send bug reports to. Anyone can
|
or visit http://savannah.nongnu.org/mail/?group=cvs and follow the instructions
|
||||||
subscribe; to do so send mail to bug-cvs-request@gnu.org.
|
for the list you wish to subscribe to.
|
||||||
|
|
||||||
Other CVS discussions take place on the info-cvs mailing list
|
|
||||||
(send mail to info-cvs-request@gnu.org to subscribe) or on
|
|
||||||
the newsgroup comp.software.config-mgmt.
|
|
||||||
|
@ -1,4 +1,24 @@
|
|||||||
First, read the README file. If you're still happy...
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
CVS is Copyright (C) 1989-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
CVS 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 1, 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.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Now back to our regularly scheduled program:
|
||||||
|
|
||||||
|
Please read the README file before reading this INSTALL file. Then, to
|
||||||
|
install CVS:
|
||||||
|
|
||||||
|
|
||||||
First you need to obtain and install the CVS executables. If you got
|
First you need to obtain and install the CVS executables. If you got
|
||||||
a distribution which contains executables, consult the installation
|
a distribution which contains executables, consult the installation
|
||||||
@ -95,7 +115,7 @@ Tested platforms
|
|||||||
CVS has been tested on the following platforms. The most recent
|
CVS has been tested on the following platforms. The most recent
|
||||||
version of CVS reported to have been tested is indicated, but more
|
version of CVS reported to have been tested is indicated, but more
|
||||||
recent versions of CVS probably will work too. Please send updates to
|
recent versions of CVS probably will work too. Please send updates to
|
||||||
this list to bug-cvs@gnu.org (doing so in the form of a diff
|
this list to bug-cvs@nongnu.org (doing so in the form of a diff
|
||||||
to this file, or at least exact suggested text, is encouraged).
|
to this file, or at least exact suggested text, is encouraged).
|
||||||
"tested" means, at a minimum, that CVS compiles and appears to work on
|
"tested" means, at a minimum, that CVS compiles and appears to work on
|
||||||
simple (manual) testing. In many cases it also means "make check"
|
simple (manual) testing. In many cases it also means "make check"
|
||||||
@ -182,7 +202,8 @@ PowerPC or RS/6000:
|
|||||||
IBM RS/6000 running AIX 4.3 (1.10.7)
|
IBM RS/6000 running AIX 4.3 (1.10.7)
|
||||||
Lynx 2.3.1 120495 (1.6.86) (footnote 9)
|
Lynx 2.3.1 120495 (1.6.86) (footnote 9)
|
||||||
Lynx 2.5 (1.9) (footnote 10)
|
Lynx 2.5 (1.9) (footnote 10)
|
||||||
MkLinux DR3 GENERIC #6 (1.10.5.1) (presumably LinuxPPC too)
|
Linux DR3 GENERIC #6 (1.10.5.1) (presumably LinuxPPC too)
|
||||||
|
Mac OS X ALL (footnote 14)
|
||||||
Mac OS X Darwin 6.6 Darwin Kernel Version 6.6 (1.11.1p1)
|
Mac OS X Darwin 6.6 Darwin Kernel Version 6.6 (1.11.1p1)
|
||||||
Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.11.6) (footnote 12)
|
Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.11.6) (footnote 12)
|
||||||
Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.12.1) (footnote 12)
|
Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.12.1) (footnote 12)
|
||||||
@ -253,6 +274,17 @@ VAX:
|
|||||||
A build under HP PA-RISC 2.0 will probably not run under PA-RISC 1.1
|
A build under HP PA-RISC 2.0 will probably not run under PA-RISC 1.1
|
||||||
unless "+DAportable" is added to the HP ANSI cc compiler flags.
|
unless "+DAportable" is added to the HP ANSI cc compiler flags.
|
||||||
|
|
||||||
|
(footnote 14)
|
||||||
|
Because of the case-insensitive file system on Mac OS X, you cannot build
|
||||||
|
CVS directly from a checkout from CVS. The name of the built executable,
|
||||||
|
`cvs', conflicts with name of the CVS administration directory, `CVS'.
|
||||||
|
The work-around is to build the executable from a build directory separate
|
||||||
|
from the source directory. i.e.:
|
||||||
|
|
||||||
|
cvs co ccvs; cd ccvs
|
||||||
|
mkdir build; cd build
|
||||||
|
../configure && make
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
Building from source code under Unix:
|
Building from source code under Unix:
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -28,7 +28,6 @@
|
|||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
@ -36,7 +35,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = .
|
top_builddir = .
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -50,6 +48,46 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
subdir = .
|
||||||
|
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
|
||||||
|
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||||
|
$(srcdir)/cvs.spec.in $(top_srcdir)/configure \
|
||||||
|
$(top_srcdir)/emx/Makefile.in $(top_srcdir)/os2/Makefile.in \
|
||||||
|
$(top_srcdir)/zlib/Makefile.in AUTHORS COPYING COPYING.LIB \
|
||||||
|
ChangeLog INSTALL NEWS TODO compile depcomp install-sh \
|
||||||
|
mdate-sh missing mkinstalldirs ylwrap
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||||
|
configure.lineno configure.status.lineno
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = config.h
|
||||||
|
CONFIG_CLEAN_FILES = cvs.spec emx/Makefile os2/Makefile zlib/Makefile
|
||||||
|
SOURCES =
|
||||||
|
DIST_SOURCES =
|
||||||
|
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||||
|
html-recursive info-recursive install-data-recursive \
|
||||||
|
install-exec-recursive install-info-recursive \
|
||||||
|
install-recursive installcheck-recursive installdirs-recursive \
|
||||||
|
pdf-recursive ps-recursive uninstall-info-recursive \
|
||||||
|
uninstall-recursive
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
DIST_SUBDIRS = $(SUBDIRS)
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
distdir = $(PACKAGE)-$(VERSION)
|
||||||
|
top_distdir = $(distdir)
|
||||||
|
am__remove_distdir = \
|
||||||
|
{ test ! -d $(distdir) \
|
||||||
|
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||||
|
&& rm -fr $(distdir); }; }
|
||||||
|
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
|
||||||
|
GZIP_ENV = --best
|
||||||
|
distuninstallcheck_listfiles = find . -type f -print
|
||||||
|
distcleancheck_listfiles = find . -type f -print
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -119,6 +157,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -132,6 +172,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -139,6 +180,7 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
|
|
||||||
# Unix source subdirs, where we'll want to run lint and etags:
|
# Unix source subdirs, where we'll want to run lint and etags:
|
||||||
# This is a legacy variable from b4 Automake
|
# This is a legacy variable from b4 Automake
|
||||||
@ -147,7 +189,6 @@ USOURCE_SUBDIRS = lib zlib diff src
|
|||||||
SUBDIRS = $(USOURCE_SUBDIRS) man doc contrib tools \
|
SUBDIRS = $(USOURCE_SUBDIRS) man doc contrib tools \
|
||||||
windows-NT os2 emx vms
|
windows-NT os2 emx vms
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
.cvsignore \
|
.cvsignore \
|
||||||
BUGS \
|
BUGS \
|
||||||
@ -168,43 +209,42 @@ EXTRA_DIST = \
|
|||||||
cvs.spec \
|
cvs.spec \
|
||||||
mktemp.sh
|
mktemp.sh
|
||||||
|
|
||||||
subdir = .
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = config.h
|
|
||||||
CONFIG_CLEAN_FILES = cvs.spec emx/Makefile os2/Makefile zlib/Makefile
|
|
||||||
DIST_SOURCES =
|
|
||||||
|
|
||||||
RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
|
|
||||||
ps-recursive install-info-recursive uninstall-info-recursive \
|
|
||||||
all-recursive install-data-recursive install-exec-recursive \
|
|
||||||
installdirs-recursive install-recursive uninstall-recursive \
|
|
||||||
check-recursive installcheck-recursive
|
|
||||||
DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \
|
|
||||||
COPYING COPYING.LIB ChangeLog INSTALL Makefile.am NEWS TODO \
|
|
||||||
acinclude.m4 aclocal.m4 compile config.h.in configure \
|
|
||||||
configure.in cvs.spec.in depcomp install-sh mdate-sh missing \
|
|
||||||
mkinstalldirs
|
|
||||||
DIST_SUBDIRS = $(SUBDIRS)
|
|
||||||
all: config.h
|
all: config.h
|
||||||
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
am--refresh:
|
||||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
@:
|
||||||
configure.lineno
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
|
||||||
|
cd $(srcdir) && $(AUTOMAKE) --gnu \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu Makefile
|
$(AUTOMAKE) --gnu Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
echo ' $(SHELL) ./config.status'; \
|
||||||
|
$(SHELL) ./config.status;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
$(SHELL) ./config.status --recheck
|
$(SHELL) ./config.status --recheck
|
||||||
$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
|
|
||||||
cd $(srcdir) && $(AUTOCONF)
|
|
||||||
|
|
||||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(srcdir) && $(AUTOCONF)
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||||
|
|
||||||
config.h: stamp-h1
|
config.h: stamp-h1
|
||||||
@ -216,14 +256,14 @@ config.h: stamp-h1
|
|||||||
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||||
@rm -f stamp-h1
|
@rm -f stamp-h1
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
||||||
|
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
|
||||||
cd $(top_srcdir) && $(AUTOHEADER)
|
cd $(top_srcdir) && $(AUTOHEADER)
|
||||||
touch $(srcdir)/config.h.in
|
rm -f stamp-h1
|
||||||
|
touch $@
|
||||||
|
|
||||||
distclean-hdr:
|
distclean-hdr:
|
||||||
-rm -f config.h stamp-h1
|
-rm -f config.h stamp-h1
|
||||||
cvs.spec: $(top_builddir)/config.status cvs.spec.in
|
cvs.spec: $(top_builddir)/config.status $(srcdir)/cvs.spec.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
emx/Makefile: $(top_builddir)/config.status $(top_srcdir)/emx/Makefile.in
|
emx/Makefile: $(top_builddir)/config.status $(top_srcdir)/emx/Makefile.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||||
@ -240,7 +280,13 @@ uninstall-info-am:
|
|||||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||||
# (2) otherwise, pass the desired values on the `make' command line.
|
# (2) otherwise, pass the desired values on the `make' command line.
|
||||||
$(RECURSIVE_TARGETS):
|
$(RECURSIVE_TARGETS):
|
||||||
@set fnord $$MAKEFLAGS; amf=$$2; \
|
@failcom='exit 1'; \
|
||||||
|
for f in x $$MAKEFLAGS; do \
|
||||||
|
case $$f in \
|
||||||
|
*=* | --[!k]*);; \
|
||||||
|
*k*) failcom='fail=yes';; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
dot_seen=no; \
|
dot_seen=no; \
|
||||||
target=`echo $@ | sed s/-recursive//`; \
|
target=`echo $@ | sed s/-recursive//`; \
|
||||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||||
@ -252,7 +298,7 @@ $(RECURSIVE_TARGETS):
|
|||||||
local_target="$$target"; \
|
local_target="$$target"; \
|
||||||
fi; \
|
fi; \
|
||||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||||
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|
|| eval $$failcom; \
|
||||||
done; \
|
done; \
|
||||||
if test "$$dot_seen" = "no"; then \
|
if test "$$dot_seen" = "no"; then \
|
||||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||||
@ -260,7 +306,13 @@ $(RECURSIVE_TARGETS):
|
|||||||
|
|
||||||
mostlyclean-recursive clean-recursive distclean-recursive \
|
mostlyclean-recursive clean-recursive distclean-recursive \
|
||||||
maintainer-clean-recursive:
|
maintainer-clean-recursive:
|
||||||
@set fnord $$MAKEFLAGS; amf=$$2; \
|
@failcom='exit 1'; \
|
||||||
|
for f in x $$MAKEFLAGS; do \
|
||||||
|
case $$f in \
|
||||||
|
*=* | --[!k]*);; \
|
||||||
|
*k*) failcom='fail=yes';; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
dot_seen=no; \
|
dot_seen=no; \
|
||||||
case "$@" in \
|
case "$@" in \
|
||||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||||
@ -281,7 +333,7 @@ maintainer-clean-recursive:
|
|||||||
local_target="$$target"; \
|
local_target="$$target"; \
|
||||||
fi; \
|
fi; \
|
||||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||||
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|
|| eval $$failcom; \
|
||||||
done && test -z "$$fail"
|
done && test -z "$$fail"
|
||||||
tags-recursive:
|
tags-recursive:
|
||||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||||
@ -292,14 +344,6 @@ ctags-recursive:
|
|||||||
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
||||||
done
|
done
|
||||||
|
|
||||||
ETAGS = etags
|
|
||||||
ETAGSFLAGS =
|
|
||||||
|
|
||||||
CTAGS = ctags
|
|
||||||
CTAGSFLAGS =
|
|
||||||
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
@ -308,19 +352,22 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
mkid -fID $$unique
|
mkid -fID $$unique
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
tags=; \
|
tags=; \
|
||||||
here=`pwd`; \
|
here=`pwd`; \
|
||||||
if (etags --etags-include --version) >/dev/null 2>&1; then \
|
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||||
include_option=--etags-include; \
|
include_option=--etags-include; \
|
||||||
|
empty_fix=.; \
|
||||||
else \
|
else \
|
||||||
include_option=--include; \
|
include_option=--include; \
|
||||||
|
empty_fix=; \
|
||||||
fi; \
|
fi; \
|
||||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||||
if test "$$subdir" = .; then :; else \
|
if test "$$subdir" = .; then :; else \
|
||||||
test -f $$subdir/TAGS && \
|
test ! -f $$subdir/TAGS || \
|
||||||
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
||||||
fi; \
|
fi; \
|
||||||
done; \
|
done; \
|
||||||
@ -330,10 +377,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
|||||||
done | \
|
done | \
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
$$tags $$unique
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$tags $$unique; \
|
||||||
|
fi
|
||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -356,24 +404,11 @@ GTAGS:
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = .
|
|
||||||
distdir = $(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
am__remove_distdir = \
|
|
||||||
{ test ! -d $(distdir) \
|
|
||||||
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
|
|
||||||
&& rm -fr $(distdir); }; }
|
|
||||||
|
|
||||||
GZIP_ENV = --best
|
|
||||||
distuninstallcheck_listfiles = find . -type f -print
|
|
||||||
distcleancheck_listfiles = find . -type f -print
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
$(am__remove_distdir)
|
$(am__remove_distdir)
|
||||||
mkdir $(distdir)
|
mkdir $(distdir)
|
||||||
$(mkinstalldirs) $(distdir)/. $(distdir)/contrib $(distdir)/doc $(distdir)/emx $(distdir)/os2 $(distdir)/src $(distdir)/windows-NT $(distdir)/zlib
|
$(mkdir_p) $(distdir)/. $(distdir)/contrib $(distdir)/doc $(distdir)/emx $(distdir)/lib $(distdir)/os2 $(distdir)/src $(distdir)/windows-NT $(distdir)/zlib
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||||
list='$(DISTFILES)'; for file in $$list; do \
|
list='$(DISTFILES)'; for file in $$list; do \
|
||||||
@ -385,7 +420,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -400,15 +435,17 @@ distdir: $(DISTFILES)
|
|||||||
|| exit 1; \
|
|| exit 1; \
|
||||||
fi; \
|
fi; \
|
||||||
done
|
done
|
||||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||||
if test "$$subdir" = .; then :; else \
|
if test "$$subdir" = .; then :; else \
|
||||||
test -d $(distdir)/$$subdir \
|
test -d "$(distdir)/$$subdir" \
|
||||||
|| mkdir $(distdir)/$$subdir \
|
|| $(mkdir_p) "$(distdir)/$$subdir" \
|
||||||
|| exit 1; \
|
|| exit 1; \
|
||||||
|
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||||
|
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||||
(cd $$subdir && \
|
(cd $$subdir && \
|
||||||
$(MAKE) $(AM_MAKEFLAGS) \
|
$(MAKE) $(AM_MAKEFLAGS) \
|
||||||
top_distdir="$(top_distdir)" \
|
top_distdir="$$top_distdir" \
|
||||||
distdir=../$(distdir)/$$subdir \
|
distdir="$$distdir/$$subdir" \
|
||||||
distdir) \
|
distdir) \
|
||||||
|| exit 1; \
|
|| exit 1; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -419,24 +456,46 @@ distdir: $(DISTFILES)
|
|||||||
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|
||||||
|| chmod -R a+r $(distdir)
|
|| chmod -R a+r $(distdir)
|
||||||
dist-gzip: distdir
|
dist-gzip: distdir
|
||||||
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||||
|
$(am__remove_distdir)
|
||||||
|
dist-bzip2: distdir
|
||||||
|
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||||
$(am__remove_distdir)
|
$(am__remove_distdir)
|
||||||
|
|
||||||
dist-bzip2: distdir
|
dist-tarZ: distdir
|
||||||
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
|
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||||
|
$(am__remove_distdir)
|
||||||
|
|
||||||
|
dist-shar: distdir
|
||||||
|
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
|
||||||
|
$(am__remove_distdir)
|
||||||
|
|
||||||
|
dist-zip: distdir
|
||||||
|
-rm -f $(distdir).zip
|
||||||
|
zip -rq $(distdir).zip $(distdir)
|
||||||
$(am__remove_distdir)
|
$(am__remove_distdir)
|
||||||
|
|
||||||
dist dist-all: distdir
|
dist dist-all: distdir
|
||||||
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||||
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
|
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||||
$(am__remove_distdir)
|
$(am__remove_distdir)
|
||||||
|
|
||||||
# This target untars the dist file and tries a VPATH configuration. Then
|
# This target untars the dist file and tries a VPATH configuration. Then
|
||||||
# it guarantees that the distribution is self-contained by making another
|
# it guarantees that the distribution is self-contained by making another
|
||||||
# tarfile.
|
# tarfile.
|
||||||
distcheck: dist
|
distcheck: dist
|
||||||
$(am__remove_distdir)
|
case '$(DIST_ARCHIVES)' in \
|
||||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
|
*.tar.gz*) \
|
||||||
|
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
|
||||||
|
*.tar.bz2*) \
|
||||||
|
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||||
|
*.tar.Z*) \
|
||||||
|
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||||
|
*.shar.gz*) \
|
||||||
|
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
|
||||||
|
*.zip*) \
|
||||||
|
unzip $(distdir).zip ;;\
|
||||||
|
esac
|
||||||
chmod -R a-w $(distdir); chmod a+w $(distdir)
|
chmod -R a-w $(distdir); chmod a+w $(distdir)
|
||||||
mkdir $(distdir)/_build
|
mkdir $(distdir)/_build
|
||||||
mkdir $(distdir)/_inst
|
mkdir $(distdir)/_inst
|
||||||
@ -456,19 +515,20 @@ distcheck: dist
|
|||||||
distuninstallcheck \
|
distuninstallcheck \
|
||||||
&& chmod -R a-w "$$dc_install_base" \
|
&& chmod -R a-w "$$dc_install_base" \
|
||||||
&& ({ \
|
&& ({ \
|
||||||
(cd ../.. && $(mkinstalldirs) "$$dc_destdir") \
|
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||||||
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||||||
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||||||
&& rm -rf "$$dc_destdir" \
|
&& rm -rf "$$dc_destdir" \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) dist-gzip \
|
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||||||
&& rm -f $(distdir).tar.gz \
|
&& rm -rf $(DIST_ARCHIVES) \
|
||||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
|
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
|
||||||
$(am__remove_distdir)
|
$(am__remove_distdir)
|
||||||
@echo "$(distdir).tar.gz is ready for distribution" | \
|
@(echo "$(distdir) archives ready for distribution: "; \
|
||||||
sed 'h;s/./=/g;p;x;p;x'
|
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||||
|
sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
|
||||||
distuninstallcheck:
|
distuninstallcheck:
|
||||||
@cd $(distuninstallcheck_dir) \
|
@cd $(distuninstallcheck_dir) \
|
||||||
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
||||||
@ -492,7 +552,6 @@ check: check-recursive
|
|||||||
all-am: Makefile config.h
|
all-am: Makefile config.h
|
||||||
installdirs: installdirs-recursive
|
installdirs: installdirs-recursive
|
||||||
installdirs-am:
|
installdirs-am:
|
||||||
|
|
||||||
install: install-recursive
|
install: install-recursive
|
||||||
install-exec: install-exec-recursive
|
install-exec: install-exec-recursive
|
||||||
install-data: install-data-recursive
|
install-data: install-data-recursive
|
||||||
@ -512,7 +571,7 @@ mostlyclean-generic:
|
|||||||
clean-generic:
|
clean-generic:
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -530,6 +589,8 @@ dvi: dvi-recursive
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-recursive
|
||||||
|
|
||||||
info: info-recursive
|
info: info-recursive
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -566,22 +627,20 @@ uninstall-am: uninstall-info-am
|
|||||||
|
|
||||||
uninstall-info: uninstall-info-recursive
|
uninstall-info: uninstall-info-recursive
|
||||||
|
|
||||||
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
|
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
|
||||||
clean-generic clean-recursive ctags ctags-recursive dist \
|
check-am clean clean-generic clean-recursive ctags \
|
||||||
dist-all dist-bzip2 dist-gzip distcheck distclean \
|
ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \
|
||||||
distclean-generic distclean-hdr distclean-recursive \
|
dist-tarZ dist-zip distcheck distclean distclean-generic \
|
||||||
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
distclean-hdr distclean-recursive distclean-tags \
|
||||||
dvi-am dvi-recursive info info-am info-recursive install \
|
distcleancheck distdir distuninstallcheck dvi dvi-am html \
|
||||||
install-am install-data install-data-am install-data-recursive \
|
html-am info info-am install install-am install-data \
|
||||||
install-exec install-exec-am install-exec-recursive \
|
install-data-am install-exec install-exec-am install-info \
|
||||||
install-info install-info-am install-info-recursive install-man \
|
install-info-am install-man install-strip installcheck \
|
||||||
install-recursive install-strip installcheck installcheck-am \
|
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||||
installdirs installdirs-am installdirs-recursive \
|
maintainer-clean-generic maintainer-clean-recursive \
|
||||||
maintainer-clean maintainer-clean-generic \
|
mostlyclean mostlyclean-generic mostlyclean-recursive pdf \
|
||||||
maintainer-clean-recursive mostlyclean mostlyclean-generic \
|
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
|
||||||
mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \
|
uninstall-info-am
|
||||||
ps-recursive tags tags-recursive uninstall uninstall-am \
|
|
||||||
uninstall-info-am uninstall-info-recursive uninstall-recursive
|
|
||||||
|
|
||||||
|
|
||||||
.PHONY: localcheck remotecheck
|
.PHONY: localcheck remotecheck
|
||||||
|
204
contrib/cvs/NEWS
204
contrib/cvs/NEWS
@ -1,6 +1,208 @@
|
|||||||
Changes since 1.11.16:
|
Changes since 1.11.21:
|
||||||
**********************
|
**********************
|
||||||
|
|
||||||
|
BUG FIXES
|
||||||
|
|
||||||
|
* The CVS client again correctly reports files with conflicts when using
|
||||||
|
servers running CVS 1.11.20/1.12.12, or earlier (and maybe 3rd party
|
||||||
|
servers).
|
||||||
|
|
||||||
|
* The GSSAPI server should now build under HP-UX.
|
||||||
|
|
||||||
|
* `cvs rtag' now correctly tags files that have been removed from the trunk.
|
||||||
|
|
||||||
|
* Code efficiency has been improved slightly.
|
||||||
|
|
||||||
|
* A rare race condition that could leave a lock on the val-tags file has been
|
||||||
|
avoided.
|
||||||
|
|
||||||
|
* A potential buffer overflow in the history command has been fixed.
|
||||||
|
|
||||||
|
* Thanks to a report and patch from Garrett Rooney <grooney@collab.net>, paused
|
||||||
|
trigger processes no longer cause the CVS server to consume 100% CPU.
|
||||||
|
|
||||||
|
* Thanks to a suggestion from Joseph P. Skudlarek <Jskud@Jskud.com>, an
|
||||||
|
:extssh: has been added as a synonym of the :ext: access method, as a
|
||||||
|
kindness to users of old version of Eclipse.
|
||||||
|
|
||||||
|
* Misc documentation updates and minor bug fixes.
|
||||||
|
|
||||||
|
Changes from 1.11.20 to 1.11.21:
|
||||||
|
********************************
|
||||||
|
|
||||||
|
BUG FIXES
|
||||||
|
|
||||||
|
* Thanks to Serguei E. Leontiev <lse@CryptoPro.ru>, CVS with Kerberos 5 GSSAPI
|
||||||
|
should automatically link on FreeBSD 5.x. (bug #14639).
|
||||||
|
|
||||||
|
* Thanks to Rahul Bhargava <rahul@wandisco.com>, heavily loaded systems
|
||||||
|
suffering from a disk crash or power failure will not lose data they claimed
|
||||||
|
to have committed.
|
||||||
|
|
||||||
|
* CVS server now handles conflict markers in Entry requests as documented.
|
||||||
|
|
||||||
|
* CVS now remembers that binary file merge conflicts occurred until the
|
||||||
|
timestamp of the updated binary file changes.
|
||||||
|
|
||||||
|
* CVS client now saves some bandwidth by not sending the contents of files
|
||||||
|
with conflicts to the server when it isn't needed.
|
||||||
|
|
||||||
|
* CVS now does correct locking during import.
|
||||||
|
|
||||||
|
* A problem where the server could block indefinitely waiting for an EOF from
|
||||||
|
the client when compression was enabled has been fixed.
|
||||||
|
|
||||||
|
* `cvs diff' no longer splits its arguments on spaces.
|
||||||
|
|
||||||
|
* Thanks to an old report and patch from Stewart Brodie <stewart@eh.org>, a
|
||||||
|
potential crash in response to a corrupt RCS file has been fixed.
|
||||||
|
|
||||||
|
* CVS now locks the history and val-tags files before writing to them.
|
||||||
|
Especially with large repositories, users should no longer see new warnings
|
||||||
|
about corrupt history records when using the `cvs history' command. Existing
|
||||||
|
corrupt history records will still need to be removed manually. val-tags
|
||||||
|
corruption should have had less obvious effects, but removing the
|
||||||
|
CVSROOT/val-tags file and allowing a 1.11.21 or later version of CVS to
|
||||||
|
regenerate it may eliminate a few odd behaviors and possibly cause a slight
|
||||||
|
speed up of read transactions in large repositories over time.
|
||||||
|
|
||||||
|
BUILD ISSUES
|
||||||
|
|
||||||
|
* The RPM spec file works again with the most modern versions of `rpm'.
|
||||||
|
|
||||||
|
DEVELOPER ISSUES
|
||||||
|
|
||||||
|
* We've standardized on Automake 1.9.6 to get some at new features that make
|
||||||
|
our jobs easier. See the HACKING file for more on using the autotools with
|
||||||
|
CVS.
|
||||||
|
|
||||||
|
Changes from 1.11.19 to 1.11.20:
|
||||||
|
********************************
|
||||||
|
|
||||||
|
SERVER SECURITY FIXES
|
||||||
|
|
||||||
|
* Thanks to a report from Alen Zukich <alen.zukich@klocwork.com>, several minor
|
||||||
|
security issues have been addressed. One was a buffer overflow that is
|
||||||
|
potentially serious but which may not be exploitable, assigned CAN-2005-0753
|
||||||
|
by the Common Vulnerabilities and Exposures Project
|
||||||
|
<http://www.cve.mitre.org>. Other fixes resulting from Alen's report include
|
||||||
|
repair of an arbitrary free with no known exploit and several plugged memory
|
||||||
|
leaks and potentially freed NULL pointers which may have been exploitable for
|
||||||
|
a denial of service attack.
|
||||||
|
|
||||||
|
* Thanks to a report from Craig Monson <craig@malachiarts.com>, minor
|
||||||
|
potential vulnerabilities in the contributed Perl scripts have been fixed.
|
||||||
|
The confirmed vulnerability could allow the execution of arbitrary code on
|
||||||
|
the CVS server, but only if a user already had commit access and if one of
|
||||||
|
the contrib scripts was installed improperly, a condition which should have
|
||||||
|
been quickly visible to any administrator. The complete description of the
|
||||||
|
problem is here: <https://ccvs.cvshome.org/issues/show_bug.cgi?id=224>. If
|
||||||
|
you were making use of any of the contributed trigger scripts on a CVS
|
||||||
|
server, you should probably still replace them with the new versions, to be
|
||||||
|
on the safe side.
|
||||||
|
|
||||||
|
Unfortunately, our fix is incomplete. Taint-checking has been enabled in all
|
||||||
|
the contributed Perl scripts intended to be run as trigger scripts, but no
|
||||||
|
attempt has been made to ensure that they still run in taint mode. You will
|
||||||
|
most likely have to tweak the scripts in some way to make them run. Please
|
||||||
|
send any patches you find necessary back to <bug-cvs@nongnu.org> so that we
|
||||||
|
may again ship fully enabled scripts in the future.
|
||||||
|
|
||||||
|
You should also make sure that any home-grown Perl scripts that you might
|
||||||
|
have installed as CVS triggers also have taint-checking enabled. This can be
|
||||||
|
done by adding `-T' on the scripts' #! lines. Please try running
|
||||||
|
`perldoc perlsec' if you would like more information on general Perl security
|
||||||
|
and taint-checking.
|
||||||
|
|
||||||
|
BUG FIXES
|
||||||
|
|
||||||
|
* Thanks to a report and a patch from Georg Scwharz <georg.scwarz@freenet.de>
|
||||||
|
CVS now builds without error on IRIX 5.3
|
||||||
|
|
||||||
|
DEVELOPER ISSUES
|
||||||
|
|
||||||
|
* We've standardized on Automake 1.9.5 to get some at new features that make
|
||||||
|
our jobs easier. See the HACKING file for more on using the autotools with
|
||||||
|
CVS.
|
||||||
|
|
||||||
|
Changes from 1.11.18 to 1.11.19:
|
||||||
|
********************************
|
||||||
|
|
||||||
|
BUG FIXES
|
||||||
|
|
||||||
|
* Thanks to a patch from Jim Hyslop <jhyslop@ieee.org>, issuing
|
||||||
|
'cvs watch on' or 'cvs watch off' in an empty directory no longer
|
||||||
|
clears any watchers in that directory.
|
||||||
|
|
||||||
|
* An intermittant assertion failure in checkout has been fixed.
|
||||||
|
|
||||||
|
* Thanks to a report from Chris Bohn <cbohn@rrinc.com>, all the source files
|
||||||
|
needed for the Windows "red file" fix are actually included in the
|
||||||
|
distribution.
|
||||||
|
|
||||||
|
* Misc bug and documentation fixes.
|
||||||
|
|
||||||
|
Changes from 1.11.17 to 1.11.18:
|
||||||
|
********************************
|
||||||
|
|
||||||
|
BUG FIXES
|
||||||
|
|
||||||
|
* Thanks to a report from Gottfried Ganssauge <gotti@cvshome.org>, CVS no
|
||||||
|
longer exits when it encounters links pointing to paths containing more
|
||||||
|
than 128 characters.
|
||||||
|
|
||||||
|
* Thanks to a report from Dan Peterson <dbpete@aol.com>, error messages from
|
||||||
|
GSSAPI servers are no longer truncated.
|
||||||
|
|
||||||
|
* Thanks to a report from Dan Peterson <dbpete@aol.com>, attempts to resurrect
|
||||||
|
a file on the trunk that was added on a branch no longer causes an assertion
|
||||||
|
failure.
|
||||||
|
|
||||||
|
* Thanks to a report from Dan Peterson <dbpete@aol.com>, imports to branches
|
||||||
|
like "1.1." no longer create corrupt RCS archives.
|
||||||
|
|
||||||
|
* Thanks to a report from Chris Bohn <cbohn@rrinc.com>, links from J.C. Hamlin
|
||||||
|
<jchamlin@ibsys.com>, and code posted by Jonathan Gilligan, we think we have
|
||||||
|
finally corrected the Windows "red-file" (daylight savings time) bug once and
|
||||||
|
for all.
|
||||||
|
|
||||||
|
* Thanks to a patch from Jeroen Ruigrok/asmodai <asmodai@wxs.nl>, the
|
||||||
|
log_accum.pl script should no longer elicit warnings from Perl 5.8.5.
|
||||||
|
|
||||||
|
* The r* commands (rlog, rls, etc.) can once again handle requests to run
|
||||||
|
against the entire repository (e.g. `cvs rlog .'). Thanks go to Dan Peterson
|
||||||
|
<dbpete@aol.com> for the report.
|
||||||
|
|
||||||
|
* A problem where the attempted access of files via tags beginning with spaces
|
||||||
|
could cause the CVS server to hang has been fixed. This was a particular
|
||||||
|
problem with WinCVS clients because users would sometimes accidentally
|
||||||
|
include spaces in tags pasted into a dialog box. This fix also altered some
|
||||||
|
of the error messages generated by the use of invalid tags. Thanks go to Dan
|
||||||
|
Peterson <dbpete@aol.com> for the report.
|
||||||
|
|
||||||
|
* Thanks to James E Wilson <wilson@specifixinc.com> for a bug fix to
|
||||||
|
modules processing "gcc-core -a !gcc/f gcc" will no longer exclude
|
||||||
|
gcc/fortran by mistake.
|
||||||
|
|
||||||
|
* Thanks to Conrad Pino <conrad@pino.com>, the Windows build works once again.
|
||||||
|
|
||||||
|
* Misc updates to the manual.
|
||||||
|
|
||||||
|
DEVELOPER ISSUES
|
||||||
|
|
||||||
|
* We've standardized on Automake 1.9.3 to get some at new features that make
|
||||||
|
our jobs easier. See the note below on the Autoconf upgrade for more
|
||||||
|
details.
|
||||||
|
|
||||||
|
* We've standardized on Autoconf version 2.59 to get presumed bug fixes and
|
||||||
|
features, but nothing specific. Mostly, once we decide to upgrade one of the
|
||||||
|
autotools we just figure it'll save time later to grab the most current
|
||||||
|
versions of the others too. See the HACKING file for more on using the
|
||||||
|
autotools with CVS.
|
||||||
|
|
||||||
|
Changes from 1.11.16 to 1.11.17:
|
||||||
|
********************************
|
||||||
|
|
||||||
SERVER SECURITY FIXES
|
SERVER SECURITY FIXES
|
||||||
|
|
||||||
* Thanks to Stefan Esser & Sebastian Krahmer, several potential security
|
* Thanks to Stefan Esser & Sebastian Krahmer, several potential security
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
CVS Kit
|
CVS Kit
|
||||||
|
|
||||||
Copyright (c) 1993-1994 Brian Berliner
|
Copyright (C) 1986-2005 Free Software Foundation, Inc.
|
||||||
Copyright (c) 1992 Brian Berliner and Jeff Polk
|
|
||||||
Copyright (c) 1989-1992, Brian Berliner
|
Portions Copyright (C) 1998-2005 Derek Price,
|
||||||
Copyright (c) 1998-2004 Free Software Foundation,
|
& Ximbiot <http://ximbiot.com>.
|
||||||
Derek Price,
|
Portions Copyright (C) 1993-1994 Brian Berliner.
|
||||||
& Ximbiot <http://ximbiot.com>
|
Portions Copyright (C) 1992 Brian Berliner and Jeff Polk.
|
||||||
All Rights Reserved
|
Portions Copyright (C) 1989-1992 Brian Berliner.
|
||||||
|
All Rights Reserved
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
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
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -74,6 +75,20 @@ compatibility problems with CVS 1.5 or later.
|
|||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Verifying the Integrity of Downloads:
|
||||||
|
|
||||||
|
The official CVS source and binary releases are signed by the CVS maintainer
|
||||||
|
who generated them. This does not imply any sort of warranty, but it does mean
|
||||||
|
that you can verify that the file you downloaded did, in fact, come from a CVS
|
||||||
|
maintainer.
|
||||||
|
|
||||||
|
The OpenPGP keys of the CVS maintainers who have submitted them are in the KEYS
|
||||||
|
file of the CVS distribution and are also available from many OpenPGP key
|
||||||
|
servers. It is recommended that you verify the key fingerprints against an
|
||||||
|
external source, however you obtain the key.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
Installation:
|
Installation:
|
||||||
|
|
||||||
Please read the INSTALL file for installation instructions. Brief summary:
|
Please read the INSTALL file for installation instructions. Brief summary:
|
||||||
@ -98,19 +113,31 @@ cvs.texinfo and re-generate cvs.ps using TeX.
|
|||||||
* How do I get up-to-date information and information about other
|
* How do I get up-to-date information and information about other
|
||||||
versions of CVS?
|
versions of CVS?
|
||||||
|
|
||||||
On the web, http://www.loria.fr/~molli/cvs-index.html.
|
|
||||||
|
|
||||||
See also
|
See also
|
||||||
http://www.cvshome.org
|
http://cvs.nongnu.org
|
||||||
|
http://www.cvsnt.org
|
||||||
|
|
||||||
The mailing list for CVS is info-cvs@gnu.org. Send
|
Anyone can add themselves to the following mailing lists:
|
||||||
subscription and removal requests for that list to
|
|
||||||
info-cvs-request@gnu.org.
|
bug-cvs: This is the list which users are requested to send bug reports
|
||||||
|
to. General CVS development and design discussions also tend to take
|
||||||
|
place on this list.
|
||||||
|
info-cvs: This list is intended for user questions, including general
|
||||||
|
help requests.
|
||||||
|
cvs-announce: CVS release announcements and other major
|
||||||
|
announcements about the project are sent to this list.
|
||||||
|
cvs-announce-binaries: Announcements are made to this list
|
||||||
|
when binaries for various platforms are built and initially
|
||||||
|
posted for download.
|
||||||
|
|
||||||
|
To subscribe to any of these lists, send mail to <list>-request@nongnu.org
|
||||||
|
or visit http://savannah.nongnu.org/mail/?group=cvs and follow the instructions
|
||||||
|
for the list you wish to subscribe to.
|
||||||
|
|
||||||
The newsgroup for CVS (and other configuration management systems) is
|
The newsgroup for CVS (and other configuration management systems) is
|
||||||
comp.software.config-mgmt. There is not yet a CVS-specific newsgroup,
|
comp.software.config-mgmt. The gnu.cvs.help newsgroup is a 2-way mirror
|
||||||
but perhaps if comp.software.config-mgmt gets enough CVS discussion,
|
of the info-cvs@nongnu.org mailing list and gnu.cvs.bug is similarly a 2-way
|
||||||
then it will be possible to create one.
|
mirror of bug-cvs@nongnu.org.
|
||||||
|
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -211,20 +211,24 @@ false when executed and are intended to be used like,
|
|||||||
"if $remote; then ... ; else ... ; fi"
|
"if $remote; then ... ; else ... ; fi"
|
||||||
|
|
||||||
|
|
||||||
* $testdir = the directory this test is taking place in
|
* $testdir = the directory this test is taking place in
|
||||||
(CVSROOT=$testdir/cvsroot or CVSROOT=:fork:$testdir/cvsroot)
|
(CVSROOT=$testdir/cvsroot or
|
||||||
* $testcvs = full path to the cvs executable we are testing
|
CVSROOT=:fork:$testdir/cvsroot)
|
||||||
* $PLUS = expr dependant uninterpreted '+' since this can vary
|
* $testcvs = full path to the cvs executable we are testing
|
||||||
* $DOTSTAR = expr dependant _interpreted_ .* since some exprs don't match
|
* $PLUS = expr dependant uninterpreted '+' since this can vary
|
||||||
EOL
|
* $DOTSTAR = expr dependant _interpreted_ .* since some exprs don't
|
||||||
* $username = regexp to match a username
|
match EOL
|
||||||
* $hostname = regexp to match a hostname
|
* $username = the username of the user running the tests
|
||||||
* $PROG = regexp to match progname in CVS error messages
|
* $username8 = the first 8 characters of $username, output by some
|
||||||
* $remote = ':' (true) or 'false', depending on whether the script is
|
system and CVS commands
|
||||||
running with a remote CVSROOT
|
* $anyusername = regexp to match any valid system or CVS username
|
||||||
* $keep = ':' (true) or 'false'. When set, the first test run will
|
* $hostname = regexp to match a hostname
|
||||||
leave any files and directories it created in $testdir and
|
* $PROG = regexp to match progname in CVS error messages
|
||||||
exit when complete.
|
* $remote = ':' (true) or 'false', depending on whether the script is
|
||||||
|
running with a remote CVSROOT
|
||||||
|
* $keep = ':' (true) or 'false'. When set, the first test run will
|
||||||
|
leave any files and directories it created in $testdir and
|
||||||
|
exit when complete.
|
||||||
|
|
||||||
And, of course, some characters like '.' in regexps need to be '\' escaped when
|
And, of course, some characters like '.' in regexps need to be '\' escaped when
|
||||||
you mean them literally. Some characters may be interpreted by the shell,
|
you mean them literally. Some characters may be interpreted by the shell,
|
||||||
|
@ -1,20 +1,5 @@
|
|||||||
The "TODO" file! -*-Indented-Text-*-
|
The "TODO" file! -*-Indented-Text-*-
|
||||||
|
|
||||||
22. Catch signals for cleanup when "add"ing files.
|
|
||||||
|
|
||||||
24. Insist on a log message.
|
|
||||||
(If done, this should be configurable via commitinfo or some new
|
|
||||||
config file -kingdon, Jun 1995).
|
|
||||||
|
|
||||||
30. Add "rdiff" & "rtag" program options to the modules database. These
|
|
||||||
commands seem hard to use since these commands deal directly with the
|
|
||||||
RCS ,v files. (perhaps should think a little harder about what this is
|
|
||||||
trying to accomplish and what the best way is -kingdon, Jul 1997).
|
|
||||||
|
|
||||||
31. Think hard about ^C recovery.
|
|
||||||
One particular issue: RCS removes the ,foo.c, file on ^C and CVS
|
|
||||||
doesn't.
|
|
||||||
|
|
||||||
38. Think hard about using RCS state information to allow one to checkin
|
38. Think hard about using RCS state information to allow one to checkin
|
||||||
a new vendor release without having it be accessed until it has been
|
a new vendor release without having it be accessed until it has been
|
||||||
integrated into the local changes.
|
integrated into the local changes.
|
||||||
@ -27,11 +12,6 @@ The "TODO" file! -*-Indented-Text-*-
|
|||||||
PRCS 1.0 was particularly bad the way it handled the "invisible
|
PRCS 1.0 was particularly bad the way it handled the "invisible
|
||||||
state", but 1.2 is significantly better.
|
state", but 1.2 is significantly better.
|
||||||
|
|
||||||
49. cvs xxx commands should be able to deal with files in other
|
|
||||||
directories. I want to do a cvs add foo/bar.c.
|
|
||||||
[[ most commands now use the generic recursion processor, but not all;
|
|
||||||
this note is left here to remind me to fix the others ]]
|
|
||||||
|
|
||||||
52. SCCS has a feature that I would *love* to see in CVS, as it is very
|
52. SCCS has a feature that I would *love* to see in CVS, as it is very
|
||||||
useful. One may make a private copy of SCCS suid to a particular user,
|
useful. One may make a private copy of SCCS suid to a particular user,
|
||||||
so other users in the authentication list may check files in and out of
|
so other users in the authentication list may check files in and out of
|
||||||
@ -73,13 +53,6 @@ The "TODO" file! -*-Indented-Text-*-
|
|||||||
can only support symlinks that are relative and within the scope of
|
can only support symlinks that are relative and within the scope of
|
||||||
the sources being controlled.
|
the sources being controlled.
|
||||||
|
|
||||||
92. Look into this:
|
|
||||||
After a bit of soul searching via dbx, I realized my sin was that I'd
|
|
||||||
specified "echo" as the program to call from loginfo. The commit
|
|
||||||
procedure worked fine till it hit my echo, then silently aborted
|
|
||||||
leaving the lockfiles intact. Since I needn't use the loginfo
|
|
||||||
facility, I simply removed those commands and it all works.
|
|
||||||
|
|
||||||
93. Need to think hard about release and development environments. Think
|
93. Need to think hard about release and development environments. Think
|
||||||
about execsets as well.
|
about execsets as well.
|
||||||
|
|
||||||
@ -131,9 +104,6 @@ The "TODO" file! -*-Indented-Text-*-
|
|||||||
error. I think a later cvs get sys seemed to work so perhaps
|
error. I think a later cvs get sys seemed to work so perhaps
|
||||||
something is amiss in handling multiple arguments to cvs get?
|
something is amiss in handling multiple arguments to cvs get?
|
||||||
|
|
||||||
113. The "cvs update" command should tee its output to a log file in ".".
|
|
||||||
(why? What is wrong with piping stdout to "tee"? -kingdon, Jun 1995)
|
|
||||||
|
|
||||||
119. When importing a directory tree that is under SCCS/RCS control,
|
119. When importing a directory tree that is under SCCS/RCS control,
|
||||||
consider an option to have import checkout the SCCS/RCS files if
|
consider an option to have import checkout the SCCS/RCS files if
|
||||||
necessary. (This is if someone wants to import something which
|
necessary. (This is if someone wants to import something which
|
||||||
@ -888,3 +858,8 @@ wait interval.
|
|||||||
|
|
||||||
230. Support for options like compression as part of the CVSROOT might be
|
230. Support for options like compression as part of the CVSROOT might be
|
||||||
nice. This should be fairly easy to implement now using the method options.
|
nice. This should be fairly easy to implement now using the method options.
|
||||||
|
|
||||||
|
234. Noop commands should be logged in the history file. Information can
|
||||||
|
still be obtained with noop commands, for instance via `cvs -n up -p', and
|
||||||
|
paranoid admins might appreciate this. Similarly, perhaps diff operations
|
||||||
|
should be logged.
|
||||||
|
@ -210,6 +210,11 @@ when using GSSAPI.])
|
|||||||
#
|
#
|
||||||
AC_SEARCH_LIBS([__dn_expand], [resolv])
|
AC_SEARCH_LIBS([__dn_expand], [resolv])
|
||||||
|
|
||||||
|
#
|
||||||
|
# crypto Need by gssapi under FreeBSD 5.4
|
||||||
|
#
|
||||||
|
AC_SEARCH_LIBS([RC4], [crypto])
|
||||||
|
|
||||||
#
|
#
|
||||||
# crypt Needed by roken under FreeBSD 4.6.
|
# crypt Needed by roken under FreeBSD 4.6.
|
||||||
#
|
#
|
||||||
@ -253,6 +258,9 @@ when using GSSAPI.])
|
|||||||
#
|
#
|
||||||
AC_SEARCH_LIBS([krb5_free_context], [krb5])
|
AC_SEARCH_LIBS([krb5_free_context], [krb5])
|
||||||
|
|
||||||
|
#
|
||||||
|
# gss This may be the only lib needed under HP-UX, so find it
|
||||||
|
# first.
|
||||||
#
|
#
|
||||||
# gssapi_krb5 Only lib needed with MIT K5 v1.2.1, so find it first in
|
# gssapi_krb5 Only lib needed with MIT K5 v1.2.1, so find it first in
|
||||||
# order to prefer MIT Kerberos. If both MIT & Heimdal
|
# order to prefer MIT Kerberos. If both MIT & Heimdal
|
||||||
@ -260,11 +268,13 @@ when using GSSAPI.])
|
|||||||
# some of the libraries above in LIBS unnecessarily, but
|
# some of the libraries above in LIBS unnecessarily, but
|
||||||
# noone would ever do that, right?
|
# noone would ever do that, right?
|
||||||
#
|
#
|
||||||
|
# gss HP-UX ???
|
||||||
|
#
|
||||||
# gssapi_krb5 MIT K5 v1.2.2-beta1 -lkrb5
|
# gssapi_krb5 MIT K5 v1.2.2-beta1 -lkrb5
|
||||||
#
|
#
|
||||||
# gssapi Heimdal K 0.3d -lkrb5
|
# gssapi Heimdal K 0.3d -lkrb5
|
||||||
#
|
#
|
||||||
AC_SEARCH_LIBS([gss_import_name], [gssapi_krb5 gssapi])
|
AC_SEARCH_LIBS([gss_import_name], [gss gssapi_krb5 gssapi])
|
||||||
fi
|
fi
|
||||||
])dnl
|
])dnl
|
||||||
|
|
||||||
|
1556
contrib/cvs/aclocal.m4
vendored
1556
contrib/cvs/aclocal.m4
vendored
File diff suppressed because it is too large
Load Diff
@ -402,6 +402,10 @@
|
|||||||
/* Define as the return type of signal handlers (`int' or `void'). */
|
/* Define as the return type of signal handlers (`int' or `void'). */
|
||||||
#undef RETSIGTYPE
|
#undef RETSIGTYPE
|
||||||
|
|
||||||
|
/* The default remote shell to use, if one does not specify the CVS_RSH
|
||||||
|
environment variable. */
|
||||||
|
#undef RSH_DFLT
|
||||||
|
|
||||||
/* If you are working with a large remote repository and a 'cvs checkout' is
|
/* If you are working with a large remote repository and a 'cvs checkout' is
|
||||||
swamping your network and memory, define these to enable flow control. You
|
swamping your network and memory, define these to enable flow control. You
|
||||||
will end up with even less probability of a consistent checkout (see
|
will end up with even less probability of a consistent checkout (see
|
||||||
|
552
contrib/cvs/configure
vendored
552
contrib/cvs/configure
vendored
@ -1,8 +1,8 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.58 for Concurrent Versions System (CVS) 1.11.17.
|
# Generated by GNU Autoconf 2.59 for Concurrent Versions System (CVS) 1.11.22.
|
||||||
#
|
#
|
||||||
# Report bugs to <bug-cvs@gnu.org>.
|
# Report bugs to <bug-cvs@nongnu.org>.
|
||||||
#
|
#
|
||||||
# Copyright (C) 2003 Free Software Foundation, Inc.
|
# Copyright (C) 2003 Free Software Foundation, Inc.
|
||||||
# This configure script is free software; the Free Software Foundation
|
# This configure script is free software; the Free Software Foundation
|
||||||
@ -269,9 +269,9 @@ SHELL=${CONFIG_SHELL-/bin/sh}
|
|||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='Concurrent Versions System (CVS)'
|
PACKAGE_NAME='Concurrent Versions System (CVS)'
|
||||||
PACKAGE_TARNAME='cvs'
|
PACKAGE_TARNAME='cvs'
|
||||||
PACKAGE_VERSION='1.11.17'
|
PACKAGE_VERSION='1.11.22'
|
||||||
PACKAGE_STRING='Concurrent Versions System (CVS) 1.11.17'
|
PACKAGE_STRING='Concurrent Versions System (CVS) 1.11.22'
|
||||||
PACKAGE_BUGREPORT='bug-cvs@gnu.org'
|
PACKAGE_BUGREPORT='bug-cvs@nongnu.org'
|
||||||
|
|
||||||
ac_unique_file="src/cvs.h"
|
ac_unique_file="src/cvs.h"
|
||||||
# Factoring default headers for most tests.
|
# Factoring default headers for most tests.
|
||||||
@ -311,7 +311,7 @@ ac_includes_default="\
|
|||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
#endif"
|
#endif"
|
||||||
|
|
||||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot ac_prefix_program MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP RANLIB ac_ct_RANLIB YACC LN_S PERL CSH MKTEMP SENDMAIL PR ROFF PS2PDF TEXI2DVI MAKE_TARGETS_IN_VPATH_TRUE MAKE_TARGETS_IN_VPATH_FALSE LIBOBJS KRB4 includeopt EDITOR LTLIBOBJS'
|
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar ac_prefix_program MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP RANLIB ac_ct_RANLIB YACC LN_S PERL CSH MKTEMP SENDMAIL PR ROFF PS2PDF TEXI2DVI MAKE_TARGETS_IN_VPATH_TRUE MAKE_TARGETS_IN_VPATH_FALSE LIBOBJS KRB4 includeopt EDITOR with_default_rsh LTLIBOBJS'
|
||||||
ac_subst_files='MKTEMP_SH_FUNCTION'
|
ac_subst_files='MKTEMP_SH_FUNCTION'
|
||||||
|
|
||||||
# Initialize some variables set by options.
|
# Initialize some variables set by options.
|
||||||
@ -784,7 +784,7 @@ if test "$ac_init_help" = "long"; then
|
|||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures Concurrent Versions System (CVS) 1.11.17 to adapt to many kinds of systems.
|
\`configure' configures Concurrent Versions System (CVS) 1.11.22 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
@ -846,17 +846,17 @@ fi
|
|||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of Concurrent Versions System (CVS) 1.11.17:";;
|
short | recursive ) echo "Configuration of Concurrent Versions System (CVS) 1.11.22:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
Optional Features:
|
Optional Features:
|
||||||
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
||||||
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||||||
--enable-maintainer-mode enable make rules and dependencies not useful
|
--enable-maintainer-mode enable make rules and dependencies not useful
|
||||||
(and sometimes confusing) to the casual installer
|
(and sometimes confusing) to the casual installer
|
||||||
--disable-dependency-tracking Speeds up one-time builds
|
--disable-dependency-tracking speeds up one-time build
|
||||||
--enable-dependency-tracking Do not reject slow dependency extractors
|
--enable-dependency-tracking do not reject slow dependency extractors
|
||||||
--enable-cvs-ndbm Use the NDBM library distributed with CVS rather
|
--enable-cvs-ndbm Use the NDBM library distributed with CVS rather
|
||||||
than attempting to use a system NDBM library.
|
than attempting to use a system NDBM library.
|
||||||
Disabling this may not work. (default)
|
Disabling this may not work. (default)
|
||||||
@ -911,6 +911,8 @@ Optional Packages:
|
|||||||
--with-gssapi GSSAPI directory (default autoselects)
|
--with-gssapi GSSAPI directory (default autoselects)
|
||||||
--with-editor The default text editor CVS should use for log
|
--with-editor The default text editor CVS should use for log
|
||||||
messages (default autoselects)
|
messages (default autoselects)
|
||||||
|
--with-rsh The default remote shell CVS will use for :ext:
|
||||||
|
transport (default autodetects)
|
||||||
--with-tmpdir The temporary directory CVS should use as a default
|
--with-tmpdir The temporary directory CVS should use as a default
|
||||||
(default autoselects)
|
(default autoselects)
|
||||||
--with-umask Set the umask CVS will use by default in the
|
--with-umask Set the umask CVS will use by default in the
|
||||||
@ -938,7 +940,7 @@ Some influential environment variables:
|
|||||||
Use these variables to override the choices made by `configure' or to help
|
Use these variables to override the choices made by `configure' or to help
|
||||||
it to find libraries and programs with nonstandard names/locations.
|
it to find libraries and programs with nonstandard names/locations.
|
||||||
|
|
||||||
Report bugs to <bug-cvs@gnu.org>.
|
Report bugs to <bug-cvs@nongnu.org>.
|
||||||
_ACEOF
|
_ACEOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -972,40 +974,43 @@ case $srcdir in
|
|||||||
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
||||||
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
|
||||||
.) ac_abs_builddir=$ac_builddir;;
|
# Do not use `cd foo && pwd` to compute absolute paths, because
|
||||||
|
# the directories may not exist.
|
||||||
|
case `pwd` in
|
||||||
|
.) ac_abs_builddir="$ac_dir";;
|
||||||
*)
|
*)
|
||||||
case $ac_builddir in
|
case "$ac_dir" in
|
||||||
.) ac_abs_builddir="$ac_dir";;
|
.) ac_abs_builddir=`pwd`;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_builddir=$ac_builddir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
|
||||||
*) ac_abs_builddir="$ac_dir"/$ac_builddir;;
|
*) ac_abs_builddir=`pwd`/"$ac_dir";;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*)
|
*)
|
||||||
case ${ac_top_builddir}. in
|
case ${ac_top_builddir}. in
|
||||||
.) ac_abs_top_builddir="$ac_dir";;
|
.) ac_abs_top_builddir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*) ac_abs_top_builddir="$ac_dir"/${ac_top_builddir}.;;
|
*) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_srcdir=$ac_srcdir;;
|
.) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_srcdir in
|
case $ac_srcdir in
|
||||||
.) ac_abs_srcdir="$ac_dir";;
|
.) ac_abs_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*) ac_abs_srcdir="$ac_dir"/$ac_srcdir;;
|
*) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_top_srcdir in
|
case $ac_top_srcdir in
|
||||||
.) ac_abs_top_srcdir="$ac_dir";;
|
.) ac_abs_top_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*) ac_abs_top_srcdir="$ac_dir"/$ac_top_srcdir;;
|
*) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -1031,8 +1036,8 @@ fi
|
|||||||
test -n "$ac_init_help" && exit 0
|
test -n "$ac_init_help" && exit 0
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
Concurrent Versions System (CVS) configure 1.11.17
|
Concurrent Versions System (CVS) configure 1.11.22
|
||||||
generated by GNU Autoconf 2.58
|
generated by GNU Autoconf 2.59
|
||||||
|
|
||||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||||
This configure script is free software; the Free Software Foundation
|
This configure script is free software; the Free Software Foundation
|
||||||
@ -1045,8 +1050,8 @@ cat >&5 <<_ACEOF
|
|||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by Concurrent Versions System (CVS) $as_me 1.11.17, which was
|
It was created by Concurrent Versions System (CVS) $as_me 1.11.22, which was
|
||||||
generated by GNU Autoconf 2.58. Invocation command line was
|
generated by GNU Autoconf 2.59. Invocation command line was
|
||||||
|
|
||||||
$ $0 $@
|
$ $0 $@
|
||||||
|
|
||||||
@ -1382,7 +1387,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
am__api_version="1.7"
|
am__api_version="1.9"
|
||||||
ac_aux_dir=
|
ac_aux_dir=
|
||||||
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
|
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
|
||||||
if test -f $ac_dir/install-sh; then
|
if test -f $ac_dir/install-sh; then
|
||||||
@ -1545,7 +1550,6 @@ _ACEOF
|
|||||||
program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
|
program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
|
||||||
rm conftest.sed
|
rm conftest.sed
|
||||||
|
|
||||||
|
|
||||||
# expand $ac_aux_dir to an absolute path
|
# expand $ac_aux_dir to an absolute path
|
||||||
am_aux_dir=`cd $ac_aux_dir && pwd`
|
am_aux_dir=`cd $ac_aux_dir && pwd`
|
||||||
|
|
||||||
@ -1559,6 +1563,39 @@ else
|
|||||||
echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
|
echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
|
||||||
|
# We used to keeping the `.' as first argument, in order to
|
||||||
|
# allow $(mkdir_p) to be used without argument. As in
|
||||||
|
# $(mkdir_p) $(somedir)
|
||||||
|
# where $(somedir) is conditionally defined. However this is wrong
|
||||||
|
# for two reasons:
|
||||||
|
# 1. if the package is installed by a user who cannot write `.'
|
||||||
|
# make install will fail,
|
||||||
|
# 2. the above comment should most certainly read
|
||||||
|
# $(mkdir_p) $(DESTDIR)$(somedir)
|
||||||
|
# so it does not work when $(somedir) is undefined and
|
||||||
|
# $(DESTDIR) is not.
|
||||||
|
# To support the latter case, we have to write
|
||||||
|
# test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
|
||||||
|
# so the `.' trick is pointless.
|
||||||
|
mkdir_p='mkdir -p --'
|
||||||
|
else
|
||||||
|
# On NextStep and OpenStep, the `mkdir' command does not
|
||||||
|
# recognize any option. It will interpret all options as
|
||||||
|
# directories to create, and then abort because `.' already
|
||||||
|
# exists.
|
||||||
|
for d in ./-p ./--version;
|
||||||
|
do
|
||||||
|
test -d $d && rmdir $d
|
||||||
|
done
|
||||||
|
# $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
|
||||||
|
if test -f "$ac_aux_dir/mkinstalldirs"; then
|
||||||
|
mkdir_p='$(mkinstalldirs)'
|
||||||
|
else
|
||||||
|
mkdir_p='$(install_sh) -d'
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
for ac_prog in gawk mawk nawk awk
|
for ac_prog in gawk mawk nawk awk
|
||||||
do
|
do
|
||||||
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||||
@ -1637,7 +1674,7 @@ else
|
|||||||
fi
|
fi
|
||||||
rmdir .tst 2>/dev/null
|
rmdir .tst 2>/dev/null
|
||||||
|
|
||||||
# test to see if srcdir already configured
|
# test to see if srcdir already configured
|
||||||
if test "`cd $srcdir && pwd`" != "`pwd`" &&
|
if test "`cd $srcdir && pwd`" != "`pwd`" &&
|
||||||
test -f $srcdir/config.status; then
|
test -f $srcdir/config.status; then
|
||||||
{ { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
|
{ { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
|
||||||
@ -1657,7 +1694,7 @@ fi
|
|||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='cvs'
|
PACKAGE='cvs'
|
||||||
VERSION='1.11.17'
|
VERSION='1.11.22'
|
||||||
|
|
||||||
|
|
||||||
# Some tools Automake needs.
|
# Some tools Automake needs.
|
||||||
@ -1676,9 +1713,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
|
|||||||
|
|
||||||
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
|
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
|
||||||
|
|
||||||
|
|
||||||
AMTAR=${AMTAR-"${am_missing_run}tar"}
|
|
||||||
|
|
||||||
install_sh=${install_sh-"$am_aux_dir/install-sh"}
|
install_sh=${install_sh-"$am_aux_dir/install-sh"}
|
||||||
|
|
||||||
# Installed binaries are usually stripped using `strip' when the user
|
# Installed binaries are usually stripped using `strip' when the user
|
||||||
@ -1771,6 +1805,13 @@ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
|
|||||||
|
|
||||||
# We need awk for the "check" target. The system "awk" is bad on
|
# We need awk for the "check" target. The system "awk" is bad on
|
||||||
# some platforms.
|
# some platforms.
|
||||||
|
# Always define AMTAR for backward compatibility.
|
||||||
|
|
||||||
|
AMTAR=${AMTAR-"${am_missing_run}tar"}
|
||||||
|
|
||||||
|
am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -2908,7 +2949,9 @@ else
|
|||||||
: > sub/conftest.c
|
: > sub/conftest.c
|
||||||
for i in 1 2 3 4 5 6; do
|
for i in 1 2 3 4 5 6; do
|
||||||
echo '#include "conftst'$i'.h"' >> sub/conftest.c
|
echo '#include "conftst'$i'.h"' >> sub/conftest.c
|
||||||
: > sub/conftst$i.h
|
# Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
|
||||||
|
# Solaris 8's {/usr,}/bin/sh.
|
||||||
|
touch sub/conftst$i.h
|
||||||
done
|
done
|
||||||
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
|
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
|
||||||
|
|
||||||
@ -2936,9 +2979,14 @@ else
|
|||||||
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||||||
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||||||
# icc doesn't choke on unknown options, it will just issue warnings
|
# icc doesn't choke on unknown options, it will just issue warnings
|
||||||
# (even with -Werror). So we grep stderr for any message
|
# or remarks (even with -Werror). So we grep stderr for any message
|
||||||
# that says an option was ignored.
|
# that says an option was ignored or not supported.
|
||||||
if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
|
# When given -MP, icc 7.0 and 7.1 complain thusly:
|
||||||
|
# icc: Command line warning: ignoring option '-M'; no argument required
|
||||||
|
# The diagnosis changed in icc 8.0:
|
||||||
|
# icc: Command line remark: option '-MP' not supported
|
||||||
|
if (grep 'ignoring option' conftest.err ||
|
||||||
|
grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||||||
am_cv_CC_dependencies_compiler_type=$depmode
|
am_cv_CC_dependencies_compiler_type=$depmode
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
@ -3709,9 +3757,9 @@ echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result
|
|||||||
echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -5177,9 +5225,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -6223,9 +6271,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -7526,9 +7574,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -7983,9 +8031,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -8862,9 +8910,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -10592,9 +10640,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -10789,9 +10837,9 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&
|
|||||||
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
|
||||||
(
|
(
|
||||||
cat <<\_ASBOX
|
cat <<\_ASBOX
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
## Report this to bug-cvs@gnu.org ##
|
## Report this to bug-cvs@nongnu.org ##
|
||||||
## ------------------------------ ##
|
## --------------------------------- ##
|
||||||
_ASBOX
|
_ASBOX
|
||||||
) |
|
) |
|
||||||
sed "s/^/$as_me: WARNING: /" >&2
|
sed "s/^/$as_me: WARNING: /" >&2
|
||||||
@ -11497,6 +11545,136 @@ if test "$ac_cv_search___dn_expand" != no; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# crypto Need by gssapi under FreeBSD 5.4
|
||||||
|
#
|
||||||
|
echo "$as_me:$LINENO: checking for library containing RC4" >&5
|
||||||
|
echo $ECHO_N "checking for library containing RC4... $ECHO_C" >&6
|
||||||
|
if test "${ac_cv_search_RC4+set}" = set; then
|
||||||
|
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||||
|
else
|
||||||
|
ac_func_search_save_LIBS=$LIBS
|
||||||
|
ac_cv_search_RC4=no
|
||||||
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
|
/* confdefs.h. */
|
||||||
|
_ACEOF
|
||||||
|
cat confdefs.h >>conftest.$ac_ext
|
||||||
|
cat >>conftest.$ac_ext <<_ACEOF
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
/* Override any gcc2 internal prototype to avoid an error. */
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
/* We use char because int might match the return type of a gcc2
|
||||||
|
builtin and then its argument prototype would still apply. */
|
||||||
|
char RC4 ();
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
RC4 ();
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
rm -f conftest.$ac_objext conftest$ac_exeext
|
||||||
|
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||||
|
(eval $ac_link) 2>conftest.er1
|
||||||
|
ac_status=$?
|
||||||
|
grep -v '^ *+' conftest.er1 >conftest.err
|
||||||
|
rm -f conftest.er1
|
||||||
|
cat conftest.err >&5
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); } &&
|
||||||
|
{ ac_try='test -z "$ac_c_werror_flag"
|
||||||
|
|| test ! -s conftest.err'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; } &&
|
||||||
|
{ ac_try='test -s conftest$ac_exeext'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; }; then
|
||||||
|
ac_cv_search_RC4="none required"
|
||||||
|
else
|
||||||
|
echo "$as_me: failed program was:" >&5
|
||||||
|
sed 's/^/| /' conftest.$ac_ext >&5
|
||||||
|
|
||||||
|
fi
|
||||||
|
rm -f conftest.err conftest.$ac_objext \
|
||||||
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
|
if test "$ac_cv_search_RC4" = no; then
|
||||||
|
for ac_lib in crypto; do
|
||||||
|
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
|
||||||
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
|
/* confdefs.h. */
|
||||||
|
_ACEOF
|
||||||
|
cat confdefs.h >>conftest.$ac_ext
|
||||||
|
cat >>conftest.$ac_ext <<_ACEOF
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
/* Override any gcc2 internal prototype to avoid an error. */
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
/* We use char because int might match the return type of a gcc2
|
||||||
|
builtin and then its argument prototype would still apply. */
|
||||||
|
char RC4 ();
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
RC4 ();
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
rm -f conftest.$ac_objext conftest$ac_exeext
|
||||||
|
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||||
|
(eval $ac_link) 2>conftest.er1
|
||||||
|
ac_status=$?
|
||||||
|
grep -v '^ *+' conftest.er1 >conftest.err
|
||||||
|
rm -f conftest.er1
|
||||||
|
cat conftest.err >&5
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); } &&
|
||||||
|
{ ac_try='test -z "$ac_c_werror_flag"
|
||||||
|
|| test ! -s conftest.err'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; } &&
|
||||||
|
{ ac_try='test -s conftest$ac_exeext'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; }; then
|
||||||
|
ac_cv_search_RC4="-l$ac_lib"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
echo "$as_me: failed program was:" >&5
|
||||||
|
sed 's/^/| /' conftest.$ac_ext >&5
|
||||||
|
|
||||||
|
fi
|
||||||
|
rm -f conftest.err conftest.$ac_objext \
|
||||||
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
LIBS=$ac_func_search_save_LIBS
|
||||||
|
fi
|
||||||
|
echo "$as_me:$LINENO: result: $ac_cv_search_RC4" >&5
|
||||||
|
echo "${ECHO_T}$ac_cv_search_RC4" >&6
|
||||||
|
if test "$ac_cv_search_RC4" != no; then
|
||||||
|
test "$ac_cv_search_RC4" = "none required" || LIBS="$ac_cv_search_RC4 $LIBS"
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# crypt Needed by roken under FreeBSD 4.6.
|
# crypt Needed by roken under FreeBSD 4.6.
|
||||||
#
|
#
|
||||||
@ -12165,6 +12343,9 @@ if test "$ac_cv_search_krb5_free_context" != no; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# gss This may be the only lib needed under HP-UX, so find it
|
||||||
|
# first.
|
||||||
#
|
#
|
||||||
# gssapi_krb5 Only lib needed with MIT K5 v1.2.1, so find it first in
|
# gssapi_krb5 Only lib needed with MIT K5 v1.2.1, so find it first in
|
||||||
# order to prefer MIT Kerberos. If both MIT & Heimdal
|
# order to prefer MIT Kerberos. If both MIT & Heimdal
|
||||||
@ -12172,6 +12353,8 @@ fi
|
|||||||
# some of the libraries above in LIBS unnecessarily, but
|
# some of the libraries above in LIBS unnecessarily, but
|
||||||
# noone would ever do that, right?
|
# noone would ever do that, right?
|
||||||
#
|
#
|
||||||
|
# gss HP-UX ???
|
||||||
|
#
|
||||||
# gssapi_krb5 MIT K5 v1.2.2-beta1 -lkrb5
|
# gssapi_krb5 MIT K5 v1.2.2-beta1 -lkrb5
|
||||||
#
|
#
|
||||||
# gssapi Heimdal K 0.3d -lkrb5
|
# gssapi Heimdal K 0.3d -lkrb5
|
||||||
@ -12236,7 +12419,7 @@ fi
|
|||||||
rm -f conftest.err conftest.$ac_objext \
|
rm -f conftest.err conftest.$ac_objext \
|
||||||
conftest$ac_exeext conftest.$ac_ext
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
if test "$ac_cv_search_gss_import_name" = no; then
|
if test "$ac_cv_search_gss_import_name" = no; then
|
||||||
for ac_lib in gssapi_krb5 gssapi; do
|
for ac_lib in gss gssapi_krb5 gssapi; do
|
||||||
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
|
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
|
||||||
cat >conftest.$ac_ext <<_ACEOF
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
/* confdefs.h. */
|
/* confdefs.h. */
|
||||||
@ -12420,6 +12603,90 @@ _ACEOF
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# What remote shell transport should our client cvs default to using?
|
||||||
|
|
||||||
|
# Check whether --with-rsh or --without-rsh was given.
|
||||||
|
if test "${with_rsh+set}" = set; then
|
||||||
|
withval="$with_rsh"
|
||||||
|
|
||||||
|
else
|
||||||
|
with_rsh="remsh rsh ssh"
|
||||||
|
fi;
|
||||||
|
|
||||||
|
if test no = "$with_rsh"; then
|
||||||
|
{ echo "$as_me:$LINENO: WARNING: Failed to find usable remote shell. Using 'rsh'." >&5
|
||||||
|
echo "$as_me: WARNING: Failed to find usable remote shell. Using 'rsh'." >&2;}
|
||||||
|
with_rsh=rsh
|
||||||
|
elif test yes = "$with_rsh"; then
|
||||||
|
# Make --with-rsh mean the same thing as --with-rsh=rsh
|
||||||
|
with_rsh=rsh
|
||||||
|
fi
|
||||||
|
|
||||||
|
if echo $with_rsh |grep ^/ >/dev/null; then
|
||||||
|
# If $with_rsh is an absolute path, issue a warning if the executable
|
||||||
|
# doesn't exist or isn't usable, but then trust the user and use it
|
||||||
|
# regardless
|
||||||
|
with_default_rsh=$with_rsh
|
||||||
|
echo "$as_me:$LINENO: checking for a remote shell" >&5
|
||||||
|
echo $ECHO_N "checking for a remote shell... $ECHO_C" >&6
|
||||||
|
if ! test -f $with_rsh \
|
||||||
|
|| ! test -x $with_rsh; then
|
||||||
|
# warn the user that they may encounter problems
|
||||||
|
{ echo "$as_me:$LINENO: WARNING: $with_rsh is not a path to an executable file" >&5
|
||||||
|
echo "$as_me: WARNING: $with_rsh is not a path to an executable file" >&2;}
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Search for a remote shell
|
||||||
|
for ac_prog in $with_rsh
|
||||||
|
do
|
||||||
|
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||||
|
set dummy $ac_prog; ac_word=$2
|
||||||
|
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||||
|
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
|
||||||
|
if test "${ac_cv_prog_with_default_rsh+set}" = set; then
|
||||||
|
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||||
|
else
|
||||||
|
if test -n "$with_default_rsh"; then
|
||||||
|
ac_cv_prog_with_default_rsh="$with_default_rsh" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_with_default_rsh="$ac_prog"
|
||||||
|
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
with_default_rsh=$ac_cv_prog_with_default_rsh
|
||||||
|
if test -n "$with_default_rsh"; then
|
||||||
|
echo "$as_me:$LINENO: result: $with_default_rsh" >&5
|
||||||
|
echo "${ECHO_T}$with_default_rsh" >&6
|
||||||
|
else
|
||||||
|
echo "$as_me:$LINENO: result: no" >&5
|
||||||
|
echo "${ECHO_T}no" >&6
|
||||||
|
fi
|
||||||
|
|
||||||
|
test -n "$with_default_rsh" && break
|
||||||
|
done
|
||||||
|
test -n "$with_default_rsh" || with_default_rsh=""rsh""
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define RSH_DFLT "$with_default_rsh"
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Check whether --with-tmpdir or --without-tmpdir was given.
|
# Check whether --with-tmpdir or --without-tmpdir was given.
|
||||||
if test "${with_tmpdir+set}" = set; then
|
if test "${with_tmpdir+set}" = set; then
|
||||||
@ -13006,7 +13273,7 @@ fi
|
|||||||
|
|
||||||
ac_config_files="$ac_config_files contrib/sccs2rcs"
|
ac_config_files="$ac_config_files contrib/sccs2rcs"
|
||||||
|
|
||||||
ac_config_files="$ac_config_files doc/mkman"
|
ac_config_files="$ac_config_files doc/mkman:doc/mkman.pl"
|
||||||
|
|
||||||
ac_config_files="$ac_config_files src/cvsbug"
|
ac_config_files="$ac_config_files src/cvsbug"
|
||||||
|
|
||||||
@ -13406,8 +13673,8 @@ _ASBOX
|
|||||||
} >&5
|
} >&5
|
||||||
cat >&5 <<_CSEOF
|
cat >&5 <<_CSEOF
|
||||||
|
|
||||||
This file was extended by Concurrent Versions System (CVS) $as_me 1.11.17, which was
|
This file was extended by Concurrent Versions System (CVS) $as_me 1.11.22, which was
|
||||||
generated by GNU Autoconf 2.58. Invocation command line was
|
generated by GNU Autoconf 2.59. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||||
@ -13472,8 +13739,8 @@ _ACEOF
|
|||||||
|
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF
|
cat >>$CONFIG_STATUS <<_ACEOF
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
Concurrent Versions System (CVS) config.status 1.11.17
|
Concurrent Versions System (CVS) config.status 1.11.22
|
||||||
configured by $0, generated by GNU Autoconf 2.58,
|
configured by $0, generated by GNU Autoconf 2.59,
|
||||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||||
|
|
||||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||||
@ -13594,7 +13861,7 @@ do
|
|||||||
"contrib/rcs2log" ) CONFIG_FILES="$CONFIG_FILES contrib/rcs2log:contrib/rcs2log.sh" ;;
|
"contrib/rcs2log" ) CONFIG_FILES="$CONFIG_FILES contrib/rcs2log:contrib/rcs2log.sh" ;;
|
||||||
"contrib/rcslock" ) CONFIG_FILES="$CONFIG_FILES contrib/rcslock" ;;
|
"contrib/rcslock" ) CONFIG_FILES="$CONFIG_FILES contrib/rcslock" ;;
|
||||||
"contrib/sccs2rcs" ) CONFIG_FILES="$CONFIG_FILES contrib/sccs2rcs" ;;
|
"contrib/sccs2rcs" ) CONFIG_FILES="$CONFIG_FILES contrib/sccs2rcs" ;;
|
||||||
"doc/mkman" ) CONFIG_FILES="$CONFIG_FILES doc/mkman" ;;
|
"doc/mkman" ) CONFIG_FILES="$CONFIG_FILES doc/mkman:doc/mkman.pl" ;;
|
||||||
"src/cvsbug" ) CONFIG_FILES="$CONFIG_FILES src/cvsbug" ;;
|
"src/cvsbug" ) CONFIG_FILES="$CONFIG_FILES src/cvsbug" ;;
|
||||||
"windows-NT/fix-msvc-mak" ) CONFIG_FILES="$CONFIG_FILES windows-NT/fix-msvc-mak:windows-NT/fix-msvc-mak-head.pl:windows-NT/fix-msvc-mak.pl" ;;
|
"windows-NT/fix-msvc-mak" ) CONFIG_FILES="$CONFIG_FILES windows-NT/fix-msvc-mak:windows-NT/fix-msvc-mak-head.pl:windows-NT/fix-msvc-mak.pl" ;;
|
||||||
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||||||
@ -13712,14 +13979,17 @@ s,@AUTOCONF@,$AUTOCONF,;t t
|
|||||||
s,@AUTOMAKE@,$AUTOMAKE,;t t
|
s,@AUTOMAKE@,$AUTOMAKE,;t t
|
||||||
s,@AUTOHEADER@,$AUTOHEADER,;t t
|
s,@AUTOHEADER@,$AUTOHEADER,;t t
|
||||||
s,@MAKEINFO@,$MAKEINFO,;t t
|
s,@MAKEINFO@,$MAKEINFO,;t t
|
||||||
s,@AMTAR@,$AMTAR,;t t
|
|
||||||
s,@install_sh@,$install_sh,;t t
|
s,@install_sh@,$install_sh,;t t
|
||||||
s,@STRIP@,$STRIP,;t t
|
s,@STRIP@,$STRIP,;t t
|
||||||
s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
|
s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
|
||||||
s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
|
s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
|
||||||
|
s,@mkdir_p@,$mkdir_p,;t t
|
||||||
s,@AWK@,$AWK,;t t
|
s,@AWK@,$AWK,;t t
|
||||||
s,@SET_MAKE@,$SET_MAKE,;t t
|
s,@SET_MAKE@,$SET_MAKE,;t t
|
||||||
s,@am__leading_dot@,$am__leading_dot,;t t
|
s,@am__leading_dot@,$am__leading_dot,;t t
|
||||||
|
s,@AMTAR@,$AMTAR,;t t
|
||||||
|
s,@am__tar@,$am__tar,;t t
|
||||||
|
s,@am__untar@,$am__untar,;t t
|
||||||
s,@ac_prefix_program@,$ac_prefix_program,;t t
|
s,@ac_prefix_program@,$ac_prefix_program,;t t
|
||||||
s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
|
s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
|
||||||
s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
|
s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
|
||||||
@ -13760,6 +14030,7 @@ s,@LIBOBJS@,$LIBOBJS,;t t
|
|||||||
s,@KRB4@,$KRB4,;t t
|
s,@KRB4@,$KRB4,;t t
|
||||||
s,@includeopt@,$includeopt,;t t
|
s,@includeopt@,$includeopt,;t t
|
||||||
s,@EDITOR@,$EDITOR,;t t
|
s,@EDITOR@,$EDITOR,;t t
|
||||||
|
s,@with_default_rsh@,$with_default_rsh,;t t
|
||||||
s,@LTLIBOBJS@,$LTLIBOBJS,;t t
|
s,@LTLIBOBJS@,$LTLIBOBJS,;t t
|
||||||
/@MKTEMP_SH_FUNCTION@/r $MKTEMP_SH_FUNCTION
|
/@MKTEMP_SH_FUNCTION@/r $MKTEMP_SH_FUNCTION
|
||||||
s,@MKTEMP_SH_FUNCTION@,,;t t
|
s,@MKTEMP_SH_FUNCTION@,,;t t
|
||||||
@ -13883,40 +14154,43 @@ case $srcdir in
|
|||||||
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
||||||
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
|
||||||
.) ac_abs_builddir=$ac_builddir;;
|
# Do not use `cd foo && pwd` to compute absolute paths, because
|
||||||
|
# the directories may not exist.
|
||||||
|
case `pwd` in
|
||||||
|
.) ac_abs_builddir="$ac_dir";;
|
||||||
*)
|
*)
|
||||||
case $ac_builddir in
|
case "$ac_dir" in
|
||||||
.) ac_abs_builddir="$ac_dir";;
|
.) ac_abs_builddir=`pwd`;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_builddir=$ac_builddir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
|
||||||
*) ac_abs_builddir="$ac_dir"/$ac_builddir;;
|
*) ac_abs_builddir=`pwd`/"$ac_dir";;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*)
|
*)
|
||||||
case ${ac_top_builddir}. in
|
case ${ac_top_builddir}. in
|
||||||
.) ac_abs_top_builddir="$ac_dir";;
|
.) ac_abs_top_builddir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*) ac_abs_top_builddir="$ac_dir"/${ac_top_builddir}.;;
|
*) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_srcdir=$ac_srcdir;;
|
.) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_srcdir in
|
case $ac_srcdir in
|
||||||
.) ac_abs_srcdir="$ac_dir";;
|
.) ac_abs_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*) ac_abs_srcdir="$ac_dir"/$ac_srcdir;;
|
*) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_top_srcdir in
|
case $ac_top_srcdir in
|
||||||
.) ac_abs_top_srcdir="$ac_dir";;
|
.) ac_abs_top_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*) ac_abs_top_srcdir="$ac_dir"/$ac_top_srcdir;;
|
*) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -14344,40 +14618,43 @@ case $srcdir in
|
|||||||
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
||||||
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dest_dir" in
|
|
||||||
.) ac_abs_builddir=$ac_builddir;;
|
# Do not use `cd foo && pwd` to compute absolute paths, because
|
||||||
|
# the directories may not exist.
|
||||||
|
case `pwd` in
|
||||||
|
.) ac_abs_builddir="$ac_dest_dir";;
|
||||||
*)
|
*)
|
||||||
case $ac_builddir in
|
case "$ac_dest_dir" in
|
||||||
.) ac_abs_builddir="$ac_dest_dir";;
|
.) ac_abs_builddir=`pwd`;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_builddir=$ac_builddir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dest_dir";;
|
||||||
*) ac_abs_builddir="$ac_dest_dir"/$ac_builddir;;
|
*) ac_abs_builddir=`pwd`/"$ac_dest_dir";;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dest_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*)
|
*)
|
||||||
case ${ac_top_builddir}. in
|
case ${ac_top_builddir}. in
|
||||||
.) ac_abs_top_builddir="$ac_dest_dir";;
|
.) ac_abs_top_builddir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*) ac_abs_top_builddir="$ac_dest_dir"/${ac_top_builddir}.;;
|
*) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dest_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_srcdir=$ac_srcdir;;
|
.) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_srcdir in
|
case $ac_srcdir in
|
||||||
.) ac_abs_srcdir="$ac_dest_dir";;
|
.) ac_abs_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*) ac_abs_srcdir="$ac_dest_dir"/$ac_srcdir;;
|
*) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dest_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_top_srcdir in
|
case $ac_top_srcdir in
|
||||||
.) ac_abs_top_srcdir="$ac_dest_dir";;
|
.) ac_abs_top_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*) ac_abs_top_srcdir="$ac_dest_dir"/$ac_top_srcdir;;
|
*) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -14466,40 +14743,43 @@ case $srcdir in
|
|||||||
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
|
||||||
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
ac_top_srcdir=$ac_top_builddir$srcdir ;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
|
||||||
.) ac_abs_builddir=$ac_builddir;;
|
# Do not use `cd foo && pwd` to compute absolute paths, because
|
||||||
|
# the directories may not exist.
|
||||||
|
case `pwd` in
|
||||||
|
.) ac_abs_builddir="$ac_dir";;
|
||||||
*)
|
*)
|
||||||
case $ac_builddir in
|
case "$ac_dir" in
|
||||||
.) ac_abs_builddir="$ac_dir";;
|
.) ac_abs_builddir=`pwd`;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_builddir=$ac_builddir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
|
||||||
*) ac_abs_builddir="$ac_dir"/$ac_builddir;;
|
*) ac_abs_builddir=`pwd`/"$ac_dir";;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
.) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*)
|
*)
|
||||||
case ${ac_top_builddir}. in
|
case ${ac_top_builddir}. in
|
||||||
.) ac_abs_top_builddir="$ac_dir";;
|
.) ac_abs_top_builddir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
|
||||||
*) ac_abs_top_builddir="$ac_dir"/${ac_top_builddir}.;;
|
*) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_srcdir=$ac_srcdir;;
|
.) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_srcdir in
|
case $ac_srcdir in
|
||||||
.) ac_abs_srcdir="$ac_dir";;
|
.) ac_abs_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
|
||||||
*) ac_abs_srcdir="$ac_dir"/$ac_srcdir;;
|
*) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
case "$ac_dir" in
|
case $ac_abs_builddir in
|
||||||
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
.) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*)
|
*)
|
||||||
case $ac_top_srcdir in
|
case $ac_top_srcdir in
|
||||||
.) ac_abs_top_srcdir="$ac_dir";;
|
.) ac_abs_top_srcdir=$ac_abs_builddir;;
|
||||||
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
[\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
|
||||||
*) ac_abs_top_srcdir="$ac_dir"/$ac_top_srcdir;;
|
*) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
|
||||||
esac;;
|
esac;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -14532,27 +14812,21 @@ echo X"$mf" |
|
|||||||
else
|
else
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
|
# Extract the definition of DEPDIR, am__include, and am__quote
|
||||||
# Extract the definition of DEP_FILES from the Makefile without
|
# from the Makefile without running `make'.
|
||||||
# running `make'.
|
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
|
||||||
DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
|
|
||||||
test -z "$DEPDIR" && continue
|
test -z "$DEPDIR" && continue
|
||||||
|
am__include=`sed -n 's/^am__include = //p' < "$mf"`
|
||||||
|
test -z "am__include" && continue
|
||||||
|
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
|
||||||
# When using ansi2knr, U may be empty or an underscore; expand it
|
# When using ansi2knr, U may be empty or an underscore; expand it
|
||||||
U=`sed -n -e '/^U = / s///p' < "$mf"`
|
U=`sed -n 's/^U = //p' < "$mf"`
|
||||||
test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
|
# Find all dependency output files, they are included files with
|
||||||
# We invoke sed twice because it is the simplest approach to
|
# $(DEPDIR) in their names. We invoke sed twice because it is the
|
||||||
# changing $(DEPDIR) to its actual value in the expansion.
|
# simplest approach to changing $(DEPDIR) to its actual value in the
|
||||||
for file in `sed -n -e '
|
# expansion.
|
||||||
/^DEP_FILES = .*\\\\$/ {
|
for file in `sed -n "
|
||||||
s/^DEP_FILES = //
|
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
|
||||||
:loop
|
|
||||||
s/\\\\$//
|
|
||||||
p
|
|
||||||
n
|
|
||||||
/\\\\$/ b loop
|
|
||||||
p
|
|
||||||
}
|
|
||||||
/^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
|
|
||||||
sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
||||||
# Make sure the directory exists.
|
# Make sure the directory exists.
|
||||||
test -f "$dirpart/$file" && continue
|
test -f "$dirpart/$file" && continue
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
dnl configure.in for cvs
|
dnl configure.in for cvs
|
||||||
AC_INIT([Concurrent Versions System (CVS)],[1.11.17],[bug-cvs@gnu.org],[cvs])
|
AC_INIT([Concurrent Versions System (CVS)],[1.11.22],
|
||||||
|
[bug-cvs@nongnu.org],[cvs])
|
||||||
AC_CONFIG_SRCDIR(src/cvs.h)
|
AC_CONFIG_SRCDIR(src/cvs.h)
|
||||||
AM_INIT_AUTOMAKE([gnu 1.7.9 dist-bzip2 no-define])
|
AM_INIT_AUTOMAKE([gnu 1.7.9 dist-bzip2 no-define])
|
||||||
AC_PREREQ(2.58)
|
AC_PREREQ(2.58)
|
||||||
@ -496,6 +497,58 @@ dnl
|
|||||||
dnl end --with-editor
|
dnl end --with-editor
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl begin --with-rsh
|
||||||
|
dnl
|
||||||
|
dnl Many sites no longer desire the use of "rsh" as the default
|
||||||
|
dnl remote shell program. They typically favor "ssh" as the default
|
||||||
|
|
||||||
|
# What remote shell transport should our client cvs default to using?
|
||||||
|
AC_ARG_WITH(
|
||||||
|
[rsh],
|
||||||
|
AC_HELP_STRING(
|
||||||
|
[--with-rsh],
|
||||||
|
[The default remote shell CVS will use for :ext: transport
|
||||||
|
(default autodetects)]), ,
|
||||||
|
dnl `remsh' is only useful on HP-UX, where `rsh' is the `restricted shell'
|
||||||
|
dnl and `remsh' is the remote shell, but look for it first since it
|
||||||
|
dnl probably won't exist on any platform where it shouldn't be preferred
|
||||||
|
dnl to `rsh'.
|
||||||
|
[with_rsh="remsh rsh ssh"])
|
||||||
|
|
||||||
|
if test no = "$with_rsh"; then
|
||||||
|
AC_MSG_WARN([Failed to find usable remote shell. Using 'rsh'.])
|
||||||
|
with_rsh=rsh
|
||||||
|
elif test yes = "$with_rsh"; then
|
||||||
|
# Make --with-rsh mean the same thing as --with-rsh=rsh
|
||||||
|
with_rsh=rsh
|
||||||
|
fi
|
||||||
|
|
||||||
|
if echo $with_rsh |grep ^/ >/dev/null; then
|
||||||
|
# If $with_rsh is an absolute path, issue a warning if the executable
|
||||||
|
# doesn't exist or isn't usable, but then trust the user and use it
|
||||||
|
# regardless
|
||||||
|
with_default_rsh=$with_rsh
|
||||||
|
AC_MSG_CHECKING([for a remote shell])
|
||||||
|
if ! test -f $with_rsh \
|
||||||
|
|| ! test -x $with_rsh; then
|
||||||
|
# warn the user that they may encounter problems
|
||||||
|
AC_MSG_WARN([$with_rsh is not a path to an executable file])
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# Search for a remote shell
|
||||||
|
AC_CHECK_PROGS([with_default_rsh], [$with_rsh], "rsh")
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_DEFINE_UNQUOTED(
|
||||||
|
[RSH_DFLT], ["$with_default_rsh"],
|
||||||
|
[The default remote shell to use, if one does not specify the
|
||||||
|
CVS_RSH environment variable.])
|
||||||
|
dnl done with finding a default CVS_RSH value
|
||||||
|
dnl
|
||||||
|
dnl end --with-rsh
|
||||||
|
dnl
|
||||||
|
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl Find a temporary directory
|
dnl Find a temporary directory
|
||||||
@ -1021,7 +1074,7 @@ AC_CONFIG_FILES(contrib/pvcs2rcs, [chmod +x contrib/pvcs2rcs])
|
|||||||
AC_CONFIG_FILES(contrib/rcs2log:contrib/rcs2log.sh, [chmod +x contrib/rcs2log])
|
AC_CONFIG_FILES(contrib/rcs2log:contrib/rcs2log.sh, [chmod +x contrib/rcs2log])
|
||||||
AC_CONFIG_FILES(contrib/rcslock, [chmod +x contrib/rcslock])
|
AC_CONFIG_FILES(contrib/rcslock, [chmod +x contrib/rcslock])
|
||||||
AC_CONFIG_FILES(contrib/sccs2rcs, [chmod +x contrib/sccs2rcs])
|
AC_CONFIG_FILES(contrib/sccs2rcs, [chmod +x contrib/sccs2rcs])
|
||||||
AC_CONFIG_FILES(doc/mkman, [chmod +x doc/mkman])
|
AC_CONFIG_FILES(doc/mkman:doc/mkman.pl, [chmod +x doc/mkman])
|
||||||
AC_CONFIG_FILES(src/cvsbug, [chmod +x src/cvsbug])
|
AC_CONFIG_FILES(src/cvsbug, [chmod +x src/cvsbug])
|
||||||
AC_CONFIG_FILES(windows-NT/fix-msvc-mak:windows-NT/fix-msvc-mak-head.pl:windows-NT/fix-msvc-mak.pl,
|
AC_CONFIG_FILES(windows-NT/fix-msvc-mak:windows-NT/fix-msvc-mak-head.pl:windows-NT/fix-msvc-mak.pl,
|
||||||
[chmod +x windows-NT/fix-msvc-mak])
|
[chmod +x windows-NT/fix-msvc-mak])
|
||||||
@ -1053,7 +1106,7 @@ m4_bmatch(m4_defn([AC_PACKAGE_VERSION]), [[0-9]*\.[0-9]*\.[0-9]*\.[0-9]],
|
|||||||
[ cat <<EOF
|
[ cat <<EOF
|
||||||
|
|
||||||
You are about to use an unreleased version of CVS. Be sure to
|
You are about to use an unreleased version of CVS. Be sure to
|
||||||
read the relevant mailing lists, most importantly <info-cvs@gnu.org>.
|
read the relevant mailing lists, most importantly <info-cvs@nongnu.org>.
|
||||||
|
|
||||||
Below you will find information on the status of this version of CVS.
|
Below you will find information on the status of this version of CVS.
|
||||||
|
|
||||||
|
@ -1,8 +1,59 @@
|
|||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs_acls.html, cvs_acls.in, log_accum.in: Update links.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* commit_prep.in, cvs_acls.in, log.in, log_accum.in, mfpipe.in,
|
||||||
|
pvcs2rcs.in, rcslock.in: Update links and email addresses.
|
||||||
|
|
||||||
|
2005-07-12 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* clmerge.in, cln_hist.in, commit_prep.in, cvs2vendor.sh, cvs_acls.in,
|
||||||
|
cvscheck.sh, debug_check_log.sh, descend.sh, log.in, log_accum.in,
|
||||||
|
mfpipe.in, rcs-to-cvs.sh, rcs2log.sh, rcs2sccs.sh, rcslock.in,
|
||||||
|
sccs2rcs.in: Add copyright notices.
|
||||||
|
|
||||||
|
2005-07-11 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* clmerge.in, cln_hist.in, commit_prep.in, cvs2vendor.sh, cvs_acls.in,
|
||||||
|
cvscheck.sh, debug_check_log.sh, descend.sh, log.in, log_accum.in,
|
||||||
|
mfpipe.in, rcs-to-cvs.sh, rcs2log.sh, rcs2sccs.sh, rcslock.in,
|
||||||
|
sccs2rcs.in: Update license notices.
|
||||||
|
|
||||||
|
2005-04-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* commit_prep.in, cvs_acls.in, log.in, log_accum.in, mfpipe.in,
|
||||||
|
rcslock.in: Enable taint checking and comment. This closes cvshome.org
|
||||||
|
Issue #224.
|
||||||
|
|
||||||
|
2005-04-08 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* README: Correct my email address.
|
||||||
|
|
||||||
|
2005-01-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am: Update copyright notices.
|
||||||
|
|
||||||
|
2005-01-25 Mark D. Baushke <mdb@cvshome.org>
|
||||||
|
|
||||||
|
* cvs_acls.in: New version from
|
||||||
|
"Peter Connolly" <Peter.Connolly@cnet.com>.
|
||||||
|
* cvs_acls.html: New file from
|
||||||
|
"Peter Connolly" <Peter.Connolly@cnet.com>.
|
||||||
|
* Makefile.am (EXTRA_DIST): Add cvs_acls.html
|
||||||
|
* Makefile.in: Regenerated.
|
||||||
|
|
||||||
|
2004-08-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* log_accum.in: Changes to supress warnings under Perl 5.8.5.
|
||||||
|
(Patch from Jeroen Ruigrok/asmodai <asmodai@wxs.nl>.)
|
||||||
|
|
||||||
2004-01-30 Derek Price <derek@ximbiot.com>
|
2004-01-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
Close issue #155.
|
Close issue #155.
|
||||||
* log_accum.in: Remove unused variables.
|
* log_accum.in: Remove unused variables.
|
||||||
(Patch from (Ville Skyttä <scop@cvshome.org>.)
|
(Patch from Ville Skyttä <scop@cvshome.org>.)
|
||||||
|
|
||||||
2003-10-14 Derek Price <derek@ximbiot.com>
|
2003-10-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
@ -1,9 +1,11 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
# Makefile for GNU CVS contributed sources.
|
# Makefile for GNU CVS contributed sources.
|
||||||
# Do not use this makefile directly, but only from `../Makefile'.
|
# Do not use this makefile directly, but only from `../Makefile'.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -52,6 +54,7 @@ EXTRA_DIST = \
|
|||||||
cvs2vendor.sh \
|
cvs2vendor.sh \
|
||||||
cvscheck.sh \
|
cvscheck.sh \
|
||||||
cvshelp.man \
|
cvshelp.man \
|
||||||
|
cvs_acls.html \
|
||||||
debug_check_log.sh \
|
debug_check_log.sh \
|
||||||
descend.sh \
|
descend.sh \
|
||||||
descend.man \
|
descend.man \
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -16,9 +16,11 @@
|
|||||||
|
|
||||||
# Makefile for GNU CVS contributed sources.
|
# Makefile for GNU CVS contributed sources.
|
||||||
# Do not use this makefile directly, but only from `../Makefile'.
|
# Do not use this makefile directly, but only from `../Makefile'.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -30,6 +32,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
@ -37,7 +40,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -51,6 +53,36 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
subdir = contrib
|
||||||
|
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||||
|
$(srcdir)/check_cvs.in $(srcdir)/clmerge.in \
|
||||||
|
$(srcdir)/cln_hist.in $(srcdir)/commit_prep.in \
|
||||||
|
$(srcdir)/cvs_acls.in $(srcdir)/log.in $(srcdir)/log_accum.in \
|
||||||
|
$(srcdir)/mfpipe.in $(srcdir)/pvcs2rcs.in $(srcdir)/rcs2log.sh \
|
||||||
|
$(srcdir)/rcslock.in $(srcdir)/sccs2rcs.in ChangeLog
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES = check_cvs clmerge cln_hist commit_prep cvs_acls \
|
||||||
|
log log_accum mfpipe pvcs2rcs rcs2log rcslock sccs2rcs
|
||||||
|
am__installdirs = "$(DESTDIR)$(contribdir)" "$(DESTDIR)$(contribdir)"
|
||||||
|
contribSCRIPT_INSTALL = $(INSTALL_SCRIPT)
|
||||||
|
SCRIPTS = $(contrib_SCRIPTS)
|
||||||
|
SOURCES =
|
||||||
|
DIST_SOURCES =
|
||||||
|
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||||
|
am__vpath_adj = case $$p in \
|
||||||
|
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||||
|
*) f=$$p;; \
|
||||||
|
esac;
|
||||||
|
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||||
|
contribDATA_INSTALL = $(INSTALL_DATA)
|
||||||
|
DATA = $(contrib_DATA)
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -120,6 +152,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -133,6 +167,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -140,9 +175,8 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
contribdir = $(pkgdatadir)/contrib
|
contribdir = $(pkgdatadir)/contrib
|
||||||
|
|
||||||
contrib_SCRIPTS = \
|
contrib_SCRIPTS = \
|
||||||
check_cvs \
|
check_cvs \
|
||||||
clmerge \
|
clmerge \
|
||||||
@ -161,20 +195,16 @@ contrib_SCRIPTS = \
|
|||||||
rcslock \
|
rcslock \
|
||||||
sccs2rcs
|
sccs2rcs
|
||||||
|
|
||||||
|
|
||||||
contrib_DATA = \
|
contrib_DATA = \
|
||||||
README \
|
README \
|
||||||
intro.doc
|
intro.doc
|
||||||
|
|
||||||
|
|
||||||
contrib_MANS = \
|
contrib_MANS = \
|
||||||
cvscheck.man
|
cvscheck.man
|
||||||
|
|
||||||
|
|
||||||
bin_LINKS = \
|
bin_LINKS = \
|
||||||
rcs2log
|
rcs2log
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
.cvsignore \
|
.cvsignore \
|
||||||
$(contrib_DATA) \
|
$(contrib_DATA) \
|
||||||
@ -182,6 +212,7 @@ EXTRA_DIST = \
|
|||||||
cvs2vendor.sh \
|
cvs2vendor.sh \
|
||||||
cvscheck.sh \
|
cvscheck.sh \
|
||||||
cvshelp.man \
|
cvshelp.man \
|
||||||
|
cvs_acls.html \
|
||||||
debug_check_log.sh \
|
debug_check_log.sh \
|
||||||
descend.sh \
|
descend.sh \
|
||||||
descend.man \
|
descend.man \
|
||||||
@ -190,68 +221,74 @@ EXTRA_DIST = \
|
|||||||
rcs2log.sh \
|
rcs2log.sh \
|
||||||
rcs2sccs.sh
|
rcs2sccs.sh
|
||||||
|
|
||||||
|
|
||||||
CLEANFILES = $(bin_SCRIPTS) $(contrib_SCRIPTS)
|
CLEANFILES = $(bin_SCRIPTS) $(contrib_SCRIPTS)
|
||||||
|
|
||||||
SUFFIXES = .sh
|
SUFFIXES = .sh
|
||||||
subdir = contrib
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES = check_cvs clmerge cln_hist commit_prep cvs_acls log \
|
|
||||||
log_accum mfpipe pvcs2rcs rcs2log rcslock sccs2rcs
|
|
||||||
SCRIPTS = $(contrib_SCRIPTS)
|
|
||||||
|
|
||||||
DIST_SOURCES =
|
|
||||||
DATA = $(contrib_DATA)
|
|
||||||
|
|
||||||
DIST_COMMON = README $(srcdir)/Makefile.in ChangeLog Makefile.am \
|
|
||||||
check_cvs.in clmerge.in cln_hist.in commit_prep.in cvs_acls.in \
|
|
||||||
log.in log_accum.in mfpipe.in pvcs2rcs.in rcs2log.sh rcslock.in \
|
|
||||||
sccs2rcs.in
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .sh
|
.SUFFIXES: .sh
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu contrib/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu contrib/Makefile
|
$(AUTOMAKE) --gnu contrib/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
check_cvs: $(top_builddir)/config.status check_cvs.in
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
check_cvs: $(top_builddir)/config.status $(srcdir)/check_cvs.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
clmerge: $(top_builddir)/config.status clmerge.in
|
clmerge: $(top_builddir)/config.status $(srcdir)/clmerge.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
cln_hist: $(top_builddir)/config.status cln_hist.in
|
cln_hist: $(top_builddir)/config.status $(srcdir)/cln_hist.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
commit_prep: $(top_builddir)/config.status commit_prep.in
|
commit_prep: $(top_builddir)/config.status $(srcdir)/commit_prep.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
cvs_acls: $(top_builddir)/config.status cvs_acls.in
|
cvs_acls: $(top_builddir)/config.status $(srcdir)/cvs_acls.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
log: $(top_builddir)/config.status log.in
|
log: $(top_builddir)/config.status $(srcdir)/log.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
log_accum: $(top_builddir)/config.status log_accum.in
|
log_accum: $(top_builddir)/config.status $(srcdir)/log_accum.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
mfpipe: $(top_builddir)/config.status mfpipe.in
|
mfpipe: $(top_builddir)/config.status $(srcdir)/mfpipe.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
pvcs2rcs: $(top_builddir)/config.status pvcs2rcs.in
|
pvcs2rcs: $(top_builddir)/config.status $(srcdir)/pvcs2rcs.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
rcs2log: $(top_builddir)/config.status rcs2log.sh
|
rcs2log: $(top_builddir)/config.status $(srcdir)/rcs2log.sh
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
rcslock: $(top_builddir)/config.status rcslock.in
|
rcslock: $(top_builddir)/config.status $(srcdir)/rcslock.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
sccs2rcs: $(top_builddir)/config.status sccs2rcs.in
|
sccs2rcs: $(top_builddir)/config.status $(srcdir)/sccs2rcs.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
contribSCRIPT_INSTALL = $(INSTALL_SCRIPT)
|
|
||||||
install-contribSCRIPTS: $(contrib_SCRIPTS)
|
install-contribSCRIPTS: $(contrib_SCRIPTS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(contribdir)
|
test -z "$(contribdir)" || $(mkdir_p) "$(DESTDIR)$(contribdir)"
|
||||||
@list='$(contrib_SCRIPTS)'; for p in $$list; do \
|
@list='$(contrib_SCRIPTS)'; for p in $$list; do \
|
||||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||||
if test -f $$d$$p; then \
|
if test -f $$d$$p; then \
|
||||||
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
||||||
echo " $(contribSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(contribdir)/$$f"; \
|
echo " $(contribSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(contribdir)/$$f'"; \
|
||||||
$(contribSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(contribdir)/$$f; \
|
$(contribSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(contribdir)/$$f"; \
|
||||||
else :; fi; \
|
else :; fi; \
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -259,27 +296,26 @@ uninstall-contribSCRIPTS:
|
|||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@list='$(contrib_SCRIPTS)'; for p in $$list; do \
|
@list='$(contrib_SCRIPTS)'; for p in $$list; do \
|
||||||
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
||||||
echo " rm -f $(DESTDIR)$(contribdir)/$$f"; \
|
echo " rm -f '$(DESTDIR)$(contribdir)/$$f'"; \
|
||||||
rm -f $(DESTDIR)$(contribdir)/$$f; \
|
rm -f "$(DESTDIR)$(contribdir)/$$f"; \
|
||||||
done
|
done
|
||||||
uninstall-info-am:
|
uninstall-info-am:
|
||||||
contribDATA_INSTALL = $(INSTALL_DATA)
|
|
||||||
install-contribDATA: $(contrib_DATA)
|
install-contribDATA: $(contrib_DATA)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(contribdir)
|
test -z "$(contribdir)" || $(mkdir_p) "$(DESTDIR)$(contribdir)"
|
||||||
@list='$(contrib_DATA)'; for p in $$list; do \
|
@list='$(contrib_DATA)'; for p in $$list; do \
|
||||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
f=$(am__strip_dir) \
|
||||||
echo " $(contribDATA_INSTALL) $$d$$p $(DESTDIR)$(contribdir)/$$f"; \
|
echo " $(contribDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(contribdir)/$$f'"; \
|
||||||
$(contribDATA_INSTALL) $$d$$p $(DESTDIR)$(contribdir)/$$f; \
|
$(contribDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(contribdir)/$$f"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
uninstall-contribDATA:
|
uninstall-contribDATA:
|
||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@list='$(contrib_DATA)'; for p in $$list; do \
|
@list='$(contrib_DATA)'; for p in $$list; do \
|
||||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
f=$(am__strip_dir) \
|
||||||
echo " rm -f $(DESTDIR)$(contribdir)/$$f"; \
|
echo " rm -f '$(DESTDIR)$(contribdir)/$$f'"; \
|
||||||
rm -f $(DESTDIR)$(contribdir)/$$f; \
|
rm -f "$(DESTDIR)$(contribdir)/$$f"; \
|
||||||
done
|
done
|
||||||
tags: TAGS
|
tags: TAGS
|
||||||
TAGS:
|
TAGS:
|
||||||
@ -287,10 +323,6 @@ TAGS:
|
|||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS:
|
CTAGS:
|
||||||
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
@ -304,7 +336,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -322,9 +354,10 @@ distdir: $(DISTFILES)
|
|||||||
check-am: all-am
|
check-am: all-am
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(SCRIPTS) $(DATA)
|
all-am: Makefile $(SCRIPTS) $(DATA)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
$(mkinstalldirs) $(DESTDIR)$(contribdir) $(DESTDIR)$(contribdir)
|
for dir in "$(DESTDIR)$(contribdir)" "$(DESTDIR)$(contribdir)"; do \
|
||||||
|
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||||
|
done
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
install-data: install-data-am
|
install-data: install-data-am
|
||||||
@ -345,7 +378,7 @@ clean-generic:
|
|||||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -362,6 +395,8 @@ dvi: dvi-am
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -397,8 +432,8 @@ uninstall-am: uninstall-contribDATA uninstall-contribSCRIPTS \
|
|||||||
uninstall-info-am uninstall-local
|
uninstall-info-am uninstall-local
|
||||||
|
|
||||||
.PHONY: all all-am check check-am clean clean-generic distclean \
|
.PHONY: all all-am check check-am clean clean-generic distclean \
|
||||||
distclean-generic distdir dvi dvi-am info info-am install \
|
distclean-generic distdir dvi dvi-am html html-am info info-am \
|
||||||
install-am install-contribDATA install-contribSCRIPTS \
|
install install-am install-contribDATA install-contribSCRIPTS \
|
||||||
install-data install-data-am install-data-local install-exec \
|
install-data install-data-am install-data-local install-exec \
|
||||||
install-exec-am install-info install-info-am install-man \
|
install-exec-am install-info install-info-am install-man \
|
||||||
install-strip installcheck installcheck-am installdirs \
|
install-strip installcheck installcheck-am installdirs \
|
||||||
|
@ -71,8 +71,7 @@ An attempt at a table of Contents for this directory:
|
|||||||
useful.
|
useful.
|
||||||
|
|
||||||
debug_check_log A shell script to help analyze sanity check failures.
|
debug_check_log A shell script to help analyze sanity check failures.
|
||||||
Contributed by Derek R. Price
|
Contributed by Derek R. Price <derek@ximbiot.com>.
|
||||||
<derek.price@openavenue.com>
|
|
||||||
|
|
||||||
descend A shell script that can be used to recursively
|
descend A shell script that can be used to recursively
|
||||||
descend.man descend through a directory. In CVS 1.2, this was
|
descend.man descend through a directory. In CVS 1.2, this was
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
#! @PERL@
|
#! @PERL@
|
||||||
|
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
# Merge conflicted ChangeLogs
|
# Merge conflicted ChangeLogs
|
||||||
# tromey Mon Aug 15 1994
|
# tromey Mon Aug 15 1994
|
||||||
|
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
#! @PERL@
|
#! @PERL@
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
#
|
#
|
||||||
# Contributed by David G. Grubbs <dgg@ksr.com>
|
# Contributed by David G. Grubbs <dgg@ksr.com>
|
||||||
#
|
#
|
||||||
|
@ -1,6 +1,36 @@
|
|||||||
#! @PERL@
|
#! @PERL@ -T
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# THIS SCRIPT IS PROBABLY BROKEN. REMOVING THE -T SWITCH ON THE #! LINE ABOVE
|
||||||
|
# WOULD FIX IT, BUT THIS IS INSECURE. WE RECOMMEND FIXING THE ERRORS WHICH THE
|
||||||
|
# -T SWITCH WILL CAUSE PERL TO REPORT BEFORE RUNNING THIS SCRIPT FROM A CVS
|
||||||
|
# SERVER TRIGGER. PLEASE SEND PATCHES CONTAINING THE CHANGES YOU FIND
|
||||||
|
# NECESSARY TO RUN THIS SCRIPT WITH THE TAINT-CHECKING ENABLED BACK TO THE
|
||||||
|
# <@PACKAGE_BUGREPORT@> MAILING LIST.
|
||||||
|
#
|
||||||
|
# For more on general Perl security and taint-checking, please try running the
|
||||||
|
# `perldoc perlsec' command.
|
||||||
|
#
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# Perl filter to handle pre-commit checking of files. This program
|
# Perl filter to handle pre-commit checking of files. This program
|
||||||
# records the last directory where commits will be taking place for
|
# records the last directory where commits will be taking place for
|
||||||
# use by the log_accum.pl script.
|
# use by the log_accum.pl script.
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
|
# Copyright (C) 1997-2005 The Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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 2, 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.
|
||||||
|
#
|
||||||
# cvs2vendor - move revsisions from files in A to files in B
|
# cvs2vendor - move revsisions from files in A to files in B
|
||||||
#
|
#
|
||||||
# The primary reason for this script is to move deltas from a
|
# The primary reason for this script is to move deltas from a
|
||||||
|
459
contrib/cvs/contrib/cvs_acls.html
Normal file
459
contrib/cvs/contrib/cvs_acls.html
Normal file
@ -0,0 +1,459 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<title>cvs_acls</title>
|
||||||
|
<link rev="made" href="mailto:root@localhost" />
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body style="background-color: white">
|
||||||
|
|
||||||
|
<p><a name="__index__"></a></p>
|
||||||
|
<!-- INDEX BEGIN -->
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li><a href="#name">Name</a></li>
|
||||||
|
<li><a href="#synopsis">Synopsis</a></li>
|
||||||
|
<li><a href="#licensing">Licensing</a></li>
|
||||||
|
<li><a href="#description">Description</a></li>
|
||||||
|
<li><a href="#enhancements">Enhancements</a></li>
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li><a href="#fixed_bugs">Fixed Bugs</a></li>
|
||||||
|
<li><a href="#enhancements">Enhancements</a></li>
|
||||||
|
<li><a href="#todos">ToDoS</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<li><a href="#version_information">Version Information</a></li>
|
||||||
|
<li><a href="#installation">Installation</a></li>
|
||||||
|
<li><a href="#format_of_the_cvsacl_file">Format of the cvsacl file</a></li>
|
||||||
|
<li><a href="#program_logic">Program Logic</a></li>
|
||||||
|
<ul>
|
||||||
|
|
||||||
|
<li><a href="#pseudocode">Pseudocode</a></li>
|
||||||
|
<li><a href="#sanity_check">Sanity Check</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<!-- INDEX END -->
|
||||||
|
|
||||||
|
<hr />
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h1><a name="name">Name</a></h1>
|
||||||
|
<p>cvs_acls - Access Control List for CVS</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="synopsis">Synopsis</a></h1>
|
||||||
|
<p>In 'commitinfo':</p>
|
||||||
|
<pre>
|
||||||
|
repository/path/to/restrict $CVSROOT/CVSROOT/cvs_acls [-d][-u $USER][-f <logfile>]</pre>
|
||||||
|
<p>where:</p>
|
||||||
|
<pre>
|
||||||
|
-d turns on debug information
|
||||||
|
-u passes the client-side userId to the cvs_acls script
|
||||||
|
-f specifies an alternate filename for the restrict_log file</pre>
|
||||||
|
<p>In 'cvsacl':</p>
|
||||||
|
<pre>
|
||||||
|
{allow.*,deny.*} [|user,user,... [|repos,repos,... [|branch,branch,...]]]</pre>
|
||||||
|
<p>where:</p>
|
||||||
|
<pre>
|
||||||
|
allow|deny - allow: commits are allowed; deny: prohibited
|
||||||
|
user - userId to be allowed or restricted
|
||||||
|
repos - file or directory to be allowed or restricted
|
||||||
|
branch - branch to be allowed or restricted</pre>
|
||||||
|
<p>See below for examples.</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="licensing">Licensing</a></h1>
|
||||||
|
<p>cvs_acls - provides access control list functionality for CVS
|
||||||
|
</p>
|
||||||
|
<pre>
|
||||||
|
|
||||||
|
Copyright (c) 2004 by Peter Connolly <peter.connolly@cnet.com>
|
||||||
|
All rights reserved.</pre>
|
||||||
|
<p>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 2 of the License, or
|
||||||
|
(at your option) any later version.</p>
|
||||||
|
<p>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.</p>
|
||||||
|
<p>You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="description">Description</a></h1>
|
||||||
|
<p>This script--cvs_acls--is invoked once for each directory within a
|
||||||
|
``cvs commit''. The set of files being committed for that directory as
|
||||||
|
well as the directory itself, are passed to this script. This script
|
||||||
|
checks its 'cvsacl' file to see if any of the files being committed
|
||||||
|
are on the 'cvsacl' file's restricted list. If any of the files are
|
||||||
|
restricted, then the cvs_acls script passes back an exit code of 1
|
||||||
|
which disallows the commits for that directory.</p>
|
||||||
|
<p>Messages are returned to the committer indicating the <a href="#item_file"><code>file(s)</code></a> that
|
||||||
|
he/she are not allowed to committ. Additionally, a site-specific
|
||||||
|
set of messages (e.g., contact information) can be included in these
|
||||||
|
messages.</p>
|
||||||
|
<p>When a commit is prohibited, log messages are written to a restrict_log
|
||||||
|
file in $CVSROOT/CVSROOT. This default file can be redirected to
|
||||||
|
another destination.</p>
|
||||||
|
<p>The script is triggered from the 'commitinfo' file in $CVSROOT/CVSROOT/.</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="enhancements">Enhancements</a></h1>
|
||||||
|
<p>This section lists the bug fixes and enhancements added to cvs_acls
|
||||||
|
that make up the current cvs_acls.</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h2><a name="fixed_bugs">Fixed Bugs</a></h2>
|
||||||
|
<p>This version attempts to get rid the following bugs from the
|
||||||
|
original version of cvs_acls:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong><a name="item_files">Multiple entries on an 'cvsacl' line will be matched individually,
|
||||||
|
instead of requiring that all commit files *exactly* match all
|
||||||
|
'cvsacl' entries. Commiting a file not in the 'cvsacl' list would
|
||||||
|
allow *all* files (including a restricted file) to be committed.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
[IMO, this basically made the original script unuseable for our
|
||||||
|
situation since any arbitrary combination of committed files could
|
||||||
|
avoid matching the 'cvsacl's entries.]
|
||||||
|
<p></p>
|
||||||
|
<li><strong><a name="item_handle_specific_filename_restrictions_2e_cvs_acls_">Handle specific filename restrictions. cvs_acls didn't restrict
|
||||||
|
individual files specified in 'cvsacl'.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_correctly_handle_multiple_2c_specific_filename_res">Correctly handle multiple, specific filename restrictions</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_prohibit_mix_of_dirs_and_files_on_a_single__27cvsa">Prohibit mix of dirs and files on a single 'cvsacl' line
|
||||||
|
[To simplify the logic and because this would be normal usage.]</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_correctly_handle_a_mixture_of_branch_restrictions_">Correctly handle a mixture of branch restrictions within one work
|
||||||
|
directory</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item__24cvsroot_existence_is_checked_too_late">$CVSROOT existence is checked too late</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_option">Correctly handle the CVSROOT=:local:/... option (useful for
|
||||||
|
interactive testing)</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_logic">Replacing shoddy ``$universal_off'' logic
|
||||||
|
(Thanks to Karl-Konig Konigsson for pointing this out.)</a></strong><br />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h2><a name="enhancements">Enhancements</a></h2>
|
||||||
|
<ul>
|
||||||
|
<li><strong><a name="item_checks_modules_in_the__27cvsacl_27_file_for_valid_">Checks modules in the 'cvsacl' file for valid files and directories</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_accurately_report_restricted_entries_and_their_mat">Accurately report restricted entries and their matching patterns</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_simplified_and_commented_overly_complex_perl_regex">Simplified and commented overly complex PERL REGEXPs for readability
|
||||||
|
and maintainability</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_skip_the_rest_of_processing_if_a_mismatch_on_porti">Skip the rest of processing if a mismatch on portion of the 'cvsacl' line</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_file">Get rid of opaque ``karma'' messages in favor of user-friendly messages
|
||||||
|
that describe which user, <code>file(s)</code> and <code>branch(es)</code> were disallowed.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_add_optional__27restrict_msg_27_file_for_additiona">Add optional 'restrict_msg' file for additional, site-specific
|
||||||
|
restriction messages.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_userid">Take a ``-u'' parameter for $USER from commit_prep so that the script
|
||||||
|
can do restrictions based on the client-side userId rather than the
|
||||||
|
server-side userId (usually 'cvs').</a></strong><br />
|
||||||
|
</li>
|
||||||
|
(See discussion below on ``Admin Setup'' for more on this point.)
|
||||||
|
<p></p>
|
||||||
|
<li><strong><a name="item_added_a_lot_more_debug_trace">Added a lot more debug trace</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_tested_these_restrictions_with_concurrent_use_of_p">Tested these restrictions with concurrent use of pserver and SSH
|
||||||
|
access to model our transition from pserver to ext access.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_added_logging_of_restricted_commit_attempts_2e_res">Added logging of restricted commit attempts.
|
||||||
|
Restricted commits can be sent to a default file:
|
||||||
|
$CVSROOT/CVSROOT/restrictlog or to one passed to the script
|
||||||
|
via the -f command parameter.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h2><a name="todos">ToDoS</a></h2>
|
||||||
|
<ul>
|
||||||
|
<li><strong><a name="item_need_to_deal_with_pserver_2fssh_transition_with_co">Need to deal with pserver/SSH transition with conflicting umasks?</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_use_a_cpan_module_to_handle_command_parameters_2e">Use a CPAN module to handle command parameters.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_use_a_cpan_module_to_clone_data_structures_2e">Use a CPAN module to clone data structures.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="version_information">Version Information</a></h1>
|
||||||
|
<p>This is not offered as a fix to the original 'cvs_acls' script since it
|
||||||
|
differs substantially in goals and methods from the original and there
|
||||||
|
are probably a significant number of people out there that still require
|
||||||
|
the original version's functionality.</p>
|
||||||
|
<p>The 'cvsacl' file flags of 'allow' and 'deny' were intentionally
|
||||||
|
changed to 'allow' and 'deny' because there are enough differences
|
||||||
|
between the original script's behavior and this one's that we wanted to
|
||||||
|
make sure that users will rethink their 'cvsacl' file formats before
|
||||||
|
plugging in this newer script.</p>
|
||||||
|
<p>Please note that there has been very limited cross-platform testing of
|
||||||
|
this script!!! (We did not have the time or resources to do exhaustive
|
||||||
|
cross-platform testing.)</p>
|
||||||
|
<p>It was developed and tested under Red Hat Linux 9.0 using PERL 5.8.0.
|
||||||
|
Additionally, it was built and tested under Red Hat Linux 7.3 using
|
||||||
|
PERL 5.6.1.</p>
|
||||||
|
<p>$Id: cvs_acls.html,v 1.1.2.2 2005/09/01 13:44:49 dprice Exp $</p>
|
||||||
|
<p>This version is based on the 1.11.13 version of cvs_acls
|
||||||
|
<a href="mailto:peter.connolly@cnet.com">peter.connolly@cnet.com</a> (Peter Connolly)</p>
|
||||||
|
<pre>
|
||||||
|
Access control lists for CVS. dgg@ksr.com (David G. Grubbs)
|
||||||
|
Branch specific controls added by voisine@bytemobile.com (Aaron Voisine)</pre>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="installation">Installation</a></h1>
|
||||||
|
<p>To use this program, do the following four things:</p>
|
||||||
|
<p>0. Install PERL, version 5.6.1 or 5.8.0.</p>
|
||||||
|
<p>1. Admin Setup:</p>
|
||||||
|
<pre>
|
||||||
|
There are two choices here.</pre>
|
||||||
|
<pre>
|
||||||
|
a) The first option is to use the $ENV{"USER"}, server-side userId
|
||||||
|
(from the third column of your pserver 'passwd' file) as the basis for
|
||||||
|
your restrictions. In this case, you will (at a minimum) want to set
|
||||||
|
up a new "cvsadmin" userId and group on the pserver machine.
|
||||||
|
CVS administrators will then set up their 'passwd' file entries to
|
||||||
|
run either as "cvs" (for regular users) or as "cvsadmin" (for power
|
||||||
|
users). Correspondingly, your 'cvsacl' file will only list 'cvs'
|
||||||
|
and 'cvsadmin' as the userIds in the second column.</pre>
|
||||||
|
<pre>
|
||||||
|
Commentary: A potential weakness of this is that the xinetd
|
||||||
|
cvspserver process will need to run as 'root' in order to switch
|
||||||
|
between the 'cvs' and the 'cvsadmin' userIds. Some sysadmins don't
|
||||||
|
like situations like this and may want to chroot the process.
|
||||||
|
Talk to them about this point...</pre>
|
||||||
|
<pre>
|
||||||
|
b) The second option is to use the client-side userId as the basis for
|
||||||
|
your restrictions. In this case, all the xinetd cvspserver processes
|
||||||
|
can run as userId 'cvs' and no 'root' userId is required. If you have
|
||||||
|
a 'passwd' file that lists 'cvs' as the effective run-time userId for
|
||||||
|
all your users, then no changes to this file are needed. Your 'cvsacl'
|
||||||
|
file will use the individual, client-side userIds in its 2nd column.</pre>
|
||||||
|
<pre>
|
||||||
|
As long as the userIds in pserver's 'passwd' file match those userIds
|
||||||
|
that your Linux server know about, this approach is ideal if you are
|
||||||
|
planning to move from pserver to SSH access at some later point in time.
|
||||||
|
Just by switching the CVSROOT var from CVSROOT=:pserver:<userId>... to
|
||||||
|
CVSROOT=:ext:<userId>..., users can switch over to SSH access without
|
||||||
|
any other administrative changes. When all users have switched over to
|
||||||
|
SSH, the inherently insecure xinetd cvspserver process can be disabled.
|
||||||
|
[<a href="http://ximbiot.com/cvs/manual/cvs-1.11.17/cvs_2.html#SEC32">http://ximbiot.com/cvs/manual/cvs-1.11.17/cvs_2.html#SEC32</a>]</pre>
|
||||||
|
<pre>
|
||||||
|
:TODO: The only potential glitch with the SSH approach is the possibility
|
||||||
|
that each user can have differing umasks that might interfere with one
|
||||||
|
another, especially during a transition from pserver to SSH. As noted
|
||||||
|
in the ToDo section, this needs a good strategy and set of tests for that
|
||||||
|
yet...</pre>
|
||||||
|
<p>2. Put two lines, as the *only* non-comment lines, in your commitinfo file:</p>
|
||||||
|
<pre>
|
||||||
|
ALL $CVSROOT/CVSROOT/commit_prep
|
||||||
|
ALL $CVSROOT/CVSROOT/cvs_acls [-d][-u $USER ][-f <logfilename>]</pre>
|
||||||
|
<pre>
|
||||||
|
where "-d" turns on debug trace
|
||||||
|
"-u $USER" passes the client-side userId to cvs_acls
|
||||||
|
"-f <logfilename"> overrides the default filename used to log
|
||||||
|
restricted commit attempts.</pre>
|
||||||
|
<pre>
|
||||||
|
(These are handled in the processArgs() subroutine.)</pre>
|
||||||
|
<p>If you are using client-side userIds to restrict access to your
|
||||||
|
repository, make sure that they are in this order since the commit_prep
|
||||||
|
script is required in order to pass the $USER parameter.</p>
|
||||||
|
<p>A final note about the repository matching pattern. The example above
|
||||||
|
uses ``ALL'' but note that this means that the cvs_acls script will run
|
||||||
|
for each and every commit in your repository. Obviously, in a large
|
||||||
|
repository this adds up to a lot of overhead that may not be necesary.
|
||||||
|
A better strategy is to use a repository pattern that is more specific
|
||||||
|
to the areas that you wish to secure.</p>
|
||||||
|
<p>3. Install this file as $CVSROOT/CVSROOT/cvs_acls and make it executable.</p>
|
||||||
|
<p>4. Create a file named CVSROOT/cvsacl and optionally add it to
|
||||||
|
CVSROOT/checkoutlist and check it in. See the CVS manual's
|
||||||
|
administrative files section about checkoutlist. Typically:</p>
|
||||||
|
<pre>
|
||||||
|
$ cvs checkout CVSROOT
|
||||||
|
$ cd CVSROOT
|
||||||
|
[ create the cvsacl file, include 'commitinfo' line ]
|
||||||
|
[ add cvsacl to checkoutlist ]
|
||||||
|
$ cvs add cvsacl
|
||||||
|
$ cvs commit -m 'Added cvsacl for use with cvs_acls.' cvsacl checkoutlist</pre>
|
||||||
|
<p>Note: The format of the 'cvsacl' file is described in detail immediately
|
||||||
|
below but here is an important set up point:</p>
|
||||||
|
<pre>
|
||||||
|
Make sure to include a line like the following:</pre>
|
||||||
|
<pre>
|
||||||
|
deny||CVSROOT/commitinfo CVSROOT/cvsacl
|
||||||
|
allow|cvsadmin|CVSROOT/commitinfo CVSROOT/cvsacl</pre>
|
||||||
|
<pre>
|
||||||
|
that restricts access to commitinfo and cvsacl since this would be one of
|
||||||
|
the easiest "end runs" around this ACL approach. ('commitinfo' has the
|
||||||
|
line that executes the cvs_acls script and, of course, all the
|
||||||
|
restrictions are in 'cvsacl'.)</pre>
|
||||||
|
<p>5. (Optional) Create a 'restrict_msg' file in the $CVSROOT/CVSROOT directory.
|
||||||
|
Whenever there is a restricted file or dir message, cvs_acls will look
|
||||||
|
for this file and, if it exists, print its contents as part of the
|
||||||
|
commit-denial message. This gives you a chance to print any site-specific
|
||||||
|
information (e.g., who to call, what procedures to look up,...) whenever
|
||||||
|
a commit is denied.</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="format_of_the_cvsacl_file">Format of the cvsacl file</a></h1>
|
||||||
|
<p>The 'cvsacl' file determines whether you may commit files. It contains lines
|
||||||
|
read from top to bottom, keeping track of whether a given user, repository
|
||||||
|
and branch combination is ``allowed'' or ``denied.'' The script will assume
|
||||||
|
``allowed'' on all repository paths until 'allow' and 'deny' rules change
|
||||||
|
that default.</p>
|
||||||
|
<p>The normal pattern is to specify an 'deny' rule to turn off
|
||||||
|
access to ALL users, then follow it with a matching 'allow' rule that will
|
||||||
|
turn on access for a select set of users. In the case of multiple rules for
|
||||||
|
the same user, repository and branch, the last one takes precedence.</p>
|
||||||
|
<p>Blank lines and lines with only comments are ignored. Any other lines not
|
||||||
|
beginning with ``allow'' or ``deny'' are logged to the restrict_log file.</p>
|
||||||
|
<p>Lines beginning with ``allow'' or ``deny'' are assumed to be '|'-separated
|
||||||
|
triples: (All spaces and tabs are ignored in a line.)</p>
|
||||||
|
<pre>
|
||||||
|
{allow.*,deny.*} [|user,user,... [|repos,repos,... [|branch,branch,...]]]</pre>
|
||||||
|
<pre>
|
||||||
|
1. String starting with "allow" or "deny".
|
||||||
|
2. Optional, comma-separated list of usernames.
|
||||||
|
3. Optional, comma-separated list of repository pathnames.
|
||||||
|
These are pathnames relative to $CVSROOT. They can be directories or
|
||||||
|
filenames. A directory name allows or restricts access to all files and
|
||||||
|
directories below it. One line can have either directories or filenames
|
||||||
|
but not both.
|
||||||
|
4. Optional, comma-separated list of branch tags.
|
||||||
|
If not specified, all branches are assumed. Use HEAD to reference the
|
||||||
|
main branch.</pre>
|
||||||
|
<p>Example: (Note: No in-line comments.)</p>
|
||||||
|
<pre>
|
||||||
|
# ----- Make whole repository unavailable.
|
||||||
|
deny</pre>
|
||||||
|
<pre>
|
||||||
|
# ----- Except for user "dgg".
|
||||||
|
allow|dgg</pre>
|
||||||
|
<pre>
|
||||||
|
# ----- Except when "fred" or "john" commit to the
|
||||||
|
# module whose repository is "bin/ls"
|
||||||
|
allow|fred, john|bin/ls</pre>
|
||||||
|
<pre>
|
||||||
|
# ----- Except when "ed" commits to the "stable"
|
||||||
|
# branch of the "bin/ls" repository
|
||||||
|
allow|ed|/bin/ls|stable</pre>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<hr />
|
||||||
|
<h1><a name="program_logic">Program Logic</a></h1>
|
||||||
|
<p>CVS passes to @ARGV an absolute directory pathname (the repository
|
||||||
|
appended to your $CVSROOT variable), followed by a list of filenames
|
||||||
|
within that directory that are to be committed.</p>
|
||||||
|
<p>The script walks through the 'cvsacl' file looking for matches on
|
||||||
|
the username, repository and branch.</p>
|
||||||
|
<p>A username match is simply the user's name appearing in the second
|
||||||
|
column of the cvsacl line in a space-or-comma separate list. If
|
||||||
|
blank, then any user will match.</p>
|
||||||
|
<p>A repository match:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong><a name="item_each_entry_in_the_modules_section_of_the_current__">Each entry in the modules section of the current 'cvsacl' line is
|
||||||
|
examined to see if it is a dir or a file. The line must have
|
||||||
|
either files or dirs, but not both. (To simplify the logic.)</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_if_neither_2c_then_assume_the__27cvsacl_27_file_wa">If neither, then assume the 'cvsacl' file was set up in error and
|
||||||
|
skip that 'allow' line.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_if_a_dir_2c_then_each_dir_pattern_is_matched_separ">If a dir, then each dir pattern is matched separately against the
|
||||||
|
beginning of each of the committed files in @ARGV.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_if_a_file_2c_then_each_file_pattern_is_matched_exa">If a file, then each file pattern is matched exactly against each
|
||||||
|
of the files to be committed in @ARGV.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_repository_and_branch_must_both_match_together_2e_">Repository and branch must BOTH match together. This is to cover
|
||||||
|
the use case where a user has multiple branches checked out in
|
||||||
|
a single work directory. Commit files can be from different
|
||||||
|
branches.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
A branch match is either:
|
||||||
|
<ul>
|
||||||
|
<li><strong><a name="item_when_no_branches_are_listed_in_the_fourth_column_2">When no branches are listed in the fourth column. (``Match any.'')</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_all_elements_from_the_fourth_column_are_matched_ag">All elements from the fourth column are matched against each of
|
||||||
|
the tag names for $ARGV[1..$#ARGV] found in the %branches file.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<li><strong><a name="item__27allow_27_match_remove_that_match_from_the_tally">'allow' match remove that match from the tally map.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_restricted">Restricted ('deny') matches are saved in the %repository_matches
|
||||||
|
table.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<li><strong><a name="item_if_there_is_a_match_on_user_2c_repository_and_bran">If there is a match on user, repository and branch:</a></strong><br />
|
||||||
|
</li>
|
||||||
|
<pre>
|
||||||
|
If repository, branch and user match
|
||||||
|
if 'deny'
|
||||||
|
add %repository_matches entries to %restricted_entries
|
||||||
|
else if 'allow'
|
||||||
|
remove %repository_matches entries from %restricted_entries</pre>
|
||||||
|
<li><strong><a name="item_at_the_end_of_all_the__27cvsacl_27_line_checks_2c_">At the end of all the 'cvsacl' line checks, check to see if there
|
||||||
|
are any entries in the %restricted_entries. If so, then deny the
|
||||||
|
commit.</a></strong><br />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h2><a name="pseudocode">Pseudocode</a></h2>
|
||||||
|
<pre>
|
||||||
|
read CVS/Entries file and create branch{file}->{branch} hash table
|
||||||
|
+ for each 'allow' and 'deny' line in the 'cvsacl' file:
|
||||||
|
| user match?
|
||||||
|
| - Yes: set $user_match = 1;
|
||||||
|
| repository and branch match?
|
||||||
|
| - Yes: add to %repository_matches;
|
||||||
|
| did user, repository match?
|
||||||
|
| - Yes: if 'deny' then
|
||||||
|
| add %repository_matches -> %restricted_entries
|
||||||
|
| if 'allow' then
|
||||||
|
| remove %repository_matches <- %restricted_entries
|
||||||
|
+ end for loop
|
||||||
|
any saved restrictions?
|
||||||
|
no: exit,
|
||||||
|
set exit code allowing commits and exit
|
||||||
|
yes: report restrictions,
|
||||||
|
set exit code prohibiting commits and exit</pre>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<h2><a name="sanity_check">Sanity Check</a></h2>
|
||||||
|
<pre>
|
||||||
|
1) file allow trumps a dir deny
|
||||||
|
deny||java/lib
|
||||||
|
allow||java/lib/README
|
||||||
|
2) dir allow can undo a file deny
|
||||||
|
deny||java/lib/README
|
||||||
|
allow||java/lib
|
||||||
|
3) file deny trumps a dir allow
|
||||||
|
allow||java/lib
|
||||||
|
deny||java/lib/README
|
||||||
|
4) dir deny trumps a file allow
|
||||||
|
allow||java/lib/README
|
||||||
|
deny||java/lib
|
||||||
|
... so last match always takes precedence</pre>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,17 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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 2, 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.
|
||||||
|
#
|
||||||
# cvscheck - identify files added, changed, or removed
|
# cvscheck - identify files added, changed, or removed
|
||||||
# in CVS working directory
|
# in CVS working directory
|
||||||
#
|
#
|
||||||
|
@ -1,20 +1,23 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Copyright (C) 2000-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
#
|
#
|
||||||
# This program is intended to take a check.log file generated by a failed run of
|
# This program is intended to take a check.log file generated by a failed run of
|
||||||
# sanity.sh as input and run expr line by line on it. It seems a much easier
|
# sanity.sh as input and run expr line by line on it. It seems a much easier
|
||||||
# way of spotting a single failed line in a 100 line test result.
|
# way of spotting a single failed line in a 100 line test result.
|
||||||
#
|
#
|
||||||
|
|
||||||
#
|
|
||||||
# This script falls under the GNU General Public License and is intended to
|
|
||||||
# be distributed with CVS.
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# No warranties, express or implied.
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Contributed by Derek R. Price <derek.price@openavenue.com>
|
# Contributed by Derek R. Price <derek.price@openavenue.com>
|
||||||
#
|
#
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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 2, 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.
|
||||||
|
#
|
||||||
# descend - walk down a directory tree and execute a command at each node
|
# descend - walk down a directory tree and execute a command at each node
|
||||||
|
|
||||||
fullname=$0
|
fullname=$0
|
||||||
|
@ -1,6 +1,36 @@
|
|||||||
#! @PERL@
|
#! @PERL@ -T
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# THIS SCRIPT IS PROBABLY BROKEN. REMOVING THE -T SWITCH ON THE #! LINE ABOVE
|
||||||
|
# WOULD FIX IT, BUT THIS IS INSECURE. WE RECOMMEND FIXING THE ERRORS WHICH THE
|
||||||
|
# -T SWITCH WILL CAUSE PERL TO REPORT BEFORE RUNNING THIS SCRIPT FROM A CVS
|
||||||
|
# SERVER TRIGGER. PLEASE SEND PATCHES CONTAINING THE CHANGES YOU FIND
|
||||||
|
# NECESSARY TO RUN THIS SCRIPT WITH THE TAINT-CHECKING ENABLED BACK TO THE
|
||||||
|
# <@PACKAGE_BUGREPORT@> MAILING LIST.
|
||||||
|
#
|
||||||
|
# For more on general Perl security and taint-checking, please try running the
|
||||||
|
# `perldoc perlsec' command.
|
||||||
|
#
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# XXX: FIXME: handle multiple '-f logfile' arguments
|
# XXX: FIXME: handle multiple '-f logfile' arguments
|
||||||
#
|
#
|
||||||
# XXX -- I HATE Perl! This *will* be re-written in shell/awk/sed soon!
|
# XXX -- I HATE Perl! This *will* be re-written in shell/awk/sed soon!
|
||||||
|
@ -1,6 +1,36 @@
|
|||||||
#! @PERL@
|
#! @PERL@ -T
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# THIS SCRIPT IS PROBABLY BROKEN. REMOVING THE -T SWITCH ON THE #! LINE ABOVE
|
||||||
|
# WOULD FIX IT, BUT THIS IS INSECURE. WE RECOMMEND FIXING THE ERRORS WHICH THE
|
||||||
|
# -T SWITCH WILL CAUSE PERL TO REPORT BEFORE RUNNING THIS SCRIPT FROM A CVS
|
||||||
|
# SERVER TRIGGER. PLEASE SEND PATCHES CONTAINING THE CHANGES YOU FIND
|
||||||
|
# NECESSARY TO RUN THIS SCRIPT WITH THE TAINT-CHECKING ENABLED BACK TO THE
|
||||||
|
# <@PACKAGE_BUGREPORT@> MAILING LIST.
|
||||||
|
#
|
||||||
|
# For more on general Perl security and taint-checking, please try running the
|
||||||
|
# `perldoc perlsec' command.
|
||||||
|
#
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# Perl filter to handle the log messages from the checkin of files in
|
# Perl filter to handle the log messages from the checkin of files in
|
||||||
# a directory. This script will group the lists of files by log
|
# a directory. This script will group the lists of files by log
|
||||||
# message, and mail a single consolidated log message at the end of
|
# message, and mail a single consolidated log message at the end of
|
||||||
@ -51,7 +81,7 @@ $rcsidinfo = 2;
|
|||||||
# When set properly, this will cause links to aspects of the project to
|
# When set properly, this will cause links to aspects of the project to
|
||||||
# print in the commit emails.
|
# print in the commit emails.
|
||||||
#$CVSWEB_SCHEME = "http";
|
#$CVSWEB_SCHEME = "http";
|
||||||
#$CVSWEB_DOMAIN = "cvshome.org";
|
#$CVSWEB_DOMAIN = "nongnu.org";
|
||||||
#$CVSWEB_PORT = "80";
|
#$CVSWEB_PORT = "80";
|
||||||
#$CVSWEB_URI = "source/browse/";
|
#$CVSWEB_URI = "source/browse/";
|
||||||
#$SEND_URL = "true";
|
#$SEND_URL = "true";
|
||||||
@ -60,7 +90,7 @@ $SEND_DIFF = "true";
|
|||||||
|
|
||||||
# Set this to a domain to have CVS pretend that all users who make
|
# Set this to a domain to have CVS pretend that all users who make
|
||||||
# commits have mail accounts within that domain.
|
# commits have mail accounts within that domain.
|
||||||
#$EMULATE_LOCAL_MAIL_USER="cvshome.org";
|
#$EMULATE_LOCAL_MAIL_USER="nongnu.org";
|
||||||
|
|
||||||
# Set this to '-c' for context diffs; defaults to '-u' for unidiff format.
|
# Set this to '-c' for context diffs; defaults to '-u' for unidiff format.
|
||||||
$difftype = '-uN';
|
$difftype = '-uN';
|
||||||
@ -273,7 +303,7 @@ sub change_summary {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$diff = "\n\n";
|
$diff = "\n\n";
|
||||||
$vhost = @path[0];
|
$vhost = $path[0];
|
||||||
if ($CVSWEB_PORT eq "80") {
|
if ($CVSWEB_PORT eq "80") {
|
||||||
$cvsweb_base = "$CVSWEB_SCHEME://$vhost.$CVSWEB_DOMAIN/$CVSWEB_URI";
|
$cvsweb_base = "$CVSWEB_SCHEME://$vhost.$CVSWEB_DOMAIN/$CVSWEB_URI";
|
||||||
}
|
}
|
||||||
@ -369,7 +399,7 @@ sub build_header {
|
|||||||
#sub mlist_map
|
#sub mlist_map
|
||||||
#{
|
#{
|
||||||
# local($path) = @_;
|
# local($path) = @_;
|
||||||
# my $domain = "cvshome.org";
|
# my $domain = "nongnu.org";
|
||||||
#
|
#
|
||||||
# if ($path =~ /^([^\/]+)/) {
|
# if ($path =~ /^([^\/]+)/) {
|
||||||
# return "cvs\@$1.$domain";
|
# return "cvs\@$1.$domain";
|
||||||
@ -457,7 +487,7 @@ sub mail_notification
|
|||||||
|
|
||||||
my $subj = &derive_subject_from_changes_file ();
|
my $subj = &derive_subject_from_changes_file ();
|
||||||
|
|
||||||
if ($EMULATE_LOCAL_MAIL_USER NE "") {
|
if ($EMULATE_LOCAL_MAIL_USER ne "") {
|
||||||
$MAIL_FROM = "$cvs_user\@$EMULATE_LOCAL_MAIL_USER";
|
$MAIL_FROM = "$cvs_user\@$EMULATE_LOCAL_MAIL_USER";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -536,7 +566,6 @@ $state = $STATE_NONE;
|
|||||||
$cvs_user = $ENV{'USER'} || getlogin || (getpwuid($<))[0] || sprintf("uid#%d",$<);
|
$cvs_user = $ENV{'USER'} || getlogin || (getpwuid($<))[0] || sprintf("uid#%d",$<);
|
||||||
@files = process_argv(@ARGV);
|
@files = process_argv(@ARGV);
|
||||||
@path = split('/', $files[0]);
|
@path = split('/', $files[0]);
|
||||||
$repository = $path[0];
|
|
||||||
if ($#path == 0) {
|
if ($#path == 0) {
|
||||||
$dir = ".";
|
$dir = ".";
|
||||||
} else {
|
} else {
|
||||||
|
@ -1,6 +1,36 @@
|
|||||||
#! @PERL@
|
#! @PERL@ -T
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# THIS SCRIPT IS PROBABLY BROKEN. REMOVING THE -T SWITCH ON THE #! LINE ABOVE
|
||||||
|
# WOULD FIX IT, BUT THIS IS INSECURE. WE RECOMMEND FIXING THE ERRORS WHICH THE
|
||||||
|
# -T SWITCH WILL CAUSE PERL TO REPORT BEFORE RUNNING THIS SCRIPT FROM A CVS
|
||||||
|
# SERVER TRIGGER. PLEASE SEND PATCHES CONTAINING THE CHANGES YOU FIND
|
||||||
|
# NECESSARY TO RUN THIS SCRIPT WITH THE TAINT-CHECKING ENABLED BACK TO THE
|
||||||
|
# <@PACKAGE_BUGREPORT@> MAILING LIST.
|
||||||
|
#
|
||||||
|
# For more on general Perl security and taint-checking, please try running the
|
||||||
|
# `perldoc perlsec' command.
|
||||||
|
#
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# From: clyne@niwot.scd.ucar.EDU (John Clyne)
|
# From: clyne@niwot.scd.ucar.EDU (John Clyne)
|
||||||
# Date: Fri, 28 Feb 92 09:54:21 MST
|
# Date: Fri, 28 Feb 92 09:54:21 MST
|
||||||
#
|
#
|
||||||
|
@ -103,7 +103,7 @@
|
|||||||
# pvcs_archives.
|
# pvcs_archives.
|
||||||
# * You must use the -pflat option when processing single filenames
|
# * You must use the -pflat option when processing single filenames
|
||||||
# passed as arguments to the script. This is probably a bug.
|
# passed as arguments to the script. This is probably a bug.
|
||||||
# * questions, comments, additions can be sent to info-cvs@gnu.org
|
# * questions, comments, additions can be sent to info-cvs@nongnu.org
|
||||||
#########################################################################
|
#########################################################################
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,13 +1,22 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
|
# Copyright (c) 1989-2005 The Free Software Foundation, Inc.
|
||||||
|
# Portions Copyright (c) 1989, Brian Berliner
|
||||||
|
#
|
||||||
|
# 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 2, 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.
|
||||||
|
#
|
||||||
# Based on the CVS 1.0 checkin csh script.
|
# Based on the CVS 1.0 checkin csh script.
|
||||||
# Contributed by Per Cederqvist <ceder@signum.se>.
|
# Contributed by Per Cederqvist <ceder@signum.se>.
|
||||||
# Rewritten in sh by David MacKenzie <djm@cygnus.com>.
|
# Rewritten in sh by David MacKenzie <djm@cygnus.com>.
|
||||||
#
|
#
|
||||||
# Copyright (c) 1989, Brian Berliner
|
|
||||||
#
|
|
||||||
# You may distribute under the terms of the GNU General Public License.
|
|
||||||
#
|
|
||||||
#############################################################################
|
#############################################################################
|
||||||
#
|
#
|
||||||
# Check in sources that previously were under RCS or no source control system.
|
# Check in sources that previously were under RCS or no source control system.
|
||||||
|
@ -1,5 +1,17 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
# RCS to ChangeLog generator
|
# RCS to ChangeLog generator
|
||||||
|
|
||||||
# Generate a change log prefix from RCS files (perhaps in the CVS repository)
|
# Generate a change log prefix from RCS files (perhaps in the CVS repository)
|
||||||
|
@ -1,5 +1,16 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
#
|
#
|
||||||
|
# Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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 2, 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.
|
||||||
#
|
#
|
||||||
|
|
||||||
############################################################
|
############################################################
|
||||||
|
@ -1,6 +1,36 @@
|
|||||||
#! @PERL@
|
#! @PERL@ -T
|
||||||
# -*-Perl-*-
|
# -*-Perl-*-
|
||||||
|
|
||||||
|
# Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
# 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 2, 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.
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
#
|
||||||
|
# THIS SCRIPT IS PROBABLY BROKEN. REMOVING THE -T SWITCH ON THE #! LINE ABOVE
|
||||||
|
# WOULD FIX IT, BUT THIS IS INSECURE. WE RECOMMEND FIXING THE ERRORS WHICH THE
|
||||||
|
# -T SWITCH WILL CAUSE PERL TO REPORT BEFORE RUNNING THIS SCRIPT FROM A CVS
|
||||||
|
# SERVER TRIGGER. PLEASE SEND PATCHES CONTAINING THE CHANGES YOU FIND
|
||||||
|
# NECESSARY TO RUN THIS SCRIPT WITH THE TAINT-CHECKING ENABLED BACK TO THE
|
||||||
|
# <@PACKAGE_BUGREPORT@> MAILING LIST.
|
||||||
|
#
|
||||||
|
# For more on general Perl security and taint-checking, please try running the
|
||||||
|
# `perldoc perlsec' command.
|
||||||
|
#
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
# Author: John Rouillard (rouilj@cs.umb.edu)
|
# Author: John Rouillard (rouilj@cs.umb.edu)
|
||||||
# Supported: Yeah right. (Well what do you expect for 2 hours work?)
|
# Supported: Yeah right. (Well what do you expect for 2 hours work?)
|
||||||
# Blame-to: rouilj@cs.umb.edu
|
# Blame-to: rouilj@cs.umb.edu
|
||||||
|
@ -1,3 +1,11 @@
|
|||||||
|
2005-09-04 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (EXTRA_DIST): Add .cvsignore.
|
||||||
|
|
||||||
|
2004-11-05 Conrad T. Pino <Conrad@Pino.com>
|
||||||
|
|
||||||
|
* libdiff.dep: Regenerated after complete rebuild.
|
||||||
|
|
||||||
2004-05-15 Derek Price <derek@ximbiot.com>
|
2004-05-15 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
* libdiff.dsp: Header file list updated.
|
* libdiff.dsp: Header file list updated.
|
||||||
|
@ -22,4 +22,4 @@ libdiff_a_SOURCES = diff.c diff3.c analyze.c cmpbuf.c cmpbuf.h io.c \
|
|||||||
side.c system.h diffrun.h
|
side.c system.h diffrun.h
|
||||||
|
|
||||||
EXTRA_DIST = ChangeLog build_diff.com diagmeet.note \
|
EXTRA_DIST = ChangeLog build_diff.com diagmeet.note \
|
||||||
libdiff.dep libdiff.dsp libdiff.mak
|
libdiff.dep libdiff.dsp libdiff.mak .cvsignore
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -21,7 +21,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -35,6 +34,39 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
subdir = diff
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
LIBRARIES = $(noinst_LIBRARIES)
|
||||||
|
AR = ar
|
||||||
|
ARFLAGS = cru
|
||||||
|
libdiff_a_AR = $(AR) $(ARFLAGS)
|
||||||
|
libdiff_a_LIBADD =
|
||||||
|
am_libdiff_a_OBJECTS = diff.$(OBJEXT) diff3.$(OBJEXT) \
|
||||||
|
analyze.$(OBJEXT) cmpbuf.$(OBJEXT) io.$(OBJEXT) \
|
||||||
|
context.$(OBJEXT) ed.$(OBJEXT) normal.$(OBJEXT) \
|
||||||
|
ifdef.$(OBJEXT) util.$(OBJEXT) dir.$(OBJEXT) version.$(OBJEXT) \
|
||||||
|
side.$(OBJEXT)
|
||||||
|
libdiff_a_OBJECTS = $(am_libdiff_a_OBJECTS)
|
||||||
|
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||||
|
am__depfiles_maybe = depfiles
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
SOURCES = $(libdiff_a_SOURCES)
|
||||||
|
DIST_SOURCES = $(libdiff_a_SOURCES)
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -104,6 +136,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -117,6 +151,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -124,63 +159,49 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
INCLUDES = -I$(top_srcdir)/lib
|
INCLUDES = -I$(top_srcdir)/lib
|
||||||
|
|
||||||
noinst_LIBRARIES = libdiff.a
|
noinst_LIBRARIES = libdiff.a
|
||||||
|
|
||||||
libdiff_a_SOURCES = diff.c diff3.c analyze.c cmpbuf.c cmpbuf.h io.c \
|
libdiff_a_SOURCES = diff.c diff3.c analyze.c cmpbuf.c cmpbuf.h io.c \
|
||||||
context.c ed.c normal.c ifdef.c util.c dir.c version.c diff.h \
|
context.c ed.c normal.c ifdef.c util.c dir.c version.c diff.h \
|
||||||
side.c system.h diffrun.h
|
side.c system.h diffrun.h
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = ChangeLog build_diff.com diagmeet.note \
|
EXTRA_DIST = ChangeLog build_diff.com diagmeet.note \
|
||||||
libdiff.dep libdiff.dsp libdiff.mak
|
libdiff.dep libdiff.dsp libdiff.mak .cvsignore
|
||||||
|
|
||||||
subdir = diff
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES =
|
|
||||||
LIBRARIES = $(noinst_LIBRARIES)
|
|
||||||
|
|
||||||
libdiff_a_AR = $(AR) cru
|
|
||||||
libdiff_a_LIBADD =
|
|
||||||
am_libdiff_a_OBJECTS = diff.$(OBJEXT) diff3.$(OBJEXT) analyze.$(OBJEXT) \
|
|
||||||
cmpbuf.$(OBJEXT) io.$(OBJEXT) context.$(OBJEXT) ed.$(OBJEXT) \
|
|
||||||
normal.$(OBJEXT) ifdef.$(OBJEXT) util.$(OBJEXT) dir.$(OBJEXT) \
|
|
||||||
version.$(OBJEXT) side.$(OBJEXT)
|
|
||||||
libdiff_a_OBJECTS = $(am_libdiff_a_OBJECTS)
|
|
||||||
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
|
||||||
am__depfiles_maybe = depfiles
|
|
||||||
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/analyze.Po ./$(DEPDIR)/cmpbuf.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/context.Po ./$(DEPDIR)/diff.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/diff3.Po ./$(DEPDIR)/dir.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/ed.Po ./$(DEPDIR)/ifdef.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/io.Po ./$(DEPDIR)/normal.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/side.Po ./$(DEPDIR)/util.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/version.Po
|
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
CCLD = $(CC)
|
|
||||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
|
||||||
DIST_SOURCES = $(libdiff_a_SOURCES)
|
|
||||||
DIST_COMMON = $(srcdir)/Makefile.in ChangeLog Makefile.am
|
|
||||||
SOURCES = $(libdiff_a_SOURCES)
|
|
||||||
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .o .obj
|
.SUFFIXES: .c .o .obj
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu diff/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu diff/Makefile
|
$(AUTOMAKE) --gnu diff/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
AR = ar
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
clean-noinstLIBRARIES:
|
clean-noinstLIBRARIES:
|
||||||
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
||||||
@ -190,7 +211,7 @@ libdiff.a: $(libdiff_a_OBJECTS) $(libdiff_a_DEPENDENCIES)
|
|||||||
$(RANLIB) libdiff.a
|
$(RANLIB) libdiff.a
|
||||||
|
|
||||||
mostlyclean-compile:
|
mostlyclean-compile:
|
||||||
-rm -f *.$(OBJEXT) core *.core
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
@ -210,36 +231,20 @@ distclean-compile:
|
|||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version.Po@am__quote@
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
|
|
||||||
|
|
||||||
.c.obj:
|
.c.obj:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
|
|
||||||
uninstall-info-am:
|
uninstall-info-am:
|
||||||
|
|
||||||
ETAGS = etags
|
|
||||||
ETAGSFLAGS =
|
|
||||||
|
|
||||||
CTAGS = ctags
|
|
||||||
CTAGSFLAGS =
|
|
||||||
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
@ -248,6 +253,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
mkid -fID $$unique
|
mkid -fID $$unique
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -259,10 +265,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|||||||
done | \
|
done | \
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
$$tags $$unique
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$tags $$unique; \
|
||||||
|
fi
|
||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -285,10 +292,6 @@ GTAGS:
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
@ -302,7 +305,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -320,7 +323,6 @@ distdir: $(DISTFILES)
|
|||||||
check-am: all-am
|
check-am: all-am
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(LIBRARIES)
|
all-am: Makefile $(LIBRARIES)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
@ -341,7 +343,7 @@ mostlyclean-generic:
|
|||||||
clean-generic:
|
clean-generic:
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -360,6 +362,8 @@ dvi: dvi-am
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -395,13 +399,14 @@ uninstall-am: uninstall-info-am
|
|||||||
|
|
||||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||||
clean-noinstLIBRARIES ctags distclean distclean-compile \
|
clean-noinstLIBRARIES ctags distclean distclean-compile \
|
||||||
distclean-generic distclean-tags distdir dvi dvi-am info \
|
distclean-generic distclean-tags distdir dvi dvi-am html \
|
||||||
info-am install install-am install-data install-data-am \
|
html-am info info-am install install-am install-data \
|
||||||
install-exec install-exec-am install-info install-info-am \
|
install-data-am install-exec install-exec-am install-info \
|
||||||
install-man install-strip installcheck installcheck-am \
|
install-info-am install-man install-strip installcheck \
|
||||||
installdirs maintainer-clean maintainer-clean-generic \
|
installcheck-am installdirs maintainer-clean \
|
||||||
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
ps ps-am tags uninstall uninstall-am uninstall-info-am
|
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
|
||||||
|
uninstall-am uninstall-info-am
|
||||||
|
|
||||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||||
|
@ -1,3 +1,205 @@
|
|||||||
|
2006-06-08 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvsclient.texi (Requests): Add Empty-conflicts.
|
||||||
|
|
||||||
|
2006-03-20 Mark D. Baushke <mdb@gnu.org>
|
||||||
|
|
||||||
|
[patch #4965]
|
||||||
|
* cvs.texinfo (Sticky tags, Merging and keywords)
|
||||||
|
(checkout options, update options): The -A switch
|
||||||
|
does not reset sticky -k options on modified files.
|
||||||
|
* cvs.1, stamp-1, stamp-vti, version.texi: Regenerated.
|
||||||
|
|
||||||
|
2006-02-28 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Editing administrative files): Import changes from Wiki.
|
||||||
|
|
||||||
|
2005-12-09 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
[patch #4634]
|
||||||
|
* cvsclient.texi (Root request): Clarify.
|
||||||
|
|
||||||
|
2005-11-10 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Common options): -n no longer applies to commit.
|
||||||
|
(commit): Remove reference to the defunct -n option.
|
||||||
|
* cvs.1, stamp-vti, version.texi: Regenerated
|
||||||
|
|
||||||
|
2005-10-12 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo: Remove text that created unintentional cross-references
|
||||||
|
in generated info files.
|
||||||
|
|
||||||
|
2005-10-04 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo: s/visa versa/vice versa/. (From Wiki.)
|
||||||
|
|
||||||
|
2005-09-26 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (cvs-paper.ps, cvs-paper.pdf): Remove implicit sources.
|
||||||
|
Add comments about why implicit rules won't work for these targets.
|
||||||
|
Make sure the distributed cvs-paper.pdf is created in $(srcdir). Make
|
||||||
|
cvs-paper.pdf directly from cvs-paper.ms to avoid building it just
|
||||||
|
because cvs-paper.ps is missing.
|
||||||
|
|
||||||
|
* Makefile.am (EXTRA_DIST): Restore PDFs.
|
||||||
|
* cvs-paper.ps: Removed.
|
||||||
|
* texinfo.tex: Update from GNULIB.
|
||||||
|
|
||||||
|
2005-09-25 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (doc): Finish removing PSs.
|
||||||
|
|
||||||
|
* Makefile.am (EXTRA_DIST): Remove PDFs too until errors go away.
|
||||||
|
|
||||||
|
* Makefile.am (EXTRA_DIST): Dist PDFs rather than PSs.
|
||||||
|
|
||||||
|
2005-09-22 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (rdiff options): Document -k.
|
||||||
|
* cvs.1, stamp-vti, version.texi: Regenerated.
|
||||||
|
|
||||||
|
2005-09-20 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo: Move summary and detail contents to the front
|
||||||
|
where they belong.
|
||||||
|
|
||||||
|
2005-09-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am: s#cvs.1#$(srcdir)/cvs.1#.
|
||||||
|
|
||||||
|
2005-09-11 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Common options): Note that -r branch for a revision
|
||||||
|
means the head of the branch.
|
||||||
|
|
||||||
|
2005-09-10 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Error messages): Add suggested messages.
|
||||||
|
|
||||||
|
2005-09-09 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Error messages): Add signal 11 message.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.man.footer: Update links.
|
||||||
|
|
||||||
|
2005-09-01 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo: Update links and email addresses.
|
||||||
|
|
||||||
|
2005-08-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (From scratch): Add checkout to import example, from
|
||||||
|
wiki.
|
||||||
|
|
||||||
|
2005-08-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Removing directories): Correct grammar, from wiki.
|
||||||
|
|
||||||
|
2005-08-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (From scratch): Clarify note on `cvs add', inspired from
|
||||||
|
wiki.
|
||||||
|
|
||||||
|
2005-08-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
Address bug #13882, submitted by Fred Maranhao.
|
||||||
|
* cvs.texinfo (log options, admin options, Invoking CVS): Add cross
|
||||||
|
references for clarity about possible states.
|
||||||
|
|
||||||
|
2005-08-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Updating a file): Add note about update -d, inspired by
|
||||||
|
wiki.
|
||||||
|
|
||||||
|
2005-08-12 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (What is CVS?): Rephrase for clarity, imported from
|
||||||
|
Wiki.
|
||||||
|
|
||||||
|
2005-08-02 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (What is CVS?, BUGS): s/cvshome/nongnu/. Remove
|
||||||
|
obsolete Pascal Molli link.
|
||||||
|
|
||||||
|
2005-06-22 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Builds): Update Gunnar Tornblom's email at his request.
|
||||||
|
|
||||||
|
2005-05-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvsclient.texi (Goals): Remove typo. Resolves cvshome issue #236.
|
||||||
|
|
||||||
|
2005-05-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Creating a repository): Provide xref to the remote
|
||||||
|
repositries section. Resolves issue #203 on cvshome.org.
|
||||||
|
|
||||||
|
2005-05-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Moving directories): Clarify instructions on renaming a
|
||||||
|
directory. Partially resolves issue #246 on cvshome.org.
|
||||||
|
|
||||||
|
2005-05-03 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (update output): Use "working directory" in place of
|
||||||
|
"source" for clarity. Closes issue #245 on cvshome.org.
|
||||||
|
|
||||||
|
2005-04-28 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* mkman.pl: Minor changes to accomodate Perl 5.8.4. Improve
|
||||||
|
commenting.
|
||||||
|
($nk, $ret, $debug): New globals.
|
||||||
|
(debug_print): New function.
|
||||||
|
|
||||||
|
2005-04-14 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Administrative files): Add "Trigger Scripts" node to
|
||||||
|
the menu.
|
||||||
|
(Trigger Scripts, Trigger Script Security): New nodes.
|
||||||
|
(syntax): Move under Trigger scripts node.
|
||||||
|
(commit files, taginfo): Rewrite to reference Trigger Script node.
|
||||||
|
|
||||||
|
2005-04-06 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (MAINTAINERCLEANFILES): Add cvs.1.
|
||||||
|
(cvs.1): Create intermediate file so that the original isn't emptied on
|
||||||
|
error.
|
||||||
|
|
||||||
|
2005-01-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am, cvs.man.header, cvs.texinfo: Update copyright notices.
|
||||||
|
|
||||||
|
2005-01-29 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (log options): Note quirky interaction of log options.
|
||||||
|
(Suggestion from Dan Peterson <dbpete@aol.com>.)
|
||||||
|
|
||||||
|
2004-10-29 Mark D. Baushke <mdb@cvshome.org>
|
||||||
|
|
||||||
|
* cvs.texinfo (Common options): The -r TAG option works with
|
||||||
|
the cvs annotate command.
|
||||||
|
(Original patch from Ville Skytta <scop@cvshome.org>.)
|
||||||
|
|
||||||
|
2004-09-25 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* mkman.in: Move to...
|
||||||
|
* mkman.pl: ...here.
|
||||||
|
* Makefile.am (cvs.1): mkman is in build dir, not src dir.
|
||||||
|
|
||||||
|
2004-07-17 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (Update imports, import): Add notes on requirement that
|
||||||
|
release tags be unique.
|
||||||
|
(Original patch from Ilya N. Golubev <gin@mo.msk.ru>.)
|
||||||
|
|
||||||
|
2004-06-10 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* cvs.texinfo (commit files): Remove reference to the obsolete -i
|
||||||
|
module option.
|
||||||
|
|
||||||
2004-05-28 Derek Price <derek@ximbiot.com>
|
2004-05-28 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
* cvs.texinfo (Global options): Remove reference to global -l option.
|
* cvs.texinfo (Global options): Remove reference to global -l option.
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
# Makefile for GNU CVS documentation (excluding man pages - see ../man).
|
# Makefile for GNU CVS documentation (excluding man pages - see ../man).
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -15,7 +17,7 @@
|
|||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
info_TEXINFOS = cvs.texinfo cvsclient.texi
|
info_TEXINFOS = cvs.texinfo cvsclient.texi
|
||||||
man_MANS = cvs.1
|
man_MANS = $(srcdir)/cvs.1
|
||||||
|
|
||||||
PSS = \
|
PSS = \
|
||||||
cvs.ps \
|
cvs.ps \
|
||||||
@ -24,7 +26,7 @@ PSS = \
|
|||||||
|
|
||||||
PDFS = \
|
PDFS = \
|
||||||
cvs.pdf \
|
cvs.pdf \
|
||||||
cvs-paper.pdf \
|
$(srcdir)/cvs-paper.pdf \
|
||||||
cvsclient.pdf
|
cvsclient.pdf
|
||||||
|
|
||||||
TXTS = \
|
TXTS = \
|
||||||
@ -32,25 +34,27 @@ TXTS = \
|
|||||||
cvsclient.txt
|
cvsclient.txt
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(PSS) \
|
|
||||||
.cvsignore \
|
.cvsignore \
|
||||||
ChangeLog.fsf \
|
ChangeLog.fsf \
|
||||||
RCSFILES \
|
RCSFILES \
|
||||||
mdate-sh \
|
mdate-sh \
|
||||||
cvs.1 \
|
$(srcdir)/cvs.1 \
|
||||||
cvs-paper.ms \
|
cvs-paper.ms \
|
||||||
cvs.man.header \
|
cvs.man.header \
|
||||||
cvs.man.footer
|
cvs.man.footer \
|
||||||
|
$(PDFS)
|
||||||
|
|
||||||
MOSTLYCLEANFILES = \
|
MOSTLYCLEANFILES =
|
||||||
|
|
||||||
|
CLEANFILES = \
|
||||||
|
$(PSS) \
|
||||||
$(TXTS)
|
$(TXTS)
|
||||||
|
|
||||||
# These Automake generates MOSTLYCLEAN targets for PostScripts genersted from
|
|
||||||
# TEXINFOS, but it shouldn't when those files are in EXTRA_DIST
|
|
||||||
MAINTAINERCLEANFILES = \
|
MAINTAINERCLEANFILES = \
|
||||||
$(PSS)
|
$(PDFS) \
|
||||||
|
$(srcdir)/cvs.1
|
||||||
|
|
||||||
doc: info ps
|
doc: info pdf
|
||||||
.PHONY: doc
|
.PHONY: doc
|
||||||
|
|
||||||
txt: $(TXTS)
|
txt: $(TXTS)
|
||||||
@ -65,21 +69,36 @@ dvi: cvs.dvi cvsclient.dvi
|
|||||||
cvs.txt: cvs.texinfo $(srcdir)/version.texi
|
cvs.txt: cvs.texinfo $(srcdir)/version.texi
|
||||||
cvsclient.txt: cvsclient.texi $(srcdir)/version-client.texi
|
cvsclient.txt: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
|
||||||
# These targets need to be very specific so that the other PDFs get generated
|
# The cvs-paper.pdf target needs to be very specific so that the other PDFs get
|
||||||
# correctly. If they are more generic and cvs.ps is made before cvs.pdf, then
|
# generated correctly. If a more generic .ps.pdf implicit target is defined,
|
||||||
# cvs.pdf will be generated from the generic target and the PS source, which
|
# and cvs.ps is made before cvs.pdf, then cvs.pdf can be generated from the
|
||||||
# contains less information (hyperlinks and such) than the usual texinfo source.
|
# .ps.pdf target and the PS source, which contains less information (hyperlinks
|
||||||
|
# and such) than the usual texinfo source.
|
||||||
|
#
|
||||||
|
# It is possible that an implicit .ms.ps target could be safely defined. I
|
||||||
|
# don't recall looking into it.
|
||||||
cvs-paper.ps: cvs-paper.ms
|
cvs-paper.ps: cvs-paper.ms
|
||||||
$(ROFF) -t -p -ms -Tps $< > $@-t
|
$(ROFF) -t -p -ms -Tps $(srcdir)/cvs-paper.ms >cvs-paper.ps-t
|
||||||
mv $@-t $@
|
cp cvs-paper.ps-t $@
|
||||||
|
-@rm -f cvs-paper.ps-t
|
||||||
|
|
||||||
cvs-paper.pdf: cvs-paper.ps
|
# This rule introduces some redundancy, but `make distcheck' requires that
|
||||||
ps2pdf $< $@
|
# Nothing in $(srcdir) be rebuilt, and this will always be rebuilt when it
|
||||||
|
# is dependant on cvs-paper.ps and cvs-paper.ps isn't distributed.
|
||||||
|
$(srcdir)/cvs-paper.pdf: cvs-paper.ms
|
||||||
|
$(ROFF) -t -p -ms -Tps $(srcdir)/cvs-paper.ms >cvs-paper.ps-t
|
||||||
|
ps2pdf cvs-paper.ps-t cvs-paper.pdf-t
|
||||||
|
cp cvs-paper.pdf-t $@
|
||||||
|
-@rm -f cvs-paper.pdf-t cvs-paper.ps-t
|
||||||
|
|
||||||
|
MOSTLYCLEANFILES += cvs-paper.pdf-t cvs-paper.ps-t
|
||||||
|
|
||||||
# Targets to build a man page from cvs.texinfo.
|
# Targets to build a man page from cvs.texinfo.
|
||||||
cvs.1: @MAINTAINER_MODE_TRUE@ mkman cvs.man.header cvs.texinfo cvs.man.footer
|
$(srcdir)/cvs.1: @MAINTAINER_MODE_TRUE@ mkman cvs.man.header cvs.texinfo cvs.man.footer
|
||||||
./mkman $(srcdir)/cvs.man.header $(srcdir)/cvs.texinfo \
|
$(PERL) ./mkman $(srcdir)/cvs.man.header $(srcdir)/cvs.texinfo \
|
||||||
$(srcdir)/cvs.man.footer >$@
|
$(srcdir)/cvs.man.footer >cvs.tmp
|
||||||
|
cp cvs.tmp $(srcdir)/cvs.1
|
||||||
|
-@rm -f cvs.tmp
|
||||||
|
|
||||||
# texinfo based targets automake neglects to include
|
# texinfo based targets automake neglects to include
|
||||||
SUFFIXES = .txt
|
SUFFIXES = .txt
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -15,9 +15,11 @@
|
|||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Makefile for GNU CVS documentation (excluding man pages - see ../man).
|
# Makefile for GNU CVS documentation (excluding man pages - see ../man).
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -28,7 +30,6 @@
|
|||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
@ -36,7 +37,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -50,6 +50,35 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
subdir = doc
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||||
|
$(srcdir)/mkman.pl $(srcdir)/stamp-1 $(srcdir)/stamp-vti \
|
||||||
|
$(srcdir)/version-client.texi $(srcdir)/version.texi ChangeLog \
|
||||||
|
mdate-sh texinfo.tex
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES = mkman
|
||||||
|
SOURCES =
|
||||||
|
DIST_SOURCES =
|
||||||
|
INFO_DEPS = $(srcdir)/cvs.info $(srcdir)/cvsclient.info
|
||||||
|
am__TEXINFO_TEX_DIR = $(srcdir)
|
||||||
|
DVIS = cvs.dvi cvsclient.dvi
|
||||||
|
HTMLS = cvs.html cvsclient.html
|
||||||
|
TEXINFOS = cvs.texinfo cvsclient.texi
|
||||||
|
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
||||||
|
MAKEINFOHTML = $(MAKEINFO) --html
|
||||||
|
AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
|
||||||
|
DVIPS = dvips
|
||||||
|
am__installdirs = "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"
|
||||||
|
man1dir = $(mandir)/man1
|
||||||
|
NROFF = nroff
|
||||||
|
MANS = $(man_MANS)
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -119,6 +148,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -132,6 +163,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -139,167 +171,232 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
info_TEXINFOS = cvs.texinfo cvsclient.texi
|
info_TEXINFOS = cvs.texinfo cvsclient.texi
|
||||||
man_MANS = cvs.1
|
man_MANS = $(srcdir)/cvs.1
|
||||||
|
|
||||||
PSS = \
|
PSS = \
|
||||||
cvs.ps \
|
cvs.ps \
|
||||||
cvs-paper.ps \
|
cvs-paper.ps \
|
||||||
cvsclient.ps
|
cvsclient.ps
|
||||||
|
|
||||||
|
|
||||||
PDFS = \
|
PDFS = \
|
||||||
cvs.pdf \
|
cvs.pdf \
|
||||||
cvs-paper.pdf \
|
$(srcdir)/cvs-paper.pdf \
|
||||||
cvsclient.pdf
|
cvsclient.pdf
|
||||||
|
|
||||||
|
|
||||||
TXTS = \
|
TXTS = \
|
||||||
cvs.txt \
|
cvs.txt \
|
||||||
cvsclient.txt
|
cvsclient.txt
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(PSS) \
|
|
||||||
.cvsignore \
|
.cvsignore \
|
||||||
ChangeLog.fsf \
|
ChangeLog.fsf \
|
||||||
RCSFILES \
|
RCSFILES \
|
||||||
mdate-sh \
|
mdate-sh \
|
||||||
cvs.1 \
|
$(srcdir)/cvs.1 \
|
||||||
cvs-paper.ms \
|
cvs-paper.ms \
|
||||||
cvs.man.header \
|
cvs.man.header \
|
||||||
cvs.man.footer
|
cvs.man.footer \
|
||||||
|
$(PDFS)
|
||||||
|
|
||||||
|
MOSTLYCLEANFILES = cvs-paper.pdf-t cvs-paper.ps-t
|
||||||
MOSTLYCLEANFILES = \
|
CLEANFILES = \
|
||||||
|
$(PSS) \
|
||||||
$(TXTS)
|
$(TXTS)
|
||||||
|
|
||||||
|
|
||||||
# These Automake generates MOSTLYCLEAN targets for PostScripts genersted from
|
|
||||||
# TEXINFOS, but it shouldn't when those files are in EXTRA_DIST
|
|
||||||
MAINTAINERCLEANFILES = \
|
MAINTAINERCLEANFILES = \
|
||||||
$(PSS)
|
$(PDFS) \
|
||||||
|
$(srcdir)/cvs.1
|
||||||
|
|
||||||
|
|
||||||
# texinfo based targets automake neglects to include
|
# texinfo based targets automake neglects to include
|
||||||
SUFFIXES = .txt
|
SUFFIXES = .txt
|
||||||
subdir = doc
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES = mkman
|
|
||||||
DIST_SOURCES =
|
|
||||||
am__TEXINFO_TEX_DIR = $(srcdir)
|
|
||||||
INFO_DEPS = cvs.info cvsclient.info
|
|
||||||
DVIS = cvs.dvi cvsclient.dvi
|
|
||||||
TEXINFOS = cvs.texinfo cvsclient.texi
|
|
||||||
|
|
||||||
NROFF = nroff
|
|
||||||
MANS = $(man_MANS)
|
|
||||||
DIST_COMMON = $(srcdir)/Makefile.in ChangeLog Makefile.am mdate-sh \
|
|
||||||
mkman.in stamp-1 stamp-vti texinfo.tex version-client.texi \
|
|
||||||
version.texi
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .txt .dvi .info .pdf .ps .texi .texinfo .txi
|
.SUFFIXES: .txt .dvi .html .info .pdf .ps .texi .texinfo .txi
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu doc/Makefile
|
$(AUTOMAKE) --gnu doc/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
mkman: $(top_builddir)/config.status mkman.in
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
mkman: $(top_builddir)/config.status $(srcdir)/mkman.pl
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
|
|
||||||
.texinfo.info:
|
.texinfo.info:
|
||||||
@rm -f $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]
|
restore=: && backupdir="$(am__leading_dot)am$$$$" && \
|
||||||
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
am__cwd=`pwd` && cd $(srcdir) && \
|
||||||
-o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
rm -rf $$backupdir && mkdir $$backupdir && \
|
||||||
|
if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
|
||||||
|
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
|
||||||
|
if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
|
||||||
|
done; \
|
||||||
|
else :; fi && \
|
||||||
|
cd "$$am__cwd"; \
|
||||||
|
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||||
|
-o $@ $<; \
|
||||||
|
then \
|
||||||
|
rc=0; \
|
||||||
|
cd $(srcdir); \
|
||||||
|
else \
|
||||||
|
rc=$$?; \
|
||||||
|
cd $(srcdir) && \
|
||||||
|
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
|
||||||
|
fi; \
|
||||||
|
rm -rf $$backupdir; exit $$rc
|
||||||
|
|
||||||
.texinfo.dvi:
|
.texinfo.dvi:
|
||||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||||
$(TEXI2DVI) `test -f '$<' || echo '$(srcdir)/'`$<
|
$(TEXI2DVI) $<
|
||||||
|
|
||||||
.texinfo.pdf:
|
.texinfo.pdf:
|
||||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||||
$(TEXI2PDF) `test -f '$<' || echo '$(srcdir)/'`$<
|
$(TEXI2PDF) $<
|
||||||
cvs.info: cvs.texinfo version.texi
|
|
||||||
cvs.dvi: cvs.texinfo version.texi
|
.texinfo.html:
|
||||||
cvs.pdf: cvs.texinfo version.texi
|
rm -rf $(@:.html=.htp)
|
||||||
version.texi: @MAINTAINER_MODE_TRUE@ stamp-vti
|
if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||||
stamp-vti: cvs.texinfo $(top_srcdir)/configure
|
-o $(@:.html=.htp) $<; \
|
||||||
|
then \
|
||||||
|
rm -rf $@; \
|
||||||
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||||
|
mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
|
||||||
|
else \
|
||||||
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||||
|
rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
$(srcdir)/cvs.info: cvs.texinfo $(srcdir)/version.texi
|
||||||
|
cvs.dvi: cvs.texinfo $(srcdir)/version.texi
|
||||||
|
cvs.pdf: cvs.texinfo $(srcdir)/version.texi
|
||||||
|
cvs.html: cvs.texinfo $(srcdir)/version.texi
|
||||||
|
$(srcdir)/version.texi: @MAINTAINER_MODE_TRUE@ $(srcdir)/stamp-vti
|
||||||
|
$(srcdir)/stamp-vti: cvs.texinfo $(top_srcdir)/configure
|
||||||
@(dir=.; test -f ./cvs.texinfo || dir=$(srcdir); \
|
@(dir=.; test -f ./cvs.texinfo || dir=$(srcdir); \
|
||||||
set `$(SHELL) $(srcdir)/mdate-sh $$dir/cvs.texinfo`; \
|
set `$(SHELL) $(srcdir)/mdate-sh $$dir/cvs.texinfo`; \
|
||||||
echo "@set UPDATED $$1 $$2 $$3"; \
|
echo "@set UPDATED $$1 $$2 $$3"; \
|
||||||
echo "@set UPDATED-MONTH $$2 $$3"; \
|
echo "@set UPDATED-MONTH $$2 $$3"; \
|
||||||
echo "@set EDITION $(VERSION)"; \
|
echo "@set EDITION $(VERSION)"; \
|
||||||
echo "@set VERSION $(VERSION)") > vti.tmp
|
echo "@set VERSION $(VERSION)") > vti.tmp
|
||||||
@cmp -s vti.tmp version.texi \
|
@cmp -s vti.tmp $(srcdir)/version.texi \
|
||||||
|| (echo "Updating version.texi"; \
|
|| (echo "Updating $(srcdir)/version.texi"; \
|
||||||
cp vti.tmp version.texi)
|
cp vti.tmp $(srcdir)/version.texi)
|
||||||
-@rm -f vti.tmp
|
-@rm -f vti.tmp
|
||||||
@cp version.texi $@
|
@cp $(srcdir)/version.texi $@
|
||||||
|
|
||||||
mostlyclean-vti:
|
mostlyclean-vti:
|
||||||
-rm -f vti.tmp
|
-rm -f vti.tmp
|
||||||
|
|
||||||
maintainer-clean-vti:
|
maintainer-clean-vti:
|
||||||
@MAINTAINER_MODE_TRUE@ -rm -f stamp-vti version.texi
|
@MAINTAINER_MODE_TRUE@ -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
|
||||||
|
|
||||||
.texi.info:
|
.texi.info:
|
||||||
@rm -f $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]
|
restore=: && backupdir="$(am__leading_dot)am$$$$" && \
|
||||||
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
am__cwd=`pwd` && cd $(srcdir) && \
|
||||||
-o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
rm -rf $$backupdir && mkdir $$backupdir && \
|
||||||
|
if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
|
||||||
|
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
|
||||||
|
if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
|
||||||
|
done; \
|
||||||
|
else :; fi && \
|
||||||
|
cd "$$am__cwd"; \
|
||||||
|
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||||
|
-o $@ $<; \
|
||||||
|
then \
|
||||||
|
rc=0; \
|
||||||
|
cd $(srcdir); \
|
||||||
|
else \
|
||||||
|
rc=$$?; \
|
||||||
|
cd $(srcdir) && \
|
||||||
|
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
|
||||||
|
fi; \
|
||||||
|
rm -rf $$backupdir; exit $$rc
|
||||||
|
|
||||||
.texi.dvi:
|
.texi.dvi:
|
||||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||||
$(TEXI2DVI) `test -f '$<' || echo '$(srcdir)/'`$<
|
$(TEXI2DVI) $<
|
||||||
|
|
||||||
.texi.pdf:
|
.texi.pdf:
|
||||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||||
$(TEXI2PDF) `test -f '$<' || echo '$(srcdir)/'`$<
|
$(TEXI2PDF) $<
|
||||||
cvsclient.info: cvsclient.texi version-client.texi
|
|
||||||
cvsclient.dvi: cvsclient.texi version-client.texi
|
.texi.html:
|
||||||
cvsclient.pdf: cvsclient.texi version-client.texi
|
rm -rf $(@:.html=.htp)
|
||||||
version-client.texi: @MAINTAINER_MODE_TRUE@ stamp-1
|
if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||||
stamp-1: cvsclient.texi $(top_srcdir)/configure
|
-o $(@:.html=.htp) $<; \
|
||||||
|
then \
|
||||||
|
rm -rf $@; \
|
||||||
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||||
|
mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
|
||||||
|
else \
|
||||||
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||||
|
rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
$(srcdir)/cvsclient.info: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
cvsclient.dvi: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
cvsclient.pdf: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
cvsclient.html: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
$(srcdir)/version-client.texi: @MAINTAINER_MODE_TRUE@ $(srcdir)/stamp-1
|
||||||
|
$(srcdir)/stamp-1: cvsclient.texi $(top_srcdir)/configure
|
||||||
@(dir=.; test -f ./cvsclient.texi || dir=$(srcdir); \
|
@(dir=.; test -f ./cvsclient.texi || dir=$(srcdir); \
|
||||||
set `$(SHELL) $(srcdir)/mdate-sh $$dir/cvsclient.texi`; \
|
set `$(SHELL) $(srcdir)/mdate-sh $$dir/cvsclient.texi`; \
|
||||||
echo "@set UPDATED $$1 $$2 $$3"; \
|
echo "@set UPDATED $$1 $$2 $$3"; \
|
||||||
echo "@set UPDATED-MONTH $$2 $$3"; \
|
echo "@set UPDATED-MONTH $$2 $$3"; \
|
||||||
echo "@set EDITION $(VERSION)"; \
|
echo "@set EDITION $(VERSION)"; \
|
||||||
echo "@set VERSION $(VERSION)") > 1.tmp
|
echo "@set VERSION $(VERSION)") > 1.tmp
|
||||||
@cmp -s 1.tmp version-client.texi \
|
@cmp -s 1.tmp $(srcdir)/version-client.texi \
|
||||||
|| (echo "Updating version-client.texi"; \
|
|| (echo "Updating $(srcdir)/version-client.texi"; \
|
||||||
cp 1.tmp version-client.texi)
|
cp 1.tmp $(srcdir)/version-client.texi)
|
||||||
-@rm -f 1.tmp
|
-@rm -f 1.tmp
|
||||||
@cp version-client.texi $@
|
@cp $(srcdir)/version-client.texi $@
|
||||||
|
|
||||||
mostlyclean-1:
|
mostlyclean-1:
|
||||||
-rm -f 1.tmp
|
-rm -f 1.tmp
|
||||||
|
|
||||||
maintainer-clean-1:
|
maintainer-clean-1:
|
||||||
@MAINTAINER_MODE_TRUE@ -rm -f stamp-1 version-client.texi
|
@MAINTAINER_MODE_TRUE@ -rm -f $(srcdir)/stamp-1 $(srcdir)/version-client.texi
|
||||||
|
|
||||||
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
|
||||||
DVIPS = dvips
|
|
||||||
.dvi.ps:
|
.dvi.ps:
|
||||||
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||||
$(DVIPS) -o $@ $<
|
$(DVIPS) -o $@ $<
|
||||||
|
|
||||||
uninstall-info-am:
|
uninstall-info-am:
|
||||||
$(PRE_UNINSTALL)
|
@$(PRE_UNINSTALL)
|
||||||
@if (install-info --version && \
|
@if (install-info --version && \
|
||||||
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
||||||
list='$(INFO_DEPS)'; \
|
list='$(INFO_DEPS)'; \
|
||||||
for file in $$list; do \
|
for file in $$list; do \
|
||||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||||
echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile"; \
|
echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
|
||||||
install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile; \
|
install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
|
||||||
done; \
|
done; \
|
||||||
else :; fi
|
else :; fi
|
||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@ -307,15 +404,19 @@ uninstall-info-am:
|
|||||||
for file in $$list; do \
|
for file in $$list; do \
|
||||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||||
relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
|
relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
|
||||||
(if cd $(DESTDIR)$(infodir); then \
|
(if cd "$(DESTDIR)$(infodir)"; then \
|
||||||
echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \
|
echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
|
||||||
rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
|
rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
|
||||||
else :; fi); \
|
else :; fi); \
|
||||||
done
|
done
|
||||||
|
|
||||||
dist-info: $(INFO_DEPS)
|
dist-info: $(INFO_DEPS)
|
||||||
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
list='$(INFO_DEPS)'; \
|
list='$(INFO_DEPS)'; \
|
||||||
for base in $$list; do \
|
for base in $$list; do \
|
||||||
|
case $$base in \
|
||||||
|
$(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
|
||||||
|
esac; \
|
||||||
if test -f $$base; then d=.; else d=$(srcdir); fi; \
|
if test -f $$base; then d=.; else d=$(srcdir); fi; \
|
||||||
for file in $$d/$$base*; do \
|
for file in $$d/$$base*; do \
|
||||||
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
|
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
|
||||||
@ -325,13 +426,14 @@ dist-info: $(INFO_DEPS)
|
|||||||
done
|
done
|
||||||
|
|
||||||
mostlyclean-aminfo:
|
mostlyclean-aminfo:
|
||||||
-rm -f cvs.aux cvs.cp cvs.cps cvs.fn cvs.fns cvs.ky cvs.kys cvs.log cvs.pg \
|
-rm -rf cvs.aux cvs.cp cvs.cps cvs.fn cvs.fns cvs.ky cvs.kys cvs.log cvs.pg \
|
||||||
cvs.pgs cvs.tmp cvs.toc cvs.tp cvs.tps cvs.vr cvs.vrs cvs.dvi \
|
cvs.pgs cvs.tmp cvs.toc cvs.tp cvs.tps cvs.vr cvs.vrs \
|
||||||
cvs.pdf cvs.ps cvsclient.aux cvsclient.cp cvsclient.cps \
|
cvs.dvi cvs.pdf cvs.ps cvs.html cvsclient.aux cvsclient.cp \
|
||||||
cvsclient.fn cvsclient.fns cvsclient.ky cvsclient.kys \
|
cvsclient.cps cvsclient.fn cvsclient.fns cvsclient.ky \
|
||||||
cvsclient.log cvsclient.pg cvsclient.pgs cvsclient.tmp \
|
cvsclient.kys cvsclient.log cvsclient.pg cvsclient.pgs \
|
||||||
cvsclient.toc cvsclient.tp cvsclient.tps cvsclient.vr \
|
cvsclient.tmp cvsclient.toc cvsclient.tp cvsclient.tps \
|
||||||
cvsclient.vrs cvsclient.dvi cvsclient.pdf cvsclient.ps
|
cvsclient.vr cvsclient.vrs cvsclient.dvi cvsclient.pdf \
|
||||||
|
cvsclient.ps cvsclient.html
|
||||||
|
|
||||||
maintainer-clean-aminfo:
|
maintainer-clean-aminfo:
|
||||||
@list='$(INFO_DEPS)'; for i in $$list; do \
|
@list='$(INFO_DEPS)'; for i in $$list; do \
|
||||||
@ -339,11 +441,9 @@ maintainer-clean-aminfo:
|
|||||||
echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
|
echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
|
||||||
rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
|
rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
|
||||||
done
|
done
|
||||||
|
|
||||||
man1dir = $(mandir)/man1
|
|
||||||
install-man1: $(man1_MANS) $(man_MANS)
|
install-man1: $(man1_MANS) $(man_MANS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(man1dir)
|
test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
|
||||||
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
|
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
|
||||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||||
for i in $$l2; do \
|
for i in $$l2; do \
|
||||||
@ -362,8 +462,8 @@ install-man1: $(man1_MANS) $(man_MANS)
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \
|
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
|
||||||
$(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \
|
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
uninstall-man1:
|
uninstall-man1:
|
||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@ -383,8 +483,8 @@ uninstall-man1:
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \
|
echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
|
||||||
rm -f $(DESTDIR)$(man1dir)/$$inst; \
|
rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
tags: TAGS
|
tags: TAGS
|
||||||
TAGS:
|
TAGS:
|
||||||
@ -392,12 +492,9 @@ TAGS:
|
|||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS:
|
CTAGS:
|
||||||
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
|
$(mkdir_p) $(distdir)/$(srcdir)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||||
list='$(DISTFILES)'; for file in $$list; do \
|
list='$(DISTFILES)'; for file in $$list; do \
|
||||||
@ -409,7 +506,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -430,9 +527,10 @@ distdir: $(DISTFILES)
|
|||||||
check-am: all-am
|
check-am: all-am
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(INFO_DEPS) $(MANS)
|
all-am: Makefile $(INFO_DEPS) $(MANS)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
$(mkinstalldirs) $(DESTDIR)$(infodir) $(DESTDIR)$(man1dir)
|
for dir in "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \
|
||||||
|
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||||
|
done
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
install-data: install-data-am
|
install-data: install-data-am
|
||||||
@ -451,9 +549,10 @@ mostlyclean-generic:
|
|||||||
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
||||||
|
|
||||||
clean-generic:
|
clean-generic:
|
||||||
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -467,10 +566,12 @@ distclean: distclean-am
|
|||||||
-rm -f Makefile
|
-rm -f Makefile
|
||||||
distclean-am: clean-am distclean-generic
|
distclean-am: clean-am distclean-generic
|
||||||
|
|
||||||
dvi: dvi-am
|
|
||||||
|
|
||||||
dvi-am: $(DVIS)
|
dvi-am: $(DVIS)
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
|
html-am: $(HTMLS)
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am: $(INFO_DEPS)
|
info-am: $(INFO_DEPS)
|
||||||
@ -483,17 +584,21 @@ install-info: install-info-am
|
|||||||
|
|
||||||
install-info-am: $(INFO_DEPS)
|
install-info-am: $(INFO_DEPS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(infodir)
|
test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)"
|
||||||
@list='$(INFO_DEPS)'; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
|
list='$(INFO_DEPS)'; \
|
||||||
for file in $$list; do \
|
for file in $$list; do \
|
||||||
|
case $$file in \
|
||||||
|
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||||
|
esac; \
|
||||||
if test -f $$file; then d=.; else d=$(srcdir); fi; \
|
if test -f $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
|
file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
|
||||||
for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
|
for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
|
||||||
$$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
|
$$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
|
||||||
if test -f $$ifile; then \
|
if test -f $$ifile; then \
|
||||||
relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
|
relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
|
||||||
echo " $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile"; \
|
echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \
|
||||||
$(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile; \
|
$(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \
|
||||||
else : ; fi; \
|
else : ; fi; \
|
||||||
done; \
|
done; \
|
||||||
done
|
done
|
||||||
@ -503,8 +608,8 @@ install-info-am: $(INFO_DEPS)
|
|||||||
list='$(INFO_DEPS)'; \
|
list='$(INFO_DEPS)'; \
|
||||||
for file in $$list; do \
|
for file in $$list; do \
|
||||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||||
echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile";\
|
echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
|
||||||
install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile || :;\
|
install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
|
||||||
done; \
|
done; \
|
||||||
else : ; fi
|
else : ; fi
|
||||||
install-man: install-man1
|
install-man: install-man1
|
||||||
@ -535,19 +640,19 @@ uninstall-am: uninstall-info-am uninstall-man
|
|||||||
uninstall-man: uninstall-man1
|
uninstall-man: uninstall-man1
|
||||||
|
|
||||||
.PHONY: all all-am check check-am clean clean-generic dist-info \
|
.PHONY: all all-am check check-am clean clean-generic dist-info \
|
||||||
distclean distclean-generic distdir dvi dvi-am info info-am \
|
distclean distclean-generic distdir dvi dvi-am html html-am \
|
||||||
install install-am install-data install-data-am install-exec \
|
info info-am install install-am install-data install-data-am \
|
||||||
install-exec-am install-info install-info-am install-man \
|
install-exec install-exec-am install-info install-info-am \
|
||||||
install-man1 install-strip installcheck installcheck-am \
|
install-man install-man1 install-strip installcheck \
|
||||||
installdirs maintainer-clean maintainer-clean-1 \
|
installcheck-am installdirs maintainer-clean \
|
||||||
maintainer-clean-aminfo maintainer-clean-generic \
|
maintainer-clean-1 maintainer-clean-aminfo \
|
||||||
maintainer-clean-vti mostlyclean mostlyclean-1 \
|
maintainer-clean-generic maintainer-clean-vti mostlyclean \
|
||||||
mostlyclean-aminfo mostlyclean-generic mostlyclean-vti pdf \
|
mostlyclean-1 mostlyclean-aminfo mostlyclean-generic \
|
||||||
pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \
|
mostlyclean-vti pdf pdf-am ps ps-am uninstall uninstall-am \
|
||||||
uninstall-man uninstall-man1
|
uninstall-info-am uninstall-man uninstall-man1
|
||||||
|
|
||||||
|
|
||||||
doc: info ps
|
doc: info pdf
|
||||||
.PHONY: doc
|
.PHONY: doc
|
||||||
|
|
||||||
txt: $(TXTS)
|
txt: $(TXTS)
|
||||||
@ -562,21 +667,34 @@ dvi: cvs.dvi cvsclient.dvi
|
|||||||
cvs.txt: cvs.texinfo $(srcdir)/version.texi
|
cvs.txt: cvs.texinfo $(srcdir)/version.texi
|
||||||
cvsclient.txt: cvsclient.texi $(srcdir)/version-client.texi
|
cvsclient.txt: cvsclient.texi $(srcdir)/version-client.texi
|
||||||
|
|
||||||
# These targets need to be very specific so that the other PDFs get generated
|
# The cvs-paper.pdf target needs to be very specific so that the other PDFs get
|
||||||
# correctly. If they are more generic and cvs.ps is made before cvs.pdf, then
|
# generated correctly. If a more generic .ps.pdf implicit target is defined,
|
||||||
# cvs.pdf will be generated from the generic target and the PS source, which
|
# and cvs.ps is made before cvs.pdf, then cvs.pdf can be generated from the
|
||||||
# contains less information (hyperlinks and such) than the usual texinfo source.
|
# .ps.pdf target and the PS source, which contains less information (hyperlinks
|
||||||
|
# and such) than the usual texinfo source.
|
||||||
|
#
|
||||||
|
# It is possible that an implicit .ms.ps target could be safely defined. I
|
||||||
|
# don't recall looking into it.
|
||||||
cvs-paper.ps: cvs-paper.ms
|
cvs-paper.ps: cvs-paper.ms
|
||||||
$(ROFF) -t -p -ms -Tps $< > $@-t
|
$(ROFF) -t -p -ms -Tps $(srcdir)/cvs-paper.ms >cvs-paper.ps-t
|
||||||
mv $@-t $@
|
cp cvs-paper.ps-t $@
|
||||||
|
-@rm -f cvs-paper.ps-t
|
||||||
|
|
||||||
cvs-paper.pdf: cvs-paper.ps
|
# This rule introduces some redundancy, but `make distcheck' requires that
|
||||||
ps2pdf $< $@
|
# Nothing in $(srcdir) be rebuilt, and this will always be rebuilt when it
|
||||||
|
# is dependant on cvs-paper.ps and cvs-paper.ps isn't distributed.
|
||||||
|
$(srcdir)/cvs-paper.pdf: cvs-paper.ms
|
||||||
|
$(ROFF) -t -p -ms -Tps $(srcdir)/cvs-paper.ms >cvs-paper.ps-t
|
||||||
|
ps2pdf cvs-paper.ps-t cvs-paper.pdf-t
|
||||||
|
cp cvs-paper.pdf-t $@
|
||||||
|
-@rm -f cvs-paper.pdf-t cvs-paper.ps-t
|
||||||
|
|
||||||
# Targets to build a man page from cvs.texinfo.
|
# Targets to build a man page from cvs.texinfo.
|
||||||
cvs.1: @MAINTAINER_MODE_TRUE@ mkman cvs.man.header cvs.texinfo cvs.man.footer
|
$(srcdir)/cvs.1: @MAINTAINER_MODE_TRUE@ mkman cvs.man.header cvs.texinfo cvs.man.footer
|
||||||
./mkman $(srcdir)/cvs.man.header $(srcdir)/cvs.texinfo \
|
$(PERL) ./mkman $(srcdir)/cvs.man.header $(srcdir)/cvs.texinfo \
|
||||||
$(srcdir)/cvs.man.footer >$@
|
$(srcdir)/cvs.man.footer >cvs.tmp
|
||||||
|
cp cvs.tmp $(srcdir)/cvs.1
|
||||||
|
-@rm -f cvs.tmp
|
||||||
.texinfo.txt:
|
.texinfo.txt:
|
||||||
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||||
--no-headers -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
--no-headers -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
.\" cvs.man.header, cvs.texinfo, & cvs.man.footer files. Please make changes
|
.\" cvs.man.header, cvs.texinfo, & cvs.man.footer files. Please make changes
|
||||||
.\" there. A full copyright & license notice may also be found in cvs.texinfo.
|
.\" there. A full copyright & license notice may also be found in cvs.texinfo.
|
||||||
.\"
|
.\"
|
||||||
.\" Copyright 2004 The Free Software Foundation,
|
.\" Man page autogeneration, including this header file, is
|
||||||
.\" Derek R. Price,
|
.\" Copyright 2004-2005 The Free Software Foundation, Inc.,
|
||||||
.\" & Ximbiot <http://ximbiot.com>
|
.\" Derek R. Price, & Ximbiot <http://ximbiot.com>.
|
||||||
.\"
|
.\"
|
||||||
.\" This documentation is free software; you can redistribute it and/or modify
|
.\" This documentation is free software; you can redistribute it and/or modify
|
||||||
.\" it under the terms of the GNU General Public License as published by
|
.\" it under the terms of the GNU General Public License as published by
|
||||||
@ -428,7 +428,7 @@ option as in other commands. (Other command options,
|
|||||||
which are listed with the individual commands, may have
|
which are listed with the individual commands, may have
|
||||||
different behavior from one \fBcvs\fR command to the other).
|
different behavior from one \fBcvs\fR command to the other).
|
||||||
.SP
|
.SP
|
||||||
\fBNote: the \fBhistory\fB command is an exception; it supports
|
\fBThe \fBhistory\fB command is an exception; it supports
|
||||||
many options that conflict even with these standard options.\fR
|
many options that conflict even with these standard options.\fR
|
||||||
.SP
|
.SP
|
||||||
.IX "Dates"
|
.IX "Dates"
|
||||||
@ -561,7 +561,7 @@ file, and continues to use it with future update
|
|||||||
commands on the same file until you specify otherwise.
|
commands on the same file until you specify otherwise.
|
||||||
.SP
|
.SP
|
||||||
The \fB-k\fR option is available with the \fBadd\fR,
|
The \fB-k\fR option is available with the \fBadd\fR,
|
||||||
\fBcheckout\fR, \fBdiff\fR, \fBimport\fR and
|
\fBcheckout\fR, \fBdiff\fR, \fBrdiff\fR, \fBimport\fR and
|
||||||
\fBupdate\fR commands.
|
\fBupdate\fR commands.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
@ -594,10 +594,10 @@ Do not run any tag program. (A program can be
|
|||||||
specified to run in the modules
|
specified to run in the modules
|
||||||
database (see node `modules\(aq in the CVS manual); this option bypasses it).
|
database (see node `modules\(aq in the CVS manual); this option bypasses it).
|
||||||
.SP
|
.SP
|
||||||
\fBNote: this is not the same as the \fBcvs -n\fB
|
\fBThis is not the same as the \fBcvs -n\fB
|
||||||
program option, which you can specify to the left of a cvs command!\fR
|
program option, which you can specify to the left of a cvs command!\fR
|
||||||
.SP
|
.SP
|
||||||
Available with the \fBcheckout\fR, \fBcommit\fR, \fBexport\fR,
|
Available with the \fBcheckout\fR, \fBexport\fR,
|
||||||
and \fBrtag\fR commands.
|
and \fBrtag\fR commands.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
@ -644,17 +644,20 @@ on sticky tags/dates, see node `Sticky tags\(aq in the CVS manual).
|
|||||||
The tag can be either a symbolic or numeric tag, as
|
The tag can be either a symbolic or numeric tag, as
|
||||||
described in see node `Tags\(aq in the CVS manual, or the name of a branch, as
|
described in see node `Tags\(aq in the CVS manual, or the name of a branch, as
|
||||||
described in see node `Branching and merging\(aq in the CVS manual.
|
described in see node `Branching and merging\(aq in the CVS manual.
|
||||||
|
When a command expects a specific revision,
|
||||||
|
the name of a branch is interpreted as the most recent
|
||||||
|
revision on that branch.
|
||||||
.SP
|
.SP
|
||||||
Specifying the \fB-q\fR global option along with the
|
Specifying the \fB-q\fR global option along with the
|
||||||
\fB-r\fR command option is often useful, to suppress
|
\fB-r\fR command option is often useful, to suppress
|
||||||
the warning messages when the \fBrcs\fR file
|
the warning messages when the \fBrcs\fR file
|
||||||
does not contain the specified tag.
|
does not contain the specified tag.
|
||||||
.SP
|
.SP
|
||||||
\fBNote: this is not the same as the overall \fBcvs -r\fB option,
|
\fBThis is not the same as the overall \fBcvs -r\fB option,
|
||||||
which you can specify to the left of a \fBcvs\fB command!\fR
|
which you can specify to the left of a \fBcvs\fB command!\fR
|
||||||
.SP
|
.SP
|
||||||
\fB-r\fR is available with the \fBcheckout\fR, \fBcommit\fR,
|
\fB-r\fR is available with the \fBannotate\fR, \fBcheckout\fR,
|
||||||
\fBdiff\fR, \fBhistory\fR, \fBexport\fR, \fBrdiff\fR,
|
\fBcommit\fR, \fBdiff\fR, \fBhistory\fR, \fBexport\fR, \fBrdiff\fR,
|
||||||
\fBrtag\fR, and \fBupdate\fR commands.
|
\fBrtag\fR, and \fBupdate\fR commands.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
@ -984,10 +987,10 @@ it is created. The state is visible in the output from
|
|||||||
\fIcvs log\fR (see node `log\(aq in the CVS manual), and in the
|
\fIcvs log\fR (see node `log\(aq in the CVS manual), and in the
|
||||||
\fB$\fP\fPLog$\fR and \fB$\fP\fPState$\fR keywords
|
\fB$\fP\fPLog$\fR and \fB$\fP\fPState$\fR keywords
|
||||||
(see node `Keyword substitution\(aq in the CVS manual). Note that \fBcvs\fR
|
(see node `Keyword substitution\(aq in the CVS manual). Note that \fBcvs\fR
|
||||||
uses the \fBdead\fR state for its own purposes; to
|
uses the \fBdead\fR state for its own purposes (see node `Attic\(aq in the CVS manual); to
|
||||||
take a file to or from the \fBdead\fR state use
|
take a file to or from the \fBdead\fR state use
|
||||||
commands like \fBcvs remove\fR and \fBcvs add\fR, not
|
commands like \fBcvs remove\fR and \fBcvs add\fR
|
||||||
\fBcvs admin -s\fR.
|
(see node `Adding and removing\(aq in the CVS manual), not \fBcvs admin -s\fR.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
\fB-t[\fIfile\fB]\fR
|
\fB-t[\fIfile\fB]\fR
|
||||||
@ -1283,6 +1286,7 @@ options with \fBcheckout\fR:
|
|||||||
\fB-A\fR
|
\fB-A\fR
|
||||||
.IP "" 2
|
.IP "" 2
|
||||||
Reset any sticky tags, dates, or \fB-k\fR options.
|
Reset any sticky tags, dates, or \fB-k\fR options.
|
||||||
|
Does not reset sticky \fB-k\fR options on modified files.
|
||||||
See see node `Sticky tags\(aq in the CVS manual, for more information on sticky tags/dates.
|
See see node `Sticky tags\(aq in the CVS manual, for more information on sticky tags/dates.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
@ -1393,7 +1397,7 @@ $ cvs checkout -D yesterday tc
|
|||||||
.IX "commit (subcommand)"
|
.IX "commit (subcommand)"
|
||||||
.SP
|
.SP
|
||||||
.IP "\(bu" 2
|
.IP "\(bu" 2
|
||||||
Synopsis: commit [-lnRf] [-m \(aqlog_message\(aq |
|
Synopsis: commit [-lRf] [-m \(aqlog_message\(aq |
|
||||||
-F file] [-r revision] [files\&...]
|
-F file] [-r revision] [files\&...]
|
||||||
.IP "\(bu" 2
|
.IP "\(bu" 2
|
||||||
Requires: working directory, repository.
|
Requires: working directory, repository.
|
||||||
@ -2562,7 +2566,7 @@ various formats.
|
|||||||
Logging must be enabled by creating the file
|
Logging must be enabled by creating the file
|
||||||
\fB$CVSROOT/CVSROOT/history\fR.
|
\fB$CVSROOT/CVSROOT/history\fR.
|
||||||
.SP
|
.SP
|
||||||
\fBNote: \fBhistory\fB uses \fB-f\fB, \fB-l\fB,
|
\fB\fBhistory\fB uses \fB-f\fB, \fB-l\fB,
|
||||||
\fB-n\fB, and \fB-p\fB in ways that conflict with the
|
\fB-n\fB, and \fB-p\fB in ways that conflict with the
|
||||||
normal use inside \fBcvs\fB (see node `Common options\(aq in the CVS manual).\fR
|
normal use inside \fBcvs\fB (see node `Common options\(aq in the CVS manual).\fR
|
||||||
.SP
|
.SP
|
||||||
@ -2807,8 +2811,10 @@ At least three arguments are required.
|
|||||||
\fIrepository\fR is needed to identify the collection
|
\fIrepository\fR is needed to identify the collection
|
||||||
of source. \fIvendortag\fR is a tag for the entire
|
of source. \fIvendortag\fR is a tag for the entire
|
||||||
branch (e.g., for 1.1.1). You must also specify at
|
branch (e.g., for 1.1.1). You must also specify at
|
||||||
least one \fIreleasetag\fR to identify the files at
|
least one \fIreleasetag\fR to uniquely identify the files at
|
||||||
the leaves created each time you execute \fBimport\fR.
|
the leaves created each time you execute \fBimport\fR. The
|
||||||
|
\fIreleasetag\fR should be new, not previously existing in the
|
||||||
|
repository file, and uniquely identify the imported release,
|
||||||
.SP
|
.SP
|
||||||
Note that \fBimport\fR does \fInot\fR change the
|
Note that \fBimport\fR does \fInot\fR change the
|
||||||
directory in which you invoke it. In particular, it
|
directory in which you invoke it. In particular, it
|
||||||
@ -2939,13 +2945,18 @@ message are printed. All times are displayed in
|
|||||||
Coordinated Universal Time (UTC). (Other parts of
|
Coordinated Universal Time (UTC). (Other parts of
|
||||||
\fBcvs\fR print times in the local timezone).
|
\fBcvs\fR print times in the local timezone).
|
||||||
.SP
|
.SP
|
||||||
\fBNote: \fBlog\fB uses \fB-R\fB in a way that conflicts
|
\fB\fBlog\fB uses \fB-R\fB in a way that conflicts
|
||||||
with the normal use inside \fBcvs\fB (see node `Common options\(aq in the CVS manual).\fR
|
with the normal use inside \fBcvs\fB (see node `Common options\(aq in the CVS manual).\fR
|
||||||
.SP
|
.SP
|
||||||
.SH "log options"
|
.SH "log options"
|
||||||
.SP
|
.SP
|
||||||
By default, \fBlog\fR prints all information that is
|
By default, \fBlog\fR prints all information that is
|
||||||
available. All other options restrict the output.
|
available. All other options restrict the output. Note that the revision
|
||||||
|
selection options (\fB-d\fR, \fB-r\fR, \fB-s\fR, and \fB-w\fR) have no
|
||||||
|
effect, other than possibly causing a search for files in Attic directories,
|
||||||
|
when used in conjunction with the options that restrict the output to only
|
||||||
|
\fBlog\fR header fields (\fB-b\fR, \fB-h\fR, \fB-R\fR, and \fB-t\fR)
|
||||||
|
unless the \fB-S\fR option is also specified.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
\fB-b\fR
|
\fB-b\fR
|
||||||
@ -3103,7 +3114,10 @@ Suppress the header if no revisions are selected.
|
|||||||
.IP "" 2
|
.IP "" 2
|
||||||
Print information about revisions whose state
|
Print information about revisions whose state
|
||||||
attributes match one of the states given in the
|
attributes match one of the states given in the
|
||||||
comma-separated list \fIstates\fR.
|
comma-separated list \fIstates\fR. Individual states may
|
||||||
|
be any text string, though \fBcvs\fR commonly only uses two
|
||||||
|
states, \fBExp\fR and \fBdead\fR. See see node `admin options\(aq in the CVS manual
|
||||||
|
for more information.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
\fB-t\fR
|
\fB-t\fR
|
||||||
@ -3180,6 +3194,12 @@ If no matching revision is found, retrieve the most
|
|||||||
recent revision (instead of ignoring the file).
|
recent revision (instead of ignoring the file).
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
|
\fB-k \fIkflag\fB\fR
|
||||||
|
.IP "" 2
|
||||||
|
Process keywords according to \fIkflag\fR. See
|
||||||
|
see node `Keyword substitution\(aq in the CVS manual.
|
||||||
|
.SP
|
||||||
|
.IP "" 0
|
||||||
\fB-l\fR
|
\fB-l\fR
|
||||||
.IP "" 2
|
.IP "" 2
|
||||||
Local; don\(aqt descend subdirectories.
|
Local; don\(aqt descend subdirectories.
|
||||||
@ -3484,6 +3504,7 @@ These special options are also available with
|
|||||||
\fB-A\fR
|
\fB-A\fR
|
||||||
.IP "" 2
|
.IP "" 2
|
||||||
Reset any sticky tags, dates, or \fB-k\fR options.
|
Reset any sticky tags, dates, or \fB-k\fR options.
|
||||||
|
Does not reset sticky \fB-k\fR options on modified files.
|
||||||
See see node `Sticky tags\(aq in the CVS manual, for more information on sticky tags/dates.
|
See see node `Sticky tags\(aq in the CVS manual, for more information on sticky tags/dates.
|
||||||
.SP
|
.SP
|
||||||
.IP "" 0
|
.IP "" 0
|
||||||
@ -3572,7 +3593,7 @@ by one character indicating the status of the file:
|
|||||||
.IP "" 2
|
.IP "" 2
|
||||||
The file was brought up to date with respect to the
|
The file was brought up to date with respect to the
|
||||||
repository. This is done for any file that exists in
|
repository. This is done for any file that exists in
|
||||||
the repository but not in your source, and for files
|
the repository but not in your working directory, and for files
|
||||||
that you haven\(aqt changed but are not the most recent
|
that you haven\(aqt changed but are not the most recent
|
||||||
versions available in the repository.
|
versions available in the repository.
|
||||||
.SP
|
.SP
|
||||||
@ -3690,9 +3711,7 @@ to CVS, development of CVS, and more, see:
|
|||||||
.SP
|
.SP
|
||||||
.PD 0
|
.PD 0
|
||||||
.IP "" 4
|
.IP "" 4
|
||||||
.B http://cvshome.org
|
.B http://cvs.nongnu.org
|
||||||
.IP "" 4
|
|
||||||
.B http://www.loria.fr/~molli/cvs-index.html
|
|
||||||
.in -1i
|
.in -1i
|
||||||
.SP
|
.SP
|
||||||
.BR ci ( 1 ),
|
.BR ci ( 1 ),
|
||||||
|
@ -42,9 +42,7 @@ to CVS, development of CVS, and more, see:
|
|||||||
.SP
|
.SP
|
||||||
.PD 0
|
.PD 0
|
||||||
.IP "" 4
|
.IP "" 4
|
||||||
.B http://cvshome.org
|
.B http://cvs.nongnu.org
|
||||||
.IP "" 4
|
|
||||||
.B http://www.loria.fr/~molli/cvs-index.html
|
|
||||||
.in -1i
|
.in -1i
|
||||||
.SP
|
.SP
|
||||||
.BR ci ( 1 ),
|
.BR ci ( 1 ),
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
.\" cvs.man.header, cvs.texinfo, & cvs.man.footer files. Please make changes
|
.\" cvs.man.header, cvs.texinfo, & cvs.man.footer files. Please make changes
|
||||||
.\" there. A full copyright & license notice may also be found in cvs.texinfo.
|
.\" there. A full copyright & license notice may also be found in cvs.texinfo.
|
||||||
.\"
|
.\"
|
||||||
.\" Copyright 2004 The Free Software Foundation,
|
.\" Man page autogeneration, including this header file, is
|
||||||
.\" Derek R. Price,
|
.\" Copyright 2004-2005 The Free Software Foundation, Inc.,
|
||||||
.\" & Ximbiot <http://ximbiot.com>
|
.\" Derek R. Price, & Ximbiot <http://ximbiot.com>.
|
||||||
.\"
|
.\"
|
||||||
.\" This documentation is free software; you can redistribute it and/or modify
|
.\" This documentation is free software; you can redistribute it and/or modify
|
||||||
.\" it under the terms of the GNU General Public License as published by
|
.\" it under the terms of the GNU General Public License as published by
|
||||||
|
@ -4,13 +4,14 @@
|
|||||||
@macro copyleftnotice
|
@macro copyleftnotice
|
||||||
@noindent
|
@noindent
|
||||||
Copyright @copyright{} 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
Copyright @copyright{} 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||||
2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
2001, 2002, 2003, 2004, 2005
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
@multitable @columnfractions .12 .88
|
@multitable @columnfractions .12 .88
|
||||||
@item Portions
|
@item Portions
|
||||||
@item @tab Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004
|
@item @tab Copyright @copyright{} 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||||
Derek R. Price,
|
Derek R. Price,
|
||||||
@item @tab Copyright @copyright{} 2002, 2003, 2004
|
@item @tab Copyright @copyright{} 2002, 2003, 2004, 2005
|
||||||
Ximbiot @url{http://ximbiot.com},
|
Ximbiot @url{http://ximbiot.com},
|
||||||
@item @tab Copyright @copyright{} 1992, 1993, 1999 Signum Support AB,
|
@item @tab Copyright @copyright{} 1992, 1993, 1999 Signum Support AB,
|
||||||
@item @tab and Copyright @copyright{} others.
|
@item @tab and Copyright @copyright{} others.
|
||||||
@ -127,6 +128,10 @@ approved by the Free Software Foundation.
|
|||||||
@copyleftnotice
|
@copyleftnotice
|
||||||
@end titlepage
|
@end titlepage
|
||||||
|
|
||||||
|
@summarycontents
|
||||||
|
|
||||||
|
@contents
|
||||||
|
|
||||||
@comment ================================================================
|
@comment ================================================================
|
||||||
@comment The real text starts here
|
@comment The real text starts here
|
||||||
@comment ================================================================
|
@comment ================================================================
|
||||||
@ -232,7 +237,7 @@ versions.
|
|||||||
on the same project. It is all too easy to overwrite
|
on the same project. It is all too easy to overwrite
|
||||||
each others' changes unless you are extremely careful.
|
each others' changes unless you are extremely careful.
|
||||||
Some editors, like @sc{gnu} Emacs, try to make sure that
|
Some editors, like @sc{gnu} Emacs, try to make sure that
|
||||||
the same file is never modified by two people at the
|
two people never modify the same file at the
|
||||||
same time. Unfortunately, if someone is using another
|
same time. Unfortunately, if someone is using another
|
||||||
editor, that safeguard will not work. @sc{cvs} solves this problem
|
editor, that safeguard will not work. @sc{cvs} solves this problem
|
||||||
by insulating the different developers from each other. Every
|
by insulating the different developers from each other. Every
|
||||||
@ -261,21 +266,20 @@ free download from the Internet. For more information
|
|||||||
on downloading @sc{cvs} and other @sc{cvs} topics, see:
|
on downloading @sc{cvs} and other @sc{cvs} topics, see:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
@url{http://www.cvshome.org/}
|
@url{http://cvs.nongnu.org/}
|
||||||
@url{http://www.loria.fr/~molli/cvs-index.html}
|
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@cindex Mailing list
|
@cindex Mailing list
|
||||||
@cindex List, mailing list
|
@cindex List, mailing list
|
||||||
@cindex Newsgroups
|
@cindex Newsgroups
|
||||||
There is a mailing list, known as @email{info-cvs@@gnu.org},
|
There is a mailing list, known as @email{info-cvs@@nongnu.org},
|
||||||
devoted to @sc{cvs}. To subscribe or
|
devoted to @sc{cvs}. To subscribe or
|
||||||
unsubscribe
|
unsubscribe
|
||||||
write to
|
write to
|
||||||
@email{info-cvs-request@@gnu.org}.
|
@email{info-cvs-request@@nongnu.org}.
|
||||||
If you prefer a Usenet group, there is a one-way mirror (posts to the email
|
If you prefer a Usenet group, there is a one-way mirror (posts to the email
|
||||||
list are usually sent to the news group, but not visa versa) of
|
list are usually sent to the news group, but not vice versa) of
|
||||||
@email{info-cvs@@gnu.org} at @url{news:gnu.cvs.help}. The right
|
@email{info-cvs@@nongnu.org} at @url{news:gnu.cvs.help}. The right
|
||||||
Usenet group for posts is @url{news:comp.software.config-mgmt} which is for
|
Usenet group for posts is @url{news:comp.software.config-mgmt} which is for
|
||||||
@sc{cvs} discussions (along with other configuration
|
@sc{cvs} discussions (along with other configuration
|
||||||
management systems). In the future, it might be
|
management systems). In the future, it might be
|
||||||
@ -290,11 +294,11 @@ if there is sufficient @sc{cvs} traffic on
|
|||||||
@c would need to take a more comprehensive look at the
|
@c would need to take a more comprehensive look at the
|
||||||
@c whole comp.software.config-mgmt.* hierarchy).
|
@c whole comp.software.config-mgmt.* hierarchy).
|
||||||
|
|
||||||
You can also subscribe to the @email{bug-cvs@@gnu.org} mailing list,
|
You can also subscribe to the @email{bug-cvs@@nongnu.org} mailing list,
|
||||||
described in more detail in @ref{BUGS}. To subscribe
|
described in more detail in @ref{BUGS}. To subscribe
|
||||||
send mail to @email{bug-cvs-request@@gnu.org}. There is a two-way
|
send mail to @email{bug-cvs-request@@nongnu.org}. There is a two-way
|
||||||
Usenet mirror (posts to the Usenet group are usually sent to the email list and
|
Usenet mirror (posts to the Usenet group are usually sent to the email list and
|
||||||
visa versa) of @email{bug-cvs@@gnu.org} named @url{news:gnu.cvs.bug}.
|
vice versa) of @email{bug-cvs@@nongnu.org} named @url{news:gnu.cvs.bug}.
|
||||||
|
|
||||||
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
@node What is CVS not?
|
@node What is CVS not?
|
||||||
@ -1805,7 +1809,15 @@ It is possible to commit an erroneous administrative
|
|||||||
file. You can often fix the error and check in a new
|
file. You can often fix the error and check in a new
|
||||||
revision, but sometimes a particularly bad error in the
|
revision, but sometimes a particularly bad error in the
|
||||||
administrative file makes it impossible to commit new
|
administrative file makes it impossible to commit new
|
||||||
revisions.
|
revisions. If and when this happens, you can correct
|
||||||
|
the problem by temporarily copying a corrected administrative file
|
||||||
|
directly into the @code{$CVSROOT/CVSROOT} repository directory,
|
||||||
|
then committing the same correction via a checkout of the @file{CVSROOT}
|
||||||
|
module. It is important that the correction also be made via the
|
||||||
|
checked out copy, or the next checkout and commit to the
|
||||||
|
<code>CVSROOT</code> module will overwrite the correction that was
|
||||||
|
copied directly into the repository, possibly breaking things in such
|
||||||
|
a way as to prevent commits again.
|
||||||
@c @xref{Bad administrative files} for a hint
|
@c @xref{Bad administrative files} for a hint
|
||||||
@c about how to solve such situations.
|
@c about how to solve such situations.
|
||||||
@c -- administrative file checking--
|
@c -- administrative file checking--
|
||||||
@ -1866,6 +1878,13 @@ and server1, to update everything else.
|
|||||||
@cindex Creating a repository
|
@cindex Creating a repository
|
||||||
@cindex Setting up a repository
|
@cindex Setting up a repository
|
||||||
|
|
||||||
|
This section describes how to set up a @sc{cvs} repository for any
|
||||||
|
sort of access method. After completing the setup described in this
|
||||||
|
section, you should be able to access your @sc{cvs} repository immediately
|
||||||
|
via the local access method and several remote access methods. For
|
||||||
|
more information on setting up remote access to the repository you create
|
||||||
|
in this section, please read the section on @xref{Remote repositories}.
|
||||||
|
|
||||||
To set up a @sc{cvs} repository, first choose the
|
To set up a @sc{cvs} repository, first choose the
|
||||||
machine and disk on which you want to store the
|
machine and disk on which you want to store the
|
||||||
revision history of the source files. CPU and memory
|
revision history of the source files. CPU and memory
|
||||||
@ -3178,8 +3197,13 @@ $ cvs import -m "Created directory structure" yoyodyne/@var{dir} yoyo start
|
|||||||
This will add yoyodyne/@var{dir} as a directory under
|
This will add yoyodyne/@var{dir} as a directory under
|
||||||
@code{$CVSROOT}.
|
@code{$CVSROOT}.
|
||||||
|
|
||||||
Then, use @code{add} to add files (and new directories)
|
Use @code{checkout} to get the new project. Then, use @code{add}
|
||||||
as they appear.
|
to add files (and new directories) as needed.
|
||||||
|
|
||||||
|
@example
|
||||||
|
$ cd ..
|
||||||
|
$ cvs co yoyodyne/@var{dir}
|
||||||
|
@end example
|
||||||
|
|
||||||
Check that the permissions @sc{cvs} sets on the
|
Check that the permissions @sc{cvs} sets on the
|
||||||
directories inside @code{$CVSROOT} are reasonable.
|
directories inside @code{$CVSROOT} are reasonable.
|
||||||
@ -3817,7 +3841,8 @@ The sticky tags will remain on your working files until
|
|||||||
you delete them with @samp{cvs update -A}. The
|
you delete them with @samp{cvs update -A}. The
|
||||||
@samp{-A} option merges local changes into the version of the
|
@samp{-A} option merges local changes into the version of the
|
||||||
file from the head of the trunk, removing any sticky tags,
|
file from the head of the trunk, removing any sticky tags,
|
||||||
dates, or options. See @ref{update} for more on the operation
|
dates, or options (other than sticky @samp{-k} options on locally
|
||||||
|
modified files). See @ref{update} for more on the operation
|
||||||
of @code{cvs update}.
|
of @code{cvs update}.
|
||||||
|
|
||||||
@cindex Sticky date
|
@cindex Sticky date
|
||||||
@ -4605,6 +4630,13 @@ for this is to release the working directory after the merge has been
|
|||||||
committed and check it out again.
|
committed and check it out again.
|
||||||
@end ignore
|
@end ignore
|
||||||
|
|
||||||
|
As a result of using @samp{-kk} during the merge, each file examined by the
|
||||||
|
update will have @samp{-kk} set as sticky options. Running @code{update -A}
|
||||||
|
will clear the sticky options on unmodified files, but it will not clear
|
||||||
|
the sticky options on modified files. To get back to the default keyword
|
||||||
|
substitution for modified files, you must commit the results of the merge
|
||||||
|
and then run @code{update -A}.
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
@node Recursive behavior
|
@node Recursive behavior
|
||||||
@chapter Recursive behavior
|
@chapter Recursive behavior
|
||||||
@ -4971,7 +5003,7 @@ later merge the removals to another branch if you want
|
|||||||
@cindex Removing directories
|
@cindex Removing directories
|
||||||
@cindex Directories, removing
|
@cindex Directories, removing
|
||||||
|
|
||||||
In concept removing directories is somewhat similar to
|
In concept, removing directories is somewhat similar to
|
||||||
removing files---you want the directory to not exist in
|
removing files---you want the directory to not exist in
|
||||||
your current working directories, but you also want to
|
your current working directories, but you also want to
|
||||||
be able to retrieve old releases in which the directory
|
be able to retrieve old releases in which the directory
|
||||||
@ -4998,7 +5030,7 @@ removing it.
|
|||||||
@c need for -P and so that a file can be a directory in
|
@c need for -P and so that a file can be a directory in
|
||||||
@c one revision and a regular file in another.
|
@c one revision and a regular file in another.
|
||||||
Note that @samp{-P} is implied by the @samp{-r} or @samp{-D}
|
Note that @samp{-P} is implied by the @samp{-r} or @samp{-D}
|
||||||
options of @code{checkout}. This way
|
options of @code{checkout}. This way,
|
||||||
@sc{cvs} will be able to correctly create the directory
|
@sc{cvs} will be able to correctly create the directory
|
||||||
or not depending on whether the particular version you
|
or not depending on whether the particular version you
|
||||||
are checking out contains any files in that directory.
|
are checking out contains any files in that directory.
|
||||||
@ -5197,9 +5229,9 @@ like this:
|
|||||||
@enumerate
|
@enumerate
|
||||||
@item
|
@item
|
||||||
Inform everyone who has a checked out copy of the directory that the
|
Inform everyone who has a checked out copy of the directory that the
|
||||||
directory will be renamed. They should commit all
|
directory will be renamed. They should commit all their changes in all their
|
||||||
their changes, and remove their working copies,
|
copies of the project containing the directory to be removed, and remove
|
||||||
before you take the steps below.
|
all their working copies of said project, before you take the steps below.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Rename the directory inside the repository.
|
Rename the directory inside the repository.
|
||||||
@ -5938,10 +5970,12 @@ these options, see @ref{Invoking CVS}.
|
|||||||
@cindex Merging a file
|
@cindex Merging a file
|
||||||
@cindex Update, introduction
|
@cindex Update, introduction
|
||||||
|
|
||||||
When you want to update or merge a file, use the @code{update}
|
When you want to update or merge a file, use the @code{cvs update -d}
|
||||||
command. For files that are not up to date this is roughly equivalent
|
command. For files that are not up to date this is roughly equivalent
|
||||||
to a @code{checkout} command: the newest revision of the file is
|
to a @code{checkout} command: the newest revision of the file is
|
||||||
extracted from the repository and put in your working directory.
|
extracted from the repository and put in your working directory. The
|
||||||
|
@code{-d} option, not necessary with @code{checkout}, tells @sc{cvs}
|
||||||
|
that you wish it to create directories added by other developers.
|
||||||
|
|
||||||
Your modifications to a file are never lost when you
|
Your modifications to a file are never lost when you
|
||||||
use @code{update}. If no newer revision exists,
|
use @code{update}. If no newer revision exists,
|
||||||
@ -6978,8 +7012,10 @@ each working directory copy of a file also has a
|
|||||||
substitution mode. The former is set by the @samp{-k}
|
substitution mode. The former is set by the @samp{-k}
|
||||||
option to @code{cvs add} and @code{cvs admin}; the
|
option to @code{cvs add} and @code{cvs admin}; the
|
||||||
latter is set by the @samp{-k} or @samp{-A} options to @code{cvs
|
latter is set by the @samp{-k} or @samp{-A} options to @code{cvs
|
||||||
checkout} or @code{cvs update}. @code{cvs diff} also
|
checkout} or @code{cvs update}.
|
||||||
has a @samp{-k} option. For some examples,
|
@code{cvs diff} and @code{cvs rdiff} also
|
||||||
|
have @samp{-k} options.
|
||||||
|
For some examples,
|
||||||
see @ref{Binary files}, and @ref{Merging and keywords}.
|
see @ref{Binary files}, and @ref{Merging and keywords}.
|
||||||
@c The fact that -A is overloaded to mean both reset
|
@c The fact that -A is overloaded to mean both reset
|
||||||
@c sticky options and reset sticky tags/dates is
|
@c sticky options and reset sticky tags/dates is
|
||||||
@ -7198,6 +7234,9 @@ $ cd wdiff-0.05
|
|||||||
$ cvs import -m "Import of FSF v. 0.05" fsf/wdiff FSF_DIST WDIFF_0_05
|
$ cvs import -m "Import of FSF v. 0.05" fsf/wdiff FSF_DIST WDIFF_0_05
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
@strong{WARNING: If you use a release tag that already exists in one of the
|
||||||
|
repository archives, files removed by an import may not be detected.}
|
||||||
|
|
||||||
For files that have not been modified locally, the newly created
|
For files that have not been modified locally, the newly created
|
||||||
revision becomes the head revision. If you have made local
|
revision becomes the head revision. If you have made local
|
||||||
changes, @code{import} will warn you that you must merge the changes
|
changes, @code{import} will warn you that you must merge the changes
|
||||||
@ -7409,7 +7448,7 @@ for other files to access source files from a central
|
|||||||
location. Many people have come up with some such a
|
location. Many people have come up with some such a
|
||||||
@c two such people are paul@sander.cupertino.ca.us (for
|
@c two such people are paul@sander.cupertino.ca.us (for
|
||||||
@c a previous employer)
|
@c a previous employer)
|
||||||
@c and gtornblo@senet.abb.se (spicm and related tools),
|
@c and gunnar.tornblom@se.abb.com (spicm and related tools),
|
||||||
@c but as far as I know
|
@c but as far as I know
|
||||||
@c no one has nicely packaged or released such a system (or
|
@c no one has nicely packaged or released such a system (or
|
||||||
@c instructions for constructing one).
|
@c instructions for constructing one).
|
||||||
@ -7909,7 +7948,7 @@ option as in other commands. (Other command options,
|
|||||||
which are listed with the individual commands, may have
|
which are listed with the individual commands, may have
|
||||||
different behavior from one @sc{cvs} command to the other).
|
different behavior from one @sc{cvs} command to the other).
|
||||||
|
|
||||||
@strong{Note: the @samp{history} command is an exception; it supports
|
@strong{The @samp{history} command is an exception; it supports
|
||||||
many options that conflict even with these standard options.}
|
many options that conflict even with these standard options.}
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@ -8131,7 +8170,7 @@ file, and continues to use it with future update
|
|||||||
commands on the same file until you specify otherwise.
|
commands on the same file until you specify otherwise.
|
||||||
|
|
||||||
The @samp{-k} option is available with the @code{add},
|
The @samp{-k} option is available with the @code{add},
|
||||||
@code{checkout}, @code{diff}, @code{import} and
|
@code{checkout}, @code{diff}, @code{rdiff}, @code{import} and
|
||||||
@code{update} commands.
|
@code{update} commands.
|
||||||
|
|
||||||
@item -l
|
@item -l
|
||||||
@ -8158,10 +8197,10 @@ Do not run any tag program. (A program can be
|
|||||||
specified to run in the modules
|
specified to run in the modules
|
||||||
database (@pxref{modules}); this option bypasses it).
|
database (@pxref{modules}); this option bypasses it).
|
||||||
|
|
||||||
@strong{Note: this is not the same as the @samp{cvs -n}
|
@strong{This is not the same as the @samp{cvs -n}
|
||||||
program option, which you can specify to the left of a cvs command!}
|
program option, which you can specify to the left of a cvs command!}
|
||||||
|
|
||||||
Available with the @code{checkout}, @code{commit}, @code{export},
|
Available with the @code{checkout}, @code{export},
|
||||||
and @code{rtag} commands.
|
and @code{rtag} commands.
|
||||||
|
|
||||||
@item -P
|
@item -P
|
||||||
@ -8224,17 +8263,20 @@ on sticky tags/dates, @pxref{Sticky tags}).
|
|||||||
The tag can be either a symbolic or numeric tag, as
|
The tag can be either a symbolic or numeric tag, as
|
||||||
described in @ref{Tags}, or the name of a branch, as
|
described in @ref{Tags}, or the name of a branch, as
|
||||||
described in @ref{Branching and merging}.
|
described in @ref{Branching and merging}.
|
||||||
|
When a command expects a specific revision,
|
||||||
|
the name of a branch is interpreted as the most recent
|
||||||
|
revision on that branch.
|
||||||
|
|
||||||
Specifying the @samp{-q} global option along with the
|
Specifying the @samp{-q} global option along with the
|
||||||
@samp{-r} command option is often useful, to suppress
|
@samp{-r} command option is often useful, to suppress
|
||||||
the warning messages when the @sc{rcs} file
|
the warning messages when the @sc{rcs} file
|
||||||
does not contain the specified tag.
|
does not contain the specified tag.
|
||||||
|
|
||||||
@strong{Note: this is not the same as the overall @samp{cvs -r} option,
|
@strong{This is not the same as the overall @samp{cvs -r} option,
|
||||||
which you can specify to the left of a @sc{cvs} command!}
|
which you can specify to the left of a @sc{cvs} command!}
|
||||||
|
|
||||||
@samp{-r} is available with the @code{checkout}, @code{commit},
|
@samp{-r} is available with the @code{annotate}, @code{checkout},
|
||||||
@code{diff}, @code{history}, @code{export}, @code{rdiff},
|
@code{commit}, @code{diff}, @code{history}, @code{export}, @code{rdiff},
|
||||||
@code{rtag}, and @code{update} commands.
|
@code{rtag}, and @code{update} commands.
|
||||||
|
|
||||||
@item -W
|
@item -W
|
||||||
@ -8539,10 +8581,10 @@ it is created. The state is visible in the output from
|
|||||||
@var{cvs log} (@pxref{log}), and in the
|
@var{cvs log} (@pxref{log}), and in the
|
||||||
@samp{$@splitrcskeyword{Log}$} and @samp{$@splitrcskeyword{State}$} keywords
|
@samp{$@splitrcskeyword{Log}$} and @samp{$@splitrcskeyword{State}$} keywords
|
||||||
(@pxref{Keyword substitution}). Note that @sc{cvs}
|
(@pxref{Keyword substitution}). Note that @sc{cvs}
|
||||||
uses the @code{dead} state for its own purposes; to
|
uses the @code{dead} state for its own purposes (@pxref{Attic}); to
|
||||||
take a file to or from the @code{dead} state use
|
take a file to or from the @code{dead} state use
|
||||||
commands like @code{cvs remove} and @code{cvs add}, not
|
commands like @code{cvs remove} and @code{cvs add}
|
||||||
@code{cvs admin -s}.
|
(@pxref{Adding and removing}), not @code{cvs admin -s}.
|
||||||
|
|
||||||
@item -t[@var{file}]
|
@item -t[@var{file}]
|
||||||
Useful with @sc{cvs}. Write descriptive text from the
|
Useful with @sc{cvs}. Write descriptive text from the
|
||||||
@ -8835,6 +8877,7 @@ options with @code{checkout}:
|
|||||||
@table @code
|
@table @code
|
||||||
@item -A
|
@item -A
|
||||||
Reset any sticky tags, dates, or @samp{-k} options.
|
Reset any sticky tags, dates, or @samp{-k} options.
|
||||||
|
Does not reset sticky @samp{-k} options on modified files.
|
||||||
See @ref{Sticky tags}, for more information on sticky tags/dates.
|
See @ref{Sticky tags}, for more information on sticky tags/dates.
|
||||||
|
|
||||||
@item -c
|
@item -c
|
||||||
@ -8932,7 +8975,7 @@ $ cvs checkout -D yesterday tc
|
|||||||
|
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
Synopsis: commit [-lnRf] [-m 'log_message' |
|
Synopsis: commit [-lRf] [-m 'log_message' |
|
||||||
-F file] [-r revision] [files@dots{}]
|
-F file] [-r revision] [files@dots{}]
|
||||||
@item
|
@item
|
||||||
Requires: working directory, repository.
|
Requires: working directory, repository.
|
||||||
@ -9872,7 +9915,7 @@ various formats.
|
|||||||
Logging must be enabled by creating the file
|
Logging must be enabled by creating the file
|
||||||
@file{$CVSROOT/CVSROOT/history}.
|
@file{$CVSROOT/CVSROOT/history}.
|
||||||
|
|
||||||
@strong{Note: @code{history} uses @samp{-f}, @samp{-l},
|
@strong{@code{history} uses @samp{-f}, @samp{-l},
|
||||||
@samp{-n}, and @samp{-p} in ways that conflict with the
|
@samp{-n}, and @samp{-p} in ways that conflict with the
|
||||||
normal use inside @sc{cvs} (@pxref{Common options}).}
|
normal use inside @sc{cvs} (@pxref{Common options}).}
|
||||||
|
|
||||||
@ -10091,8 +10134,10 @@ At least three arguments are required.
|
|||||||
@var{repository} is needed to identify the collection
|
@var{repository} is needed to identify the collection
|
||||||
of source. @var{vendortag} is a tag for the entire
|
of source. @var{vendortag} is a tag for the entire
|
||||||
branch (e.g., for 1.1.1). You must also specify at
|
branch (e.g., for 1.1.1). You must also specify at
|
||||||
least one @var{releasetag} to identify the files at
|
least one @var{releasetag} to uniquely identify the files at
|
||||||
the leaves created each time you execute @code{import}.
|
the leaves created each time you execute @code{import}. The
|
||||||
|
@var{releasetag} should be new, not previously existing in the
|
||||||
|
repository file, and uniquely identify the imported release,
|
||||||
|
|
||||||
@c I'm not completely sure this belongs here. But
|
@c I'm not completely sure this belongs here. But
|
||||||
@c we need to say it _somewhere_ reasonably obvious; it
|
@c we need to say it _somewhere_ reasonably obvious; it
|
||||||
@ -10247,7 +10292,7 @@ Coordinated Universal Time (UTC). (Other parts of
|
|||||||
@c client then communicates to the server, is the
|
@c client then communicates to the server, is the
|
||||||
@c right solution.
|
@c right solution.
|
||||||
|
|
||||||
@strong{Note: @code{log} uses @samp{-R} in a way that conflicts
|
@strong{@code{log} uses @samp{-R} in a way that conflicts
|
||||||
with the normal use inside @sc{cvs} (@pxref{Common options}).}
|
with the normal use inside @sc{cvs} (@pxref{Common options}).}
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
@ -10260,7 +10305,12 @@ with the normal use inside @sc{cvs} (@pxref{Common options}).}
|
|||||||
@appendixsubsec log options
|
@appendixsubsec log options
|
||||||
|
|
||||||
By default, @code{log} prints all information that is
|
By default, @code{log} prints all information that is
|
||||||
available. All other options restrict the output.
|
available. All other options restrict the output. Note that the revision
|
||||||
|
selection options (@code{-d}, @code{-r}, @code{-s}, and @code{-w}) have no
|
||||||
|
effect, other than possibly causing a search for files in Attic directories,
|
||||||
|
when used in conjunction with the options that restrict the output to only
|
||||||
|
@code{log} header fields (@code{-b}, @code{-h}, @code{-R}, and @code{-t})
|
||||||
|
unless the @code{-S} option is also specified.
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
@item -b
|
@item -b
|
||||||
@ -10391,7 +10441,10 @@ Suppress the header if no revisions are selected.
|
|||||||
@item -s @var{states}
|
@item -s @var{states}
|
||||||
Print information about revisions whose state
|
Print information about revisions whose state
|
||||||
attributes match one of the states given in the
|
attributes match one of the states given in the
|
||||||
comma-separated list @var{states}.
|
comma-separated list @var{states}. Individual states may
|
||||||
|
be any text string, though @sc{cvs} commonly only uses two
|
||||||
|
states, @samp{Exp} and @samp{dead}. See @ref{admin options}
|
||||||
|
for more information.
|
||||||
|
|
||||||
@item -t
|
@item -t
|
||||||
Print the same as @samp{-h}, plus the descriptive text.
|
Print the same as @samp{-h}, plus the descriptive text.
|
||||||
@ -10473,6 +10526,10 @@ Use the most recent revision no later than @var{date}.
|
|||||||
If no matching revision is found, retrieve the most
|
If no matching revision is found, retrieve the most
|
||||||
recent revision (instead of ignoring the file).
|
recent revision (instead of ignoring the file).
|
||||||
|
|
||||||
|
@item -k @var{kflag}
|
||||||
|
Process keywords according to @var{kflag}. See
|
||||||
|
@ref{Keyword substitution}.
|
||||||
|
|
||||||
@item -l
|
@item -l
|
||||||
Local; don't descend subdirectories.
|
Local; don't descend subdirectories.
|
||||||
|
|
||||||
@ -10746,6 +10803,7 @@ These special options are also available with
|
|||||||
@table @code
|
@table @code
|
||||||
@item -A
|
@item -A
|
||||||
Reset any sticky tags, dates, or @samp{-k} options.
|
Reset any sticky tags, dates, or @samp{-k} options.
|
||||||
|
Does not reset sticky @samp{-k} options on modified files.
|
||||||
See @ref{Sticky tags}, for more information on sticky tags/dates.
|
See @ref{Sticky tags}, for more information on sticky tags/dates.
|
||||||
|
|
||||||
@item -C
|
@item -C
|
||||||
@ -10826,7 +10884,7 @@ by one character indicating the status of the file:
|
|||||||
@item U @var{file}
|
@item U @var{file}
|
||||||
The file was brought up to date with respect to the
|
The file was brought up to date with respect to the
|
||||||
repository. This is done for any file that exists in
|
repository. This is done for any file that exists in
|
||||||
the repository but not in your source, and for files
|
the repository but not in your working directory, and for files
|
||||||
that you haven't changed but are not the most recent
|
that you haven't changed but are not the most recent
|
||||||
versions available in the repository.
|
versions available in the repository.
|
||||||
|
|
||||||
@ -11074,7 +11132,8 @@ Delete revisions from the repository. See
|
|||||||
Run quietly; do not print diagnostics.
|
Run quietly; do not print diagnostics.
|
||||||
|
|
||||||
@item -s@var{state}[:@var{rev}]
|
@item -s@var{state}[:@var{rev}]
|
||||||
Set the state.
|
Set the state. See @ref{admin options} for more information on possible
|
||||||
|
states.
|
||||||
|
|
||||||
@c Does not work for client/server CVS
|
@c Does not work for client/server CVS
|
||||||
@item -t
|
@item -t
|
||||||
@ -11853,6 +11912,8 @@ file, which defines the modules inside the repository.
|
|||||||
@menu
|
@menu
|
||||||
* modules:: Defining modules
|
* modules:: Defining modules
|
||||||
* Wrappers:: Specify binary-ness based on file name
|
* Wrappers:: Specify binary-ness based on file name
|
||||||
|
* Trigger Scripts:: Some notes on the commit support files and
|
||||||
|
taginfo, referenced below.
|
||||||
* commit files:: The commit support files (commitinfo,
|
* commit files:: The commit support files (commitinfo,
|
||||||
verifymsg, editinfo, loginfo)
|
verifymsg, editinfo, loginfo)
|
||||||
* taginfo:: Verifying/Logging tags
|
* taginfo:: Verifying/Logging tags
|
||||||
@ -12349,59 +12410,26 @@ cvs import -I ! -W "*.exe -k 'b'" first-dir vendortag reltag
|
|||||||
@c One catch--"cvs diff" will not invoke the wrappers
|
@c One catch--"cvs diff" will not invoke the wrappers
|
||||||
@c (probably a CVS bug, although I haven't thought it out).
|
@c (probably a CVS bug, although I haven't thought it out).
|
||||||
|
|
||||||
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
@c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
@node commit files
|
@node Trigger Scripts
|
||||||
@appendixsec The commit support files
|
@appendixsec The Trigger Scripts
|
||||||
@cindex Committing, administrative support files
|
@cindex Info files
|
||||||
|
@cindex Trigger scripts
|
||||||
|
|
||||||
The @samp{-i} flag in the @file{modules} file can be
|
Several of the administrative files support triggers, or the launching external
|
||||||
used to run a certain program whenever files are
|
scripts or programs at specific times before or after particular events. The
|
||||||
committed (@pxref{modules}). The files described in
|
individual files are discussed in the later sections, @ref{commit files} and
|
||||||
this section provide other, more flexible, ways to run
|
@ref{taginfo}, but some of the common elements are discussed here.
|
||||||
programs whenever something is committed.
|
|
||||||
|
|
||||||
There are three kinds of programs that can be run on
|
All the trigger scripts are launched in a copy of the user sandbox being
|
||||||
commit. They are specified in files in the repository,
|
committed, on the server, in client-server mode. In local mode, the scripts
|
||||||
as described below. The following table summarizes the
|
are actually launched directly from the user sandbox directory being committed.
|
||||||
file names and the purpose of the corresponding
|
For most intents and purposes, the same scripts can be run in both locations
|
||||||
programs.
|
without alteration.
|
||||||
|
|
||||||
@table @file
|
|
||||||
@item commitinfo
|
|
||||||
The program is responsible for checking that the commit
|
|
||||||
is allowed. If it exits with a non-zero exit status
|
|
||||||
the commit will be aborted.
|
|
||||||
|
|
||||||
@item verifymsg
|
|
||||||
The specified program is used to evaluate the log message,
|
|
||||||
and possibly verify that it contains all required
|
|
||||||
fields. This is most useful in combination with the
|
|
||||||
@file{rcsinfo} file, which can hold a log message
|
|
||||||
template (@pxref{rcsinfo}).
|
|
||||||
|
|
||||||
@item editinfo
|
|
||||||
The specified program is used to edit the log message,
|
|
||||||
and possibly verify that it contains all required
|
|
||||||
fields. This is most useful in combination with the
|
|
||||||
@file{rcsinfo} file, which can hold a log message
|
|
||||||
template (@pxref{rcsinfo}). (obsolete)
|
|
||||||
|
|
||||||
@item loginfo
|
|
||||||
The specified program is called when the commit is
|
|
||||||
complete. It receives the log message and some
|
|
||||||
additional information and can store the log message in
|
|
||||||
a file, or mail it to appropriate persons, or maybe
|
|
||||||
post it to a local newsgroup, or@dots{} Your
|
|
||||||
imagination is the limit!
|
|
||||||
@end table
|
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* syntax:: The common syntax
|
* syntax:: The common syntax
|
||||||
* commitinfo:: Pre-commit checking
|
* Trigger Script Security:: Trigger script security
|
||||||
* verifymsg:: How are log messages evaluated?
|
|
||||||
* editinfo:: Specifying how log messages are created
|
|
||||||
(obsolete)
|
|
||||||
* loginfo:: Where should log messages be sent?
|
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
@c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
@ -12466,6 +12494,78 @@ is used as a file name or command-line as appropriate.
|
|||||||
@c unambiguous but there is nothing like an example to
|
@c unambiguous but there is nothing like an example to
|
||||||
@c confirm people's understanding of this sort of thing).
|
@c confirm people's understanding of this sort of thing).
|
||||||
|
|
||||||
|
@c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
|
@node Trigger Script Security
|
||||||
|
@appendixsubsec Security and the Trigger Scripts
|
||||||
|
@cindex Info files, security
|
||||||
|
@cindex Trigger scripts, security
|
||||||
|
|
||||||
|
Security is a huge subject, and implementing a secure system is a non-trivial
|
||||||
|
task. This section will barely touch on all the issues involved, but it is
|
||||||
|
well to note that, as with any script you will be allowing an untrusted
|
||||||
|
user to run on your server, there are measures you can take to help prevent
|
||||||
|
your trigger scripts from being abused.
|
||||||
|
|
||||||
|
For instance, since the CVS trigger scripts all run in a copy of the user's
|
||||||
|
sandbox on the server, a naively coded Perl trigger script which attempts to
|
||||||
|
use a Perl module that is not installed on the system can be hijacked by any
|
||||||
|
user with commit access who is checking in a file with the correct name. Other
|
||||||
|
scripting languages may be vulnerable to similar hacks.
|
||||||
|
|
||||||
|
One way to make a script more secure, at least with Perl, is to use scripts
|
||||||
|
which invoke the @code{-T}, or "taint-check" switch on their @code{#!} line.
|
||||||
|
In the most basic terms, this causes Perl to avoid running code that may have
|
||||||
|
come from an external source. Please run the @code{perldoc perlsec} command
|
||||||
|
for more on Perl security. Again, other languages may implement other security
|
||||||
|
verification hooks which look more or less like Perl's "taint-check" mechanism.
|
||||||
|
|
||||||
|
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
@node commit files
|
||||||
|
@appendixsec The commit support files
|
||||||
|
@cindex Committing, administrative support files
|
||||||
|
|
||||||
|
There are three kinds of trigger scripts (@pxref{Trigger Scripts}) that can be
|
||||||
|
run at various times during a commit. They are specified in files in the
|
||||||
|
repository, as described below. The following table summarizes the
|
||||||
|
file names and the purpose of the corresponding programs.
|
||||||
|
|
||||||
|
@table @file
|
||||||
|
@item commitinfo
|
||||||
|
The program is responsible for checking that the commit
|
||||||
|
is allowed. If it exits with a non-zero exit status
|
||||||
|
the commit will be aborted.
|
||||||
|
|
||||||
|
@item verifymsg
|
||||||
|
The specified program is used to evaluate the log message,
|
||||||
|
and possibly verify that it contains all required
|
||||||
|
fields. This is most useful in combination with the
|
||||||
|
@file{rcsinfo} file, which can hold a log message
|
||||||
|
template (@pxref{rcsinfo}).
|
||||||
|
|
||||||
|
@item editinfo
|
||||||
|
The specified program is used to edit the log message,
|
||||||
|
and possibly verify that it contains all required
|
||||||
|
fields. This is most useful in combination with the
|
||||||
|
@file{rcsinfo} file, which can hold a log message
|
||||||
|
template (@pxref{rcsinfo}). (obsolete)
|
||||||
|
|
||||||
|
@item loginfo
|
||||||
|
The specified program is called when the commit is
|
||||||
|
complete. It receives the log message and some
|
||||||
|
additional information and can store the log message in
|
||||||
|
a file, or mail it to appropriate persons, or maybe
|
||||||
|
post it to a local newsgroup, or@dots{} Your
|
||||||
|
imagination is the limit!
|
||||||
|
@end table
|
||||||
|
|
||||||
|
@menu
|
||||||
|
* commitinfo:: Pre-commit checking
|
||||||
|
* verifymsg:: How are log messages evaluated?
|
||||||
|
* editinfo:: Specifying how log messages are created
|
||||||
|
(obsolete)
|
||||||
|
* loginfo:: Where should log messages be sent?
|
||||||
|
@end menu
|
||||||
|
|
||||||
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
@node commitinfo
|
@node commitinfo
|
||||||
@appendixsubsec Commitinfo
|
@appendixsubsec Commitinfo
|
||||||
@ -12694,7 +12794,7 @@ RereadLogAfterVerify=always
|
|||||||
@cindex Per-module editor
|
@cindex Per-module editor
|
||||||
@cindex Log messages, editing
|
@cindex Log messages, editing
|
||||||
|
|
||||||
@strong{Note: The @file{editinfo} feature has been
|
@strong{The @file{editinfo} feature has been
|
||||||
rendered obsolete. To set a default editor for log
|
rendered obsolete. To set a default editor for log
|
||||||
messages use the @code{CVSEDITOR}, @code{EDITOR} environment variables
|
messages use the @code{CVSEDITOR}, @code{EDITOR} environment variables
|
||||||
(@pxref{Environment variables}) or the @samp{-e} global
|
(@pxref{Environment variables}) or the @samp{-e} global
|
||||||
@ -13046,9 +13146,9 @@ directory.
|
|||||||
The @file{taginfo} file defines programs to execute
|
The @file{taginfo} file defines programs to execute
|
||||||
when someone executes a @code{tag} or @code{rtag}
|
when someone executes a @code{tag} or @code{rtag}
|
||||||
command. The @file{taginfo} file has the standard form
|
command. The @file{taginfo} file has the standard form
|
||||||
for administrative files (@pxref{syntax}),
|
for trigger scripts (@pxref{Trigger Scripts}),
|
||||||
where each line is a regular expression
|
where each line is a regular expression
|
||||||
followed by a command to execute. The arguments passed
|
followed by a command to execute (@pxref{syntax}). The arguments passed
|
||||||
to the command are, in order, the @var{tagname},
|
to the command are, in order, the @var{tagname},
|
||||||
@var{operation} (@code{add} for @code{tag},
|
@var{operation} (@code{add} for @code{tag},
|
||||||
@code{mov} for @code{tag -F}, and @code{del} for
|
@code{mov} for @code{tag -F}, and @code{del} for
|
||||||
@ -13490,7 +13590,7 @@ that the file should be checked with the file system
|
|||||||
@samp{stat()} function to see if it has changed (see warning below)
|
@samp{stat()} function to see if it has changed (see warning below)
|
||||||
before rereading. The default value is @samp{always}.
|
before rereading. The default value is @samp{always}.
|
||||||
|
|
||||||
@strong{Note: the `stat' mode can cause CVS to pause for up to
|
@strong{The `stat' mode can cause CVS to pause for up to
|
||||||
one extra second per directory committed. This can be less IO and
|
one extra second per directory committed. This can be less IO and
|
||||||
CPU intensive but is not recommended for use with large repositories}
|
CPU intensive but is not recommended for use with large repositories}
|
||||||
|
|
||||||
@ -14092,6 +14192,19 @@ logged in as "root". (You can disable this option by passing the
|
|||||||
On some systems this means editing the appropriate @file{config.h} file
|
On some systems this means editing the appropriate @file{config.h} file
|
||||||
before building @sc{cvs}.)
|
before building @sc{cvs}.)
|
||||||
|
|
||||||
|
@item Terminated with fatal signal 11
|
||||||
|
This message usually indicates that @sc{cvs} (the server, if you're
|
||||||
|
using client/server mode) has run out of (virtual) memory.
|
||||||
|
Although @sc{cvs} tries to catch the error and issue a more meaningful
|
||||||
|
message, there are many circumstances where that is not possible.
|
||||||
|
If you appear to have lots of memory available to the system,
|
||||||
|
the problem is most likely that you're running into a system-wide
|
||||||
|
limit on the amount of memory a single process can use or a
|
||||||
|
similar process-specific limit.
|
||||||
|
The mechanisms for displaying and setting such limits vary from
|
||||||
|
system to system, so you'll have to consult an expert for your
|
||||||
|
particular system if you don't know how to do that.
|
||||||
|
|
||||||
@item Too many arguments!
|
@item Too many arguments!
|
||||||
This message is typically printed by the @file{log.pl}
|
This message is typically printed by the @file{log.pl}
|
||||||
script which is in the @file{contrib} directory in the
|
script which is in the @file{contrib} directory in the
|
||||||
@ -14182,9 +14295,21 @@ vi $*
|
|||||||
exit 0
|
exit 0
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@c "warning: foo was lost" and "no longer pertinent" (both normal).
|
@item cvs update: warning: @var{file} was lost
|
||||||
@c Would be nice to write these up--they are
|
This means that the working copy of @var{file} has been deleted
|
||||||
@c potentially confusing for the new user.
|
but it has not been removed from @sc{cvs}.
|
||||||
|
This is nothing to be concerned about,
|
||||||
|
the update will just recreate the local file from the repository.
|
||||||
|
(This is a convenient way to discard local changes to a file:
|
||||||
|
just delete it and then run @code{cvs update}.)
|
||||||
|
|
||||||
|
@item cvs update: warning: @var{file} is not (any longer) pertinent
|
||||||
|
This means that the working copy of @var{file} has been deleted,
|
||||||
|
it has not been removed from @sc{cvs} in the current working directory,
|
||||||
|
but it has been removed from @sc{cvs} in some other working directory.
|
||||||
|
This is nothing to be concerned about,
|
||||||
|
the update would have removed the local file anyway.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@node Connection
|
@node Connection
|
||||||
@ -14449,12 +14574,11 @@ distribution. It contains much more information on the
|
|||||||
process of submitting fixes.
|
process of submitting fixes.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
There may be resources on the net which can help. Two
|
There may be resources on the net which can help. A
|
||||||
good places to start are:
|
good place to start is:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
@url{http://www.cvshome.org}
|
@url{http://cvs.nongnu.org/}
|
||||||
@url{http://www.loria.fr/~molli/cvs-index.html}
|
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
If you are so inspired, increasing the information
|
If you are so inspired, increasing the information
|
||||||
@ -14467,7 +14591,7 @@ page on mailing lists or newsgroups when the subject
|
|||||||
came up.
|
came up.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
It is also possible to report bugs to @email{bug-cvs@@gnu.org}.
|
It is also possible to report bugs to @email{bug-cvs@@nongnu.org}.
|
||||||
Note that someone may or may not want to do anything
|
Note that someone may or may not want to do anything
|
||||||
with your bug report---if you need a solution consider
|
with your bug report---if you need a solution consider
|
||||||
one of the options mentioned above. People probably do
|
one of the options mentioned above. People probably do
|
||||||
@ -14476,20 +14600,20 @@ in consequences and/or easy to fix, however. You can
|
|||||||
also increase your odds by being as clear as possible
|
also increase your odds by being as clear as possible
|
||||||
about the exact nature of the bug and any other
|
about the exact nature of the bug and any other
|
||||||
relevant information. The way to report bugs is to
|
relevant information. The way to report bugs is to
|
||||||
send email to @email{bug-cvs@@gnu.org}. Note
|
send email to @email{bug-cvs@@nongnu.org}. Note
|
||||||
that submissions to @email{bug-cvs@@gnu.org} may be distributed
|
that submissions to @email{bug-cvs@@nongnu.org} may be distributed
|
||||||
under the terms of the @sc{gnu} Public License, so if
|
under the terms of the @sc{gnu} Public License, so if
|
||||||
you don't like this, don't submit them. There is
|
you don't like this, don't submit them. There is
|
||||||
usually no justification for sending mail directly to
|
usually no justification for sending mail directly to
|
||||||
one of the @sc{cvs} maintainers rather than to
|
one of the @sc{cvs} maintainers rather than to
|
||||||
@email{bug-cvs@@gnu.org}; those maintainers who want to hear
|
@email{bug-cvs@@nongnu.org}; those maintainers who want to hear
|
||||||
about such bug reports read @email{bug-cvs@@gnu.org}. Also note
|
about such bug reports read @email{bug-cvs@@nongnu.org}. Also note
|
||||||
that sending a bug report to other mailing lists or
|
that sending a bug report to other mailing lists or
|
||||||
newsgroups is @emph{not} a substitute for sending it to
|
newsgroups is @emph{not} a substitute for sending it to
|
||||||
@email{bug-cvs@@gnu.org}. It is fine to discuss @sc{cvs} bugs on
|
@email{bug-cvs@@nongnu.org}. It is fine to discuss @sc{cvs} bugs on
|
||||||
whatever forum you prefer, but there are not
|
whatever forum you prefer, but there are not
|
||||||
necessarily any maintainers reading bug reports sent
|
necessarily any maintainers reading bug reports sent
|
||||||
anywhere except @email{bug-cvs@@gnu.org}.
|
anywhere except @email{bug-cvs@@nongnu.org}.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
@cindex Known bugs in this manual or CVS
|
@cindex Known bugs in this manual or CVS
|
||||||
@ -14507,10 +14631,6 @@ comprehensive, detailed list of known bugs.
|
|||||||
|
|
||||||
@printindex cp
|
@printindex cp
|
||||||
|
|
||||||
@summarycontents
|
|
||||||
|
|
||||||
@contents
|
|
||||||
|
|
||||||
@bye
|
@bye
|
||||||
|
|
||||||
Local Variables:
|
Local Variables:
|
||||||
|
@ -82,7 +82,7 @@ It does not depend on NFS, rdist, etc.
|
|||||||
@item
|
@item
|
||||||
Providing a reliable transport is outside this protocol. The protocol
|
Providing a reliable transport is outside this protocol. The protocol
|
||||||
expects a reliable transport that is transparent (that is, there is no
|
expects a reliable transport that is transparent (that is, there is no
|
||||||
translation of characters, including characters such as such as
|
translation of characters, including characters such as
|
||||||
linefeeds or carriage returns), and can transmit all 256 octets (for
|
linefeeds or carriage returns), and can transmit all 256 octets (for
|
||||||
example for proper handling of binary files, compression, and
|
example for proper handling of binary files, compression, and
|
||||||
encryption). The encoding of characters specified by the protocol (the
|
encryption). The encoding of characters specified by the protocol (the
|
||||||
@ -535,12 +535,13 @@ Here are the requests:
|
|||||||
@table @code
|
@table @code
|
||||||
@item Root @var{pathname} \n
|
@item Root @var{pathname} \n
|
||||||
Response expected: no. Tell the server which @code{CVSROOT} to use.
|
Response expected: no. Tell the server which @code{CVSROOT} to use.
|
||||||
Note that @var{pathname} is a local directory and @emph{not} a fully
|
Note that @var{pathname} is @emph{not} a fully qualified @code{CVSROOT}
|
||||||
qualified @code{CVSROOT} variable. @var{pathname} must
|
variable, but only the local directory part of it. @var{pathname} must
|
||||||
already exist; if creating a new root, use the @code{init} request, not
|
already exist on the server; if creating a new root, use the @code{init}
|
||||||
@code{Root}. @var{pathname} does not include the hostname of the
|
request, not @code{Root}. Again, @var{pathname} @emph{does not} include
|
||||||
server, how to access the server, etc.; by the time the CVS protocol is
|
the hostname of the server, how to access the server, etc.; by the time
|
||||||
in use, connection, authentication, etc., are already taken care of.
|
the CVS protocol is in use, connection, authentication, etc., are
|
||||||
|
already taken care of.
|
||||||
|
|
||||||
The @code{Root} request must be sent only once, and it must be sent
|
The @code{Root} request must be sent only once, and it must be sent
|
||||||
before any requests other than @code{Valid-responses},
|
before any requests other than @code{Valid-responses},
|
||||||
@ -871,6 +872,15 @@ in this document, servers must support this request (although it need
|
|||||||
not do anything) and clients must issue it.
|
not do anything) and clients must issue it.
|
||||||
The @code{Root} request need not have been previously sent.
|
The @code{Root} request need not have been previously sent.
|
||||||
|
|
||||||
|
@item Empty-conflicts \n
|
||||||
|
Response expected: yes. This request is an alias for @code{noop}. Its
|
||||||
|
presence in the list of @code{valid-requests} is intended to be used as a
|
||||||
|
placeholder to alert the client that the server does not require the contents
|
||||||
|
of files with conflicts that have not been modified since the merge, for
|
||||||
|
operations other than diff. It was a bug in pre 1.11.22 & pre 1.12.14 servers
|
||||||
|
that the contents of files with conflicts was required for the server to
|
||||||
|
acknowledge the existence of the conflicts.
|
||||||
|
|
||||||
@item Notify @var{filename} \n
|
@item Notify @var{filename} \n
|
||||||
Response expected: no.
|
Response expected: no.
|
||||||
Tell the server that an @code{edit} or @code{unedit} command has taken
|
Tell the server that an @code{edit} or @code{unedit} command has taken
|
||||||
@ -2014,7 +2024,7 @@ working directory, and the meaning of sending @code{Entries} without
|
|||||||
A number of enhancements are possible. Also see the file @sc{todo} in
|
A number of enhancements are possible. Also see the file @sc{todo} in
|
||||||
the @sc{cvs} source distribution, which has further ideas concerning
|
the @sc{cvs} source distribution, which has further ideas concerning
|
||||||
various aspects of @sc{cvs}, some of which impact the protocol.
|
various aspects of @sc{cvs}, some of which impact the protocol.
|
||||||
Similarly, the @code{http://www.cvshome.org} site, in particular the
|
Similarly, the @code{http://cvs.nongnu.org} site, in particular the
|
||||||
@cite{Development} pages.
|
@cite{Development} pages.
|
||||||
|
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
|
369
contrib/cvs/doc/mkman.pl
Normal file
369
contrib/cvs/doc/mkman.pl
Normal file
@ -0,0 +1,369 @@
|
|||||||
|
#! @PERL@
|
||||||
|
#
|
||||||
|
# Generate a man page from sections of a Texinfo manual.
|
||||||
|
#
|
||||||
|
# Copyright 2004 The Free Software Foundation,
|
||||||
|
# Derek R. Price,
|
||||||
|
# & Ximbiot <http://ximbiot.com>
|
||||||
|
#
|
||||||
|
# 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 2, 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, write to the Free Software Foundation,
|
||||||
|
# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Need Perl 5.005 or greater for re 'eval'.
|
||||||
|
require 5.005;
|
||||||
|
|
||||||
|
# The usual.
|
||||||
|
use strict;
|
||||||
|
use IO::File;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### GLOBALS
|
||||||
|
###
|
||||||
|
my $texi_num = 0; # Keep track of how many texinfo files have been encountered.
|
||||||
|
my @parent; # This needs to be global to be used inside of a regex later.
|
||||||
|
my $nk; # Ditto.
|
||||||
|
my $ret; # The RE match Type, used in debug prints.
|
||||||
|
my $debug = 0; # Debug mode?
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### FUNCTIONS
|
||||||
|
###
|
||||||
|
sub debug_print
|
||||||
|
{
|
||||||
|
print @_ if $debug;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
sub keyword_mode
|
||||||
|
{
|
||||||
|
my ($keyword, $file) = @_;
|
||||||
|
|
||||||
|
return "\\fR"
|
||||||
|
if $keyword =~ /^(|r|t)$/;
|
||||||
|
return "\\fB"
|
||||||
|
if $keyword =~ /^(strong|sc|code|file|samp)$/;
|
||||||
|
return "\\fI"
|
||||||
|
if $keyword =~ /^(emph|var|dfn)$/;
|
||||||
|
die "no handler for keyword \`$keyword', found at line $. of file \`$file'\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Return replacement for \@$keyword{$content}.
|
||||||
|
sub do_keyword
|
||||||
|
{
|
||||||
|
my ($file, $parent, $keyword, $content) = @_;
|
||||||
|
|
||||||
|
return "see node \`$content\\(aq in the CVS manual"
|
||||||
|
if $keyword =~ /^(p?x)?ref$/;
|
||||||
|
return "\\fP\\fP$content"
|
||||||
|
if $keyword =~ /^splitrcskeyword$/;
|
||||||
|
|
||||||
|
my $endmode = keyword_mode $parent;
|
||||||
|
my $startmode = keyword_mode $keyword, $file;
|
||||||
|
|
||||||
|
return "$startmode$content$endmode";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### MAIN
|
||||||
|
###
|
||||||
|
for my $file (@ARGV)
|
||||||
|
{
|
||||||
|
my $fh = new IO::File "< $file"
|
||||||
|
or die "Failed to open file \`$file': $!";
|
||||||
|
|
||||||
|
if ($file !~ /\.(texinfo|texi|txi)$/)
|
||||||
|
{
|
||||||
|
print stderr "Passing \`$file' through unprocessed.\n";
|
||||||
|
# Just cat any file that doesn't look like a Texinfo source.
|
||||||
|
while (my $line = $fh->getline)
|
||||||
|
{
|
||||||
|
print $line;
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
print stderr "Processing \`$file'.\n";
|
||||||
|
$texi_num++;
|
||||||
|
my $gotone = 0;
|
||||||
|
my $inblank = 0;
|
||||||
|
my $indent = 0;
|
||||||
|
my $inexample = 0;
|
||||||
|
my $inmenu = 0;
|
||||||
|
my $intable = 0;
|
||||||
|
my $last_header = "";
|
||||||
|
my @table_headers;
|
||||||
|
my @table_footers;
|
||||||
|
my $table_header = "";
|
||||||
|
my $table_footer = "";
|
||||||
|
my $last;
|
||||||
|
while ($_ = $fh->getline)
|
||||||
|
{
|
||||||
|
if (!$gotone && /^\@c ----- START MAN $texi_num -----$/)
|
||||||
|
{
|
||||||
|
$gotone = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Skip ahead until our man section.
|
||||||
|
next unless $gotone;
|
||||||
|
|
||||||
|
# If we find the end tag we are done.
|
||||||
|
last if /^\@c ----- END MAN $texi_num -----$/;
|
||||||
|
|
||||||
|
# Need to do this everywhere. i.e., before we print example
|
||||||
|
# lines, since literal back slashes can appear there too.
|
||||||
|
s/\\/\\\\/g;
|
||||||
|
s/^\./\\&./;
|
||||||
|
s/([\s])\./$1\\&./;
|
||||||
|
s/'/\\(aq/g;
|
||||||
|
s/`/\\`/g;
|
||||||
|
s/(?<!-)---(?!-)/\\(em/g;
|
||||||
|
s/\@bullet({}|\b)/\\(bu/g;
|
||||||
|
s/\@dots({}|\b)/\\&.../g;
|
||||||
|
|
||||||
|
# Examples should be indented and otherwise untouched
|
||||||
|
if (/^\@example$/)
|
||||||
|
{
|
||||||
|
$indent += 2;
|
||||||
|
print qq{.SP\n.PD 0\n};
|
||||||
|
$inexample = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
if ($inexample)
|
||||||
|
{
|
||||||
|
if (/^\@end example$/)
|
||||||
|
{
|
||||||
|
$indent -= 2;
|
||||||
|
print qq{\n.PD\n.IP "" $indent\n};
|
||||||
|
$inexample = 0;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
if (/^[ ]*$/)
|
||||||
|
{
|
||||||
|
print ".SP\n";
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Preserve the newline.
|
||||||
|
$_ = qq{.IP "" $indent\n} . $_;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Compress blank lines into a single line. This and its
|
||||||
|
# corresponding skip purposely bracket the @menu and comment
|
||||||
|
# removal so that blanks on either side of a menu are
|
||||||
|
# compressed after the menu is removed.
|
||||||
|
if (/^[ ]*$/)
|
||||||
|
{
|
||||||
|
$inblank = 1;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Not used
|
||||||
|
if (/^\@(ignore|menu)$/)
|
||||||
|
{
|
||||||
|
$inmenu++;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
# Delete menu contents.
|
||||||
|
if ($inmenu)
|
||||||
|
{
|
||||||
|
next unless /^\@end (ignore|menu)$/;
|
||||||
|
$inmenu--;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Remove comments
|
||||||
|
next if /^\@c(omment)?\b/;
|
||||||
|
|
||||||
|
# Ignore includes.
|
||||||
|
next if /^\@include\b/;
|
||||||
|
|
||||||
|
# It's okay to ignore this keyword - we're not using any
|
||||||
|
# first-line indent commands at all.
|
||||||
|
next if s/^\@noindent\s*$//;
|
||||||
|
|
||||||
|
# @need is only significant in printed manuals.
|
||||||
|
next if s/^\@need\s+.*$//;
|
||||||
|
|
||||||
|
# If we didn't hit the previous check and $inblank is set, then
|
||||||
|
# we just finished with some number of blanks. Print the man
|
||||||
|
# page blank symbol before continuing processing of this line.
|
||||||
|
if ($inblank)
|
||||||
|
{
|
||||||
|
print ".SP\n";
|
||||||
|
$inblank = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Chapter headers.
|
||||||
|
$last_header = $1 if s/^\@node\s+(.*)$/.SH "$1"/;
|
||||||
|
if (/^\@appendix\w*\s+(.*)$/)
|
||||||
|
{
|
||||||
|
my $content = $1;
|
||||||
|
$content =~ s/^$last_header(\\\(em|\s+)?//;
|
||||||
|
next if $content =~ /^\s*$/;
|
||||||
|
s/^\@appendix\w*\s+.*$/.SS "$content"/;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Tables are similar to examples, except we need to handle the
|
||||||
|
# keywords.
|
||||||
|
if (/^\@(itemize|table)(\s+(.*))?$/)
|
||||||
|
{
|
||||||
|
$indent += 2;
|
||||||
|
push @table_headers, $table_header;
|
||||||
|
push @table_footers, $table_footer;
|
||||||
|
my $content = $3;
|
||||||
|
if (/^\@itemize/)
|
||||||
|
{
|
||||||
|
my $bullet = $content;
|
||||||
|
$table_header = qq{.IP "$bullet" $indent\n};
|
||||||
|
$table_footer = "";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
my $hi = $indent - 2;
|
||||||
|
$table_header = qq{.IP "" $hi\n};
|
||||||
|
$table_footer = qq{\n.IP "" $indent};
|
||||||
|
if ($content)
|
||||||
|
{
|
||||||
|
$table_header .= "$content\{";
|
||||||
|
$table_footer = "\}$table_footer";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$intable++;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($intable)
|
||||||
|
{
|
||||||
|
if (/^\@end (itemize|table)$/)
|
||||||
|
{
|
||||||
|
$table_header = pop @table_headers;
|
||||||
|
$table_footer = pop @table_footers;
|
||||||
|
$indent -= 2;
|
||||||
|
$intable--;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
s/^\@itemx?(\s+(.*))?$/$table_header$2$table_footer/;
|
||||||
|
# Fall through so the rest of the table lines are
|
||||||
|
# processed normally.
|
||||||
|
}
|
||||||
|
|
||||||
|
# Index entries.
|
||||||
|
s/^\@cindex\s+(.*)$/.IX "$1"/;
|
||||||
|
|
||||||
|
$_ = "$last$_" if $last;
|
||||||
|
undef $last;
|
||||||
|
|
||||||
|
# Trap keywords
|
||||||
|
$nk = qr/
|
||||||
|
\@(\w+)\{
|
||||||
|
(?{ debug_print "$ret MATCHED $&\nPUSHING $1\n";
|
||||||
|
push @parent, $1; }) # Keep track of the last keyword
|
||||||
|
# keyword we encountered.
|
||||||
|
((?>
|
||||||
|
[^{}]|(?<=\@)[{}] # Non-braces...
|
||||||
|
| # ...or...
|
||||||
|
(??{ $nk }) # ...nested keywords...
|
||||||
|
)*) # ...without backtracking.
|
||||||
|
\}
|
||||||
|
(?{ debug_print "$ret MATCHED $&\nPOPPING ",
|
||||||
|
pop (@parent), "\n"; }) # Lose track of the current keyword.
|
||||||
|
/x;
|
||||||
|
|
||||||
|
$ret = "m//";
|
||||||
|
if (/\@\w+\{(?:[^{}]|(?<=\@)[{}]|(??{ $nk }))*$/)
|
||||||
|
{
|
||||||
|
# If there is an opening keyword on this line without a
|
||||||
|
# close bracket, we need to find the close bracket
|
||||||
|
# before processing the line. Set $last to append the
|
||||||
|
# next line in the next pass.
|
||||||
|
$last = $_;
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Okay, the following works somewhat counter-intuitively. $nk
|
||||||
|
# processes the whole line, so @parent gets loaded properly,
|
||||||
|
# then, since no closing brackets have been found for the
|
||||||
|
# outermost matches, the innermost matches match and get
|
||||||
|
# replaced first.
|
||||||
|
#
|
||||||
|
# For example:
|
||||||
|
#
|
||||||
|
# Processing the line:
|
||||||
|
#
|
||||||
|
# yadda yadda @code{yadda @var{foo} yadda @var{bar} yadda}
|
||||||
|
#
|
||||||
|
# Happens something like this:
|
||||||
|
#
|
||||||
|
# 1. Ignores "yadda yadda "
|
||||||
|
# 2. Sees "@code{" and pushes "code" onto @parent.
|
||||||
|
# 3. Ignores "yadda " (backtracks and ignores "yadda yadda
|
||||||
|
# @code{yadda "?)
|
||||||
|
# 4. Sees "@var{" and pushes "var" onto @parent.
|
||||||
|
# 5. Sees "foo}", pops "var", and realizes that "@var{foo}"
|
||||||
|
# matches the overall pattern ($nk).
|
||||||
|
# 6. Replaces "@var{foo}" with the result of:
|
||||||
|
#
|
||||||
|
# do_keyword $file, $parent[$#parent], $1, $2;
|
||||||
|
#
|
||||||
|
# which would be "\Ifoo\B", in this case, because "var"
|
||||||
|
# signals a request for italics, or "\I", and "code" is
|
||||||
|
# still on the stack, which means the previous style was
|
||||||
|
# bold, or "\B".
|
||||||
|
#
|
||||||
|
# Then the while loop restarts and a similar series of events
|
||||||
|
# replaces "@var{bar}" with "\Ibar\B".
|
||||||
|
#
|
||||||
|
# Then the while loop restarts and a similar series of events
|
||||||
|
# replaces "@code{yadda \Ifoo\B yadda \Ibar\B yadda}" with
|
||||||
|
# "\Byadda \Ifoo\B yadda \Ibar\B yadda\R".
|
||||||
|
#
|
||||||
|
$ret = "s///";
|
||||||
|
@parent = ("");
|
||||||
|
while (s/$nk/do_keyword $file, $parent[$#parent], $1, $2/e)
|
||||||
|
{
|
||||||
|
# Do nothing except reset our last-replacement
|
||||||
|
# tracker - the replacement regex above is handling
|
||||||
|
# everything else.
|
||||||
|
debug_print "FINAL MATCH $&\n";
|
||||||
|
@parent = ("");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Finally, unprotect texinfo special characters.
|
||||||
|
s/\@://g;
|
||||||
|
s/\@([{}])/$1/g;
|
||||||
|
|
||||||
|
# Verify we haven't left commands unprocessed.
|
||||||
|
die "Unprocessed command at line $. of file \`$file': "
|
||||||
|
. ($1 ? "$1\n" : "<EOL>\n")
|
||||||
|
if /^(?>(?:[^\@]|\@\@)*)\@(\w+|.|$)/;
|
||||||
|
|
||||||
|
# Unprotect @@.
|
||||||
|
s/\@\@/\@/g;
|
||||||
|
|
||||||
|
# And print whatever's left.
|
||||||
|
print $_;
|
||||||
|
}
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
@set UPDATED 3 February 2004
|
@set UPDATED 8 June 2006
|
||||||
@set UPDATED-MONTH February 2004
|
@set UPDATED-MONTH June 2006
|
||||||
@set EDITION 1.11.17
|
@set EDITION 1.11.22
|
||||||
@set VERSION 1.11.17
|
@set VERSION 1.11.22
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@set UPDATED 27 May 2004
|
@set UPDATED 15 May 2006
|
||||||
@set UPDATED-MONTH May 2004
|
@set UPDATED-MONTH May 2006
|
||||||
@set EDITION 1.11.17
|
@set EDITION 1.11.22
|
||||||
@set VERSION 1.11.17
|
@set VERSION 1.11.22
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@set UPDATED 3 February 2004
|
@set UPDATED 8 June 2006
|
||||||
@set UPDATED-MONTH February 2004
|
@set UPDATED-MONTH June 2006
|
||||||
@set EDITION 1.11.17
|
@set EDITION 1.11.22
|
||||||
@set VERSION 1.11.17
|
@set VERSION 1.11.22
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@set UPDATED 27 May 2004
|
@set UPDATED 15 May 2006
|
||||||
@set UPDATED-MONTH May 2004
|
@set UPDATED-MONTH May 2006
|
||||||
@set EDITION 1.11.17
|
@set EDITION 1.11.22
|
||||||
@set VERSION 1.11.17
|
@set VERSION 1.11.22
|
||||||
|
@ -1,3 +1,57 @@
|
|||||||
|
2005-11-14 Mark D. Baushke <mdb@gnu.org>
|
||||||
|
|
||||||
|
* system.h (FOLD_FN_CHAR): Distinguish OSX_ and VMS_ variations
|
||||||
|
based on USE_VMS_FILENAME macro.
|
||||||
|
|
||||||
|
2005-11-09 Mark D. Baushke <mdb@gnu.org>
|
||||||
|
|
||||||
|
* system.h (FOLD_FN_CHAR): Create a VMS alternative of this macro
|
||||||
|
(patch suggested by Piet Schuermans <pschuermans@mac.com>).
|
||||||
|
|
||||||
|
2005-07-11 Mark D. Baushke <mdb@cvshome.org>
|
||||||
|
|
||||||
|
* getpass.c (getpass): Add a K&R style function definition.
|
||||||
|
|
||||||
|
2005-04-15 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (EXTRA_DIST): Add test-getdate.sh.
|
||||||
|
|
||||||
|
2005-03-23 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am (TESTS, MOSTLYCLEANFILES, check_PROGRAMS, EXTRA_DIST,
|
||||||
|
getdate_SOURCES, getdate_CPPFLAGS): Add getdate testing cruft.
|
||||||
|
* test-getdate.sh: New file.
|
||||||
|
* .cvsignore: Ignore getdate executable.
|
||||||
|
|
||||||
|
2005-03-23 Larry Jones <lawrence.jones@ugs.com>
|
||||||
|
|
||||||
|
* getdate.c: Remove absolute paths from #line directives.
|
||||||
|
|
||||||
|
2005-03-04 Jim Hyslop <jhyslop@ieee.org>
|
||||||
|
|
||||||
|
* xtime.h: added include guards to fix compile errors on IRIX 5.3
|
||||||
|
(Patch from Georg Schwarz <georg.scwarz@freenet.de>.)
|
||||||
|
|
||||||
|
2005-02-08 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* fncase.c (OSX_filename_classes): Mac OSX doesn't need \ mapped to /.
|
||||||
|
* system.h (FOLD_FN_CASE): Clarify comment.
|
||||||
|
|
||||||
|
2005-01-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am: Update copyright notices.
|
||||||
|
|
||||||
|
2004-10-05 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* regex.c: Back out my change from 2004-04-07 as possibly suppressing
|
||||||
|
useful warnings.
|
||||||
|
|
||||||
|
2004-10-05 Mark D. Baushke <mdb@cvshome.org>
|
||||||
|
|
||||||
|
* regex.c (re_comp): Cast gettext return value to char * to
|
||||||
|
avoid warning in !ENABLE_NLS case. Patch imported from GNULIB.
|
||||||
|
(Problem report from Martin Neitzel <neitzel@sco.gaertner.de>.)
|
||||||
|
|
||||||
2004-05-28 Derek Price <derek@ximbiot.com>
|
2004-05-28 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
* xsize.h: New file from GNULIB.
|
* xsize.h: New file from GNULIB.
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
# Makefile for library files used by GNU CVS.
|
# Makefile for library files used by GNU CVS.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -86,7 +88,23 @@ EXTRA_DIST = \
|
|||||||
ChangeLog.fsf \
|
ChangeLog.fsf \
|
||||||
build_lib.com \
|
build_lib.com \
|
||||||
libcvs.dep libcvs.dsp libcvs.mak \
|
libcvs.dep libcvs.dsp libcvs.mak \
|
||||||
xgssapi.h
|
xgssapi.h \
|
||||||
|
test-getdate.sh
|
||||||
|
|
||||||
|
TESTS =
|
||||||
|
MOSTLYCLEANFILES =
|
||||||
|
check_PROGRAMS =
|
||||||
|
|
||||||
|
# Test GNULIB getdate module.
|
||||||
|
TESTS += test-getdate.sh
|
||||||
|
MOSTLYCLEANFILES += getdate-expected getdate-got getdate.diff
|
||||||
|
# Program required by test-getdate.sh for testing getdate.y.
|
||||||
|
check_PROGRAMS += getdate
|
||||||
|
EXTRA_DIST += $(check_PROGRAMS)
|
||||||
|
getdate_SOURCES = getdate.y
|
||||||
|
getdate_CPPFLAGS = -DTEST
|
||||||
|
##getdate_LDADD = \
|
||||||
|
## $(noinst_LIBRARIES)
|
||||||
|
|
||||||
# For the xsize module from GNULIB.
|
# For the xsize module from GNULIB.
|
||||||
libcvs_a_SOURCES += xsize.h
|
libcvs_a_SOURCES += xsize.h
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -15,9 +15,11 @@
|
|||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Makefile for library files used by GNU CVS.
|
# Makefile for library files used by GNU CVS.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -36,7 +38,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -50,6 +51,49 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
check_PROGRAMS = getdate$(EXEEXT)
|
||||||
|
subdir = lib
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||||
|
$(srcdir)/fnmatch.h.in ChangeLog dup2.c fncase.c fnmatch.c \
|
||||||
|
fnmatch.h.in ftruncate.c getdate.c gethostname.c memmove.c \
|
||||||
|
mkdir.c rename.c strerror.c strstr.c strtoul.c valloc.c \
|
||||||
|
waitpid.c
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES = fnmatch.h
|
||||||
|
LIBRARIES = $(noinst_LIBRARIES)
|
||||||
|
AR = ar
|
||||||
|
ARFLAGS = cru
|
||||||
|
libcvs_a_AR = $(AR) $(ARFLAGS)
|
||||||
|
libcvs_a_DEPENDENCIES = @LIBOBJS@
|
||||||
|
am_libcvs_a_OBJECTS = argmatch.$(OBJEXT) getdate.$(OBJEXT) \
|
||||||
|
getline.$(OBJEXT) getopt.$(OBJEXT) getopt1.$(OBJEXT) \
|
||||||
|
getpass.$(OBJEXT) md5.$(OBJEXT) regex.$(OBJEXT) \
|
||||||
|
savecwd.$(OBJEXT) sighandle.$(OBJEXT) stripslash.$(OBJEXT) \
|
||||||
|
xgetwd.$(OBJEXT) yesno.$(OBJEXT)
|
||||||
|
libcvs_a_OBJECTS = $(am_libcvs_a_OBJECTS)
|
||||||
|
am_getdate_OBJECTS = getdate-getdate.$(OBJEXT)
|
||||||
|
getdate_OBJECTS = $(am_getdate_OBJECTS)
|
||||||
|
getdate_LDADD = $(LDADD)
|
||||||
|
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||||
|
am__depfiles_maybe = depfiles
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
|
||||||
|
YLWRAP = $(top_srcdir)/ylwrap
|
||||||
|
SOURCES = $(libcvs_a_SOURCES) $(getdate_SOURCES)
|
||||||
|
DIST_SOURCES = $(libcvs_a_SOURCES) $(getdate_SOURCES)
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -119,6 +163,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -132,6 +178,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -139,6 +186,7 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
|
|
||||||
# For now we need to include $(top_srcdir)/src because some systems
|
# For now we need to include $(top_srcdir)/src because some systems
|
||||||
# (at least 'AIX rioscpu2 3 4 000030498200',
|
# (at least 'AIX rioscpu2 3 4 000030498200',
|
||||||
@ -153,7 +201,6 @@ target_alias = @target_alias@
|
|||||||
#
|
#
|
||||||
# $(includeopt) is CVS specific and set by configure
|
# $(includeopt) is CVS specific and set by configure
|
||||||
INCLUDES = -I$(top_srcdir)/src $(includeopt)
|
INCLUDES = -I$(top_srcdir)/src $(includeopt)
|
||||||
|
|
||||||
noinst_LIBRARIES = libcvs.a
|
noinst_LIBRARIES = libcvs.a
|
||||||
|
|
||||||
# Always use CVS's regular expression matcher regex.o, because of
|
# Always use CVS's regular expression matcher regex.o, because of
|
||||||
@ -168,96 +215,53 @@ noinst_LIBRARIES = libcvs.a
|
|||||||
# matching?)
|
# matching?)
|
||||||
|
|
||||||
# For the xsize module from GNULIB.
|
# For the xsize module from GNULIB.
|
||||||
libcvs_a_SOURCES = \
|
libcvs_a_SOURCES = argmatch.c getdate.y getline.c getopt.c getopt1.c \
|
||||||
argmatch.c \
|
getpass.c md5.c regex.c savecwd.c sighandle.c stripslash.c \
|
||||||
getdate.y \
|
xgetwd.c yesno.c getline.h getopt.h getpagesize.h md5.h \
|
||||||
getline.c \
|
regex.h savecwd.h system.h wait.h xselect.h xtime.h xsize.h
|
||||||
getopt.c \
|
|
||||||
getopt1.c \
|
|
||||||
getpass.c \
|
|
||||||
md5.c \
|
|
||||||
regex.c \
|
|
||||||
savecwd.c \
|
|
||||||
sighandle.c \
|
|
||||||
stripslash.c \
|
|
||||||
xgetwd.c \
|
|
||||||
yesno.c \
|
|
||||||
getline.h \
|
|
||||||
getopt.h \
|
|
||||||
getpagesize.h \
|
|
||||||
md5.h \
|
|
||||||
regex.h \
|
|
||||||
savecwd.h \
|
|
||||||
system.h \
|
|
||||||
wait.h \
|
|
||||||
xselect.h \
|
|
||||||
xtime.h\
|
|
||||||
xsize.h
|
|
||||||
libcvs_a_LIBADD = @LIBOBJS@
|
libcvs_a_LIBADD = @LIBOBJS@
|
||||||
|
EXTRA_DIST = .cvsignore ChangeLog.fsf build_lib.com libcvs.dep \
|
||||||
|
libcvs.dsp libcvs.mak xgssapi.h test-getdate.sh \
|
||||||
|
$(check_PROGRAMS)
|
||||||
|
|
||||||
EXTRA_DIST = \
|
# Test GNULIB getdate module.
|
||||||
.cvsignore \
|
TESTS = test-getdate.sh
|
||||||
ChangeLog.fsf \
|
MOSTLYCLEANFILES = getdate-expected getdate-got getdate.diff
|
||||||
build_lib.com \
|
getdate_SOURCES = getdate.y
|
||||||
libcvs.dep libcvs.dsp libcvs.mak \
|
getdate_CPPFLAGS = -DTEST
|
||||||
xgssapi.h
|
|
||||||
|
|
||||||
subdir = lib
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES =
|
|
||||||
LIBRARIES = $(noinst_LIBRARIES)
|
|
||||||
|
|
||||||
libcvs_a_AR = $(AR) cru
|
|
||||||
libcvs_a_DEPENDENCIES = @LIBOBJS@
|
|
||||||
am_libcvs_a_OBJECTS = argmatch.$(OBJEXT) getdate.$(OBJEXT) \
|
|
||||||
getline.$(OBJEXT) getopt.$(OBJEXT) getopt1.$(OBJEXT) \
|
|
||||||
getpass.$(OBJEXT) md5.$(OBJEXT) regex.$(OBJEXT) \
|
|
||||||
savecwd.$(OBJEXT) sighandle.$(OBJEXT) stripslash.$(OBJEXT) \
|
|
||||||
xgetwd.$(OBJEXT) yesno.$(OBJEXT)
|
|
||||||
libcvs_a_OBJECTS = $(am_libcvs_a_OBJECTS)
|
|
||||||
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
|
||||||
am__depfiles_maybe = depfiles
|
|
||||||
@AMDEP_TRUE@DEP_FILES = $(DEPDIR)/dup2.Po $(DEPDIR)/fncase.Po \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/fnmatch.Po $(DEPDIR)/fnmatch.h.in \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/ftruncate.Po $(DEPDIR)/gethostname.Po \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/memmove.Po $(DEPDIR)/mkdir.Po \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/rename.Po $(DEPDIR)/strerror.Po \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/strstr.Po $(DEPDIR)/strtoul.Po \
|
|
||||||
@AMDEP_TRUE@ $(DEPDIR)/valloc.Po $(DEPDIR)/waitpid.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/argmatch.Po ./$(DEPDIR)/getdate.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/getline.Po ./$(DEPDIR)/getopt.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/getopt1.Po ./$(DEPDIR)/getpass.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/md5.Po ./$(DEPDIR)/regex.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/savecwd.Po ./$(DEPDIR)/sighandle.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/stripslash.Po ./$(DEPDIR)/xgetwd.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/yesno.Po
|
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
CCLD = $(CC)
|
|
||||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
|
||||||
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
|
|
||||||
DIST_SOURCES = $(libcvs_a_SOURCES)
|
|
||||||
DIST_COMMON = $(srcdir)/Makefile.in ChangeLog Makefile.am dup2.c \
|
|
||||||
fncase.c fnmatch.c fnmatch.h.in ftruncate.c getdate.c \
|
|
||||||
gethostname.c memmove.c mkdir.c rename.c strerror.c strstr.c \
|
|
||||||
strtoul.c valloc.c waitpid.c
|
|
||||||
SOURCES = $(libcvs_a_SOURCES)
|
|
||||||
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .o .obj .y
|
.SUFFIXES: .c .o .obj .y
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lib/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu lib/Makefile
|
$(AUTOMAKE) --gnu lib/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
AR = ar
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
clean-noinstLIBRARIES:
|
clean-noinstLIBRARIES:
|
||||||
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
||||||
@ -266,8 +270,14 @@ libcvs.a: $(libcvs_a_OBJECTS) $(libcvs_a_DEPENDENCIES)
|
|||||||
$(libcvs_a_AR) libcvs.a $(libcvs_a_OBJECTS) $(libcvs_a_LIBADD)
|
$(libcvs_a_AR) libcvs.a $(libcvs_a_OBJECTS) $(libcvs_a_LIBADD)
|
||||||
$(RANLIB) libcvs.a
|
$(RANLIB) libcvs.a
|
||||||
|
|
||||||
|
clean-checkPROGRAMS:
|
||||||
|
-test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS)
|
||||||
|
getdate$(EXEEXT): $(getdate_OBJECTS) $(getdate_DEPENDENCIES)
|
||||||
|
@rm -f getdate$(EXEEXT)
|
||||||
|
$(LINK) $(getdate_LDFLAGS) $(getdate_OBJECTS) $(getdate_LDADD) $(LIBS)
|
||||||
|
|
||||||
mostlyclean-compile:
|
mostlyclean-compile:
|
||||||
-rm -f *.$(OBJEXT) core *.core
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
@ -287,6 +297,7 @@ distclean-compile:
|
|||||||
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/valloc.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/valloc.Po@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/waitpid.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/waitpid.Po@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdate-getdate.Po@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdate.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdate.Po@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getline.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getline.Po@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
|
||||||
@ -301,56 +312,37 @@ distclean-compile:
|
|||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/yesno.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/yesno.Po@am__quote@
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
|
|
||||||
|
|
||||||
.c.obj:
|
.c.obj:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
|
|
||||||
|
getdate-getdate.o: getdate.c
|
||||||
|
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(getdate_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT getdate-getdate.o -MD -MP -MF "$(DEPDIR)/getdate-getdate.Tpo" -c -o getdate-getdate.o `test -f 'getdate.c' || echo '$(srcdir)/'`getdate.c; \
|
||||||
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/getdate-getdate.Tpo" "$(DEPDIR)/getdate-getdate.Po"; else rm -f "$(DEPDIR)/getdate-getdate.Tpo"; exit 1; fi
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='getdate.c' object='getdate-getdate.o' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(getdate_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getdate-getdate.o `test -f 'getdate.c' || echo '$(srcdir)/'`getdate.c
|
||||||
|
|
||||||
|
getdate-getdate.obj: getdate.c
|
||||||
|
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(getdate_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT getdate-getdate.obj -MD -MP -MF "$(DEPDIR)/getdate-getdate.Tpo" -c -o getdate-getdate.obj `if test -f 'getdate.c'; then $(CYGPATH_W) 'getdate.c'; else $(CYGPATH_W) '$(srcdir)/getdate.c'; fi`; \
|
||||||
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/getdate-getdate.Tpo" "$(DEPDIR)/getdate-getdate.Po"; else rm -f "$(DEPDIR)/getdate-getdate.Tpo"; exit 1; fi
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='getdate.c' object='getdate-getdate.obj' libtool=no @AMDEPBACKSLASH@
|
||||||
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
|
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(getdate_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o getdate-getdate.obj `if test -f 'getdate.c'; then $(CYGPATH_W) 'getdate.c'; else $(CYGPATH_W) '$(srcdir)/getdate.c'; fi`
|
||||||
|
|
||||||
.y.c:
|
.y.c:
|
||||||
$(YACCCOMPILE) `test -f '$<' || echo '$(srcdir)/'`$<
|
$(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
|
||||||
if test -f y.tab.h; then \
|
|
||||||
to=`echo "$*_H" | sed \
|
|
||||||
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
|
|
||||||
-e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \
|
|
||||||
sed "/^#/ s/Y_TAB_H/$$to/g" y.tab.h >$*.ht; \
|
|
||||||
rm -f y.tab.h; \
|
|
||||||
if cmp -s $*.ht $*.h; then \
|
|
||||||
rm -f $*.ht ;\
|
|
||||||
else \
|
|
||||||
mv $*.ht $*.h; \
|
|
||||||
fi; \
|
|
||||||
fi
|
|
||||||
if test -f y.output; then \
|
|
||||||
mv y.output $*.output; \
|
|
||||||
fi
|
|
||||||
sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@t && mv $@t $@
|
|
||||||
rm -f y.tab.c
|
|
||||||
uninstall-info-am:
|
uninstall-info-am:
|
||||||
|
|
||||||
ETAGS = etags
|
|
||||||
ETAGSFLAGS =
|
|
||||||
|
|
||||||
CTAGS = ctags
|
|
||||||
CTAGSFLAGS =
|
|
||||||
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
@ -359,6 +351,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
mkid -fID $$unique
|
mkid -fID $$unique
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -370,10 +363,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|||||||
done | \
|
done | \
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
$$tags $$unique
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$tags $$unique; \
|
||||||
|
fi
|
||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -396,10 +390,79 @@ GTAGS:
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
check-TESTS: $(TESTS)
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
@failed=0; all=0; xfail=0; xpass=0; skip=0; \
|
||||||
|
srcdir=$(srcdir); export srcdir; \
|
||||||
|
list='$(TESTS)'; \
|
||||||
|
if test -n "$$list"; then \
|
||||||
|
for tst in $$list; do \
|
||||||
|
if test -f ./$$tst; then dir=./; \
|
||||||
|
elif test -f $$tst; then dir=; \
|
||||||
|
else dir="$(srcdir)/"; fi; \
|
||||||
|
if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
|
||||||
|
all=`expr $$all + 1`; \
|
||||||
|
case " $(XFAIL_TESTS) " in \
|
||||||
|
*" $$tst "*) \
|
||||||
|
xpass=`expr $$xpass + 1`; \
|
||||||
|
failed=`expr $$failed + 1`; \
|
||||||
|
echo "XPASS: $$tst"; \
|
||||||
|
;; \
|
||||||
|
*) \
|
||||||
|
echo "PASS: $$tst"; \
|
||||||
|
;; \
|
||||||
|
esac; \
|
||||||
|
elif test $$? -ne 77; then \
|
||||||
|
all=`expr $$all + 1`; \
|
||||||
|
case " $(XFAIL_TESTS) " in \
|
||||||
|
*" $$tst "*) \
|
||||||
|
xfail=`expr $$xfail + 1`; \
|
||||||
|
echo "XFAIL: $$tst"; \
|
||||||
|
;; \
|
||||||
|
*) \
|
||||||
|
failed=`expr $$failed + 1`; \
|
||||||
|
echo "FAIL: $$tst"; \
|
||||||
|
;; \
|
||||||
|
esac; \
|
||||||
|
else \
|
||||||
|
skip=`expr $$skip + 1`; \
|
||||||
|
echo "SKIP: $$tst"; \
|
||||||
|
fi; \
|
||||||
|
done; \
|
||||||
|
if test "$$failed" -eq 0; then \
|
||||||
|
if test "$$xfail" -eq 0; then \
|
||||||
|
banner="All $$all tests passed"; \
|
||||||
|
else \
|
||||||
|
banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
|
||||||
|
fi; \
|
||||||
|
else \
|
||||||
|
if test "$$xpass" -eq 0; then \
|
||||||
|
banner="$$failed of $$all tests failed"; \
|
||||||
|
else \
|
||||||
|
banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
|
||||||
|
fi; \
|
||||||
|
fi; \
|
||||||
|
dashes="$$banner"; \
|
||||||
|
skipped=""; \
|
||||||
|
if test "$$skip" -ne 0; then \
|
||||||
|
skipped="($$skip tests were not run)"; \
|
||||||
|
test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
|
||||||
|
dashes="$$skipped"; \
|
||||||
|
fi; \
|
||||||
|
report=""; \
|
||||||
|
if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
|
||||||
|
report="Please report to $(PACKAGE_BUGREPORT)"; \
|
||||||
|
test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
|
||||||
|
dashes="$$report"; \
|
||||||
|
fi; \
|
||||||
|
dashes=`echo "$$dashes" | sed s/./=/g`; \
|
||||||
|
echo "$$dashes"; \
|
||||||
|
echo "$$banner"; \
|
||||||
|
test -z "$$skipped" || echo "$$skipped"; \
|
||||||
|
test -z "$$report" || echo "$$report"; \
|
||||||
|
echo "$$dashes"; \
|
||||||
|
test "$$failed" -eq 0; \
|
||||||
|
else :; fi
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
@ -413,7 +476,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -429,9 +492,10 @@ distdir: $(DISTFILES)
|
|||||||
fi; \
|
fi; \
|
||||||
done
|
done
|
||||||
check-am: all-am
|
check-am: all-am
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(LIBRARIES)
|
all-am: Makefile $(LIBRARIES)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
@ -448,11 +512,12 @@ install-strip:
|
|||||||
`test -z '$(STRIP)' || \
|
`test -z '$(STRIP)' || \
|
||||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||||
mostlyclean-generic:
|
mostlyclean-generic:
|
||||||
|
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
||||||
|
|
||||||
clean-generic:
|
clean-generic:
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -460,7 +525,8 @@ maintainer-clean-generic:
|
|||||||
-rm -f getdate.c
|
-rm -f getdate.c
|
||||||
clean: clean-am
|
clean: clean-am
|
||||||
|
|
||||||
clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
|
clean-am: clean-checkPROGRAMS clean-generic clean-noinstLIBRARIES \
|
||||||
|
mostlyclean-am
|
||||||
|
|
||||||
distclean: distclean-am
|
distclean: distclean-am
|
||||||
-rm -rf $(DEPDIR) ./$(DEPDIR)
|
-rm -rf $(DEPDIR) ./$(DEPDIR)
|
||||||
@ -472,6 +538,8 @@ dvi: dvi-am
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -505,16 +573,16 @@ ps-am:
|
|||||||
|
|
||||||
uninstall-am: uninstall-info-am
|
uninstall-am: uninstall-info-am
|
||||||
|
|
||||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
|
||||||
clean-noinstLIBRARIES ctags distclean distclean-compile \
|
clean-checkPROGRAMS clean-generic clean-noinstLIBRARIES ctags \
|
||||||
distclean-generic distclean-local distclean-tags distdir dvi \
|
distclean distclean-compile distclean-generic distclean-local \
|
||||||
dvi-am info info-am install install-am install-data \
|
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||||
install-data-am install-exec install-exec-am install-info \
|
install install-am install-data install-data-am install-exec \
|
||||||
install-info-am install-man install-strip installcheck \
|
install-exec-am install-info install-info-am install-man \
|
||||||
installcheck-am installdirs maintainer-clean \
|
install-strip installcheck installcheck-am installdirs \
|
||||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||||
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
|
mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
|
||||||
uninstall-am uninstall-info-am
|
tags uninstall uninstall-am uninstall-info-am
|
||||||
|
|
||||||
|
|
||||||
# Until Automake gets its act together
|
# Until Automake gets its act together
|
||||||
|
@ -104,7 +104,7 @@ OSX_filename_classes[] =
|
|||||||
0x40,0x61,0x62,0x63, 0x64,0x65,0x66,0x67,
|
0x40,0x61,0x62,0x63, 0x64,0x65,0x66,0x67,
|
||||||
0x68,0x69,0x6a,0x6b, 0x6c,0x6d,0x6e,0x6f,
|
0x68,0x69,0x6a,0x6b, 0x6c,0x6d,0x6e,0x6f,
|
||||||
0x70,0x71,0x72,0x73, 0x74,0x75,0x76,0x77,
|
0x70,0x71,0x72,0x73, 0x74,0x75,0x76,0x77,
|
||||||
0x78,0x79,0x7a,0x5b, 0x2f,0x5d,0x5e,0x5f,
|
0x78,0x79,0x7a,0x5b, 0x5c,0x5d,0x5e,0x5f,
|
||||||
0x60,0x61,0x62,0x63, 0x64,0x65,0x66,0x67,
|
0x60,0x61,0x62,0x63, 0x64,0x65,0x66,0x67,
|
||||||
0x68,0x69,0x6a,0x6b, 0x6c,0x6d,0x6e,0x6f,
|
0x68,0x69,0x6a,0x6b, 0x6c,0x6d,0x6e,0x6f,
|
||||||
0x70,0x71,0x72,0x73, 0x74,0x75,0x76,0x77,
|
0x70,0x71,0x72,0x73, 0x74,0x75,0x76,0x77,
|
||||||
|
BIN
contrib/cvs/lib/getdate
Executable file
BIN
contrib/cvs/lib/getdate
Executable file
Binary file not shown.
@ -37,7 +37,12 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
char *
|
char *
|
||||||
|
#if __STDC__
|
||||||
getpass (const char *prompt)
|
getpass (const char *prompt)
|
||||||
|
#else
|
||||||
|
getpass (prompt)
|
||||||
|
const char *prompt;
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
FILE *in, *out;
|
FILE *in, *out;
|
||||||
struct termios s, t;
|
struct termios s, t;
|
||||||
|
@ -4001,7 +4001,7 @@ static boolean alt_match_null_string_p (),
|
|||||||
|
|
||||||
/* Free everything we malloc. */
|
/* Free everything we malloc. */
|
||||||
#ifdef MATCH_MAY_ALLOCATE
|
#ifdef MATCH_MAY_ALLOCATE
|
||||||
#define FREE_VAR(var) if (var) { (void)REGEX_FREE ((void *)var); var = NULL; } else
|
#define FREE_VAR(var) if (var) { REGEX_FREE (var); var = NULL; } else
|
||||||
#define FREE_VARIABLES() \
|
#define FREE_VARIABLES() \
|
||||||
do { \
|
do { \
|
||||||
REGEX_FREE_STACK (fail_stack.stack); \
|
REGEX_FREE_STACK (fail_stack.stack); \
|
||||||
@ -6084,7 +6084,7 @@ re_comp (s)
|
|||||||
if (!s)
|
if (!s)
|
||||||
{
|
{
|
||||||
if (!re_comp_buf.buffer)
|
if (!re_comp_buf.buffer)
|
||||||
return gettext ("No previous regular expression");
|
return (char *) gettext ("No previous regular expression");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -491,18 +491,22 @@ extern unsigned char WNT_filename_classes[];
|
|||||||
Windows NT, you can use either / or \. */
|
Windows NT, you can use either / or \. */
|
||||||
# define ISDIRSEP(c) (FOLD_FN_CHAR(c) == '/')
|
# define ISDIRSEP(c) (FOLD_FN_CHAR(c) == '/')
|
||||||
# define ISABSOLUTE(s) (ISDIRSEP(s[0]) || FOLD_FN_CHAR(s[0]) >= 'a' && FOLD_FN_CHAR(s[0]) <= 'z' && s[1] == ':' && ISDIRSEP(s[2]))
|
# define ISABSOLUTE(s) (ISDIRSEP(s[0]) || FOLD_FN_CHAR(s[0]) >= 'a' && FOLD_FN_CHAR(s[0]) <= 'z' && s[1] == ':' && ISDIRSEP(s[2]))
|
||||||
# else /* ! WOE32 */
|
# else /* !__CYGWIN32__ && !WOE32 */
|
||||||
/* As far as I know, just Macintosh OS X can make it here,
|
/* As far as I know, only Macintosh OS X & VMS make it here, but any
|
||||||
* but since the OS X fold just folds a-z into A-Z or visa-versa, I'm just
|
* platform defining FILENAMES_CASE_INSENSITIVE which isn't WOE32 or
|
||||||
* allowing it to be used for any case insensitive system which we aren't
|
* piggy-backing the same could, in theory. Since the OS X fold just folds
|
||||||
* yet making other specific folds or exceptions for (basically, anything
|
* A-Z into a-z, I'm just allowing it to be used for any case insensitive
|
||||||
* case insensitive other than Windows, where \ and C:\ style absolute paths
|
* system which we aren't yet making other specific folds or exceptions for.
|
||||||
* also need to be accounted for).
|
* WOE32 needs its own class since \ and C:\ style absolute paths also need
|
||||||
*
|
* to be accounted for.
|
||||||
* Under Mac OS X, filenames are case-insensitive.
|
|
||||||
*/
|
*/
|
||||||
|
# if defined(USE_VMS_FILENAMES)
|
||||||
|
# define FOLD_FN_CHAR(c) (VMS_filename_classes[(unsigned char) (c)])
|
||||||
|
extern unsigned char VMS_filename_classes[];
|
||||||
|
# else
|
||||||
# define FOLD_FN_CHAR(c) (OSX_filename_classes[(unsigned char) (c)])
|
# define FOLD_FN_CHAR(c) (OSX_filename_classes[(unsigned char) (c)])
|
||||||
extern unsigned char OSX_filename_classes[];
|
extern unsigned char OSX_filename_classes[];
|
||||||
|
# endif
|
||||||
# endif /* __CYGWIN32__ || WOE32 */
|
# endif /* __CYGWIN32__ || WOE32 */
|
||||||
|
|
||||||
/* The following need to be declared for all case insensitive filesystems.
|
/* The following need to be declared for all case insensitive filesystems.
|
||||||
|
127
contrib/cvs/lib/test-getdate.sh
Executable file
127
contrib/cvs/lib/test-getdate.sh
Executable file
@ -0,0 +1,127 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
# Test that a getdate executable meets its specification.
|
||||||
|
#
|
||||||
|
# Copyright (C) 2004 Free Software Foundation, Inc.
|
||||||
|
#
|
||||||
|
# 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 2, 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, write to the Free Software Foundation,
|
||||||
|
# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
# Why are these dates tested?
|
||||||
|
#
|
||||||
|
# February 29, 2003
|
||||||
|
# Is not a leap year - should be invalid.
|
||||||
|
#
|
||||||
|
# 2004-12-40
|
||||||
|
# Make sure get_date does not "roll" date forward to January 9th. Some
|
||||||
|
# versions have been known to do this.
|
||||||
|
#
|
||||||
|
# Dec-5-1972
|
||||||
|
# This is my birthday. :)
|
||||||
|
#
|
||||||
|
# 3/29/1974
|
||||||
|
# 1996/05/12 13:57:45
|
||||||
|
# Because.
|
||||||
|
#
|
||||||
|
# 12-05-12
|
||||||
|
# This will be my 40th birthday. Ouch. :)
|
||||||
|
#
|
||||||
|
# 05/12/96
|
||||||
|
# Because.
|
||||||
|
#
|
||||||
|
# third tuesday in March, 2078
|
||||||
|
# Wanted this to work.
|
||||||
|
#
|
||||||
|
# 1969-12-32 2:00:00 UTC
|
||||||
|
# 1970-01-01 2:00:00 UTC
|
||||||
|
# 1969-12-32 2:00:00 +0400
|
||||||
|
# 1970-01-01 2:00:00 +0400
|
||||||
|
# 1969-12-32 2:00:00 -0400
|
||||||
|
# 1970-01-01 2:00:00 -0400
|
||||||
|
# Playing near the UNIX Epoch boundry condition to make sure date rolling
|
||||||
|
# is also disabled there.
|
||||||
|
#
|
||||||
|
# 1996-12-12 1 month
|
||||||
|
# Test a relative date.
|
||||||
|
#
|
||||||
|
# Tue Jan 19 03:14:07 2038 +0000
|
||||||
|
# For machines with 31-bit time_t, any date past this date will be an
|
||||||
|
# invalid date. So, any test date with a value greater than this
|
||||||
|
# time is not portable.
|
||||||
|
#
|
||||||
|
# Feb. 29, 2096 4 years
|
||||||
|
# 4 years from this date is _not_ a leap year, so Feb. 29th does not exist.
|
||||||
|
#
|
||||||
|
# Feb. 29, 2096 8 years
|
||||||
|
# 8 years from this date is a leap year, so Feb. 29th does exist,
|
||||||
|
# but on many hosts with 32-bit time_t types time, this test will
|
||||||
|
# fail. So, this is not a portable test.
|
||||||
|
#
|
||||||
|
|
||||||
|
TZ=UTC0; export TZ
|
||||||
|
|
||||||
|
cat >getdate-expected <<EOF
|
||||||
|
Enter date, or blank line to exit.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Fri Mar 29 00:00:00 1974
|
||||||
|
> Sun May 12 13:57:45 1996
|
||||||
|
> Sat May 12 00:00:00 2012
|
||||||
|
> Sun May 12 00:00:00 1996
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Thu Jan 1 02:00:00 1970
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Bad format - couldn't convert.
|
||||||
|
> Thu Jan 1 06:00:00 1970
|
||||||
|
> Sun Jan 12 00:00:00 1997
|
||||||
|
>
|
||||||
|
EOF
|
||||||
|
|
||||||
|
./getdate >getdate-got <<EOF
|
||||||
|
February 29, 2003
|
||||||
|
2004-12-40
|
||||||
|
Dec-5-1972
|
||||||
|
3/29/1974
|
||||||
|
1996/05/12 13:57:45
|
||||||
|
12-05-12
|
||||||
|
05/12/96
|
||||||
|
third tuesday in March, 2078
|
||||||
|
1969-12-32 2:00:00 UTC
|
||||||
|
1970-01-01 2:00:00 UTC
|
||||||
|
1969-12-32 2:00:00 +0400
|
||||||
|
1970-01-01 2:00:00 +0400
|
||||||
|
1969-12-32 2:00:00 -0400
|
||||||
|
1970-01-01 2:00:00 -0400
|
||||||
|
1996-12-12 1 month
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo >>getdate-got
|
||||||
|
|
||||||
|
if cmp getdate-expected getdate-got >getdate.cmp; then :; else
|
||||||
|
LOGFILE=`pwd`/getdate.log
|
||||||
|
cat getdate.cmp >${LOGFILE}
|
||||||
|
echo "** expected: " >>${LOGFILE}
|
||||||
|
cat getdate-expected >>${LOGFILE}
|
||||||
|
echo "** got: " >>${LOGFILE}
|
||||||
|
cat getdate-got >>${LOGFILE}
|
||||||
|
echo "FAIL: getdate" | tee -a ${LOGFILE}
|
||||||
|
echo "Failed! See ${LOGFILE} for more!" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm getdate-expected getdate-got getdate.cmp
|
||||||
|
exit 0
|
@ -11,6 +11,8 @@
|
|||||||
/* This file simply performs the include magic necessary for using time
|
/* This file simply performs the include magic necessary for using time
|
||||||
* functions
|
* functions
|
||||||
*/
|
*/
|
||||||
|
#ifndef XTIME_HEADER_INCLUDED
|
||||||
|
#define XTIME_HEADER_INCLUDED
|
||||||
|
|
||||||
#ifdef vms
|
#ifdef vms
|
||||||
# include <time.h>
|
# include <time.h>
|
||||||
@ -55,3 +57,5 @@ extern long timezone;
|
|||||||
# endif /* !defined(HAVE_FTIME) && !defined(HAVE_TIMEZONE) */
|
# endif /* !defined(HAVE_FTIME) && !defined(HAVE_TIMEZONE) */
|
||||||
|
|
||||||
#endif /* !vms */
|
#endif /* !vms */
|
||||||
|
|
||||||
|
#endif /* !XTIME_HEADER_INCLUDED */
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
2005-01-31 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
|
* Makefile.am: Update copyright notices.
|
||||||
|
|
||||||
2004-04-30 Derek Price <derek@ximbiot.com>
|
2004-04-30 Derek Price <derek@ximbiot.com>
|
||||||
|
|
||||||
First pass at closing issue #3 from cvshome.org.
|
First pass at closing issue #3 from cvshome.org.
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
# Makefile.am for GNU CVS man pages.
|
# Makefile.am for GNU CVS man pages.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -15,9 +15,11 @@
|
|||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Makefile.am for GNU CVS man pages.
|
# Makefile.am for GNU CVS man pages.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -28,7 +30,6 @@
|
|||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
@ -36,7 +37,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -50,6 +50,24 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
subdir = man
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
SOURCES =
|
||||||
|
DIST_SOURCES =
|
||||||
|
man5dir = $(mandir)/man5
|
||||||
|
am__installdirs = "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)"
|
||||||
|
man8dir = $(mandir)/man8
|
||||||
|
NROFF = nroff
|
||||||
|
MANS = $(man_MANS)
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -119,6 +137,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -132,6 +152,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -139,36 +160,48 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
man_MANS = cvs.5 cvsbug.8
|
man_MANS = cvs.5 cvsbug.8
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
.cvsignore \
|
.cvsignore \
|
||||||
$(man_MANS)
|
$(man_MANS)
|
||||||
|
|
||||||
subdir = man
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES =
|
|
||||||
DIST_SOURCES =
|
|
||||||
|
|
||||||
NROFF = nroff
|
|
||||||
MANS = $(man_MANS)
|
|
||||||
DIST_COMMON = $(srcdir)/Makefile.in ChangeLog Makefile.am
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu man/Makefile
|
$(AUTOMAKE) --gnu man/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
uninstall-info-am:
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
man5dir = $(mandir)/man5
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
uninstall-info-am:
|
||||||
install-man5: $(man5_MANS) $(man_MANS)
|
install-man5: $(man5_MANS) $(man_MANS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(man5dir)
|
test -z "$(man5dir)" || $(mkdir_p) "$(DESTDIR)$(man5dir)"
|
||||||
@list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
|
@list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
|
||||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||||
for i in $$l2; do \
|
for i in $$l2; do \
|
||||||
@ -187,8 +220,8 @@ install-man5: $(man5_MANS) $(man_MANS)
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst"; \
|
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
|
||||||
$(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \
|
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
uninstall-man5:
|
uninstall-man5:
|
||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@ -208,14 +241,12 @@ uninstall-man5:
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " rm -f $(DESTDIR)$(man5dir)/$$inst"; \
|
echo " rm -f '$(DESTDIR)$(man5dir)/$$inst'"; \
|
||||||
rm -f $(DESTDIR)$(man5dir)/$$inst; \
|
rm -f "$(DESTDIR)$(man5dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
man8dir = $(mandir)/man8
|
|
||||||
install-man8: $(man8_MANS) $(man_MANS)
|
install-man8: $(man8_MANS) $(man_MANS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(man8dir)
|
test -z "$(man8dir)" || $(mkdir_p) "$(DESTDIR)$(man8dir)"
|
||||||
@list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
|
@list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
|
||||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||||
for i in $$l2; do \
|
for i in $$l2; do \
|
||||||
@ -234,8 +265,8 @@ install-man8: $(man8_MANS) $(man_MANS)
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst"; \
|
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \
|
||||||
$(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
|
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
uninstall-man8:
|
uninstall-man8:
|
||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@ -255,8 +286,8 @@ uninstall-man8:
|
|||||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||||
echo " rm -f $(DESTDIR)$(man8dir)/$$inst"; \
|
echo " rm -f '$(DESTDIR)$(man8dir)/$$inst'"; \
|
||||||
rm -f $(DESTDIR)$(man8dir)/$$inst; \
|
rm -f "$(DESTDIR)$(man8dir)/$$inst"; \
|
||||||
done
|
done
|
||||||
tags: TAGS
|
tags: TAGS
|
||||||
TAGS:
|
TAGS:
|
||||||
@ -264,10 +295,6 @@ TAGS:
|
|||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS:
|
CTAGS:
|
||||||
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
@ -281,7 +308,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -299,9 +326,10 @@ distdir: $(DISTFILES)
|
|||||||
check-am: all-am
|
check-am: all-am
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(MANS)
|
all-am: Makefile $(MANS)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
$(mkinstalldirs) $(DESTDIR)$(man5dir) $(DESTDIR)$(man8dir)
|
for dir in "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)"; do \
|
||||||
|
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||||
|
done
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
install-data: install-data-am
|
install-data: install-data-am
|
||||||
@ -321,7 +349,7 @@ mostlyclean-generic:
|
|||||||
clean-generic:
|
clean-generic:
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@echo "This command is intended for maintainers to use"
|
@echo "This command is intended for maintainers to use"
|
||||||
@ -338,6 +366,8 @@ dvi: dvi-am
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -373,8 +403,8 @@ uninstall-am: uninstall-info-am uninstall-man
|
|||||||
uninstall-man: uninstall-man5 uninstall-man8
|
uninstall-man: uninstall-man5 uninstall-man8
|
||||||
|
|
||||||
.PHONY: all all-am check check-am clean clean-generic distclean \
|
.PHONY: all all-am check check-am clean clean-generic distclean \
|
||||||
distclean-generic distdir dvi dvi-am info info-am install \
|
distclean-generic distdir dvi dvi-am html html-am info info-am \
|
||||||
install-am install-data install-data-am install-exec \
|
install install-am install-data install-data-am install-exec \
|
||||||
install-exec-am install-info install-info-am install-man \
|
install-exec-am install-info install-info-am install-man \
|
||||||
install-man5 install-man8 install-strip installcheck \
|
install-man5 install-man8 install-strip installcheck \
|
||||||
installcheck-am installdirs maintainer-clean \
|
installcheck-am installdirs maintainer-clean \
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,8 +1,10 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
# Makefile for GNU CVS program.
|
# Makefile for GNU CVS program.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||||
# @configure_input@
|
# @configure_input@
|
||||||
|
|
||||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
# Free Software Foundation, Inc.
|
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
# This Makefile.in is free software; the Free Software Foundation
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
@ -15,9 +15,11 @@
|
|||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Makefile for GNU CVS program.
|
# Makefile for GNU CVS program.
|
||||||
# Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
|
#
|
||||||
# 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
# Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
#
|
||||||
|
# Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
# and others.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -29,6 +31,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
top_srcdir = @top_srcdir@
|
top_srcdir = @top_srcdir@
|
||||||
VPATH = @srcdir@
|
VPATH = @srcdir@
|
||||||
@ -36,7 +39,6 @@ pkgdatadir = $(datadir)/@PACKAGE@
|
|||||||
pkglibdir = $(libdir)/@PACKAGE@
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
pkgincludedir = $(includedir)/@PACKAGE@
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
top_builddir = ..
|
top_builddir = ..
|
||||||
|
|
||||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
install_sh_DATA = $(install_sh) -c -m 644
|
install_sh_DATA = $(install_sh) -c -m 644
|
||||||
@ -50,6 +52,55 @@ POST_INSTALL = :
|
|||||||
NORMAL_UNINSTALL = :
|
NORMAL_UNINSTALL = :
|
||||||
PRE_UNINSTALL = :
|
PRE_UNINSTALL = :
|
||||||
POST_UNINSTALL = :
|
POST_UNINSTALL = :
|
||||||
|
bin_PROGRAMS = cvs$(EXEEXT)
|
||||||
|
subdir = src
|
||||||
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||||
|
$(srcdir)/cvsbug.in ChangeLog
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||||
|
$(top_srcdir)/configure.in
|
||||||
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||||
|
$(ACLOCAL_M4)
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
|
CONFIG_CLEAN_FILES = cvsbug
|
||||||
|
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"
|
||||||
|
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
||||||
|
PROGRAMS = $(bin_PROGRAMS)
|
||||||
|
am_cvs_OBJECTS = add.$(OBJEXT) admin.$(OBJEXT) annotate.$(OBJEXT) \
|
||||||
|
buffer.$(OBJEXT) checkin.$(OBJEXT) checkout.$(OBJEXT) \
|
||||||
|
classify.$(OBJEXT) client.$(OBJEXT) commit.$(OBJEXT) \
|
||||||
|
create_adm.$(OBJEXT) cvsrc.$(OBJEXT) diff.$(OBJEXT) \
|
||||||
|
edit.$(OBJEXT) entries.$(OBJEXT) error.$(OBJEXT) \
|
||||||
|
expand_path.$(OBJEXT) fileattr.$(OBJEXT) filesubr.$(OBJEXT) \
|
||||||
|
find_names.$(OBJEXT) hardlink.$(OBJEXT) hash.$(OBJEXT) \
|
||||||
|
history.$(OBJEXT) ignore.$(OBJEXT) import.$(OBJEXT) \
|
||||||
|
lock.$(OBJEXT) log.$(OBJEXT) login.$(OBJEXT) logmsg.$(OBJEXT) \
|
||||||
|
main.$(OBJEXT) mkmodules.$(OBJEXT) modules.$(OBJEXT) \
|
||||||
|
myndbm.$(OBJEXT) no_diff.$(OBJEXT) parseinfo.$(OBJEXT) \
|
||||||
|
patch.$(OBJEXT) rcs.$(OBJEXT) rcscmds.$(OBJEXT) \
|
||||||
|
recurse.$(OBJEXT) release.$(OBJEXT) remove.$(OBJEXT) \
|
||||||
|
repos.$(OBJEXT) root.$(OBJEXT) run.$(OBJEXT) \
|
||||||
|
scramble.$(OBJEXT) server.$(OBJEXT) stack.$(OBJEXT) \
|
||||||
|
status.$(OBJEXT) subr.$(OBJEXT) tag.$(OBJEXT) update.$(OBJEXT) \
|
||||||
|
version.$(OBJEXT) vers_ts.$(OBJEXT) watch.$(OBJEXT) \
|
||||||
|
wrapper.$(OBJEXT) zlib.$(OBJEXT)
|
||||||
|
cvs_OBJECTS = $(am_cvs_OBJECTS)
|
||||||
|
cvs_DEPENDENCIES = ../diff/libdiff.a ../lib/libcvs.a ../zlib/libz.a
|
||||||
|
binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
|
||||||
|
SCRIPTS = $(bin_SCRIPTS)
|
||||||
|
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
||||||
|
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||||
|
am__depfiles_maybe = depfiles
|
||||||
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||||
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
SOURCES = $(cvs_SOURCES)
|
||||||
|
DIST_SOURCES = $(cvs_SOURCES)
|
||||||
|
ETAGS = etags
|
||||||
|
CTAGS = ctags
|
||||||
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
ACLOCAL = @ACLOCAL@
|
ACLOCAL = @ACLOCAL@
|
||||||
AMDEP_FALSE = @AMDEP_FALSE@
|
AMDEP_FALSE = @AMDEP_FALSE@
|
||||||
AMDEP_TRUE = @AMDEP_TRUE@
|
AMDEP_TRUE = @AMDEP_TRUE@
|
||||||
@ -105,7 +156,6 @@ RANLIB = @RANLIB@
|
|||||||
ROFF = @ROFF@
|
ROFF = @ROFF@
|
||||||
SENDMAIL = @SENDMAIL@
|
SENDMAIL = @SENDMAIL@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
|
|
||||||
SHELL = /bin/sh
|
SHELL = /bin/sh
|
||||||
STRIP = @STRIP@
|
STRIP = @STRIP@
|
||||||
TEXI2DVI = @TEXI2DVI@
|
TEXI2DVI = @TEXI2DVI@
|
||||||
@ -120,6 +170,8 @@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
|||||||
am__include = @am__include@
|
am__include = @am__include@
|
||||||
am__leading_dot = @am__leading_dot@
|
am__leading_dot = @am__leading_dot@
|
||||||
am__quote = @am__quote@
|
am__quote = @am__quote@
|
||||||
|
am__tar = @am__tar@
|
||||||
|
am__untar = @am__untar@
|
||||||
bindir = @bindir@
|
bindir = @bindir@
|
||||||
build_alias = @build_alias@
|
build_alias = @build_alias@
|
||||||
datadir = @datadir@
|
datadir = @datadir@
|
||||||
@ -133,6 +185,7 @@ libdir = @libdir@
|
|||||||
libexecdir = @libexecdir@
|
libexecdir = @libexecdir@
|
||||||
localstatedir = @localstatedir@
|
localstatedir = @localstatedir@
|
||||||
mandir = @mandir@
|
mandir = @mandir@
|
||||||
|
mkdir_p = @mkdir_p@
|
||||||
oldincludedir = @oldincludedir@
|
oldincludedir = @oldincludedir@
|
||||||
prefix = @prefix@
|
prefix = @prefix@
|
||||||
program_transform_name = @program_transform_name@
|
program_transform_name = @program_transform_name@
|
||||||
@ -140,6 +193,7 @@ sbindir = @sbindir@
|
|||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
|
with_default_rsh = @with_default_rsh@
|
||||||
|
|
||||||
# $(includeopt) is CVS specific and set by configure
|
# $(includeopt) is CVS specific and set by configure
|
||||||
# FIXME - This includes line is dependant on its order. This means there is
|
# FIXME - This includes line is dependant on its order. This means there is
|
||||||
@ -147,8 +201,6 @@ target_alias = @target_alias@
|
|||||||
# try and remove naming ocnflicts and fix Automake to allow particular includes
|
# try and remove naming ocnflicts and fix Automake to allow particular includes
|
||||||
# to be attached only to particular object files. Short term fix is either or.
|
# to be attached only to particular object files. Short term fix is either or.
|
||||||
INCLUDES = -I$(top_srcdir)/lib -I$(top_srcdir)/diff -I$(top_srcdir)/zlib $(includeopt)
|
INCLUDES = -I$(top_srcdir)/lib -I$(top_srcdir)/diff -I$(top_srcdir)/zlib $(includeopt)
|
||||||
|
|
||||||
bin_PROGRAMS = cvs
|
|
||||||
bin_SCRIPTS = cvsbug
|
bin_SCRIPTS = cvsbug
|
||||||
|
|
||||||
# The cvs executable
|
# The cvs executable
|
||||||
@ -224,7 +276,6 @@ cvs_SOURCES = \
|
|||||||
update.h \
|
update.h \
|
||||||
watch.h
|
watch.h
|
||||||
|
|
||||||
|
|
||||||
cvs_LDADD = \
|
cvs_LDADD = \
|
||||||
../diff/libdiff.a \
|
../diff/libdiff.a \
|
||||||
../lib/libcvs.a \
|
../lib/libcvs.a \
|
||||||
@ -245,99 +296,51 @@ EXTRA_DIST = \
|
|||||||
build_src.com \
|
build_src.com \
|
||||||
sanity.sh
|
sanity.sh
|
||||||
|
|
||||||
subdir = src
|
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
|
||||||
CONFIG_CLEAN_FILES = cvsbug
|
|
||||||
bin_PROGRAMS = cvs$(EXEEXT)
|
|
||||||
PROGRAMS = $(bin_PROGRAMS)
|
|
||||||
|
|
||||||
am_cvs_OBJECTS = add.$(OBJEXT) admin.$(OBJEXT) annotate.$(OBJEXT) \
|
|
||||||
buffer.$(OBJEXT) checkin.$(OBJEXT) checkout.$(OBJEXT) \
|
|
||||||
classify.$(OBJEXT) client.$(OBJEXT) commit.$(OBJEXT) \
|
|
||||||
create_adm.$(OBJEXT) cvsrc.$(OBJEXT) diff.$(OBJEXT) \
|
|
||||||
edit.$(OBJEXT) entries.$(OBJEXT) error.$(OBJEXT) \
|
|
||||||
expand_path.$(OBJEXT) fileattr.$(OBJEXT) filesubr.$(OBJEXT) \
|
|
||||||
find_names.$(OBJEXT) hardlink.$(OBJEXT) hash.$(OBJEXT) \
|
|
||||||
history.$(OBJEXT) ignore.$(OBJEXT) import.$(OBJEXT) \
|
|
||||||
lock.$(OBJEXT) log.$(OBJEXT) login.$(OBJEXT) logmsg.$(OBJEXT) \
|
|
||||||
main.$(OBJEXT) mkmodules.$(OBJEXT) modules.$(OBJEXT) \
|
|
||||||
myndbm.$(OBJEXT) no_diff.$(OBJEXT) parseinfo.$(OBJEXT) \
|
|
||||||
patch.$(OBJEXT) rcs.$(OBJEXT) rcscmds.$(OBJEXT) \
|
|
||||||
recurse.$(OBJEXT) release.$(OBJEXT) remove.$(OBJEXT) \
|
|
||||||
repos.$(OBJEXT) root.$(OBJEXT) run.$(OBJEXT) scramble.$(OBJEXT) \
|
|
||||||
server.$(OBJEXT) stack.$(OBJEXT) status.$(OBJEXT) \
|
|
||||||
subr.$(OBJEXT) tag.$(OBJEXT) update.$(OBJEXT) version.$(OBJEXT) \
|
|
||||||
vers_ts.$(OBJEXT) watch.$(OBJEXT) wrapper.$(OBJEXT) \
|
|
||||||
zlib.$(OBJEXT)
|
|
||||||
cvs_OBJECTS = $(am_cvs_OBJECTS)
|
|
||||||
cvs_DEPENDENCIES = ../diff/libdiff.a ../lib/libcvs.a ../zlib/libz.a
|
|
||||||
cvs_LDFLAGS =
|
|
||||||
SCRIPTS = $(bin_SCRIPTS)
|
|
||||||
|
|
||||||
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
|
||||||
am__depfiles_maybe = depfiles
|
|
||||||
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/add.Po ./$(DEPDIR)/admin.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/annotate.Po ./$(DEPDIR)/buffer.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/checkin.Po ./$(DEPDIR)/checkout.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/classify.Po ./$(DEPDIR)/client.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/commit.Po ./$(DEPDIR)/create_adm.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/cvsrc.Po ./$(DEPDIR)/diff.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/edit.Po ./$(DEPDIR)/entries.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/error.Po ./$(DEPDIR)/expand_path.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/fileattr.Po ./$(DEPDIR)/filesubr.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/find_names.Po ./$(DEPDIR)/hardlink.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/hash.Po ./$(DEPDIR)/history.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/ignore.Po ./$(DEPDIR)/import.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/lock.Po ./$(DEPDIR)/log.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/login.Po ./$(DEPDIR)/logmsg.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/main.Po ./$(DEPDIR)/mkmodules.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/modules.Po ./$(DEPDIR)/myndbm.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/no_diff.Po ./$(DEPDIR)/parseinfo.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/patch.Po ./$(DEPDIR)/rcs.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/rcscmds.Po ./$(DEPDIR)/recurse.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/release.Po ./$(DEPDIR)/remove.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/repos.Po ./$(DEPDIR)/root.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/run.Po ./$(DEPDIR)/scramble.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/server.Po ./$(DEPDIR)/stack.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/status.Po ./$(DEPDIR)/subr.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/tag.Po ./$(DEPDIR)/update.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/vers_ts.Po ./$(DEPDIR)/version.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/watch.Po ./$(DEPDIR)/wrapper.Po \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/zlib.Po
|
|
||||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
||||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
||||||
CCLD = $(CC)
|
|
||||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
|
||||||
DIST_SOURCES = $(cvs_SOURCES)
|
|
||||||
DIST_COMMON = $(srcdir)/Makefile.in ChangeLog Makefile.am cvsbug.in
|
|
||||||
SOURCES = $(cvs_SOURCES)
|
|
||||||
|
|
||||||
all: all-am
|
all: all-am
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
.SUFFIXES: .c .o .obj
|
.SUFFIXES: .c .o .obj
|
||||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||||
|
@for dep in $?; do \
|
||||||
|
case '$(am__configure_deps)' in \
|
||||||
|
*$$dep*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||||
|
&& exit 0; \
|
||||||
|
exit 1;; \
|
||||||
|
esac; \
|
||||||
|
done; \
|
||||||
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
|
||||||
cd $(top_srcdir) && \
|
cd $(top_srcdir) && \
|
||||||
$(AUTOMAKE) --gnu src/Makefile
|
$(AUTOMAKE) --gnu src/Makefile
|
||||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
.PRECIOUS: Makefile
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
cvsbug: $(top_builddir)/config.status cvsbug.in
|
@case '$?' in \
|
||||||
|
*config.status*) \
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||||
|
*) \
|
||||||
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||||
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||||
|
esac;
|
||||||
|
|
||||||
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
|
||||||
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||||
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||||
|
cvsbug: $(top_builddir)/config.status $(srcdir)/cvsbug.in
|
||||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||||
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
|
||||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(bindir)
|
test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||||
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
||||||
if test -f $$p \
|
if test -f $$p \
|
||||||
; then \
|
; then \
|
||||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||||
echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \
|
echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
||||||
$(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f || exit 1; \
|
$(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
|
||||||
else :; fi; \
|
else :; fi; \
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -345,8 +348,8 @@ uninstall-binPROGRAMS:
|
|||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||||
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||||
echo " rm -f $(DESTDIR)$(bindir)/$$f"; \
|
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
||||||
rm -f $(DESTDIR)$(bindir)/$$f; \
|
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
clean-binPROGRAMS:
|
clean-binPROGRAMS:
|
||||||
@ -354,16 +357,15 @@ clean-binPROGRAMS:
|
|||||||
cvs$(EXEEXT): $(cvs_OBJECTS) $(cvs_DEPENDENCIES)
|
cvs$(EXEEXT): $(cvs_OBJECTS) $(cvs_DEPENDENCIES)
|
||||||
@rm -f cvs$(EXEEXT)
|
@rm -f cvs$(EXEEXT)
|
||||||
$(LINK) $(cvs_LDFLAGS) $(cvs_OBJECTS) $(cvs_LDADD) $(LIBS)
|
$(LINK) $(cvs_LDFLAGS) $(cvs_OBJECTS) $(cvs_LDADD) $(LIBS)
|
||||||
binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
|
|
||||||
install-binSCRIPTS: $(bin_SCRIPTS)
|
install-binSCRIPTS: $(bin_SCRIPTS)
|
||||||
@$(NORMAL_INSTALL)
|
@$(NORMAL_INSTALL)
|
||||||
$(mkinstalldirs) $(DESTDIR)$(bindir)
|
test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
|
||||||
@list='$(bin_SCRIPTS)'; for p in $$list; do \
|
@list='$(bin_SCRIPTS)'; for p in $$list; do \
|
||||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||||
if test -f $$d$$p; then \
|
if test -f $$d$$p; then \
|
||||||
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
||||||
echo " $(binSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(bindir)/$$f"; \
|
echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
||||||
$(binSCRIPT_INSTALL) $$d$$p $(DESTDIR)$(bindir)/$$f; \
|
$(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
|
||||||
else :; fi; \
|
else :; fi; \
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -371,12 +373,12 @@ uninstall-binSCRIPTS:
|
|||||||
@$(NORMAL_UNINSTALL)
|
@$(NORMAL_UNINSTALL)
|
||||||
@list='$(bin_SCRIPTS)'; for p in $$list; do \
|
@list='$(bin_SCRIPTS)'; for p in $$list; do \
|
||||||
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
|
||||||
echo " rm -f $(DESTDIR)$(bindir)/$$f"; \
|
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
||||||
rm -f $(DESTDIR)$(bindir)/$$f; \
|
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
||||||
done
|
done
|
||||||
|
|
||||||
mostlyclean-compile:
|
mostlyclean-compile:
|
||||||
-rm -f *.$(OBJEXT) core *.core
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
@ -438,36 +440,20 @@ distclean-compile:
|
|||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zlib.Po@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zlib.Po@am__quote@
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
|
|
||||||
|
|
||||||
.c.obj:
|
.c.obj:
|
||||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||||
@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
|
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
|
|
||||||
uninstall-info-am:
|
uninstall-info-am:
|
||||||
|
|
||||||
ETAGS = etags
|
|
||||||
ETAGSFLAGS =
|
|
||||||
|
|
||||||
CTAGS = ctags
|
|
||||||
CTAGSFLAGS =
|
|
||||||
|
|
||||||
tags: TAGS
|
|
||||||
|
|
||||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||||
unique=`for i in $$list; do \
|
unique=`for i in $$list; do \
|
||||||
@ -476,6 +462,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
mkid -fID $$unique
|
mkid -fID $$unique
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -487,10 +474,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|||||||
done | \
|
done | \
|
||||||
$(AWK) ' { files[$$0] = 1; } \
|
$(AWK) ' { files[$$0] = 1; } \
|
||||||
END { for (i in files) print i; }'`; \
|
END { for (i in files) print i; }'`; \
|
||||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
test -n "$$unique" || unique=$$empty_fix; \
|
||||||
$$tags $$unique
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||||
|
$$tags $$unique; \
|
||||||
|
fi
|
||||||
ctags: CTAGS
|
ctags: CTAGS
|
||||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||||
$(TAGS_FILES) $(LISP)
|
$(TAGS_FILES) $(LISP)
|
||||||
@ -513,10 +501,6 @@ GTAGS:
|
|||||||
|
|
||||||
distclean-tags:
|
distclean-tags:
|
||||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
||||||
|
|
||||||
top_distdir = ..
|
|
||||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
|
||||||
|
|
||||||
distdir: $(DISTFILES)
|
distdir: $(DISTFILES)
|
||||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||||
@ -530,7 +514,7 @@ distdir: $(DISTFILES)
|
|||||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||||
dir="/$$dir"; \
|
dir="/$$dir"; \
|
||||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
$(mkdir_p) "$(distdir)$$dir"; \
|
||||||
else \
|
else \
|
||||||
dir=''; \
|
dir=''; \
|
||||||
fi; \
|
fi; \
|
||||||
@ -549,9 +533,10 @@ check-am: all-am
|
|||||||
$(MAKE) $(AM_MAKEFLAGS) check-local
|
$(MAKE) $(AM_MAKEFLAGS) check-local
|
||||||
check: check-am
|
check: check-am
|
||||||
all-am: Makefile $(PROGRAMS) $(SCRIPTS)
|
all-am: Makefile $(PROGRAMS) $(SCRIPTS)
|
||||||
|
|
||||||
installdirs:
|
installdirs:
|
||||||
$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(bindir)
|
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"; do \
|
||||||
|
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||||
|
done
|
||||||
install: install-am
|
install: install-am
|
||||||
install-exec: install-exec-am
|
install-exec: install-exec-am
|
||||||
install-data: install-data-am
|
install-data: install-data-am
|
||||||
@ -571,7 +556,7 @@ mostlyclean-generic:
|
|||||||
clean-generic:
|
clean-generic:
|
||||||
|
|
||||||
distclean-generic:
|
distclean-generic:
|
||||||
-rm -f $(CONFIG_CLEAN_FILES)
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||||
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
||||||
|
|
||||||
maintainer-clean-generic:
|
maintainer-clean-generic:
|
||||||
@ -591,6 +576,8 @@ dvi: dvi-am
|
|||||||
|
|
||||||
dvi-am:
|
dvi-am:
|
||||||
|
|
||||||
|
html: html-am
|
||||||
|
|
||||||
info: info-am
|
info: info-am
|
||||||
|
|
||||||
info-am:
|
info-am:
|
||||||
@ -628,14 +615,15 @@ uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \
|
|||||||
.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \
|
.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \
|
||||||
clean-binPROGRAMS clean-generic ctags distclean \
|
clean-binPROGRAMS clean-generic ctags distclean \
|
||||||
distclean-compile distclean-generic distclean-tags distdir dvi \
|
distclean-compile distclean-generic distclean-tags distdir dvi \
|
||||||
dvi-am info info-am install install-am install-binPROGRAMS \
|
dvi-am html html-am info info-am install install-am \
|
||||||
install-binSCRIPTS install-data install-data-am install-exec \
|
install-binPROGRAMS install-binSCRIPTS install-data \
|
||||||
install-exec-am install-info install-info-am install-man \
|
install-data-am install-exec install-exec-am install-info \
|
||||||
install-strip installcheck installcheck-am installdirs \
|
install-info-am install-man install-strip installcheck \
|
||||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
installcheck-am installdirs maintainer-clean \
|
||||||
mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
|
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||||
tags uninstall uninstall-am uninstall-binPROGRAMS \
|
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
|
||||||
uninstall-binSCRIPTS uninstall-info-am
|
uninstall-am uninstall-binPROGRAMS uninstall-binSCRIPTS \
|
||||||
|
uninstall-info-am
|
||||||
|
|
||||||
|
|
||||||
check-local: localcheck remotecheck
|
check-local: localcheck remotecheck
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (c) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (c) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -37,8 +42,9 @@ static int build_entry PROTO((const char *repository, const char *user,
|
|||||||
static const char *const add_usage[] =
|
static const char *const add_usage[] =
|
||||||
{
|
{
|
||||||
"Usage: %s %s [-k rcs-kflag] [-m message] files...\n",
|
"Usage: %s %s [-k rcs-kflag] [-m message] files...\n",
|
||||||
"\t-k\tUse \"rcs-kflag\" to add the file with the specified kflag.\n",
|
"\t-k rcs-kflag\tUse \"rcs-kflag\" to add the file with the specified\n",
|
||||||
"\t-m\tUse \"message\" for the creation log.\n",
|
"\t\t\tkflag.\n",
|
||||||
|
"\t-m message\tUse \"message\" for the creation log.\n",
|
||||||
"(Specify the --help global option for a list of other help options)\n",
|
"(Specify the --help global option for a list of other help options)\n",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
@ -75,12 +81,12 @@ add (argc, argv)
|
|||||||
switch (c)
|
switch (c)
|
||||||
{
|
{
|
||||||
case 'k':
|
case 'k':
|
||||||
if (options)
|
if (options) free (options);
|
||||||
free (options);
|
|
||||||
options = RCS_check_kflag (optarg);
|
options = RCS_check_kflag (optarg);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'm':
|
case 'm':
|
||||||
|
if (message) free (message);
|
||||||
message = xstrdup (optarg);
|
message = xstrdup (optarg);
|
||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
@ -155,11 +161,17 @@ add (argc, argv)
|
|||||||
int j;
|
int j;
|
||||||
|
|
||||||
if (argc == 0)
|
if (argc == 0)
|
||||||
|
{
|
||||||
/* We snipped out all the arguments in the above sanity
|
/* We snipped out all the arguments in the above sanity
|
||||||
check. We can just forget the whole thing (and we
|
check. We can just forget the whole thing (and we
|
||||||
better, because if we fired up the server and passed it
|
better, because if we fired up the server and passed it
|
||||||
nothing, it would spit back a usage message). */
|
nothing, it would spit back a usage message). */
|
||||||
|
if (options)
|
||||||
|
free (options);
|
||||||
|
if (message)
|
||||||
|
free (message);
|
||||||
return err;
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
start_server ();
|
start_server ();
|
||||||
ign_setup ();
|
ign_setup ();
|
||||||
@ -469,7 +481,25 @@ same name already exists in the repository.");
|
|||||||
char *prev = previous_rev (vers->srcfile,
|
char *prev = previous_rev (vers->srcfile,
|
||||||
vers->vn_rcs);
|
vers->vn_rcs);
|
||||||
int status;
|
int status;
|
||||||
assert (prev != NULL);
|
if (prev == NULL)
|
||||||
|
{
|
||||||
|
/* There is no previous revision. Either:
|
||||||
|
*
|
||||||
|
* * Revision 1.1 was dead, as when a file was
|
||||||
|
* inititially added on a branch,
|
||||||
|
*
|
||||||
|
* or
|
||||||
|
*
|
||||||
|
* * All previous revisions have been deleted.
|
||||||
|
* For instance, via `admin -o'.
|
||||||
|
*/
|
||||||
|
if (!really_quiet)
|
||||||
|
error (0, 0,
|
||||||
|
"File `%s' has no previous revision to resurrect.",
|
||||||
|
finfo.fullname);
|
||||||
|
free (prev);
|
||||||
|
goto skip_this_file;
|
||||||
|
}
|
||||||
if (!quiet)
|
if (!quiet)
|
||||||
error (0, 0,
|
error (0, 0,
|
||||||
"Resurrecting file `%s' from revision %s.",
|
"Resurrecting file `%s' from revision %s.",
|
||||||
@ -665,6 +695,8 @@ cannot resurrect %s; RCS file removed by second party", finfo.fullname);
|
|||||||
server_checked_in (finfo.file, finfo.update_dir, repository);
|
server_checked_in (finfo.file, finfo.update_dir, repository);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
skip_this_file:
|
||||||
free (repository);
|
free (repository);
|
||||||
Entries_Close (entries);
|
Entries_Close (entries);
|
||||||
|
|
||||||
@ -745,11 +777,7 @@ add_directory (finfo)
|
|||||||
error (0, errno, "cannot chdir to %s", finfo->fullname);
|
error (0, errno, "cannot chdir to %s", finfo->fullname);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
#ifdef SERVER_SUPPORT
|
|
||||||
if (!server_active && isfile (CVSADM))
|
if (!server_active && isfile (CVSADM))
|
||||||
#else
|
|
||||||
if (isfile (CVSADM))
|
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
error (0, 0, "%s/%s already exists", finfo->fullname, CVSADM);
|
error (0, 0, "%s/%s already exists", finfo->fullname, CVSADM);
|
||||||
goto out;
|
goto out;
|
||||||
@ -818,7 +846,10 @@ add_directory (finfo)
|
|||||||
fileattr_write ();
|
fileattr_write ();
|
||||||
fileattr_free ();
|
fileattr_free ();
|
||||||
if (attrs != NULL)
|
if (attrs != NULL)
|
||||||
|
{
|
||||||
free (attrs);
|
free (attrs);
|
||||||
|
attrs = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Set up an update list with a single title node for Update_Logfile
|
* Set up an update list with a single title node for Update_Logfile
|
||||||
@ -838,9 +869,7 @@ add_directory (finfo)
|
|||||||
dellist (&ulist);
|
dellist (&ulist);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef SERVER_SUPPORT
|
|
||||||
if (!server_active)
|
if (!server_active)
|
||||||
#endif
|
|
||||||
Create_Admin (".", finfo->fullname, rcsdir, tag, date, nonbranch, 0, 1);
|
Create_Admin (".", finfo->fullname, rcsdir, tag, date, nonbranch, 0, 1);
|
||||||
if (tag)
|
if (tag)
|
||||||
free (tag);
|
free (tag);
|
||||||
@ -858,6 +887,8 @@ add_directory (finfo)
|
|||||||
|
|
||||||
free (rcsdir);
|
free (rcsdir);
|
||||||
free (message);
|
free (message);
|
||||||
|
if (attrs != NULL)
|
||||||
|
free (attrs);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
@ -865,6 +896,7 @@ out:
|
|||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
error_exit ();
|
error_exit ();
|
||||||
free_cwd (&cwd);
|
free_cwd (&cwd);
|
||||||
|
if (message) free (message);
|
||||||
if (rcsdir != NULL)
|
if (rcsdir != NULL)
|
||||||
free (rcsdir);
|
free (rcsdir);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (c) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (c) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -379,17 +384,13 @@ admin (argc, argv)
|
|||||||
/* The use of `cvs admin -k' is unrestricted. However, any other
|
/* The use of `cvs admin -k' is unrestricted. However, any other
|
||||||
option is restricted if the group CVS_ADMIN_GROUP exists on the
|
option is restricted if the group CVS_ADMIN_GROUP exists on the
|
||||||
server. */
|
server. */
|
||||||
if (
|
/* This is only "secure" on the server, since the user could edit the
|
||||||
# ifdef CLIENT_SUPPORT
|
* RCS file on a local host, but some people like this kind of
|
||||||
/* This is only "secure" on the server, since the user could edit the
|
* check anyhow. The alternative would be to check only when
|
||||||
* RCS file on a local host, but some people like this kind of
|
* (server_active) rather than when not on the client.
|
||||||
* check anyhow. The alternative would be to check only when
|
*/
|
||||||
* (server_active) rather than when not on the client.
|
if (!current_parsed_root->isremote && !only_k_option &&
|
||||||
*/
|
(grp = getgrnam(CVS_ADMIN_GROUP)) != NULL)
|
||||||
!current_parsed_root->isremote &&
|
|
||||||
# endif /* CLIENT_SUPPORT */
|
|
||||||
!only_k_option
|
|
||||||
&& (grp = getgrnam(CVS_ADMIN_GROUP)) != NULL)
|
|
||||||
{
|
{
|
||||||
#ifdef HAVE_GETGROUPS
|
#ifdef HAVE_GETGROUPS
|
||||||
gid_t *grps;
|
gid_t *grps;
|
||||||
@ -816,6 +817,13 @@ admin_fileproc (callerdat, finfo)
|
|||||||
{
|
{
|
||||||
tag = xstrdup (arg + 2);
|
tag = xstrdup (arg + 2);
|
||||||
rev = RCS_head (rcs);
|
rev = RCS_head (rcs);
|
||||||
|
if (!rev)
|
||||||
|
{
|
||||||
|
error (0, 0, "No head revision in archive file `%s'.",
|
||||||
|
rcs->path);
|
||||||
|
status = 1;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (c) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (c) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -222,6 +227,7 @@ rannotate_proc (argc, argv, xwhere, mwhere, mfile, shorten, local, mname, msg)
|
|||||||
{
|
{
|
||||||
error (0, errno, "cannot chdir to %s", repository);
|
error (0, errno, "cannot chdir to %s", repository);
|
||||||
free (repository);
|
free (repository);
|
||||||
|
free (where);
|
||||||
return (1);
|
return (1);
|
||||||
}
|
}
|
||||||
/* End section which is identical to patch_proc. */
|
/* End section which is identical to patch_proc. */
|
||||||
|
@ -1,3 +1,17 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 1996-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* 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 2, 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.
|
||||||
|
*/
|
||||||
|
|
||||||
/* Declarations concerning the buffer data structure. */
|
/* Declarations concerning the buffer data structure. */
|
||||||
|
|
||||||
#if defined (SERVER_SUPPORT) || defined (CLIENT_SUPPORT)
|
#if defined (SERVER_SUPPORT) || defined (CLIENT_SUPPORT)
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -60,7 +65,7 @@ Checkin (type, finfo, rev, tag, options, message)
|
|||||||
*/
|
*/
|
||||||
assert (finfo->rcs != NULL);
|
assert (finfo->rcs != NULL);
|
||||||
|
|
||||||
switch (RCS_checkin (finfo->rcs, finfo->file, message, rev,
|
switch (RCS_checkin (finfo->rcs, finfo->file, message, rev, 0,
|
||||||
RCS_FLAGS_KEEPFILE))
|
RCS_FLAGS_KEEPFILE))
|
||||||
{
|
{
|
||||||
case 0: /* everything normal */
|
case 0: /* everything normal */
|
||||||
@ -74,7 +79,8 @@ Checkin (type, finfo, rev, tag, options, message)
|
|||||||
changes is if the file contains RCS keywords. So we if
|
changes is if the file contains RCS keywords. So we if
|
||||||
we are not expanding RCS keywords, we are done. */
|
we are not expanding RCS keywords, we are done. */
|
||||||
|
|
||||||
if (strcmp (options, "-V4") == 0) /* upgrade to V5 now */
|
if (options != NULL
|
||||||
|
&& strcmp (options, "-V4") == 0) /* upgrade to V5 now */
|
||||||
options[0] = '\0';
|
options[0] = '\0';
|
||||||
|
|
||||||
/* FIXME: If PreservePermissions is on, RCS_cmp_file is
|
/* FIXME: If PreservePermissions is on, RCS_cmp_file is
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -279,7 +284,9 @@ Classify_File (finfo, tag, date, options, force_tag_match, aflag, versp,
|
|||||||
error (0, 0, "warning: %s was lost", finfo->fullname);
|
error (0, 0, "warning: %s was lost", finfo->fullname);
|
||||||
ret = T_CHECKOUT;
|
ret = T_CHECKOUT;
|
||||||
}
|
}
|
||||||
else if (strcmp (vers->ts_user, vers->ts_rcs) == 0)
|
else if (!strcmp (vers->ts_user,
|
||||||
|
vers->ts_conflict
|
||||||
|
? vers->ts_conflict : vers->ts_rcs))
|
||||||
{
|
{
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -293,6 +300,8 @@ Classify_File (finfo, tag, date, options, force_tag_match, aflag, versp,
|
|||||||
if (vers->entdata->options &&
|
if (vers->entdata->options &&
|
||||||
strcmp (vers->entdata->options, vers->options) != 0)
|
strcmp (vers->entdata->options, vers->options) != 0)
|
||||||
ret = T_CHECKOUT;
|
ret = T_CHECKOUT;
|
||||||
|
else if (vers->ts_conflict)
|
||||||
|
ret = T_CONFLICT;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sticky_ck (finfo, aflag, vers);
|
sticky_ck (finfo, aflag, vers);
|
||||||
@ -313,6 +322,13 @@ Classify_File (finfo, tag, date, options, force_tag_match, aflag, versp,
|
|||||||
else
|
else
|
||||||
ret = T_NEEDS_MERGE;
|
ret = T_NEEDS_MERGE;
|
||||||
#else
|
#else
|
||||||
|
/* Files with conflict markers and new timestamps fall through
|
||||||
|
* here, but they need to. T_CONFLICT is an error in
|
||||||
|
* commit_fileproc, whereas T_CONFLICT with conflict markers
|
||||||
|
* is caught but only warned about. Similarly, update_fileproc
|
||||||
|
* currently reregisters a file that was conflicted but lost
|
||||||
|
* its markers.
|
||||||
|
*/
|
||||||
ret = T_MODIFIED;
|
ret = T_MODIFIED;
|
||||||
sticky_ck (finfo, aflag, vers);
|
sticky_ck (finfo, aflag, vers);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,3 +1,17 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* 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 2, 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.
|
||||||
|
*/
|
||||||
|
|
||||||
/* Interface between the client and the rest of CVS. */
|
/* Interface between the client and the rest of CVS. */
|
||||||
|
|
||||||
/* Stuff shared with the server. */
|
/* Stuff shared with the server. */
|
||||||
@ -119,11 +133,10 @@ send_files PROTO((int argc, char **argv, int local, int aflag,
|
|||||||
|
|
||||||
/* Send an argument to the remote server. */
|
/* Send an argument to the remote server. */
|
||||||
void
|
void
|
||||||
send_arg PROTO((char *string));
|
send_arg PROTO((const char *string));
|
||||||
|
|
||||||
/* Send a string of single-char options to the remote server, one by one. */
|
/* Send a string of single-char options to the remote server, one by one. */
|
||||||
void
|
void send_options PROTO ((int argc, char * const *argv));
|
||||||
send_option_string PROTO((char *string));
|
|
||||||
|
|
||||||
extern void send_a_repository PROTO ((const char *, const char *,
|
extern void send_a_repository PROTO ((const char *, const char *,
|
||||||
const char *));
|
const char *));
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1993 david d zuhn
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1993 david d zuhn
|
||||||
*
|
*
|
||||||
* Written by david d `zoo' zuhn while at Cygnus Support
|
* Written by david d `zoo' zuhn while at Cygnus Support
|
||||||
*
|
*
|
||||||
@ -120,9 +125,9 @@ read_cvsrc (argc, argv, cmdname)
|
|||||||
if (found)
|
if (found)
|
||||||
{
|
{
|
||||||
/* skip over command in the options line */
|
/* skip over command in the options line */
|
||||||
for (optstart = strtok (line + command_len, "\t \n");
|
for (optstart = strtok (line + command_len, "\t \n\r");
|
||||||
optstart;
|
optstart;
|
||||||
optstart = strtok (NULL, "\t \n"))
|
optstart = strtok (NULL, "\t \n\r"))
|
||||||
{
|
{
|
||||||
new_argv [new_argc++] = xstrdup (optstart);
|
new_argv [new_argc++] = xstrdup (optstart);
|
||||||
|
|
||||||
|
@ -32,7 +32,10 @@ onoff_fileproc (callerdat, finfo)
|
|||||||
void *callerdat;
|
void *callerdat;
|
||||||
struct file_info *finfo;
|
struct file_info *finfo;
|
||||||
{
|
{
|
||||||
|
char *watched = fileattr_get0 (finfo->file, "_watched");
|
||||||
fileattr_set (finfo->file, "_watched", turning_on ? "" : NULL);
|
fileattr_set (finfo->file, "_watched", turning_on ? "" : NULL);
|
||||||
|
if (watched != NULL)
|
||||||
|
free (watched);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -50,7 +53,12 @@ onoff_filesdoneproc (callerdat, err, repository, update_dir, entries)
|
|||||||
List *entries;
|
List *entries;
|
||||||
{
|
{
|
||||||
if (setting_default)
|
if (setting_default)
|
||||||
|
{
|
||||||
|
char *watched = fileattr_get0 (NULL, "_watched");
|
||||||
fileattr_set (NULL, "_watched", turning_on ? "" : NULL);
|
fileattr_set (NULL, "_watched", turning_on ? "" : NULL);
|
||||||
|
if (watched != NULL)
|
||||||
|
free (watched);
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -357,12 +365,12 @@ edit_fileproc (callerdat, finfo)
|
|||||||
|
|
||||||
static const char *const edit_usage[] =
|
static const char *const edit_usage[] =
|
||||||
{
|
{
|
||||||
"Usage: %s %s [-lR] [files...]\n",
|
"Usage: %s %s [-lR] [-a <action>]... [<file>]...\n",
|
||||||
"-l: Local directory only, not recursive\n",
|
"-l\tLocal directory only, not recursive.\n",
|
||||||
"-R: Process directories recursively\n",
|
"-R\tProcess directories recursively (default).\n",
|
||||||
"-a: Specify what actions for temporary watch, one of\n",
|
"-a\tSpecify action to register for temporary watch, one of:\n",
|
||||||
" edit,unedit,commit,all,none\n",
|
" \t`edit', `unedit', `commit', `all', or `none' (defaults to `all').\n",
|
||||||
"(Specify the --help global option for a list of other help options)\n",
|
"(Specify the --help global option for a list of other help options.)\n",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -572,10 +580,10 @@ unedit_fileproc (callerdat, finfo)
|
|||||||
|
|
||||||
static const char *const unedit_usage[] =
|
static const char *const unedit_usage[] =
|
||||||
{
|
{
|
||||||
"Usage: %s %s [-lR] [files...]\n",
|
"Usage: %s %s [-lR] [<file>]...\n",
|
||||||
"-l: Local directory only, not recursive\n",
|
"-l\tLocal directory only, not recursive.\n",
|
||||||
"-R: Process directories recursively\n",
|
"-R\tProcess directories recursively (default).\n",
|
||||||
"(Specify the --help global option for a list of other help options)\n",
|
"(Specify the --help global option for a list of other help options.)\n",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1041,10 +1049,10 @@ notify_check (repository, update_dir)
|
|||||||
|
|
||||||
static const char *const editors_usage[] =
|
static const char *const editors_usage[] =
|
||||||
{
|
{
|
||||||
"Usage: %s %s [-lR] [files...]\n",
|
"Usage: %s %s [-lR] [<file>]...\n",
|
||||||
"\t-l\tProcess this directory only (not recursive).\n",
|
"-l\tProcess this directory only (not recursive).\n",
|
||||||
"\t-R\tProcess directories recursively.\n",
|
"-R\tProcess directories recursively (default).\n",
|
||||||
"(Specify the --help global option for a list of other help options)\n",
|
"(Specify the --help global option for a list of other help options.)\n",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,4 +1,16 @@
|
|||||||
/* expand_path.c -- expand environmental variables in passed in string
|
/* expand_path.c -- expand environmental variables in passed in string
|
||||||
|
*
|
||||||
|
* Copyright (C) 1995-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* 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 2, 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.
|
||||||
*
|
*
|
||||||
* The main routine is expand_path(), it is the routine that handles
|
* The main routine is expand_path(), it is the routine that handles
|
||||||
* the '~' character in four forms:
|
* the '~' character in four forms:
|
||||||
@ -97,16 +109,14 @@ expand_path (name, file, line)
|
|||||||
const char *file;
|
const char *file;
|
||||||
int line;
|
int line;
|
||||||
{
|
{
|
||||||
const char *s;
|
size_t s, d, p;
|
||||||
char *d;
|
char *e;
|
||||||
|
|
||||||
char *mybuf = NULL;
|
char *mybuf = NULL;
|
||||||
size_t mybuf_size = 0;
|
size_t mybuf_size = 0;
|
||||||
char *buf = NULL;
|
char *buf = NULL;
|
||||||
size_t buf_size = 0;
|
size_t buf_size = 0;
|
||||||
|
|
||||||
size_t doff;
|
|
||||||
|
|
||||||
char *result;
|
char *result;
|
||||||
|
|
||||||
/* Sorry this routine is so ugly; it is a head-on collision
|
/* Sorry this routine is so ugly; it is a head-on collision
|
||||||
@ -117,82 +127,74 @@ expand_path (name, file, line)
|
|||||||
thusly. */
|
thusly. */
|
||||||
|
|
||||||
/* First copy from NAME to MYBUF, expanding $<foo> as we go. */
|
/* First copy from NAME to MYBUF, expanding $<foo> as we go. */
|
||||||
s = name;
|
s = d = 0;
|
||||||
d = mybuf;
|
while (name[s] != '\0')
|
||||||
doff = d - mybuf;
|
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
|
||||||
d = mybuf + doff;
|
|
||||||
while ((*d++ = *s))
|
|
||||||
{
|
{
|
||||||
if (*s++ == '$')
|
if (name[s] == '$')
|
||||||
{
|
{
|
||||||
char *p = d;
|
p = d;
|
||||||
char *e;
|
if (name[++s] == '{')
|
||||||
int flag = (*s == '{');
|
|
||||||
|
|
||||||
doff = d - mybuf;
|
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
|
||||||
d = mybuf + doff;
|
|
||||||
for (; (*d++ = *s); s++)
|
|
||||||
{
|
{
|
||||||
if (flag
|
while (name[++s] != '}' && name[s] != '\0')
|
||||||
? *s =='}'
|
{
|
||||||
: isalnum ((unsigned char) *s) == 0 && *s != '_')
|
expand_string (&mybuf, &mybuf_size, p + 1);
|
||||||
break;
|
mybuf[p++] = name[s];
|
||||||
doff = d - mybuf;
|
}
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
if (name[s] != '\0') ++s;
|
||||||
d = mybuf + doff;
|
|
||||||
}
|
}
|
||||||
*--d = '\0';
|
else
|
||||||
e = expand_variable (&p[flag], file, line);
|
{
|
||||||
|
while (isalnum ((unsigned char) name[s]) || name[s] == '_')
|
||||||
|
{
|
||||||
|
expand_string (&mybuf, &mybuf_size, p + 1);
|
||||||
|
mybuf[p++] = name[s++];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
expand_string (&mybuf, &mybuf_size, p + 1);
|
||||||
|
mybuf[p] = '\0';
|
||||||
|
e = expand_variable (mybuf + d, file, line);
|
||||||
|
|
||||||
if (e)
|
if (e)
|
||||||
{
|
{
|
||||||
doff = d - mybuf;
|
p = strlen(e);
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
expand_string (&mybuf, &mybuf_size, d + p);
|
||||||
d = mybuf + doff;
|
memcpy(mybuf + d, e, p);
|
||||||
for (d = &p[-1]; (*d++ = *e++);)
|
d += p;
|
||||||
{
|
|
||||||
doff = d - mybuf;
|
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
|
||||||
d = mybuf + doff;
|
|
||||||
}
|
|
||||||
--d;
|
|
||||||
if (flag && *s)
|
|
||||||
s++;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
/* expand_variable has already printed an error message. */
|
/* expand_variable has already printed an error message. */
|
||||||
goto error_exit;
|
goto error_exit;
|
||||||
}
|
}
|
||||||
doff = d - mybuf;
|
else
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
{
|
||||||
d = mybuf + doff;
|
expand_string (&mybuf, &mybuf_size, d + 1);
|
||||||
|
mybuf[d++] = name[s++];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
doff = d - mybuf;
|
expand_string (&mybuf, &mybuf_size, d + 1);
|
||||||
expand_string (&mybuf, &mybuf_size, doff + 1);
|
mybuf[d++] = '\0';
|
||||||
d = mybuf + doff;
|
|
||||||
*d = '\0';
|
|
||||||
|
|
||||||
/* Then copy from MYBUF to BUF, expanding ~. */
|
/* Then copy from MYBUF to BUF, expanding ~. */
|
||||||
s = mybuf;
|
s = d = 0;
|
||||||
d = buf;
|
|
||||||
/* If you don't want ~username ~/ to be expanded simply remove
|
/* If you don't want ~username ~/ to be expanded simply remove
|
||||||
* This entire if statement including the else portion
|
* This entire if statement including the else portion
|
||||||
*/
|
*/
|
||||||
if (*s++ == '~')
|
if (mybuf[s] == '~')
|
||||||
{
|
{
|
||||||
char *t;
|
p = d;
|
||||||
char *p, *pstart;
|
while (mybuf[++s] != '/' && mybuf[s] != '\0')
|
||||||
pstart = p = xstrdup (s);
|
{
|
||||||
if (*pstart=='/' || *pstart==0)
|
expand_string (&buf, &buf_size, p + 1);
|
||||||
t = get_homedir ();
|
buf[p++] = name[s];
|
||||||
|
}
|
||||||
|
expand_string (&buf, &buf_size, p + 1);
|
||||||
|
buf[p] = '\0';
|
||||||
|
|
||||||
|
if (p == d)
|
||||||
|
e = get_homedir ();
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#ifdef GETPWNAM_MISSING
|
#ifdef GETPWNAM_MISSING
|
||||||
for (; *p!='/' && *p; p++)
|
|
||||||
;
|
|
||||||
*p = 0;
|
|
||||||
if (line != 0)
|
if (line != 0)
|
||||||
error (0, 0,
|
error (0, 0,
|
||||||
"%s:%d:tilde expansion not supported on this system",
|
"%s:%d:tilde expansion not supported on this system",
|
||||||
@ -200,57 +202,34 @@ expand_path (name, file, line)
|
|||||||
else
|
else
|
||||||
error (0, 0, "%s:tilde expansion not supported on this system",
|
error (0, 0, "%s:tilde expansion not supported on this system",
|
||||||
file);
|
file);
|
||||||
return NULL;
|
goto error_exit;
|
||||||
#else
|
#else
|
||||||
struct passwd *ps;
|
struct passwd *ps;
|
||||||
for (; *p!='/' && *p; p++)
|
ps = getpwnam (buf + d);
|
||||||
;
|
if (ps == NULL)
|
||||||
*p = 0;
|
|
||||||
ps = getpwnam (pstart);
|
|
||||||
if (ps == 0)
|
|
||||||
{
|
{
|
||||||
if (line != 0)
|
if (line != 0)
|
||||||
error (0, 0, "%s:%d: no such user %s",
|
error (0, 0, "%s:%d: no such user %s",
|
||||||
file, line, pstart);
|
file, line, buf + d);
|
||||||
else
|
else
|
||||||
error (0, 0, "%s: no such user %s", file, pstart);
|
error (0, 0, "%s: no such user %s", file, buf + d);
|
||||||
return NULL;
|
goto error_exit;
|
||||||
}
|
}
|
||||||
t = ps->pw_dir;
|
e = ps->pw_dir;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
if (t == NULL)
|
if (e == NULL)
|
||||||
error (1, 0, "cannot find home directory");
|
error (1, 0, "cannot find home directory");
|
||||||
|
|
||||||
doff = d - buf;
|
p = strlen(e);
|
||||||
expand_string (&buf, &buf_size, doff + 1);
|
expand_string (&buf, &buf_size, d + p);
|
||||||
d = buf + doff;
|
memcpy(buf + d, e, p);
|
||||||
while ((*d++ = *t++))
|
d += p;
|
||||||
{
|
|
||||||
doff = d - buf;
|
|
||||||
expand_string (&buf, &buf_size, doff + 1);
|
|
||||||
d = buf + doff;
|
|
||||||
}
|
|
||||||
--d;
|
|
||||||
s+=p-pstart;
|
|
||||||
free (pstart);
|
|
||||||
}
|
}
|
||||||
else
|
/* Kill up to here */
|
||||||
--s;
|
p = strlen(mybuf + s) + 1;
|
||||||
/* Kill up to here */
|
expand_string (&buf, &buf_size, d + p);
|
||||||
doff = d - buf;
|
memcpy(buf + d, mybuf + s, p);
|
||||||
expand_string (&buf, &buf_size, doff + 1);
|
|
||||||
d = buf + doff;
|
|
||||||
while ((*d++ = *s++))
|
|
||||||
{
|
|
||||||
doff = d - buf;
|
|
||||||
expand_string (&buf, &buf_size, doff + 1);
|
|
||||||
d = buf + doff;
|
|
||||||
}
|
|
||||||
doff = d - buf;
|
|
||||||
expand_string (&buf, &buf_size, doff + 1);
|
|
||||||
d = buf + doff;
|
|
||||||
*d = '\0';
|
|
||||||
|
|
||||||
/* OK, buf contains the value we want to return. Clean up and return
|
/* OK, buf contains the value we want to return. Clean up and return
|
||||||
it. */
|
it. */
|
||||||
|
@ -139,6 +139,7 @@ fileattr_read ()
|
|||||||
"file attribute database corruption: tab missing in %s",
|
"file attribute database corruption: tab missing in %s",
|
||||||
fname);
|
fname);
|
||||||
++p;
|
++p;
|
||||||
|
if (fileattr_default_attrs) free (fileattr_default_attrs);
|
||||||
fileattr_default_attrs = xstrdup (p);
|
fileattr_default_attrs = xstrdup (p);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -589,6 +590,7 @@ fileattr_write ()
|
|||||||
{
|
{
|
||||||
error (0, errno, "cannot make directory %s", repname);
|
error (0, errno, "cannot make directory %s", repname);
|
||||||
(void) umask (omask);
|
(void) umask (omask);
|
||||||
|
free (fname);
|
||||||
free (repname);
|
free (repname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -600,6 +602,7 @@ fileattr_write ()
|
|||||||
{
|
{
|
||||||
error (0, errno, "cannot write %s", fname);
|
error (0, errno, "cannot write %s", fname);
|
||||||
(void) umask (omask);
|
(void) umask (omask);
|
||||||
|
free (fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -11,7 +11,9 @@
|
|||||||
/* Collect and manage hardlink info associated with a particular file. */
|
/* Collect and manage hardlink info associated with a particular file. */
|
||||||
|
|
||||||
#include "cvs.h"
|
#include "cvs.h"
|
||||||
#include "hardlink.h"
|
|
||||||
|
#ifdef PRESERVE_PERMISSIONS_SUPPORT
|
||||||
|
# include "hardlink.h"
|
||||||
|
|
||||||
/* The structure currently used to manage hardlink info is a list.
|
/* The structure currently used to manage hardlink info is a list.
|
||||||
Therefore, most of the functions which manipulate hardlink data
|
Therefore, most of the functions which manipulate hardlink data
|
||||||
@ -302,4 +304,4 @@ find_checkedout_proc (node, data)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif /* PRESERVE_PERMISSIONS_SUPPORT */
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
when files are being checked out or updated. It is used only when
|
when files are being checked out or updated. It is used only when
|
||||||
hardlinked files are being checked out. */
|
hardlinked files are being checked out. */
|
||||||
|
|
||||||
|
#ifdef PRESERVE_PERMISSIONS_SUPPORT
|
||||||
struct hardlink_info
|
struct hardlink_info
|
||||||
{
|
{
|
||||||
Ctype status; /* as returned from Classify_File() */
|
Ctype status; /* as returned from Classify_File() */
|
||||||
@ -31,3 +32,4 @@ void update_hardlink_info PROTO ((const char *));
|
|||||||
List *list_linked_files_on_disk PROTO ((char *));
|
List *list_linked_files_on_disk PROTO ((char *));
|
||||||
int compare_linkage_lists PROTO ((List *, List *));
|
int compare_linkage_lists PROTO ((List *, List *));
|
||||||
int find_checkedout_proc PROTO ((Node *, void *));
|
int find_checkedout_proc PROTO ((Node *, void *));
|
||||||
|
#endif /* PRESERVE_PERMISSIONS_SUPPORT */
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,9 +1,18 @@
|
|||||||
/*
|
/*
|
||||||
|
* Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* as specified in the README file that comes with the CVS 1.0 kit.
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
* any later version.
|
||||||
*
|
*
|
||||||
* **************** History of Users and Module ****************
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* **************** History of Users and Module ****************
|
||||||
*
|
*
|
||||||
* LOGGING: Append record to "${CVSROOT}/CVSROOTADM/CVSROOTADM_HISTORY".
|
* LOGGING: Append record to "${CVSROOT}/CVSROOTADM/CVSROOTADM_HISTORY".
|
||||||
*
|
*
|
||||||
@ -236,7 +245,7 @@ static short tz_local;
|
|||||||
static time_t tz_seconds_east_of_GMT;
|
static time_t tz_seconds_east_of_GMT;
|
||||||
static char *tz_name = "+0000";
|
static char *tz_name = "+0000";
|
||||||
|
|
||||||
char *logHistory = ALL_HISTORY_REC_TYPES;
|
char *logHistory;
|
||||||
|
|
||||||
/* -r, -t, or -b options, malloc'd. These are "" if the option in
|
/* -r, -t, or -b options, malloc'd. These are "" if the option in
|
||||||
question is not specified or is overridden by another option. The
|
question is not specified or is overridden by another option. The
|
||||||
@ -257,24 +266,24 @@ static struct hrec *last_backto;
|
|||||||
we do. */
|
we do. */
|
||||||
static char *rec_types;
|
static char *rec_types;
|
||||||
|
|
||||||
static int hrec_count;
|
static size_t hrec_count;
|
||||||
static int hrec_max;
|
static size_t hrec_max;
|
||||||
|
|
||||||
static char **user_list; /* Ptr to array of ptrs to user names */
|
static char **user_list; /* Ptr to array of ptrs to user names */
|
||||||
static int user_max; /* Number of elements allocated */
|
static size_t user_max; /* Number of elements allocated */
|
||||||
static int user_count; /* Number of elements used */
|
static size_t user_count; /* Number of elements used */
|
||||||
|
|
||||||
static struct file_list_str
|
static struct file_list_str
|
||||||
{
|
{
|
||||||
char *l_file;
|
char *l_file;
|
||||||
char *l_module;
|
char *l_module;
|
||||||
} *file_list; /* Ptr to array file name structs */
|
} *file_list; /* Ptr to array file name structs */
|
||||||
static int file_max; /* Number of elements allocated */
|
static size_t file_max; /* Number of elements allocated */
|
||||||
static int file_count; /* Number of elements used */
|
static size_t file_count; /* Number of elements used */
|
||||||
|
|
||||||
static char **mod_list; /* Ptr to array of ptrs to module names */
|
static char **mod_list; /* Ptr to array of ptrs to module names */
|
||||||
static int mod_max; /* Number of elements allocated */
|
static size_t mod_max; /* Number of elements allocated */
|
||||||
static int mod_count; /* Number of elements used */
|
static size_t mod_count; /* Number of elements used */
|
||||||
|
|
||||||
static char *histfile; /* Ptr to the history file name */
|
static char *histfile; /* Ptr to the history file name */
|
||||||
|
|
||||||
@ -442,7 +451,7 @@ history (argc, argv)
|
|||||||
backto = xstrdup (optarg);
|
backto = xstrdup (optarg);
|
||||||
break;
|
break;
|
||||||
case 'f': /* For specified file */
|
case 'f': /* For specified file */
|
||||||
save_file ("", optarg, (char *) NULL);
|
save_file (NULL, optarg, NULL);
|
||||||
break;
|
break;
|
||||||
case 'm': /* Full module report */
|
case 'm': /* Full module report */
|
||||||
if (!module_report++) report_count++;
|
if (!module_report++) report_count++;
|
||||||
@ -451,7 +460,7 @@ history (argc, argv)
|
|||||||
save_module (optarg);
|
save_module (optarg);
|
||||||
break;
|
break;
|
||||||
case 'p': /* For specified directory */
|
case 'p': /* For specified directory */
|
||||||
save_file (optarg, "", (char *) NULL);
|
save_file (optarg, NULL, NULL);
|
||||||
break;
|
break;
|
||||||
case 'r': /* Since specified Tag/Rev */
|
case 'r': /* Since specified Tag/Rev */
|
||||||
if (since_date || *since_tag || *backto)
|
if (since_date || *since_tag || *backto)
|
||||||
@ -534,7 +543,7 @@ history (argc, argv)
|
|||||||
argc -= optind;
|
argc -= optind;
|
||||||
argv += optind;
|
argv += optind;
|
||||||
for (i = 0; i < argc; i++)
|
for (i = 0; i < argc; i++)
|
||||||
save_file ("", argv[i], (char *) NULL);
|
save_file (NULL, argv[i], NULL);
|
||||||
|
|
||||||
|
|
||||||
/* ================ Now analyze the arguments a bit */
|
/* ================ Now analyze the arguments a bit */
|
||||||
@ -724,9 +733,10 @@ history_write (type, update_dir, revs, name, repository)
|
|||||||
* readonlyfs.
|
* readonlyfs.
|
||||||
*/
|
*/
|
||||||
return;
|
return;
|
||||||
if ( strchr(logHistory, type) == NULL )
|
if (strchr (logHistory, type) == NULL)
|
||||||
return;
|
return;
|
||||||
fname = xmalloc (strlen (current_parsed_root->directory) + sizeof (CVSROOTADM)
|
fname = xmalloc (strlen (current_parsed_root->directory)
|
||||||
|
+ sizeof (CVSROOTADM)
|
||||||
+ sizeof (CVSROOTADM_HISTORY) + 3);
|
+ sizeof (CVSROOTADM_HISTORY) + 3);
|
||||||
(void) sprintf (fname, "%s/%s/%s", current_parsed_root->directory,
|
(void) sprintf (fname, "%s/%s/%s", current_parsed_root->directory,
|
||||||
CVSROOTADM, CVSROOTADM_HISTORY);
|
CVSROOTADM, CVSROOTADM_HISTORY);
|
||||||
@ -752,6 +762,11 @@ history_write (type, update_dir, revs, name, repository)
|
|||||||
CLIENT_SERVER_STR, fname);
|
CLIENT_SERVER_STR, fname);
|
||||||
if (noexec)
|
if (noexec)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
if (!history_lock (current_parsed_root->directory))
|
||||||
|
/* history_lock() will already have printed an error on failure. */
|
||||||
|
goto out;
|
||||||
|
|
||||||
fd = CVS_OPEN (fname, O_WRONLY | O_APPEND | OPEN_BINARY, 0666);
|
fd = CVS_OPEN (fname, O_WRONLY | O_APPEND | OPEN_BINARY, 0666);
|
||||||
if (fd < 0)
|
if (fd < 0)
|
||||||
{
|
{
|
||||||
@ -789,7 +804,7 @@ history_write (type, update_dir, revs, name, repository)
|
|||||||
if (save_cwd (&cwd))
|
if (save_cwd (&cwd))
|
||||||
error_exit ();
|
error_exit ();
|
||||||
|
|
||||||
if ( CVS_CHDIR (pwdir) < 0 || (homedir = xgetwd ()) == NULL)
|
if (CVS_CHDIR (pwdir) < 0 || (homedir = xgetwd ()) == NULL)
|
||||||
homedir = pwdir;
|
homedir = pwdir;
|
||||||
|
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
@ -896,6 +911,7 @@ history_write (type, update_dir, revs, name, repository)
|
|||||||
error (1, errno, "cannot close history file: %s", fname);
|
error (1, errno, "cannot close history file: %s", fname);
|
||||||
free (workdir);
|
free (workdir);
|
||||||
out:
|
out:
|
||||||
|
clear_history_lock ();
|
||||||
free (fname);
|
free (fname);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -910,7 +926,8 @@ save_user (name)
|
|||||||
if (user_count == user_max)
|
if (user_count == user_max)
|
||||||
{
|
{
|
||||||
user_max = xsum (user_max, USER_INCREMENT);
|
user_max = xsum (user_max, USER_INCREMENT);
|
||||||
if (size_overflow_p (xtimes (user_max, sizeof (char *))))
|
if (user_count == user_max
|
||||||
|
|| size_overflow_p (xtimes (user_max, sizeof (char *))))
|
||||||
{
|
{
|
||||||
error (0, 0, "save_user: too many users");
|
error (0, 0, "save_user: too many users");
|
||||||
return;
|
return;
|
||||||
@ -944,7 +961,8 @@ save_file (dir, name, module)
|
|||||||
if (file_count == file_max)
|
if (file_count == file_max)
|
||||||
{
|
{
|
||||||
file_max = xsum (file_max, FILE_INCREMENT);
|
file_max = xsum (file_max, FILE_INCREMENT);
|
||||||
if (size_overflow_p (xtimes (file_max, sizeof (*fl))))
|
if (file_count == file_max
|
||||||
|
|| size_overflow_p (xtimes (file_max, sizeof (*fl))))
|
||||||
{
|
{
|
||||||
error (0, 0, "save_file: too many files");
|
error (0, 0, "save_file: too many files");
|
||||||
return;
|
return;
|
||||||
@ -952,7 +970,9 @@ save_file (dir, name, module)
|
|||||||
file_list = xrealloc (file_list, xtimes (file_max, sizeof (*fl)));
|
file_list = xrealloc (file_list, xtimes (file_max, sizeof (*fl)));
|
||||||
}
|
}
|
||||||
fl = &file_list[file_count++];
|
fl = &file_list[file_count++];
|
||||||
fl->l_file = cp = xmalloc (strlen (dir) + strlen (name) + 2);
|
fl->l_file = cp = xmalloc (dir ? strlen (dir) : 0
|
||||||
|
+ name ? strlen (name) : 0
|
||||||
|
+ 2);
|
||||||
fl->l_module = module;
|
fl->l_module = module;
|
||||||
|
|
||||||
if (dir && *dir)
|
if (dir && *dir)
|
||||||
@ -989,7 +1009,8 @@ save_module (module)
|
|||||||
if (mod_count == mod_max)
|
if (mod_count == mod_max)
|
||||||
{
|
{
|
||||||
mod_max = xsum (mod_max, MODULE_INCREMENT);
|
mod_max = xsum (mod_max, MODULE_INCREMENT);
|
||||||
if (size_overflow_p (xtimes (mod_max, sizeof (char *))))
|
if (mod_count == mod_max
|
||||||
|
|| size_overflow_p (xtimes (mod_max, sizeof (char *))))
|
||||||
{
|
{
|
||||||
error (0, 0, "save_module: too many modules");
|
error (0, 0, "save_module: too many modules");
|
||||||
return;
|
return;
|
||||||
@ -1142,9 +1163,13 @@ read_hrecs (fname)
|
|||||||
{
|
{
|
||||||
struct hrec *old_head = hrec_head;
|
struct hrec *old_head = hrec_head;
|
||||||
|
|
||||||
hrec_max += HREC_INCREMENT;
|
hrec_max = xsum (hrec_max, HREC_INCREMENT);
|
||||||
hrec_head = xrealloc ((char *) hrec_head,
|
if (hrec_count == hrec_max
|
||||||
hrec_max * sizeof (struct hrec));
|
|| size_overflow_p (xtimes (hrec_max, sizeof (struct hrec))))
|
||||||
|
error (1, 0, "Too many history records in history file.");
|
||||||
|
|
||||||
|
hrec_head = xrealloc (hrec_head,
|
||||||
|
xtimes (hrec_max, sizeof (struct hrec)));
|
||||||
if (last_since_tag)
|
if (last_since_tag)
|
||||||
last_since_tag = hrec_head + (last_since_tag - old_head);
|
last_since_tag = hrec_head + (last_since_tag - old_head);
|
||||||
if (last_backto)
|
if (last_backto)
|
||||||
@ -1393,6 +1418,8 @@ select_hrec (hr)
|
|||||||
if (within (cp, cp2))
|
if (within (cp, cp2))
|
||||||
{
|
{
|
||||||
hr->mod = fl->l_module;
|
hr->mod = fl->l_module;
|
||||||
|
if (cmpfile != NULL)
|
||||||
|
free (cmpfile);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (cmpfile != NULL)
|
if (cmpfile != NULL)
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2003, Derek Price, Ximbiot <http://ximbiot.com>,
|
* Copyright (C) 2003-2005 The Free Software Foundation, Inc.
|
||||||
* and the Free Software Foundation
|
*
|
||||||
|
* Portions Copyright (C) 2003-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License
|
* You may distribute under the terms of the GNU General Public License
|
||||||
* as specified in the README file that comes with the CVS source
|
* as specified in the README file that comes with the CVS source
|
||||||
|
@ -65,13 +65,11 @@ ign_setup ()
|
|||||||
ign_add (tmp, 0);
|
ign_add (tmp, 0);
|
||||||
free (tmp);
|
free (tmp);
|
||||||
|
|
||||||
#ifdef CLIENT_SUPPORT
|
|
||||||
/* The client handles another way, by (after it does its own ignore file
|
/* The client handles another way, by (after it does its own ignore file
|
||||||
processing, and only if !ign_inhibit_server), letting the server
|
processing, and only if !ign_inhibit_server), letting the server
|
||||||
know about the files and letting it decide whether to ignore
|
know about the files and letting it decide whether to ignore
|
||||||
them based on CVSROOOTADM_IGNORE. */
|
them based on CVSROOOTADM_IGNORE. */
|
||||||
if (!current_parsed_root->isremote)
|
if (!current_parsed_root->isremote)
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
char *file = xmalloc (strlen (current_parsed_root->directory) + sizeof (CVSROOTADM)
|
char *file = xmalloc (strlen (current_parsed_root->directory) + sizeof (CVSROOTADM)
|
||||||
+ sizeof (CVSROOTADM_IGNORE) + 10);
|
+ sizeof (CVSROOTADM_IGNORE) + 10);
|
||||||
@ -237,10 +235,25 @@ ign_add (ign, hold)
|
|||||||
free (ign_list[i]);
|
free (ign_list[i]);
|
||||||
ign_hold = -1;
|
ign_hold = -1;
|
||||||
}
|
}
|
||||||
s_ign_list = (char **) xmalloc (ign_count * sizeof (char *));
|
if (s_ign_list)
|
||||||
for (i = 0; i < ign_count; i++)
|
{
|
||||||
s_ign_list[i] = ign_list[i];
|
/* Don't save the ignore list twice - if there are two
|
||||||
s_ign_count = ign_count;
|
* bangs in a local .cvsignore file then we don't want to
|
||||||
|
* save the new list the first bang created.
|
||||||
|
*
|
||||||
|
* We still need to free the "new" ignore list.
|
||||||
|
*/
|
||||||
|
for (i = 0; i < ign_count; i++)
|
||||||
|
free (ign_list[i]);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Save the ignore list for later. */
|
||||||
|
s_ign_list = xmalloc (ign_count * sizeof (char *));
|
||||||
|
for (i = 0; i < ign_count; i++)
|
||||||
|
s_ign_list[i] = ign_list[i];
|
||||||
|
s_ign_count = ign_count;
|
||||||
|
}
|
||||||
ign_count = 1;
|
ign_count = 1;
|
||||||
/* Always ignore the "CVS" directory. */
|
/* Always ignore the "CVS" directory. */
|
||||||
ign_list[0] = xstrdup ("CVS");
|
ign_list[0] = xstrdup ("CVS");
|
||||||
@ -331,7 +344,7 @@ ignore_directory (name)
|
|||||||
i = dir_ign_current;
|
i = dir_ign_current;
|
||||||
while (i--)
|
while (i--)
|
||||||
{
|
{
|
||||||
if (strncmp (name, dir_ign_list[i], strlen (dir_ign_list[i])) == 0)
|
if (strncmp (name, dir_ign_list[i], strlen (dir_ign_list[i])+1) == 0)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License
|
* You may distribute under the terms of the GNU General Public License
|
||||||
* as specified in the README file that comes with the CVS source
|
* as specified in the README file that comes with the CVS source
|
||||||
@ -131,7 +136,6 @@ my_module (db, mname, m_type, msg, callback_proc, where, shorten,
|
|||||||
char *mwhere = NULL;
|
char *mwhere = NULL;
|
||||||
char *mfile = NULL;
|
char *mfile = NULL;
|
||||||
char *spec_opt = NULL;
|
char *spec_opt = NULL;
|
||||||
char *xvalue = NULL;
|
|
||||||
int alias = 0;
|
int alias = 0;
|
||||||
datum key, val;
|
datum key, val;
|
||||||
char *cp;
|
char *cp;
|
||||||
@ -371,6 +375,7 @@ my_module (db, mname, m_type, msg, callback_proc, where, shorten,
|
|||||||
/* mwhere gets just the module name */
|
/* mwhere gets just the module name */
|
||||||
mwhere = xstrdup (mname);
|
mwhere = xstrdup (mname);
|
||||||
mfile = cp + 1;
|
mfile = cp + 1;
|
||||||
|
assert (strlen (mfile));
|
||||||
|
|
||||||
/* put the / back in mname */
|
/* put the / back in mname */
|
||||||
*cp = '/';
|
*cp = '/';
|
||||||
@ -744,7 +749,7 @@ module `%s' is a request for a file in a module which is not a directory",
|
|||||||
err += run_exec (RUN_TTY, RUN_TTY, RUN_TTY, RUN_NORMAL);
|
err += run_exec (RUN_TTY, RUN_TTY, RUN_TTY, RUN_NORMAL);
|
||||||
free (expanded_path);
|
free (expanded_path);
|
||||||
}
|
}
|
||||||
free (real_prog);
|
if (real_prog) free (real_prog);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -765,8 +770,6 @@ module `%s' is a request for a file in a module which is not a directory",
|
|||||||
if (value != NULL)
|
if (value != NULL)
|
||||||
free (value);
|
free (value);
|
||||||
|
|
||||||
if (xvalue != NULL)
|
|
||||||
free (xvalue);
|
|
||||||
return (err);
|
return (err);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,3 +1,17 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* 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 2, 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.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifdef MY_NDBM
|
#ifdef MY_NDBM
|
||||||
|
|
||||||
#define DBLKSIZ 4096
|
#define DBLKSIZ 4096
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -15,6 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "cvs.h"
|
#include "cvs.h"
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
int
|
int
|
||||||
No_Difference (finfo, vers)
|
No_Difference (finfo, vers)
|
||||||
@ -71,6 +77,7 @@ No_Difference (finfo, vers)
|
|||||||
|
|
||||||
/* update the entdata pointer in the vers_ts structure */
|
/* update the entdata pointer in the vers_ts structure */
|
||||||
p = findnode (finfo->entries, finfo->file);
|
p = findnode (finfo->entries, finfo->file);
|
||||||
|
assert (p);
|
||||||
vers->entdata = p->data;
|
vers->entdata = p->data;
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
@ -1,3 +1,17 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 1994-2005 The Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* 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 2, 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.
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Release: "cancel" a checkout in the history log.
|
* Release: "cancel" a checkout in the history log.
|
||||||
*
|
*
|
||||||
@ -67,7 +81,6 @@ release (argc, argv)
|
|||||||
{
|
{
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
int i, c;
|
int i, c;
|
||||||
char *repository;
|
|
||||||
char *line = NULL;
|
char *line = NULL;
|
||||||
size_t line_allocated = 0;
|
size_t line_allocated = 0;
|
||||||
char *update_cmd;
|
char *update_cmd;
|
||||||
@ -124,8 +137,12 @@ release (argc, argv)
|
|||||||
+ 1 + 3 + 3 + 16 + 1);
|
+ 1 + 3 + 3 + 16 + 1);
|
||||||
sprintf (update_cmd, "%s %s%s-n -q -d %s update",
|
sprintf (update_cmd, "%s %s%s-n -q -d %s update",
|
||||||
program_path,
|
program_path,
|
||||||
|
#if defined (CLIENT_SUPPORT) || defined (SERVER_SUPPORT)
|
||||||
cvsauthenticate ? "-a " : "",
|
cvsauthenticate ? "-a " : "",
|
||||||
cvsencrypt ? "-x " : "",
|
cvsencrypt ? "-x " : "",
|
||||||
|
#else
|
||||||
|
"", "",
|
||||||
|
#endif
|
||||||
current_parsed_root->original);
|
current_parsed_root->original);
|
||||||
|
|
||||||
#ifdef CLIENT_SUPPORT
|
#ifdef CLIENT_SUPPORT
|
||||||
@ -173,11 +190,9 @@ release (argc, argv)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
repository = Name_Repository ((char *) NULL, (char *) NULL);
|
|
||||||
|
|
||||||
if (!really_quiet)
|
if (!really_quiet)
|
||||||
{
|
{
|
||||||
int line_length;
|
int line_length, status;
|
||||||
|
|
||||||
/* The "release" command piggybacks on "update", which
|
/* The "release" command piggybacks on "update", which
|
||||||
does the real work of finding out if anything is not
|
does the real work of finding out if anything is not
|
||||||
@ -204,10 +219,10 @@ release (argc, argv)
|
|||||||
complain and go on to the next arg. Especially, we do
|
complain and go on to the next arg. Especially, we do
|
||||||
not want to delete the local copy, since it's obviously
|
not want to delete the local copy, since it's obviously
|
||||||
not what the user thinks it is. */
|
not what the user thinks it is. */
|
||||||
if ((pclose (fp)) != 0)
|
status = pclose (fp);
|
||||||
|
if (status != 0)
|
||||||
{
|
{
|
||||||
error (0, 0, "unable to release `%s'", thisarg);
|
error (0, 0, "unable to release `%s' (%d)", thisarg, status);
|
||||||
free (repository);
|
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
error_exit ();
|
error_exit ();
|
||||||
continue;
|
continue;
|
||||||
@ -222,7 +237,6 @@ release (argc, argv)
|
|||||||
{
|
{
|
||||||
(void) fprintf (stderr, "** `%s' aborted by user choice.\n",
|
(void) fprintf (stderr, "** `%s' aborted by user choice.\n",
|
||||||
cvs_cmd_name);
|
cvs_cmd_name);
|
||||||
free (repository);
|
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
error_exit ();
|
error_exit ();
|
||||||
continue;
|
continue;
|
||||||
@ -236,9 +250,8 @@ release (argc, argv)
|
|||||||
CVS/Entries file in the wrong directory. See release-17
|
CVS/Entries file in the wrong directory. See release-17
|
||||||
through release-23. */
|
through release-23. */
|
||||||
|
|
||||||
free (repository);
|
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
exit (EXIT_FAILURE);
|
error_exit ();
|
||||||
|
|
||||||
if (1
|
if (1
|
||||||
#ifdef CLIENT_SUPPORT
|
#ifdef CLIENT_SUPPORT
|
||||||
@ -255,7 +268,7 @@ release (argc, argv)
|
|||||||
argv[2] = NULL;
|
argv[2] = NULL;
|
||||||
err += unedit (argc, argv);
|
err += unedit (argc, argv);
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
exit (EXIT_FAILURE);
|
error_exit ();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CLIENT_SUPPORT
|
#ifdef CLIENT_SUPPORT
|
||||||
@ -293,7 +306,7 @@ release (argc, argv)
|
|||||||
err += get_server_responses ();
|
err += get_server_responses ();
|
||||||
|
|
||||||
if (restore_cwd (&cwd, NULL))
|
if (restore_cwd (&cwd, NULL))
|
||||||
exit (EXIT_FAILURE);
|
error_exit ();
|
||||||
}
|
}
|
||||||
#endif /* CLIENT_SUPPORT */
|
#endif /* CLIENT_SUPPORT */
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1992, Mark D. Baushke
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 2002, Derek R. Price
|
*
|
||||||
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Poritons Copyright (c) 1992, Mark D. Baushke
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS source distribution.
|
* specified in the README file that comes with the CVS source distribution.
|
||||||
@ -11,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "cvs.h"
|
#include "cvs.h"
|
||||||
|
#include <assert.h>
|
||||||
#include "getline.h"
|
#include "getline.h"
|
||||||
|
|
||||||
/* Printable names for things in the current_parsed_root->method enum variable.
|
/* Printable names for things in the current_parsed_root->method enum variable.
|
||||||
@ -18,18 +23,19 @@
|
|||||||
|
|
||||||
const char method_names[][16] = {
|
const char method_names[][16] = {
|
||||||
"undefined", "local", "server (rsh)", "pserver",
|
"undefined", "local", "server (rsh)", "pserver",
|
||||||
"kserver", "gserver", "ext", "fork"
|
"kserver", "gserver", "ext", "extssh", "fork"
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifndef DEBUG
|
#ifndef DEBUG
|
||||||
|
|
||||||
char *
|
cvsroot_t *
|
||||||
Name_Root (dir, update_dir)
|
Name_Root (dir, update_dir)
|
||||||
char *dir;
|
const char *dir;
|
||||||
char *update_dir;
|
const char *update_dir;
|
||||||
{
|
{
|
||||||
FILE *fpin;
|
FILE *fpin;
|
||||||
char *ret, *xupdate_dir;
|
cvsroot_t *ret;
|
||||||
|
const char *xupdate_dir;
|
||||||
char *root = NULL;
|
char *root = NULL;
|
||||||
size_t root_allocated = 0;
|
size_t root_allocated = 0;
|
||||||
char *tmp;
|
char *tmp;
|
||||||
@ -87,7 +93,7 @@ Name_Root (dir, update_dir)
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
fclose (fpin);
|
fclose (fpin);
|
||||||
cp = root + (len - 1);
|
cp = root + len - 1;
|
||||||
if (*cp == '\n')
|
if (*cp == '\n')
|
||||||
*cp = '\0'; /* strip the newline */
|
*cp = '\0'; /* strip the newline */
|
||||||
|
|
||||||
@ -96,43 +102,34 @@ Name_Root (dir, update_dir)
|
|||||||
* absolute pathname or specify a remote server.
|
* absolute pathname or specify a remote server.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (
|
ret = parse_cvsroot (root);
|
||||||
#ifdef CLIENT_SUPPORT
|
if (ret == NULL)
|
||||||
(strchr (root, ':') == NULL) &&
|
|
||||||
#endif
|
|
||||||
! isabsolute (root))
|
|
||||||
{
|
{
|
||||||
error (0, 0, "in directory %s:", xupdate_dir);
|
error (0, 0, "in directory %s:", xupdate_dir);
|
||||||
error (0, 0,
|
error (0, 0,
|
||||||
"ignoring %s because it does not contain an absolute pathname.",
|
"ignoring %s because it does not contain a valid root.",
|
||||||
CVSADM_ROOT);
|
CVSADM_ROOT);
|
||||||
ret = NULL;
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CLIENT_SUPPORT
|
if (!ret->isremote && !isdir (ret->directory))
|
||||||
if ((strchr (root, ':') == NULL) && !isdir (root))
|
|
||||||
#else /* ! CLIENT_SUPPORT */
|
|
||||||
if (!isdir (root))
|
|
||||||
#endif /* CLIENT_SUPPORT */
|
|
||||||
{
|
{
|
||||||
error (0, 0, "in directory %s:", xupdate_dir);
|
error (0, 0, "in directory %s:", xupdate_dir);
|
||||||
error (0, 0,
|
error (0, 0,
|
||||||
"ignoring %s because it specifies a non-existent repository %s",
|
"ignoring %s because it specifies a non-existent repository %s",
|
||||||
CVSADM_ROOT, root);
|
CVSADM_ROOT, root);
|
||||||
|
free_cvsroot_t (ret);
|
||||||
ret = NULL;
|
ret = NULL;
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* allocate space to return and fill it in */
|
|
||||||
strip_trailing_slashes (root);
|
|
||||||
ret = xstrdup (root);
|
|
||||||
out:
|
out:
|
||||||
free (cvsadm);
|
free (cvsadm);
|
||||||
free (tmp);
|
free (tmp);
|
||||||
if (root != NULL)
|
if (root != NULL)
|
||||||
free (root);
|
free (root);
|
||||||
return (ret);
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -293,6 +290,7 @@ new_cvsroot_t ()
|
|||||||
|
|
||||||
newroot->original = NULL;
|
newroot->original = NULL;
|
||||||
newroot->method = null_method;
|
newroot->method = null_method;
|
||||||
|
newroot->isremote = 0;
|
||||||
#ifdef CLIENT_SUPPORT
|
#ifdef CLIENT_SUPPORT
|
||||||
newroot->username = NULL;
|
newroot->username = NULL;
|
||||||
newroot->password = NULL;
|
newroot->password = NULL;
|
||||||
@ -301,7 +299,6 @@ new_cvsroot_t ()
|
|||||||
newroot->directory = NULL;
|
newroot->directory = NULL;
|
||||||
newroot->proxy_hostname = NULL;
|
newroot->proxy_hostname = NULL;
|
||||||
newroot->proxy_port = 0;
|
newroot->proxy_port = 0;
|
||||||
newroot->isremote = 0;
|
|
||||||
#endif /* CLIENT_SUPPORT */
|
#endif /* CLIENT_SUPPORT */
|
||||||
|
|
||||||
return newroot;
|
return newroot;
|
||||||
@ -376,6 +373,8 @@ parse_cvsroot (root_in)
|
|||||||
int check_hostname, no_port, no_password;
|
int check_hostname, no_port, no_password;
|
||||||
#endif /* CLIENT_SUPPORT */
|
#endif /* CLIENT_SUPPORT */
|
||||||
|
|
||||||
|
assert (root_in);
|
||||||
|
|
||||||
/* allocate some space */
|
/* allocate some space */
|
||||||
newroot = new_cvsroot_t();
|
newroot = new_cvsroot_t();
|
||||||
|
|
||||||
@ -411,7 +410,7 @@ parse_cvsroot (root_in)
|
|||||||
* We don't handle these, but we like to try and warn the user that
|
* We don't handle these, but we like to try and warn the user that
|
||||||
* they are being ignored.
|
* they are being ignored.
|
||||||
*/
|
*/
|
||||||
if (p = strchr (method, ';'))
|
if ((p = strchr (method, ';')) != NULL)
|
||||||
{
|
{
|
||||||
*p++ = '\0';
|
*p++ = '\0';
|
||||||
if (!really_quiet)
|
if (!really_quiet)
|
||||||
@ -457,10 +456,7 @@ parse_cvsroot (root_in)
|
|||||||
: local_method);
|
: local_method);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CLIENT_SUPPORT
|
|
||||||
newroot->isremote = (newroot->method != local_method);
|
newroot->isremote = (newroot->method != local_method);
|
||||||
#endif /* CLIENT_SUPPORT */
|
|
||||||
|
|
||||||
|
|
||||||
if ((newroot->method != local_method)
|
if ((newroot->method != local_method)
|
||||||
&& (newroot->method != fork_method))
|
&& (newroot->method != fork_method))
|
||||||
@ -743,6 +739,8 @@ normalize_cvsroot (root)
|
|||||||
char *p, *hostname, *username;
|
char *p, *hostname, *username;
|
||||||
char port_s[64];
|
char port_s[64];
|
||||||
|
|
||||||
|
assert (root && root->hostname && root->directory);
|
||||||
|
|
||||||
/* get the appropriate port string */
|
/* get the appropriate port string */
|
||||||
sprintf (port_s, "%d", get_cvs_port_number (root));
|
sprintf (port_s, "%d", get_cvs_port_number (root));
|
||||||
|
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2001, Derek Price and others
|
* Copyright (C) 1986-2005 The Free Software Foundation, Inc.
|
||||||
* Copyright (c) 1992, Brian Berliner and Jeff Polk
|
*
|
||||||
* Copyright (c) 1989-1992, Brian Berliner
|
* Portions Copyright (C) 1998-2005 Derek Price, Ximbiot <http://ximbiot.com>,
|
||||||
|
* and others.
|
||||||
|
*
|
||||||
|
* Portions Copyright (C) 1992, Brian Berliner and Jeff Polk
|
||||||
|
* Portions Copyright (C) 1989-1992, Brian Berliner
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of the GNU General Public License as
|
* You may distribute under the terms of the GNU General Public License as
|
||||||
* specified in the README file that comes with the CVS kit.
|
* specified in the README file that comes with the CVS kit.
|
||||||
@ -18,6 +22,7 @@ typedef enum {
|
|||||||
kserver_method,
|
kserver_method,
|
||||||
gserver_method,
|
gserver_method,
|
||||||
ext_method,
|
ext_method,
|
||||||
|
extssh_method,
|
||||||
fork_method
|
fork_method
|
||||||
} CVSmethod;
|
} CVSmethod;
|
||||||
extern const char method_names[][16]; /* change this in root.c if you change
|
extern const char method_names[][16]; /* change this in root.c if you change
|
||||||
@ -27,6 +32,7 @@ typedef struct cvsroot_s {
|
|||||||
char *original; /* The complete source CVSroot string. */
|
char *original; /* The complete source CVSroot string. */
|
||||||
CVSmethod method; /* One of the enum values above. */
|
CVSmethod method; /* One of the enum values above. */
|
||||||
char *directory; /* The directory name. */
|
char *directory; /* The directory name. */
|
||||||
|
unsigned char isremote; /* Nonzero if we are doing remote access. */
|
||||||
#ifdef CLIENT_SUPPORT
|
#ifdef CLIENT_SUPPORT
|
||||||
char *username; /* The username or NULL if method == local. */
|
char *username; /* The username or NULL if method == local. */
|
||||||
char *password; /* The password or NULL if method == local. */
|
char *password; /* The password or NULL if method == local. */
|
||||||
@ -37,6 +43,14 @@ typedef struct cvsroot_s {
|
|||||||
* used.
|
* used.
|
||||||
*/
|
*/
|
||||||
int proxy_port; /* The port of the proxy or zero, as above. */
|
int proxy_port; /* The port of the proxy or zero, as above. */
|
||||||
unsigned char isremote; /* Nonzero if we are doing remote access. */
|
|
||||||
#endif /* CLIENT_SUPPORT */
|
#endif /* CLIENT_SUPPORT */
|
||||||
} cvsroot_t;
|
} cvsroot_t;
|
||||||
|
|
||||||
|
cvsroot_t *Name_Root PROTO((const char *dir, const char *update_dir));
|
||||||
|
void free_cvsroot_t PROTO((cvsroot_t *root_in));
|
||||||
|
cvsroot_t *parse_cvsroot PROTO((const char *root));
|
||||||
|
cvsroot_t *local_cvsroot PROTO((const char *dir));
|
||||||
|
void Create_Root PROTO((const char *dir, const char *rootdir));
|
||||||
|
void root_allow_add PROTO ((char *));
|
||||||
|
void root_allow_free PROTO ((void));
|
||||||
|
int root_allow_ok PROTO ((char *));
|
||||||
|
@ -36,7 +36,19 @@ extern char *strtok ();
|
|||||||
*/
|
*/
|
||||||
static char **run_argv;
|
static char **run_argv;
|
||||||
static int run_argc;
|
static int run_argc;
|
||||||
static int run_argc_allocated;
|
static size_t run_argc_allocated;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
run_arg_free_p (int argc, char **argv)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 0; i < argc; i++)
|
||||||
|
free (argv[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* VARARGS */
|
/* VARARGS */
|
||||||
void
|
void
|
||||||
@ -44,18 +56,10 @@ run_setup (prog)
|
|||||||
const char *prog;
|
const char *prog;
|
||||||
{
|
{
|
||||||
char *cp;
|
char *cp;
|
||||||
int i;
|
|
||||||
char *run_prog;
|
char *run_prog;
|
||||||
|
|
||||||
/* clean out any malloc'ed values from run_argv */
|
/* clean out any malloc'ed values from run_argv */
|
||||||
for (i = 0; i < run_argc; i++)
|
run_arg_free_p (run_argc, run_argv);
|
||||||
{
|
|
||||||
if (run_argv[i])
|
|
||||||
{
|
|
||||||
free (run_argv[i]);
|
|
||||||
run_argv[i] = (char *) 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
run_argc = 0;
|
run_argc = 0;
|
||||||
|
|
||||||
run_prog = xstrdup (prog);
|
run_prog = xstrdup (prog);
|
||||||
@ -73,22 +77,35 @@ run_arg (s)
|
|||||||
run_add_arg (s);
|
run_add_arg (s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
run_add_arg_p (iargc, iarg_allocated, iargv, s)
|
||||||
|
int *iargc;
|
||||||
|
size_t *iarg_allocated;
|
||||||
|
char ***iargv;
|
||||||
|
const char *s;
|
||||||
|
{
|
||||||
|
/* allocate more argv entries if we've run out */
|
||||||
|
if (*iargc >= *iarg_allocated)
|
||||||
|
{
|
||||||
|
*iarg_allocated += 50;
|
||||||
|
*iargv = xrealloc (*iargv, *iarg_allocated * sizeof (char **));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s)
|
||||||
|
(*iargv)[(*iargc)++] = xstrdup (s);
|
||||||
|
else
|
||||||
|
(*iargv)[*iargc] = NULL; /* not post-incremented on purpose! */
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
run_add_arg (s)
|
run_add_arg (s)
|
||||||
const char *s;
|
const char *s;
|
||||||
{
|
{
|
||||||
/* allocate more argv entries if we've run out */
|
run_add_arg_p (&run_argc, &run_argc_allocated, &run_argv, s);
|
||||||
if (run_argc >= run_argc_allocated)
|
|
||||||
{
|
|
||||||
run_argc_allocated += 50;
|
|
||||||
run_argv = (char **) xrealloc ((char *) run_argv,
|
|
||||||
run_argc_allocated * sizeof (char **));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (s)
|
|
||||||
run_argv[run_argc++] = xstrdup (s);
|
|
||||||
else
|
|
||||||
run_argv[run_argc] = (char *) 0; /* not post-incremented on purpose! */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -400,11 +417,107 @@ run_popen (cmd, mode)
|
|||||||
return (popen (cmd, mode));
|
return (popen (cmd, mode));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Work around an OpenSSH problem: it can put its standard file
|
||||||
|
descriptors into nonblocking mode, which will mess us up if we
|
||||||
|
share file descriptions with it. The simplest workaround is
|
||||||
|
to create an intervening process between OpenSSH and the
|
||||||
|
actual stderr. */
|
||||||
|
|
||||||
|
static void
|
||||||
|
work_around_openssh_glitch (void)
|
||||||
|
{
|
||||||
|
pid_t pid;
|
||||||
|
int stderr_pipe[2];
|
||||||
|
struct stat sb;
|
||||||
|
|
||||||
|
/* Do nothing unless stderr is a file that is affected by
|
||||||
|
nonblocking mode. */
|
||||||
|
if (!(fstat (STDERR_FILENO, &sb) == 0
|
||||||
|
&& (S_ISFIFO (sb.st_mode) || S_ISSOCK (sb.st_mode)
|
||||||
|
|| S_ISCHR (sb.st_mode) || S_ISBLK (sb.st_mode))))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (pipe (stderr_pipe) < 0)
|
||||||
|
error (1, errno, "cannot create pipe");
|
||||||
|
pid = fork ();
|
||||||
|
if (pid < 0)
|
||||||
|
error (1, errno, "cannot fork");
|
||||||
|
if (pid != 0)
|
||||||
|
{
|
||||||
|
/* Still in child of original process. Act like "cat -u". */
|
||||||
|
char buf[1 << 13];
|
||||||
|
ssize_t inbytes;
|
||||||
|
pid_t w;
|
||||||
|
int status;
|
||||||
|
|
||||||
|
if (close (stderr_pipe[1]) < 0)
|
||||||
|
error (1, errno, "cannot close pipe");
|
||||||
|
|
||||||
|
while ((inbytes = read (stderr_pipe[0], buf, sizeof buf)) != 0)
|
||||||
|
{
|
||||||
|
size_t outbytes = 0;
|
||||||
|
|
||||||
|
if (inbytes < 0)
|
||||||
|
{
|
||||||
|
if (errno == EINTR)
|
||||||
|
continue;
|
||||||
|
error (1, errno, "reading from pipe");
|
||||||
|
}
|
||||||
|
|
||||||
|
do
|
||||||
|
{
|
||||||
|
ssize_t w = write (STDERR_FILENO,
|
||||||
|
buf + outbytes, inbytes - outbytes);
|
||||||
|
if (w < 0)
|
||||||
|
{
|
||||||
|
if (errno == EINTR)
|
||||||
|
w = 0;
|
||||||
|
if (w < 0)
|
||||||
|
_exit (1);
|
||||||
|
}
|
||||||
|
outbytes += w;
|
||||||
|
}
|
||||||
|
while (inbytes != outbytes);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Done processing output from grandchild. Propagate
|
||||||
|
its exit status back to the parent. */
|
||||||
|
while ((w = waitpid (pid, &status, 0)) == -1 && errno == EINTR)
|
||||||
|
continue;
|
||||||
|
if (w < 0)
|
||||||
|
error (1, errno, "waiting for child");
|
||||||
|
if (!WIFEXITED (status))
|
||||||
|
{
|
||||||
|
if (WIFSIGNALED (status))
|
||||||
|
raise (WTERMSIG (status));
|
||||||
|
error (1, errno, "child did not exit cleanly");
|
||||||
|
}
|
||||||
|
_exit (WEXITSTATUS (status));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Grandchild of original process. */
|
||||||
|
if (close (stderr_pipe[0]) < 0)
|
||||||
|
error (1, errno, "cannot close pipe");
|
||||||
|
|
||||||
|
if (stderr_pipe[1] != STDERR_FILENO)
|
||||||
|
{
|
||||||
|
if (dup2 (stderr_pipe[1], STDERR_FILENO) < 0)
|
||||||
|
error (1, errno, "cannot dup2 pipe");
|
||||||
|
if (close (stderr_pipe[1]) < 0)
|
||||||
|
error (1, errno, "cannot close pipe");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
piped_child (command, tofdp, fromfdp)
|
piped_child (command, tofdp, fromfdp, fix_stderr)
|
||||||
const char **command;
|
const char **command;
|
||||||
int *tofdp;
|
int *tofdp;
|
||||||
int *fromfdp;
|
int *fromfdp;
|
||||||
|
int fix_stderr;
|
||||||
{
|
{
|
||||||
int pid;
|
int pid;
|
||||||
int to_child_pipe[2];
|
int to_child_pipe[2];
|
||||||
@ -422,11 +535,7 @@ piped_child (command, tofdp, fromfdp)
|
|||||||
setmode (from_child_pipe[1], O_BINARY);
|
setmode (from_child_pipe[1], O_BINARY);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_VFORK
|
|
||||||
pid = vfork ();
|
|
||||||
#else
|
|
||||||
pid = fork ();
|
pid = fork ();
|
||||||
#endif
|
|
||||||
if (pid < 0)
|
if (pid < 0)
|
||||||
error (1, errno, "cannot fork");
|
error (1, errno, "cannot fork");
|
||||||
if (pid == 0)
|
if (pid == 0)
|
||||||
@ -440,7 +549,10 @@ piped_child (command, tofdp, fromfdp)
|
|||||||
if (dup2 (from_child_pipe[1], STDOUT_FILENO) < 0)
|
if (dup2 (from_child_pipe[1], STDOUT_FILENO) < 0)
|
||||||
error (1, errno, "cannot dup2 pipe");
|
error (1, errno, "cannot dup2 pipe");
|
||||||
|
|
||||||
/* Okay to cast out const below - execvp don't return anyhow. */
|
if (fix_stderr)
|
||||||
|
work_around_openssh_glitch ();
|
||||||
|
|
||||||
|
/* Okay to cast out const below - execvp don't return nohow. */
|
||||||
execvp ((char *)command[0], (char **)command);
|
execvp ((char *)command[0], (char **)command);
|
||||||
error (1, errno, "cannot exec %s", command[0]);
|
error (1, errno, "cannot exec %s", command[0]);
|
||||||
}
|
}
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user