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:   06-Jul-2007 20:22:06
  Branch: HEAD                             Handle: 2007070619220500

  Modified files:
    rpm                     CHANGES rpmqv.c
    rpm/build               spec.c
    rpm/lib                 poptALL.c rpmrc.c

  Log:
    - eliminate rcfile reading everywhere.

  Summary:
    Revision    Changes     Path
    1.1438      +1  -0      rpm/CHANGES
    2.148       +2  -3      rpm/build/spec.c
    2.31        +2  -14     rpm/lib/poptALL.c
    2.201       +6  -102    rpm/lib/rpmrc.c
    1.116       +2  -2      rpm/rpmqv.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.1437 -r1.1438 CHANGES
  --- rpm/CHANGES       6 Jul 2007 18:08:42 -0000       1.1437
  +++ rpm/CHANGES       6 Jul 2007 18:22:05 -0000       1.1438
  @@ -1,4 +1,5 @@
   4.5 -> 5.0:
  +    - jbj: eliminate rcfile reading everywhere.
       - jbj: eliminate last known internal usage of rpmrc files.
       - jbj: generate per-platform macros for major CPU-linux platforms.
       - mgh: Stop the python module from using rpmrc files
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/build/spec.c
  ============================================================================
  $ cvs diff -u -r2.147 -r2.148 spec.c
  --- rpm/build/spec.c  25 May 2007 17:35:56 -0000      2.147
  +++ rpm/build/spec.c  6 Jul 2007 18:22:05 -0000       2.148
  @@ -758,7 +758,6 @@
       char *target;
       const char * t;
       const char * te;
  -    const char * rcfile = rpmcliRcfile;
       int nqueries = 0;
   
       if (qva->qva_showPackage == NULL)
  @@ -788,7 +787,7 @@
        if (t != targets) {
            rpmFreeMacros(NULL);
            rpmFreeRpmrc();
  -         (void) rpmReadConfigFiles(rcfile, target);
  +         (void) rpmReadConfigFiles(NULL, target);
        }
        res = _specQuery(ts, qva, arg, target); 
        nqueries++;
  @@ -808,7 +807,7 @@
            te++;
        rpmFreeMacros(NULL);
        rpmFreeRpmrc();
  -     (void) rpmReadConfigFiles(rcfile, target);
  +     (void) rpmReadConfigFiles(NULL, target);
       }
       return res;
   }
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/poptALL.c
  ============================================================================
  $ cvs diff -u -r2.30 -r2.31 poptALL.c
  --- rpm/lib/poptALL.c 16 Jun 2007 22:24:59 -0000      2.30
  +++ rpm/lib/poptALL.c 6 Jul 2007 18:22:05 -0000       2.31
  @@ -112,9 +112,6 @@
   /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
   const char * rpmcliPipeOutput = NULL;
   
  -/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
  -const char * rpmcliRcfile = NULL;
  -
   /[EMAIL PROTECTED]@*/
   const char * rpmcliRootDir = "/";
   
  @@ -167,7 +164,7 @@
            if ((te = strchr(t, ',')) != NULL)
                *te = '\0';
        }
  -     rpmcliInitialized = rpmReadConfigFiles(rpmcliRcfile, t);
  +     rpmcliInitialized = rpmReadConfigFiles(NULL, t);
        t = _free(t);
       }
       if (rpmcliInitialized)
  @@ -181,7 +178,7 @@
                   /[EMAIL PROTECTED]@*/ enum poptCallbackReason reason,
                   const struct poptOption * opt, const char * arg,
                   /[EMAIL PROTECTED]@*/ const void * data)
  -     /[EMAIL PROTECTED] rpmRcfiles, rpmcliTargets, rpmcliQueryFlags, 
rpmCLIMacroContext,
  +     /[EMAIL PROTECTED] rpmcliTargets, rpmcliQueryFlags, rpmCLIMacroContext,
                rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
        /[EMAIL PROTECTED] con, rpmcliTargets, rpmcliQueryFlags, 
