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]

Reply via email to