summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin
diff options
context:
space:
mode:
authorrgrimes <rgrimes@FreeBSD.org>1994-05-24 08:11:37 +0000
committerrgrimes <rgrimes@FreeBSD.org>1994-05-24 08:11:37 +0000
commit92898281c92cee55cfd0cd8cf18c1a6d703d7c50 (patch)
tree6ce4949dab9cd52f79bbf95e4d343b031626a247 /gnu/usr.bin
parent01e206e2256fea63f4b0d2ee972dbe858e2bc8e4 (diff)
downloadFreeBSD-src-92898281c92cee55cfd0cd8cf18c1a6d703d7c50.zip
FreeBSD-src-92898281c92cee55cfd0cd8cf18c1a6d703d7c50.tar.gz
Enhancements to use now -K option to rcs so that certain keywords are
NOT touched by cvs. Only takes effect if -DFREEBSD_DEVELOPER, and installs as ncvs when this is defined. You must also have the changes to rcs for this to work.
Diffstat (limited to 'gnu/usr.bin')
-rw-r--r--gnu/usr.bin/cvs/cvs/Makefile11
-rw-r--r--gnu/usr.bin/cvs/cvs/checkin.c7
-rw-r--r--gnu/usr.bin/cvs/cvs/checkout.c4
-rw-r--r--gnu/usr.bin/cvs/cvs/cvs.h3
-rw-r--r--gnu/usr.bin/cvs/cvs/main.c16
-rw-r--r--gnu/usr.bin/cvs/cvs/release.c4
-rw-r--r--gnu/usr.bin/cvs/cvs/update.c5
7 files changed, 50 insertions, 0 deletions
diff --git a/gnu/usr.bin/cvs/cvs/Makefile b/gnu/usr.bin/cvs/cvs/Makefile
index be35c2f..6af8b81 100644
--- a/gnu/usr.bin/cvs/cvs/Makefile
+++ b/gnu/usr.bin/cvs/cvs/Makefile
@@ -1,4 +1,9 @@
+.if !defined(FREEBSD_DEVELOPER)
PROG = cvs
+.else
+PROG = ncvs
+.endif
+
CFLAGS += -I${.CURDIR}/../lib \
-DDIRENT -DSTDC_HEADERS -DPOSIX -DBROKEN_SIGISMEMBER \
-DFTIME_MISSING -DHAVE_TIMEZONE -DUTIME_NULL_MISSING
@@ -9,6 +14,12 @@ LDADD= -L${.CURDIR}/../lib/obj -lcvs
LDADD= -L${.CURDIR}/../lib/ -lcvs
.endif
+.if defined(FREEBSD_DEVELOPER)
+CFLAGS+= -DFREEBSD_DEVELOPER
+BINGRP= ncvs
+#BINMODE=2555
+.endif
+
SRCS = add.c admin.c checkin.c checkout.c classify.c commit.c \
create_adm.c diff.c entries.c find_names.c history.c ignore.c \
import.c lock.c log.c logmsg.c main.c rcs.c modules.c \
diff --git a/gnu/usr.bin/cvs/cvs/checkin.c b/gnu/usr.bin/cvs/cvs/checkin.c
index 14f7c05..44b733e 100644
--- a/gnu/usr.bin/cvs/cvs/checkin.c
+++ b/gnu/usr.bin/cvs/cvs/checkin.c
@@ -65,8 +65,15 @@ Checkin (type, file, repository, rcs, rev, tag, message, entries)
*/
/* XXX - make sure -k options are used on the co; and tag/date? */
+#ifdef FREEBSD_DEVELOPER
+ run_setup ("%s%s -q %s%s %s", Rcsbin, RCS_CO,
+ rev ? "-r" : "", rev ? rev : "",
+ freebsd ? "-KeAuthor,Date,Header,Id,Locker,Log,"
+ "RCSfile,Revision,Source,State -KiFreeBSD" : "");
+#else
run_setup ("%s%s -q %s%s", Rcsbin, RCS_CO,
rev ? "-r" : "", rev ? rev : "");
+#endif /* FREEBSD_DEVELOPER */
run_arg (rcs);
(void) run_exec (RUN_TTY, RUN_TTY, RUN_TTY, RUN_NORMAL);
xchmod (file, 1);
diff --git a/gnu/usr.bin/cvs/cvs/checkout.c b/gnu/usr.bin/cvs/cvs/checkout.c
index 2ec55e6a..31ec591 100644
--- a/gnu/usr.bin/cvs/cvs/checkout.c
+++ b/gnu/usr.bin/cvs/cvs/checkout.c
@@ -221,6 +221,10 @@ checkout (argc, argv)
argc -= optind;
argv += optind;
+#ifdef FREEBSD_DEVELOPER
+ if (!K_flag && freebsd)
+ K_flag = "-KeAuthor,Date,Header,Id,Locker,Log,RCSfile,Revision,Source,State -KiFreeBSD";
+#endif /* FREEBSD_DEVELOPER */
if (shorten == -1)
shorten = 0;
diff --git a/gnu/usr.bin/cvs/cvs/cvs.h b/gnu/usr.bin/cvs/cvs/cvs.h
index 836c5fb..3e1f8f4 100644
--- a/gnu/usr.bin/cvs/cvs/cvs.h
+++ b/gnu/usr.bin/cvs/cvs/cvs.h
@@ -257,6 +257,9 @@ extern int cvswrite;
extern int trace; /* Show all commands */
extern int noexec; /* Don't modify disk anywhere */
extern int logoff; /* Don't write history entry */
+#ifdef FREEBSD_DEVELOPER
+extern int freebsd; /* Assume option defaults for FreBSD */
+#endif /* FREEBSD_DEVELOPER */
/* Externs that are included directly in the CVS sources */
#if __STDC__
diff --git a/gnu/usr.bin/cvs/cvs/main.c b/gnu/usr.bin/cvs/cvs/main.c
index 03f4a2c..d6ad258 100644
--- a/gnu/usr.bin/cvs/cvs/main.c
+++ b/gnu/usr.bin/cvs/cvs/main.c
@@ -93,6 +93,10 @@ int tag ();
int update ();
#endif /* __STDC__ */
+#ifdef FREEBSD_DEVELOPER
+int freebsd = TRUE; /* Use the FreeBSD -K flags!! */
+#endif
+
struct cmd
{
char *fullname; /* Full name of the function (e.g. "commit") */
@@ -137,6 +141,9 @@ static char *usg[] =
" -b bindir Find RCS programs in 'bindir'\n",
" -e editor Use 'editor' for editing log information\n",
" -d CVS_root Overrides $CVSROOT as the root of the CVS tree\n",
+#ifdef FREEBSD_DEVELOPER
+ " -x Do NOT use the FreeBSD -K default flags\n",
+#endif
"\n",
" and where 'command' is:\n",
" add Adds a new file/directory to the repository\n",
@@ -209,7 +216,11 @@ main (argc, argv)
cvswrite = FALSE;
optind = 1;
+#ifdef FREEBSD_DEVELOPER
+ while ((c = gnu_getopt (argc, argv, "Qqrwtnlvb:e:d:Hx")) != -1)
+#else
while ((c = gnu_getopt (argc, argv, "Qqrwtnlvb:e:d:H")) != -1)
+#endif /* FREEBSD_DEVELOPER */
{
switch (c)
{
@@ -255,6 +266,11 @@ main (argc, argv)
case 'H':
help = TRUE;
break;
+#ifdef FREEBSD_DEVELOPER
+ case 'x':
+ freebsd = FALSE;
+ break;
+#endif /* FREEBSD_DEVELOPER */
case '?':
default:
usage (usg);
diff --git a/gnu/usr.bin/cvs/cvs/release.c b/gnu/usr.bin/cvs/cvs/release.c
index 34d36bc..e2a941a 100644
--- a/gnu/usr.bin/cvs/cvs/release.c
+++ b/gnu/usr.bin/cvs/cvs/release.c
@@ -155,7 +155,11 @@ release (argc, argv)
* is "popen()" instead of "Popen()" since we don't want "-n" to
* stop it.
*/
+#ifdef FREEBSD_DEVELOPER
+ fp = popen ("ncvs -n -q update", "r");
+#else
fp = popen ("cvs -n -q update", "r");
+#endif /* FREEBSD_DEVELOPER */
c = 0;
while (fgets (line, sizeof (line), fp))
{
diff --git a/gnu/usr.bin/cvs/cvs/update.c b/gnu/usr.bin/cvs/cvs/update.c
index f3d886a..d68f5f2 100644
--- a/gnu/usr.bin/cvs/cvs/update.c
+++ b/gnu/usr.bin/cvs/cvs/update.c
@@ -189,6 +189,11 @@ update (argc, argv)
argc -= optind;
argv += optind;
+#ifdef FREEBSD_DEVELOPER
+ if (!K_flag && freebsd)
+ K_flag = "-KeAuthor,eDate,eHeader,eId,eLocker,eLog,eRCSfile,eRevision,eSource,eState,iFreeBSD";
+#endif /* FREEBSD_DEVELOPER */
+
/*
* If we are updating the entire directory (for real) and building dirs
* as we go, we make sure there is no static entries file and write the
OpenPOWER on IntegriCloud