diff options
Diffstat (limited to 'gnu/usr.bin/cvs/cvs/checkout.c')
-rw-r--r-- | gnu/usr.bin/cvs/cvs/checkout.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/gnu/usr.bin/cvs/cvs/checkout.c b/gnu/usr.bin/cvs/cvs/checkout.c index ad5a5b8115af9..e7bc608187876 100644 --- a/gnu/usr.bin/cvs/cvs/checkout.c +++ b/gnu/usr.bin/cvs/cvs/checkout.c @@ -70,6 +70,7 @@ static char *checkout_usage[] = "\t-r rev\tCheck out revision or tag. (implies -P)\n", "\t-D date\tCheck out revisions as of date. (implies -P)\n", "\t-d dir\tCheck out into dir instead of module name.\n", + "\t-K key\tUse RCS key -K option on checkout.\n", "\t-k kopt\tUse RCS kopt -k option on checkout.\n", "\t-j rev\tMerge in changes made between current revision and rev.\n", NULL @@ -100,6 +101,7 @@ static char *date = NULL; static char *join_rev1 = NULL; static char *join_rev2 = NULL; static char *preload_update_dir = NULL; +static char *K_flag = NULL; int checkout (argc, argv) @@ -129,7 +131,7 @@ checkout (argc, argv) } else { - valid_options = "ANnk:d:flRpQqcsr:D:j:P"; + valid_options = "ANnk:d:flRpQqcsr:D:j:PK:"; valid_usage = checkout_usage; } @@ -207,6 +209,9 @@ checkout (argc, argv) else join_rev1 = optarg; break; + case 'K': + K_flag = optarg; + break; case '?': default: usage (valid_usage); @@ -216,6 +221,12 @@ checkout (argc, argv) argc -= optind; argv += optind; +#ifdef FREEBSD_DEVELOPER + if (!K_flag && freebsd) { + /* XXX Note: The leading -K is not needed, it gets added later! */ + K_flag = "eAuthor,Date,Header,Id,Locker,Log,RCSfile,Revision,Source,State -KiFreeBSD"; + } +#endif /* FREEBSD_DEVELOPER */ if (shorten == -1) shorten = 0; @@ -597,6 +608,7 @@ checkout_proc (pargc, argv, where, mwhere, mfile, shorten, force_tag_match, 0 /* !local */ , 1 /* update -d */ , aflag, checkout_prune_dirs, pipeout, which, join_rev1, join_rev2, + K_flag, preload_update_dir); free (preload_update_dir); preload_update_dir = oldupdate; @@ -639,7 +651,7 @@ checkout_proc (pargc, argv, where, mwhere, mfile, shorten, err += do_update (*pargc - 1, argv + 1, options, tag, date, force_tag_match, local_specified, 1 /* update -d */, aflag, checkout_prune_dirs, pipeout, which, join_rev1, - join_rev2, preload_update_dir); + join_rev2, K_flag, preload_update_dir); free (preload_update_dir); preload_update_dir = oldupdate; return (err); |