RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Jeff Johnson
  Root:   /v/rpm/cvs                       Email:  [EMAIL PROTECTED]
  Module: rpm                              Date:   16-Jul-2007 02:15:20
  Branch: HEAD                             Handle: 2007071601152000

  Modified files:
    rpm                     CHANGES
    rpm/build               parsePrep.c

  Log:
    - patch macro seems sufficiently functional, delete the old "stuff".

  Summary:
    Revision    Changes     Path
    1.1471      +1  -0      rpm/CHANGES
    2.79        +2  -276    rpm/build/parsePrep.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.1470 -r1.1471 CHANGES
  --- rpm/CHANGES       15 Jul 2007 19:37:23 -0000      1.1470
  +++ rpm/CHANGES       16 Jul 2007 00:15:20 -0000      1.1471
  @@ -1,4 +1,5 @@
   4.5 -> 5.0:
  +    - jbj: patch macro seems sufficiently functional, delete the old "stuff".
       - jbj: add stub vectors for rpmio I/O API.
       - jbj: drop support for internal lua.
       - jbj: add (preliminary) WR configuration.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/build/parsePrep.c
  ============================================================================
  $ cvs diff -u -r2.78 -r2.79 parsePrep.c
  --- rpm/build/parsePrep.c     14 Jul 2007 20:48:34 -0000      2.78
  +++ rpm/build/parsePrep.c     16 Jul 2007 00:15:20 -0000      2.79
  @@ -54,132 +54,6 @@
       return 0;
   }
   
  -#ifdef       DYING
  -/**
  - * Expand %patchN macro into %prep scriptlet.
  - * @param spec               build info
  - * @param c          patch index
  - * @param strip              patch level (i.e. patch -p argument)
  - * @param db         saved file suffix (i.e. patch --suffix argument)
  - * @param reverse    include -R?
  - * @param removeEmpties      include -E?
  - * @param fuzz               include -F?
  - * @return           expanded %patch macro (NULL on error)
  - */
  -/[EMAIL PROTECTED]@*/
  -/[EMAIL PROTECTED]@*/
  -static char *doPatch(Spec spec, int c, int strip, const char *db,
  -                  int reverse, int removeEmpties, int fuzz, const char 
*subdir)
  -     /[EMAIL PROTECTED] rpmGlobalMacroContext, h_errno, fileSystem, 