rpmCLIMacroContext,
                rpmGlobalMacroContext, fileSystem, internalState @*/
  @@ -384,15 +381,6 @@
    { "pipe", '\0', POPT_ARG_STRING|POPT_ARGFLAG_DOC_HIDDEN, &rpmcliPipeOutput, 
0,
        N_("send stdout to CMD"),
        N_("CMD") },
  -#if !defined(POPT_RCFILE)
  - { "rcfile", '\0', POPT_ARG_STRING, &rpmcliRcfile, 0,
  -     N_("read <FILE:...> instead of default file(s)"),
  -     N_("<FILE:...>") },
  -#else
  - { "rcfile", '\0', 0, NULL, POPT_RCFILE,     
  -     N_("read <FILE:...> instead of default file(s)"),
  -     N_("<FILE:...>") },
  -#endif
    { "root", 'r', POPT_ARG_STRING|POPT_ARGFLAG_SHOW_DEFAULT, &rpmcliRootDir, 0,
        N_("use ROOT as top level directory"),
        N_("ROOT") },
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmrc.c
  ============================================================================
  $ cvs diff -u -r2.200 -r2.201 rpmrc.c
  --- rpm/lib/rpmrc.c   2 Jul 2007 08:53:29 -0000       2.200
  +++ rpm/lib/rpmrc.c   6 Jul 2007 18:22:05 -0000       2.201
  @@ -24,9 +24,6 @@
   #include "misc.h"
   #include "debug.h"
   
  -/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
  -const char *rpmRcfiles = RPMRCFILES;
  -
   /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
   static const char * configTarget = NULL;
   
  @@ -1788,16 +1785,6 @@
       addMacro(NULL, "_target_cpu", NULL, ca, RMIL_RPMRC);
       delMacro(NULL, "_target_os");
       addMacro(NULL, "_target_os", NULL, co, RMIL_RPMRC);
  -/*
  - * XXX Make sure that per-arch optflags is initialized correctly.
  - */
  -  if (rpmcliRcfile != NULL)
  -  { const char *optflags = rpmGetVarArch(RPMVAR_OPTFLAGS, ca);
  -    if (optflags != NULL) {
  -     delMacro(NULL, "optflags");
  -     addMacro(NULL, "optflags", NULL, optflags, RMIL_RPMRC);
  -    }
  -  }
   
       /[EMAIL PROTECTED]@*/
       if (canontarget)
  @@ -1883,86 +1870,23 @@
   }
   
   /** \ingroup rpmrc
  - * Read rpmrc (and macro) configuration file(s).
  - * @param rcfiles    colon separated files to read (NULL uses default)
  + * Read macro configuration file(s).
    * @return           0 on succes
    */
  -static int rpmReadRC(/[EMAIL PROTECTED]@*/ const char * rcfiles)
  -     /[EMAIL PROTECTED] defaultsInitialized, rpmRcfiles, rpmMacrofiles,
  +static int rpmReadRC(void)
  +     /[EMAIL PROTECTED] defaultsInitialized, rpmMacrofiles,
                rpmGlobalMacroContext, rpmCLIMacroContext, h_errno,
                fileSystem, internalState @*/
        /[EMAIL PROTECTED] defaultsInitialized, rpmGlobalMacroContext,
                fileSystem, internalState @*/
   {
  -    char *myrcfiles = NULL;
  -    char *r, *re;
  -    int rc;
  +    int rc = 0;
   
       if (!defaultsInitialized) {
        setDefaults();
        defaultsInitialized = 1;
       }
   
  -    /* Read each file in rcfiles. */
  -    rc = 0;
  -    if (rcfiles != NULL)
  -    for (r = myrcfiles = xstrdup(rcfiles); r && *r != '\0'; r = re) {
  -     char fn[4096];
  -     FD_t fd;
  -
  -     /* Get pointer to rest of files */
  -     for (re = r; (re = strchr(re, ':')) != NULL; re++) {
  -         if (!(re[1] == '/' && re[2] == '/'))
  -             /[EMAIL PROTECTED]@*/ break;
  -     }
  -     if (re && *re == ':')
  -         *re++ = '\0';
  -     else
  -         re = r + strlen(r);
  -
  -     /* Expand ~/ to $HOME/ */
  -     fn[0] = '\0';
  -     if (r[0] == '~' && r[1] == '/') {
  -         const char * home = getenv("HOME");
  -         if (home == NULL) {
  -         /* XXX Only /usr/lib/rpm/rpmrc must exist in default rcfiles list */
  -             if (rcfiles == rpmRcfiles && myrcfiles != r)
  -                 continue;
  -             rpmError(RPMERR_RPMRC, _("Cannot expand %s\n"), r);
  -             rc = 1;
  -             break;
  -         }
  -         if (strlen(home) > (sizeof(fn) - strlen(r))) {
  -             rpmError(RPMERR_RPMRC, _("Cannot read %s, HOME is too 
large.\n"),
  -                             r);
  -             rc = 1;
  -             break;
  -         }
  -         strcpy(fn, home);
  -         r++;
  -     }
  -     strncat(fn, r, sizeof(fn) - (strlen(fn) + 1));
  -     fn[sizeof(fn)-1] = '\0';
  -
  -     /* Read another rcfile */
  -     fd = Fopen(fn, "r.fpio");
  -     if (fd == NULL || Ferror(fd)) {
  -         /* XXX Only /usr/lib/rpm/rpmrc must exist in default rcfiles list */
  -         if (rcfiles == rpmRcfiles && myrcfiles != r)
  -             continue;
  -         rpmError(RPMERR_RPMRC, _("Unable to open %s for reading: %s.\n"),
  -              fn, Fstrerror(fd));
  -         rc = 1;
  -         break;
  -     } else {
  -         rc = doReadRC(fd, fn);
  -     }
  -     if (rc) break;
  -    }
  -    myrcfiles = _free(myrcfiles);
  -    if (rc)
  -     return rc;
  -
       /* Read macro files. */
       {        const char *mfpath = rpmGetVarArch(RPMVAR_MACROFILES, NULL);
   
  @@ -1995,7 +1919,7 @@
   
       /* Read the files */
   /[EMAIL PROTECTED]@*/
  -    if (rpmReadRC(file)) return -1;
  +    if (rpmReadRC()) return -1;
   /[EMAIL PROTECTED]@*/
   
       /* Reset target macros */
  @@ -2022,7 +1946,6 @@
   int rpmShowRC(FILE * fp)
   {
       rpmds ds = NULL;
  -    struct rpmOption *opt;
       int i;
       machEquivTable equivTable;
       int xx;
  @@ -2045,11 +1968,6 @@
        fprintf(fp," %s", equivTable->list[i].name);
       fprintf(fp, "\n");
   
  -    if (rpmcliRcfile != NULL) {
  -     rpmSetTables(RPM_MACHTABLE_INSTARCH, RPM_MACHTABLE_INSTOS);
  -     rpmSetMachine(NULL, NULL);      /* XXX WTFO? Why bother? */
  -    }
  -
       fprintf(fp, "install arch          : %s\n", current[ARCH]);
       fprintf(fp, "install os            : %s\n", current[OS]);
   
  @@ -2065,21 +1983,7 @@
        fprintf(fp," %s", equivTable->list[i].name);
       fprintf(fp, "\n");
   
  -    if (rpmcliRcfile != NULL) {
  -     const char * s = rpmExpand(rpmcliRcfile, NULL);
  -     fprintf(fp, "\nRPMRC VALUES:\n");
  -     fprintf(fp, "%-21s : %s\n", "rcfiles", ((s && *s) ? s : "(not set)"));
  -     s = _free(s);
  -/[EMAIL PROTECTED]@*/
  -     for (i = 0, opt = optionTable; i < optionTableSize; i++, opt++) {
  -         s = rpmGetVarArch(opt->var, NULL);
  -         if (s != NULL || rpmIsVerbose())
  -             fprintf(fp, "%-21s : %s\n", opt->name, s ? s : "(not set)");
  -     }
  -/[EMAIL PROTECTED]@*/
  -     fprintf(fp, "\nMACRO DEFINITIONS:\n");
  -    } else {
  -     const char * s = rpmExpand("%{?optflags}", NULL);
  +    {        const char * s = rpmExpand("%{?optflags}", NULL);
        fprintf(fp, "%-21s : %s\n", "optflags", ((s && *s) ? s : "(not set)"));
        s = _free(s);
   /[EMAIL PROTECTED]@*/
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmqv.c
  ============================================================================
  $ cvs diff -u -r1.115 -r1.116 rpmqv.c
  --- rpm/rpmqv.c       27 Jun 2007 13:35:52 -0000      1.115
  +++ rpm/rpmqv.c       6 Jul 2007 18:22:05 -0000       1.116
  @@ -618,7 +618,7 @@
            if (ec == 0) {
                ba->rootdir = rpmcliRootDir;
                ba->passPhrase = passPhrase;
  -             ec = build(ts, specFile, ba, rpmcliRcfile);
  +             ec = build(ts, specFile, ba, NULL);
            }
            ba->cookie = _free(ba->cookie);
            specFile = _free(specFile);
  @@ -679,7 +679,7 @@
            ba->rootdir = rpmcliRootDir;
            ba->passPhrase = passPhrase;
            ba->cookie = NULL;
  -         ec = build(ts, pkg, ba, rpmcliRcfile);
  +         ec = build(ts, pkg, ba, NULL);
            if (ec)
                /[EMAIL PROTECTED]@*/ break;
        }
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to