OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src openpkg-web Date: 28-Aug-2003 15:23:47
Branch: HEAD Handle: 2003082814234501
Modified files:
openpkg-src/cvs cvs.patch.rse cvs.spec
openpkg-web news.txt
Log:
add my latest patch allowing to make date-based diffs on branches
Summary:
Revision Changes Path
1.2 +116 -20 openpkg-src/cvs/cvs.patch.rse
1.72 +1 -1 openpkg-src/cvs/cvs.spec
1.6322 +1 -0 openpkg-web/news.txt
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/cvs/cvs.patch.rse
============================================================================
$ cvs diff -u -r1.1 -r1.2 cvs.patch.rse
--- openpkg-src/cvs/cvs.patch.rse 22 Jul 2003 14:09:43 -0000 1.1
+++ openpkg-src/cvs/cvs.patch.rse 28 Aug 2003 13:23:46 -0000 1.2
@@ -3,8 +3,8 @@
RCS file: src/README.RSE
diff -N src/README.RSE
--- /dev/null 1 Jan 1970 00:00:00 -0000
-+++ src/README.RSE 27 May 2003 10:11:25 -0000
-@@ -0,0 +1,320 @@
++++ src/README.RSE 28 Aug 2003 13:11:23 -0000
+@@ -0,0 +1,326 @@
+
+ CVS RSE Patches
+ ===============
@@ -31,6 +31,7 @@
+ - speeded up `cvs update' by sending whole file if smaller than the diff
+ - disabled keyword expansions during branch merges
+ - adjusted `cvs diff -rHEAD' to be consistent with other commands
++ - allow `-j revision:date' for `cvs diff'
+ - set `$LOGNAME' to the real user and not the CVS user
+ - support for `HistoryFile=<rel-path-under-CVSROOT>' variable in config.
+ - use prefix 'T' ("touched/tagged") instead of 'U' ("updated") on `cvs import'
@@ -186,6 +187,11 @@
+ the other commands already treated HEAD as the head of the trunk).
+ [Origin: Stephen Cameron <[EMAIL PROTECTED]>]
+
++ RSE_PATCH_DIFFJ:
++ This patch adds `-j revision:date' to `cvs diff' in order to provide
++ the ability to see date-based differences on branch, too.
++ [Origin: Matt Dillon]
++
+ RSE_PATCH_LOGNAME:
+ This is for SUID-based CVS servers and passes in `$LOGNAME' the real
+ user (first field in `$CVSROOT/CVSROOT/passwd') instead of the SUID
@@ -790,8 +796,8 @@
retrieving revision 1.1.1.9
diff -u -d -r1.1.1.9 cvs.h
--- src/cvs.h 20 May 2003 15:44:50 -0000 1.1.1.9
-+++ src/cvs.h 27 May 2003 09:57:52 -0000
-@@ -7,6 +7,46 @@
++++ src/cvs.h 28 Aug 2003 13:18:02 -0000
+@@ -7,6 +7,47 @@
*/
/*
@@ -827,6 +833,7 @@
+#define RSE_PATCH_ADDFILEATTR
+#define RSE_PATCH_CVSPID
+#define RSE_PATCH_BUGFIX
++#define RSE_PATCH_DIFFJ
+/* problematic changes, because they break "make check" */
+#undef RSE_PATCH_COSMETICS_HARD
+#undef RSE_PATCH_MERGENOKEYWORD
@@ -838,7 +845,7 @@
* basic information used in all source files
*
*/
-@@ -211,6 +251,33 @@
+@@ -211,6 +252,33 @@
#define CVSROOTADM_WRITERS "writers"
#define CVSROOTADM_PASSWD "passwd"
#define CVSROOTADM_CONFIG "config"
@@ -872,7 +879,7 @@
#define CVSNULLREPOS "Emptydir" /* an empty directory */
-@@ -392,6 +459,9 @@
+@@ -392,6 +460,9 @@
extern int use_editor;
extern int cvswrite;
extern mode_t cvsumask;
@@ -882,7 +889,7 @@
-@@ -482,6 +552,27 @@
+@@ -482,6 +553,27 @@
void root_allow_free PROTO ((void));
int root_allow_ok PROTO ((char *));
@@ -910,7 +917,7 @@
char *gca PROTO((const char *rev1, const char *rev2));
extern void check_numeric PROTO ((const char *, int, char **));
char *getcaller PROTO((void));
-@@ -597,6 +688,10 @@
+@@ -597,6 +689,10 @@
extern void expand_wild PROTO ((int argc, char **argv,
int *pargc, char ***pargv));
@@ -921,7 +928,7 @@
extern char *locate_rcs PROTO (( const char *repository,
const char *file,
int *inattic ));
-@@ -844,6 +939,9 @@
+@@ -844,6 +940,9 @@
NULL for add or import */
char *rev_new; /* rev number after a commit/modify,
add, or import, NULL for remove */
@@ -931,7 +938,7 @@
};
/* Wrappers. */
-@@ -883,6 +981,13 @@
+@@ -883,6 +982,13 @@
int unedit PROTO ((int argc, char **argv));
int editors PROTO ((int argc, char **argv));
int watchers PROTO ((int argc, char **argv));
@@ -945,7 +952,7 @@
extern int annotate PROTO ((int argc, char **argv));
extern int add PROTO ((int argc, char **argv));
extern int admin PROTO ((int argc, char **argv));
-@@ -912,6 +1017,9 @@
+@@ -912,6 +1018,9 @@
extern int cvsstatus PROTO((int argc, char **argv));
extern int cvstag PROTO((int argc, char **argv));
extern int version PROTO((int argc, char **argv));
@@ -1275,11 +1282,32 @@
retrieving revision 1.1.1.8
diff -u -d -r1.1.1.8 diff.c
--- src/diff.c 31 Mar 2003 17:38:54 -0000 1.1.1.8
-+++ src/diff.c 27 May 2003 09:47:53 -0000
-@@ -271,7 +271,11 @@
++++ src/diff.c 28 Aug 2003 13:18:06 -0000
+@@ -50,6 +50,10 @@
+ static char *diff_date1, *diff_date2;
+ static char *use_rev1, *use_rev2;
+ static int have_rev1_label, have_rev2_label;
++#if defined(RSE_PATCH_DIFFJ)
++/* Command line dates and revisions, from -j option. Malloc'd. */
++static char *diff_join1, *diff_join2;
++#endif
+
+ /* Revision of the user file, if it is unchanged from something in the
+ repository and we want to use that fact. */
+@@ -268,10 +272,21 @@
+ diff_rev2 = NULL;
+ diff_date1 = NULL;
+ diff_date2 = NULL;
++#if defined(RSE_PATCH_DIFFJ)
++ diff_join1 = NULL; /* used for client/server only */
++ diff_join2 = NULL; /* used for client/server only */
++#endif
optind = 0;
while ((c = getopt_long (argc, argv,
++#if defined(RSE_PATCH_DIFFJ)
++ "j:"
++#endif
+#if defined(RSE_PATCH_HANDLE)
+ "+abcdefh:ilnpstuwy0123456789BHNRTC:D:F:I:L:U:W:k:r:",
+#else
@@ -1288,7 +1316,7 @@
longopts, &option_index)) != -1)
{
switch (c)
-@@ -280,7 +284,11 @@
+@@ -280,7 +295,11 @@
xrealloc_and_strcat (&opts, &opts_allocated, " --side-by-side");
break;
case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
@@ -1300,11 +1328,33 @@
case 'u': case 'w':
case '0': case '1': case '2': case '3': case '4': case '5':
case '6': case '7': case '8': case '9':
-@@ -352,6 +360,17 @@
+@@ -352,6 +371,39 @@
else
diff_date1 = Make_Date (optarg);
break;
-+#ifdef RSE_PATCH_HANDLE
++#if defined(RSE_PATCH_DIFFJ)
++ case 'j':
++ {
++ char *ptr;
++ char *cpy = strdup(optarg);
++ if ((ptr = strchr(optarg, ':')) != NULL)
++ *ptr++ = '\0';
++ if (diff_rev2 != NULL || diff_date2 != NULL)
++ error (1, 0,
++ "no more than two revisions/dates can be specified");
++ if (diff_rev1 != NULL || diff_date1 != NULL) {
++ diff_join2 = cpy;
++ diff_rev2 = optarg;
++ diff_date2 = (ptr != NULL ? Make_Date(ptr) : NULL);
++ } else {
++ diff_join1 = cpy;
++ diff_rev1 = optarg;
++ diff_date1 = (ptr != NULL ? Make_Date(ptr) : NULL);
++ }
++ }
++ break;
++#endif
++#if defined(RSE_PATCH_HANDLE)
+ case 'h': {
+ time_t t1, t2;
+ if (!handle2dates(optarg, &t1, &t2))
@@ -1314,11 +1364,57 @@
+ diff_date2 = date_from_time_t(t2);
+ break;
+ }
-+#endif
++#endif
case 'N':
empty_files = 1;
break;
-@@ -488,7 +507,11 @@
+@@ -382,14 +434,32 @@
+ send_option_string (opts);
+ if (options[0] != '\0')
+ send_arg (options);
++#if defined(RSE_PATCH_DIFFJ)
++ if (diff_join1)
++ option_with_arg ("-j", diff_join1);
++ else if (diff_rev1)
++ option_with_arg ("-r", diff_rev1);
++ else if (diff_date1)
++ client_senddate (diff_date1);
++#else
+ if (diff_rev1)
+ option_with_arg ("-r", diff_rev1);
+ if (diff_date1)
+ client_senddate (diff_date1);
++#endif
++#if defined(RSE_PATCH_DIFFJ)
++ if (diff_join2)
++ option_with_arg ("-j", diff_join2);
++ else if (diff_rev2)
++ option_with_arg ("-r", diff_rev2);
++ else if (diff_date2)
++ client_senddate (diff_date2);
++#else
+ if (diff_rev2)
+ option_with_arg ("-r", diff_rev2);
+ if (diff_date2)
+ client_senddate (diff_date2);
++#endif
+ send_arg ("--");
+
+ /* Send the current files unless diffing two revs from the archive */
+@@ -429,6 +499,12 @@
+ free (options);
+ options = NULL;
+
++#if defined(RSE_PATCH_DIFFJ)
++ if (diff_join1 != NULL)
++ free (diff_join1);
++ if (diff_join2 != NULL)
++ free (diff_join2);
++#endif
+ if (diff_date1 != NULL)
+ free (diff_date1);
+ if (diff_date2 != NULL)
+@@ -488,7 +564,11 @@
char *head =
(vers->vn_rcs == NULL
? NULL
@@ -1330,7 +1426,7 @@
exists = head != NULL && !RCS_isdead(vers->srcfile, head);
if (head != NULL)
free (head);
-@@ -886,7 +909,11 @@
+@@ -886,7 +966,11 @@
if (diff_rev1 && strcmp (diff_rev1, TAG_HEAD) == 0)
use_rev1 = ((vers->vn_rcs == NULL || vers->srcfile == NULL)
? NULL
@@ -1342,7 +1438,7 @@
else
{
xvers = Version_TS (finfo, NULL, diff_rev1, diff_date1, 1, 0);
-@@ -901,7 +928,11 @@
+@@ -901,7 +985,11 @@
if (diff_rev2 && strcmp (diff_rev2, TAG_HEAD) == 0)
use_rev2 = ((vers->vn_rcs == NULL || vers->srcfile == NULL)
? NULL
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/cvs/cvs.spec
============================================================================
$ cvs diff -u -r1.71 -r1.72 cvs.spec
--- openpkg-src/cvs/cvs.spec 24 Jul 2003 07:03:12 -0000 1.71
+++ openpkg-src/cvs/cvs.spec 28 Aug 2003 13:23:46 -0000 1.72
@@ -37,7 +37,7 @@
Group: SCM
License: GPL
Version: %{V_cvs}
-Release: 20030724
+Release: 20030828
# package options
%option with_fsl yes
@@ .
patch -p0 <<'@@ .'
Index: openpkg-web/news.txt
============================================================================
$ cvs diff -u -r1.6321 -r1.6322 news.txt
--- openpkg-web/news.txt 28 Aug 2003 12:22:19 -0000 1.6321
+++ openpkg-web/news.txt 28 Aug 2003 13:23:45 -0000 1.6322
@@ -1,3 +1,4 @@
+28-Aug-2003: Upgraded package: P<cvs-1.12.1-20030828>
28-Aug-2003: Upgraded package: P<icewm-1.2.12-20030828>
28-Aug-2003: Upgraded package: P<perl-crypto-20030828-20030828>
28-Aug-2003: Upgraded package: P<ncftp-3.1.6-20030828>
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]