internalState @*/
  -     /[EMAIL PROTECTED] rpmGlobalMacroContext, fileSystem, internalState @*/
  -{
  -    const char *fn, *Lurlfn;
  -    static char buf[BUFSIZ];
  -    char args[BUFSIZ], *t = args;
  -    struct Source *sp;
  -    rpmCompressedMagic compressed = COMPRESSED_NOT;
  -    int urltype;
  -    const char *patch;
  -
  -    *t = '\0';
  -    if (db)
  -     t = stpcpy( stpcpy(t, "-b --suffix "), db);
  -    if (subdir)
  -     t = stpcpy( stpcpy(t, "-d "), subdir);
  -    if (fuzz) {
  -     t = stpcpy(t, "-F ");
  -     sprintf(t, "%10.10d", fuzz);
  -     t += strlen(t);
  -    }
  -    if (reverse)
  -     t = stpcpy(t, " -R");
  -    if (removeEmpties)
  -     t = stpcpy(t, " -E");
  -
  -    for (sp = spec->sources; sp != NULL; sp = sp->next) {
  -     if ((sp->flags & RPMFILE_PATCH) && (sp->num == c))
  -         break;
  -    }
  -    if (sp == NULL) {
  -     rpmError(RPMERR_BADSPEC, _("No patch number %d\n"), c);
  -     return NULL;
  -    }
  -
  -    Lurlfn = rpmGenPath(NULL, "%{_patchdir}/", sp->source);
  -
  -    /* XXX On non-build parse's, file cannot be stat'd or read */
  -    if (!spec->force && (isCompressed(Lurlfn, &compressed) || 
checkOwners(Lurlfn))) {
  -     Lurlfn = _free(Lurlfn);
  -     return NULL;
  -    }
  -
  -    fn = NULL;
  -    urltype = urlPath(Lurlfn, &fn);
  -    switch (urltype) {
  -    case URL_IS_HTTPS:       /* XXX WRONG WRONG WRONG */
  -    case URL_IS_HTTP:        /* XXX WRONG WRONG WRONG */
  -    case URL_IS_FTP: /* XXX WRONG WRONG WRONG */
  -    case URL_IS_HKP: /* XXX WRONG WRONG WRONG */
  -    case URL_IS_PATH:
  -    case URL_IS_UNKNOWN:
  -     break;
  -    case URL_IS_DASH:
  -     Lurlfn = _free(Lurlfn);
  -     return NULL;
  -     /[EMAIL PROTECTED]@*/ break;
  -    }
  -
  -    patch = rpmGetPath("%{__patch}", NULL);
  -    if (strcmp(patch, "%{__patch}") == 0)
  -        patch = xstrdup("patch");
  -
  -    if (compressed) {
  -     const char *zipper;
  -
  -     switch (compressed) {
  -     default:
  -     case COMPRESSED_NOT:    /* XXX can't happen */
  -     case COMPRESSED_OTHER:
  -     case COMPRESSED_ZIP:    /* XXX wrong */
  -         zipper = "%{__gzip}";
  -         break;
  -     case COMPRESSED_BZIP2:
  -         zipper = "%{__bzip2}";
  -         break;
  -     case COMPRESSED_LZOP:
  -         zipper = "%{__lzop}";
  -         break;
  -     case COMPRESSED_LZMA:
  -         zipper = "%{__lzma}";
  -         break;
  -     }
  -     zipper = rpmGetPath(zipper, NULL);
  -
  -     sprintf(buf,
  -             "echo \"Patch #%d (%s):\"\n"
  -             "%s -d < '%s' | %s -p%d %s -s\n"
  -             "STATUS=$?\n"
  -             "if [ $STATUS -ne 0 ]; then\n"
  -             "  exit $STATUS\n"
  -             "fi",
  -             c, /[EMAIL PROTECTED]@*/ (const char *) basename(fn), /[EMAIL 
PROTECTED]@*/
  -             zipper,
  -             fn, patch, strip, args);
  -     zipper = _free(zipper);
  -    } else {
  -     sprintf(buf,
  -             "echo \"Patch #%d (%s):\"\n"
  -             "%s -p%d %s -s < '%s'", c, (const char *) basename(fn),
  -             patch, strip, args, fn);
  -    }
  -
  -    patch = _free(patch);
  -    Lurlfn = _free(Lurlfn);
  -    return buf;
  -}
  -/[EMAIL PROTECTED]@*/
  -#endif
  -
   /**
    * Expand %setup macro into %prep scriptlet.
    * @param spec               build info
  @@ -462,149 +336,6 @@
       return 0;
   }
   
  -#ifdef       DYING
  -/**
  - * Parse %patch line.
  - * @param spec               build info
  - * @param line               current line from spec file
  - * @return           0 on success
  - */
  -/[EMAIL PROTECTED]@*/
  -static int doPatchMacro(Spec spec, char *line)
  -     /[EMAIL PROTECTED] rpmGlobalMacroContext, h_errno,
  -             fileSystem, internalState @*/
  -     /[EMAIL PROTECTED] spec->prep, rpmGlobalMacroContext,
  -             fileSystem, internalState  @*/
  -{
  -    char *s;
  -    char *opt_b;
  -    char *opt_d;
  -    int opt_P, opt_p, opt_R, opt_E, opt_F;
  -    char buf[BUFSIZ], *bp;
  -    int patch_nums[1024];  /* XXX - we can only handle 1024 patches! */
  -    int patch_index, x;
  -
  -    memset(patch_nums, 0, sizeof(patch_nums));
  -    opt_P = opt_p = opt_R = opt_E = opt_F = 0;
  -    opt_b = NULL;
  -    opt_d = NULL;
  -    patch_index = 0;
  -
  -    if (! strchr(" \t\n", line[6])) {
  -     /* %patchN */
  -     sprintf(buf, "%%patch -P %s", line + 6);
  -    } else {
  -     strcpy(buf, line);
  -    }
  -    
  -    /[EMAIL PROTECTED]@*/    /* FIX: strtok has state */
  -    for (bp = buf; (s = strtok(bp, " \t\n")) != NULL;) {
  -     if (bp) {       /* remove 1st token (%patch) */
  -         bp = NULL;
  -         continue;
  -     }
  -     if (!strcmp(s, "-P")) {
  -         opt_P = 1;
  -     } else if (!strcmp(s, "-R")) {
  -         opt_R = 1;
  -     } else if (!strcmp(s, "-E")) {
  -         opt_E = 1;
  -     } else if (!strcmp(s, "-b")) {
  -         /* orig suffix */
  -         opt_b = strtok(NULL, " \t\n");
  -         if (! opt_b) {
  -             rpmError(RPMERR_BADSPEC,
  -                     _("line %d: Need arg to %%patch -b: %s\n"),
  -                     spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -     } else if (!strcmp(s, "-z")) {
  -         /* orig suffix */
  -         opt_b = strtok(NULL, " \t\n");
  -         if (! opt_b) {
  -             rpmError(RPMERR_BADSPEC,
  -                     _("line %d: Need arg to %%patch -z: %s\n"),
  -                     spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -     } else if (!strcmp(s, "-F")) {
  -         /* fuzz factor */
  -         const char * fnum = (!strchr(" \t\n", s[2])
  -                             ? s+2 : strtok(NULL, " \t\n"));
  -         char * end = NULL;
  -
  -         opt_F = (fnum ? strtol(fnum, &end, 10) : 0);
  -         if (! opt_F || *end) {
  -             rpmError(RPMERR_BADSPEC,
  -                     _("line %d: Bad arg to %%patch -F: %s\n"),
  -                     spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -     } else if (!strcmp(s, "-d")) {
  -         /* subdirectory */
  -         opt_d = strtok(NULL, " \t\n");
  -         if (! opt_d) {
  -             rpmError(RPMERR_BADSPEC,
  -                     _("line %d: Need arg to %%patch -d: %s\n"),
  -                     spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -     } else if (!strncmp(s, "-p", sizeof("-p")-1)) {
  -         /* unfortunately, we must support -pX */
  -         if (! strchr(" \t\n", s[2])) {
  -             s = s + 2;
  -         } else {
  -             s = strtok(NULL, " \t\n");
  -             if (s == NULL) {
  -                 rpmError(RPMERR_BADSPEC,
  -                          _("line %d: Need arg to %%patch -p: %s\n"),
  -                          spec->lineNum, spec->line);
  -                 return RPMERR_BADSPEC;
  -             }
  -         }
  -         if (parseNum(s, &opt_p)) {
  -             rpmError(RPMERR_BADSPEC,
  -                     _("line %d: Bad arg to %%patch -p: %s\n"),
  -                     spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -     } else {
  -         /* Must be a patch num */
  -         if (patch_index == 1024) {
  -             rpmError(RPMERR_BADSPEC, _("Too many patches!\n"));
  -             return RPMERR_BADSPEC;
  -         }
  -         if (parseNum(s, &(patch_nums[patch_index]))) {
  -             rpmError(RPMERR_BADSPEC, _("line %d: Bad arg to %%patch: %s\n"),
  -                      spec->lineNum, spec->line);
  -             return RPMERR_BADSPEC;
  -         }
  -         patch_index++;
  -     }
  -    }
  -    /[EMAIL PROTECTED]@*/
  -
  -    /* All args processed */
  -
  -    if (! opt_P) {
  -     s = doPatch(spec, 0, opt_p, opt_b, opt_R, opt_E, opt_F, opt_d);
  -     if (s == NULL)
  -         return RPMERR_BADSPEC;
  -     appendLineStringBuf(spec->prep, s);
  -    }
  -
  -    for (x = 0; x < patch_index; x++) {
  -     s = doPatch(spec, patch_nums[x], opt_p, opt_b, opt_R, opt_E, opt_F, 
opt_d);
  -     if (s == NULL)
  -         return RPMERR_BADSPEC;
  -     appendLineStringBuf(spec->prep, s);
  -    }
  -    
  -    return 0;
  -}
  -/[EMAIL PROTECTED]@*/
  -#endif
  -
   /**
    * Check that all sources/patches/icons exist locally, fetching if necessary.
    */
  @@ -749,15 +480,10 @@
        for (cp = *lines; *cp == ' ' || *cp == '\t'; cp++)
            ;
   /[EMAIL PROTECTED]@*/
  -     if (! strncmp(cp, "%setup", sizeof("%setup")-1)) {
  +     if (! strncmp(cp, "%setup", sizeof("%setup")-1))
            res = doSetupMacro(spec, cp);
  -#ifdef       DYING
  -     } else if (! strncmp(cp, "%patch", sizeof("%patch")-1)) {
  -         res = doPatchMacro(spec, cp);
  -#endif
  -     } else {
  +     else
            appendLineStringBuf(spec->prep, *lines);
  -     }
   /[EMAIL PROTECTED]@*/
        if (res && !spec->force) {
            freeSplitString(saveLines);
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to