]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm-pld-autodep.patch
This commit was manufactured by cvs2git to create branch 'rpm-4_9'.
[packages/rpm.git] / rpm-pld-autodep.patch
index 14d2f41b0bcb31438b3a8ece66242f335c66d87d..1a3ee0ecf40562c33eda38bc5041c93c353e4ecf 100644 (file)
@@ -1,24 +1,28 @@
-diff -ur rpm.org/configure.ac rpm/configure.ac
---- rpm.org/configure.ac       2007-10-02 14:48:58.200734000 +0200
-+++ rpm/configure.ac   2007-10-02 14:49:18.697896240 +0200
-@@ -979,6 +979,14 @@
+--- rpm-4.4.8/lib/rpmfc.h.orig 2005-11-18 23:08:14.231293000 +0100
++++ rpm-4.4.8/lib/rpmfc.h      2005-11-18 23:55:16.694214392 +0100
+@@ -1,6 +1,7 @@
+ #ifndef _H_RPMFC_
+ #define _H_RPMFC_
  
- AC_MSG_HEADER([INSTALLATION PARAMETERS])
++#include <regex.h>
+ #undef        FILE_RCSID
+ #include "magic.h"
  
-+dnl enable generating autorequires containing packages names
-+dnl
-+AC_ARG_ENABLE([adding-packages-names-in-autogenerated-dependancies],
-+              [  --enable-adding-packages-names-in-autogenerated-dependancies   Add packages names for autogenerated dependancies to requires],
-+              AC_MSG_RESULT([Using packages names in autogerated requires is enabled])
-+              AC_DEFINE_UNQUOTED([AUTODEP_PKGNAMES], [1], ["Generating autorequires containing packages names."]))
-+dnl
-+
- dnl # figure out what root's primary group is
- AC_MSG_CHECKING([root's primary group])
- AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
---- rpm.org/lib/rpmfc.c        2007-10-02 14:48:58.244068000 +0200
-+++ rpm/lib/rpmfc.c    2007-10-02 14:52:24.222380740 +0200
-@@ -17,6 +17,8 @@
+@@ -44,6 +45,11 @@
+     StringBuf sb_python;/*!< concatenated list of python colored files. */
+     StringBuf sb_php;   /*!< concatenated list of php colored files. */
++    int findprov, findreq;
++    regex_t *noautoprov;
++    int noautoprov_c;
++    regex_t *noautoreq;
++    int noautoreq_c;
+ };
+ /**
+--- rpm-4.5/lib/rpmfc.c~       2008-06-10 14:06:23.000000000 +0300
++++ rpm-4.5/lib/rpmfc.c        2008-06-10 14:21:53.097663262 +0300
+@@ -15,6 +15,8 @@
  #define       _RPMDS_INTERNAL
  #include <rpmds.h>
  #include <rpmfi.h>
@@ -27,7 +31,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
  
  #include "debug.h"
  
-@@ -311,14 +313,83 @@
+@@ -309,14 +311,83 @@
      return buf;
  };
  
@@ -57,7 +61,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +      r=regcomp(&compiled[j],patterns[i],REG_NOSUB);
 +      if (r==0) j++;
 +      else {
-+              rpmlog(RPMLOG_NOTICE
++              rpmMessage(RPMMESS_NORMAL
 +                      _("Compilation of regular expresion '%s'"
 +                      " (expanded from '%s') failed. Skipping it.\n"),
 +                      patterns[i],str);
@@ -77,10 +81,10 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +{
 +    int j;
 +    for(j = 0; j < count; j++) {
-+      rpmlog(RPMLOG_DEBUG,
++      rpmMessage(RPMMESS_DEBUG,
 +          _("Checking %c: '%s' against _noauto expr. #%i\n"), deptype, str, j);
 +      if (!regexec(&regexps[j], str, 0, NULL, 0)) {
-+          rpmlog(RPMLOG_NOTICE,
++          rpmMessage(RPMMESS_NORMAL,
 +              _("Skipping %c: '%s' as it matches _noauto expr. #%i\n"), deptype, str, j);
 +          return 1;
 +      }
@@ -112,7 +116,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
        /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
        /*@modifies fc, rpmGlobalMacroContext, fileSystem, internalState @*/
  {
-@@ -404,6 +475,8 @@
+@@ -402,6 +473,8 @@
            }
  /*@=branchstate@*/
  
@@ -121,7 +125,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
  
            /* Add tracking dependency for versioned Provides: */
            if (!fc->tracked && deptype == 'P' && *EVR != '\0') {
-@@ -718,7 +791,7 @@
+@@ -714,7 +787,7 @@
        *se = '\0';
        se++;
  
@@ -130,85 +134,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
            /* Add to package requires. */
            ds = rpmdsSingle(RPMTAG_REQUIRENAME, s, "", RPMSENSE_FIND_REQUIRES);
            xx = rpmdsMerge(&fc->requires, ds);
-@@ -747,49 +820,61 @@
-     if (fc->fcolor->vals[fc->ix] & RPMFC_PERL) {
-       if (strncmp(fn, "/usr/share/doc/", sizeof("/usr/share/doc/")-1)) {
--          if (fc->fcolor->vals[fc->ix] & RPMFC_MODULE)
--              xx = rpmfcHelper(fc, 'P', "perl");
--          if (is_executable || (fc->fcolor->vals[fc->ix] & RPMFC_MODULE))
--              xx = rpmfcHelper(fc, 'R', "perl");
-+          if (fc->findprov && fc->fcolor->vals[fc->ix] & RPMFC_MODULE)
-+              xx = rpmfcHelper(fc, 'P', "perl", fc->noautoprov, fc->noautoprov_c);
-+          if (fc->findreq && is_executable || (fc->fcolor->vals[fc->ix] & RPMFC_MODULE))
-+              xx = rpmfcHelper(fc, 'R', "perl", fc->noautoreq, fc->noautoreq_c);
-       }
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_PYTHON) {
--      xx = rpmfcHelper(fc, 'P', "python");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "python", fc->noautoprov, fc->noautoprov_c);
- #ifdef        NOTYET
-       if (is_executable)
- #endif
--          xx = rpmfcHelper(fc, 'R', "python");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "python", fc->noautoreq, fc->noautoreq_c);
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_LIBTOOL) {
--      xx = rpmfcHelper(fc, 'P', "libtool");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "libtool", fc->noautoprov, fc->noautoprov_c);
- #ifdef        NOTYET
-       if (is_executable)
- #endif
--          xx = rpmfcHelper(fc, 'R', "libtool");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "libtool", fc->noautoreq, fc->noautoreq_c);
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_PKGCONFIG) {
--      xx = rpmfcHelper(fc, 'P', "pkgconfig");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "pkgconfig", fc->noautoprov, fc->noautoprov_c);
- #ifdef        NOTYET
-       if (is_executable)
- #endif
--          xx = rpmfcHelper(fc, 'R', "pkgconfig");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "pkgconfig", fc->noautoreq, fc->noautoreq_c);
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_BOURNE) {
- #ifdef        NOTYET
--      xx = rpmfcHelper(fc, 'P', "executable");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "executable", fc->noautoprov, fc->noautoprov_c);
- #endif
-       if (is_executable)
--          xx = rpmfcHelper(fc, 'R', "executable");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "executable", fc->noautoreq, fc->noautoreq_c);
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_PHP) {
--      xx = rpmfcHelper(fc, 'P', "php");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "php", fc->noautoprov, fc->noautoprov_c);
-       /* not only executable, files run by httpd usually are not */
--          xx = rpmfcHelper(fc, 'R', "php");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "php", fc->noautoreq, fc->noautoreq_c);
-     } else
-     if (fc->fcolor->vals[fc->ix] & RPMFC_MONO) {
--      xx = rpmfcHelper(fc, 'P', "mono");
-+      if (fc->findprov)
-+      xx = rpmfcHelper(fc, 'P', "mono", fc->noautoprov, fc->noautoprov_c);
-       if (is_executable)
--          xx = rpmfcHelper(fc, 'R', "mono");
-+          if (fc->findreq)
-+          xx = rpmfcHelper(fc, 'R', "mono", fc->noautoreq, fc->noautoreq_c);
-     }
-     return 0;
- }
-@@ -816,20 +901,26 @@
+@@ -808,20 +889,26 @@
      default:
        break;
      case RPMTAG_PROVIDENAME:
@@ -235,11 +161,10 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
        break;
      }
      return rc;
-@@ -870,6 +961,111 @@
+@@ -862,6 +949,109 @@
      { NULL, 0 }
  };
  
-+#ifdef AUTODEP_PKGNAMES /* define to use package names in R */
 +static int rpmfcFindRequiredPackages(rpmfc fc) 
 +{
 +    rpmts ts=NULL;
@@ -248,7 +173,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +    rpmds ds;
 +    const char * N;
 +    const char * EVR;
-+    int32_t Flags;
++    int_32 Flags;
 +    unsigned char deptype;
 +    int nddict;
 +    int previx;
@@ -267,7 +192,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +    
 +    ts = rpmtsCreate(); /* XXX ts created in main() should be used */
 +    
-+    rpmlog(RPMLOG_NOTICE, _("Searching for required packages....\n"));
++    rpmMessage(RPMMESS_NORMAL, _("Searching for required packages....\n"));
 +
 +    nddict = argvCount(fc->ddict);
 +    previx = -1;
@@ -291,31 +216,31 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +
 +        if (deptype!='R') continue;
 +
-+        rpmlog(RPMLOG_DEBUG, _("#%i requires: %s,%s,%i\n"),ix,N,EVR,Flags);
++        rpmMessage(RPMMESS_DEBUG, _("#%i requires: %s,%s,%i\n"),ix,N,EVR,Flags);
 +        if (EVR && EVR[0]) {
-+            rpmlog(RPMLOG_DEBUG, _("skipping #%i require\n"));
++            rpmMessage(RPMMESS_DEBUG, _("skipping #%i require\n"));
 +            continue;
 +        }
 +        for(j=0;j<noautoreqdep_c;j++) 
 +            if (!regexec(&noautoreqdep[j],N,0,NULL,0)) {
-+                rpmlog(RPMLOG_NOTICE
++                rpmMessage(RPMMESS_NORMAL
 +                        _("skipping %s requirement processing"
 +                      " (matches noautoreqdep pattern #%i)\n"),N,j);
 +                break;
 +            }
 +        if (j<noautoreqdep_c) continue;
 +        if (N[0]=='/') {
-+            rpmlog(RPMLOG_DEBUG, _("skipping #%i require (is file requirement)\n"));
++            rpmMessage(RPMMESS_DEBUG, _("skipping #%i require (is file requirement)\n"));
 +            continue;
 +        }
 +        it=rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, N, 0);
 +        if (!it) {
-+            rpmlog(RPMLOG_DEBUG, _("%s -> not found\n"),N);
++            rpmMessage(RPMMESS_DEBUG, _("%s -> not found\n"),N);
 +            continue;
 +        }
-+        rpmlog(RPMLOG_DEBUG, _("Iterator: %p\n"),it);
++        rpmMessage(RPMMESS_DEBUG, _("Iterator: %p\n"),it);
 +        if (rpmdbGetIteratorCount(it)>1) {
-+            rpmlog(RPMLOG_DEBUG, _("%s -> multiple (skipping)\n"),N);
++            rpmMessage(RPMMESS_DEBUG, _("%s -> multiple (skipping)\n"),N);
 +            rpmdbFreeIterator(it);
 +            continue;
 +        }
@@ -324,12 +249,12 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +        r=headerGetEntry(hdr,RPMTAG_NAME,NULL,(void **)&hname, NULL);
 +        assert(r<2);
 +        if (!strcmp(hname,N)) {
-+            rpmlog(RPMLOG_DEBUG, _("%s -> %s (skipping)\n"),N,hname);
++            rpmMessage(RPMMESS_DEBUG, _("%s -> %s (skipping)\n"),N,hname);
 +            rpmdbFreeIterator(it);
 +            continue;
 +        }
 +            
-+        rpmlog(RPMLOG_DEBUG, "%s -> %s\n",N,hname);
++        rpmMessage(RPMMESS_DEBUG, "%s -> %s\n",N,hname);
 +        
 +              ds = rpmdsSingle(RPMTAG_REQUIRENAME, hname, "", RPMSENSE_FIND_REQUIRES);
 +              xx = rpmdsMerge(&fc->requires, ds);
@@ -342,12 +267,11 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +    ts = rpmtsFree(ts);
 +    return 0;
 +}
-+#endif
 +
rpmRC rpmfcApply(rpmfc fc)
int rpmfcApply(rpmfc fc)
  {
      rpmfcApplyTbl fcat;
-@@ -888,6 +1084,26 @@
+@@ -880,6 +1070,26 @@
      int i;
      int xx;
      int skipping;
@@ -369,12 +293,12 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +    noautoreqfiles = rpmfcExpandRegexps("%{__noautoreqfiles}", &noautoreqfiles_c);
 +    fc->noautoprov = rpmfcExpandRegexps("%{__noautoprov}", &fc->noautoprov_c);
 +    fc->noautoreq = rpmfcExpandRegexps("%{__noautoreq}", &fc->noautoreq_c);
-+    rpmlog(RPMLOG_DEBUG, _("%i _noautoprov patterns.\n"), fc->noautoprov_c);
-+    rpmlog(RPMLOG_DEBUG, _("%i _noautoreq patterns.\n"), fc->noautoreq_c);
++    rpmMessage(RPMMESS_DEBUG, _("%i _noautoprov patterns.\n"), fc->noautoprov_c);
++    rpmMessage(RPMMESS_DEBUG, _("%i _noautoreq patterns.\n"), fc->noautoreq_c);
  
/* Make sure something didn't go wrong previously! */
- assert(fc->fn != NULL);
-@@ -911,9 +1127,43 @@
    /* Generate package and per-file dependencies. */
+     for (fc->ix = 0; fc->fn[fc->ix] != NULL; fc->ix++) {
+@@ -900,9 +1110,43 @@
        for (fcat = rpmfcApplyTable; fcat->func != NULL; fcat++) {
            if (!(fc->fcolor->vals[fc->ix] & fcat->colormask))
                /*@innercontinue@*/ continue;
@@ -384,7 +308,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +                  for(j = 0; j < noautoprovfiles_c; j++) {
 +                          if (!regexec(&noautoprovfiles[j],
 +                                                  fc->fn[fc->ix] + buildroot_l, 0, NULL, 0)) {
-+                                  rpmlog(RPMLOG_NOTICE,
++                                  rpmMessage(RPMMESS_NORMAL,
 +                                                  _("skipping %s provides detection"
 +                                                          " (matches noautoprovfiles pattern #%i)\n"),
 +                                                  fc->fn[fc->ix], j);
@@ -395,7 +319,7 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
 +                  for(j = 0; j < noautoreqfiles_c; j++) {
 +                          if (!regexec(&noautoreqfiles[j],
 +                                                  fc->fn[fc->ix] + buildroot_l, 0, NULL, 0)) {
-+                                  rpmlog(RPMLOG_NOTICE,
++                                  rpmMessage(RPMMESS_NORMAL,
 +                                                  _("skipping %s requires detection"
 +                                                          " (matches noautoreqfiles pattern #%i)\n"),
 +                                                  fc->fn[fc->ix], j);
@@ -418,33 +342,222 @@ diff -ur rpm.org/configure.ac rpm/configure.ac
  
  /*@-boundswrite@*/
      /* Generate per-file indices into package dependencies. */
---- rpm.org/lib/rpmfc.h        2007-07-14 05:22:44.000000000 +0200
-+++ rpm/lib/rpmfc.h    2007-10-02 14:49:18.731230377 +0200
-@@ -98,6 +98,11 @@
-     StringBuf sb_python;/*!< concatenated list of python colored files. */
-     StringBuf sb_php; /*!< concatenated list of php colored files. */
+#--- rpm-4.4.9/po/pl.po.orig   2007-05-22 08:11:40.947724921 +0200
+#+++ rpm-4.4.9/po/pl.po        2007-05-22 08:24:24.091213990 +0200
+#@@ -2937,6 +2937,86 @@
+# msgid "Failed to find %s:\n"
+# msgstr "Nie uda³o siê odnale¼æ %s:\n"
+# 
+#+#: lib/rpmfc.c:334
+#+#, c-format
+#+msgid "Compilation of regular expresion '%s' (expanded from '%s') failed. Skipping it.\n"
+#+msgstr "Kompilacja wyra¿enia regularnego '%s' (powsta³ego z '%s') nie powiod³a siê; pominiêto.\n"
+#+
+#+#: lib/rpmfc.c:395
+#+#, c-format
+#+msgid "%i _noautoprov patterns.\n"
+#+msgstr "%i wzorców _noautoprov.\n"
+#+
+#+#: lib/rpmfc.c:405
+#+#, c-format
+#+msgid "%i _noautoreq patterns.\n"
+#+msgstr "%i wzorców _noautoreq.\n"
+#+
+#+#: lib/rpmfc.c:459
+#+#, c-format
+#+msgid "Checking %c: '%s' against _noauto expr. #%i\n"
+#+msgstr "Sprawdzanie %c: '%s' z wyra¿eniem _noauto #%i\n"
+#+
+#+#: lib/rpmfc.c:462
+#+#, c-format
+#+msgid "Skipping %c: '%s' as it matches _noauto expr. #%i\n"
+#+msgstr "Pominiêto %c: '%s' pasuj±ce do wyra¿enia _noauto #%i\n"
+#+
+#+#. XXX ts created in main() should be used
+#+#: lib/rpmfc.c:1173
+#+msgid "Searching for required packages....\n"
+#+msgstr "Poszukiwanie wymaganych pakietów...\n"
+#+
+#+#: lib/rpmfc.c:1197
+#+#, c-format
+#+msgid "#%i requires: %s,%s,%i\n"
+#+msgstr "#%i wymaga: %s,%s,%i\n"
+#+
+#+#: lib/rpmfc.c:1199
+#+#, c-format
+#+msgid "skipping #%i require\n"
+#+msgstr "pominiêto zale¿no¶æ #%i\n"
+#+
+#+#: lib/rpmfc.c:1205
+#+#, c-format
+#+msgid "skipping %s requirement processing (matches noautoreqdep pattern #%i)\n"
+#+msgstr "pominiêto przetwarzanie zale¿no¶ci %s (pasuje do wzorca noautoreqdep #%i)\n"
+#+
+#+#: lib/rpmfc.c:1211
+#+#, c-format
+#+msgid "skipping #%i require (is file requirement)\n"
+#+msgstr "pominiêto zale¿no¶æ #%i (zale¿no¶æ od pliku)\n"
+#+
+#+#: lib/rpmfc.c:1216
+#+#, c-format
+#+msgid "%s -> not found\n"
+#+msgstr "%s -> nie znaleziono\n"
+#+
+#+#: lib/rpmfc.c:1219
+#+#, c-format
+#+msgid "Iterator: %p\n"
+#+msgstr "Iterator: %p\n"
+#+
+#+#: lib/rpmfc.c:1221
+#+#, c-format
+#+msgid "%s -> multiple (skipping)\n"
+#+msgstr "%s -> wiele (pominiêto)\n"
+#+
+#+#: lib/rpmfc.c:1230
+#+#, c-format
+#+msgid "%s -> %s (skipping)\n"
+#+msgstr "%s -> %s (pominiêto)\n"
+#+
+#+#: lib/rpmfc.c:1295
+#+#, c-format
+#+msgid "skipping %s provides detection (matches noautoprovfiles pattern #%i)\n"
+#+msgstr "pominiêto wykrywanie w³asno¶ci %s (pasuje do wzorca noautoprovfiles #%i)\n"
+#+
+#+#: lib/rpmfc.c:1306
+#+#, c-format
+#+msgid "skipping %s requires detection (matches noautoreqfiles pattern #%i)\n"
+#+msgstr "pominiêto wykrywanie w³asno¶ci %s (pasuje do wzorca noautoreqfiles #%i)\n"
+#+
+# #: lib/rpmfi.c:622
+# #, c-format
+--- rpm/configure.ac.orig      2004-08-22 13:02:30.000000000 +0200
++++ rpm/configure.ac   2004-08-22 13:25:37.000000000 +0200
+@@ -971,6 +971,18 @@
+ AC_SUBST(__CHGRP_RHF)
  
-+    int findprov, findreq;
-+    regex_t *noautoprov;
-+    int noautoprov_c;
-+    regex_t *noautoreq;
-+    int noautoreq_c;
- };
- /**
---- rpm/lib/rpmfc.h.org        2007-10-02 15:05:48.028299804 +0200
-+++ rpm/lib/rpmfc.h    2007-10-02 15:06:03.052024633 +0200
-@@ -67,6 +67,13 @@
- };
- #if defined(_RPMFC_INTERNAL)
+ dnl
++dnl enable generating autorequires containing packages names 
++dnl
++AC_ARG_ENABLE([adding-packages-names-in-autogenerated-dependancies],
++            [  --enable-adding-packages-names-in-autogenerated-dependancies   Add packages names for autogenerated dependancies to requires],
++       
++              AC_MSG_RESULT([Using packages names in autogerated requires is enabled])
++              AC_DEFINE(AUTODEP_PKGNAMES, 1, "Generating autorequires containing packages names.") 
++      
++            )
 +
-+#if defined(WITH_PCRE) && defined(HAVE_PCREPOSIX_H)
-+#include <pcreposix.h>
-+#else
-+#include <regex.h>
-+#endif
 +
- /**
++dnl
+ dnl figure out what root's primary group is
+ dnl
+ AC_MSG_CHECKING(root's primary group)
+--- rpm-4.5/lib/rpmfc.c~       2008-06-11 01:02:40.000000000 +0300
++++ rpm-4.5/lib/rpmfc.c        2008-06-11 01:04:54.048916180 +0300
+@@ -382,12 +382,9 @@
+  * @param fc          file classifier
+  * @param deptype     'P' == Provides:, 'R' == Requires:, helper
+  * @param nsdep               class name for interpreter (e.g. "perl")
+- * @param noauto      _noauto* regexps
+- * @param noauto_c    # of _noauto* regexps
+  * @return            0 on success
   */
- struct rpmfc_s {
+-static int rpmfcHelper(rpmfc fc, unsigned char deptype, const char * nsdep,
+-    regex_t * noauto, int noauto_c)
++static int rpmfcHelper(rpmfc fc, unsigned char deptype, const char * nsdep)
+       /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
+       /*@modifies fc, rpmGlobalMacroContext, fileSystem, internalState @*/
+ {
+@@ -405,6 +402,8 @@
+     int pac;
+     int xx;
+     int i;
++    regex_t * noauto = fc->noauto;
++    int noauto_c = fc->noauto_c;
+     switch (deptype) {
+     default:
+--- rpm-4.5/lib/rpmfc.c~       2008-06-11 01:04:54.000000000 +0300
++++ rpm-4.5/lib/rpmfc.c        2008-06-11 01:10:06.222936657 +0300
+@@ -410,7 +410,7 @@
+       return -1;
+       /*@notreached@*/ break;
+     case 'P':
+-      if (fc->skipProv)
++      if (fc->skipProv || !fc->findprov)
+           return 0;
+       xx = snprintf(buf, sizeof(buf), "%%{?__%s_provides}", nsdep);
+       depsp = &fc->provides;
+@@ -418,7 +418,7 @@
+       tagN = RPMTAG_PROVIDENAME;
+       break;
+     case 'R':
+-      if (fc->skipReq)
++      if (fc->skipReq || !fc->findreq)
+           return 0;
+       xx = snprintf(buf, sizeof(buf), "%%{?__%s_requires}", nsdep);
+       depsp = &fc->requires;
+--- rpm-4.5/lib/rpmfc.c~       2008-06-11 01:11:33.000000000 +0300
++++ rpm-4.5/lib/rpmfc.c        2008-06-11 01:16:17.084344647 +0300
+@@ -402,8 +402,8 @@
+     int pac;
+     int xx;
+     int i;
+-    regex_t * noauto = fc->noauto;
+-    int noauto_c = fc->noauto_c;
++    regex_t * noauto = NULL;
++    int noauto_c = 0;
+     switch (deptype) {
+     default:
+@@ -412,6 +412,8 @@
+     case 'P':
+       if (fc->skipProv || !fc->findprov)
+           return 0;
++      noauto = fc->noautoprov;
++      noauto_c = fc->noautoprov_c;
+       xx = snprintf(buf, sizeof(buf), "%%{?__%s_provides}", nsdep);
+       depsp = &fc->provides;
+       dsContext = RPMSENSE_FIND_PROVIDES;
+@@ -420,6 +422,8 @@
+     case 'R':
+       if (fc->skipReq || !fc->findreq)
+           return 0;
++      noauto = fc->noautoreq;
++      noauto_c = fc->noautoreq_c;
+       xx = snprintf(buf, sizeof(buf), "%%{?__%s_requires}", nsdep);
+       depsp = &fc->requires;
+       dsContext = RPMSENSE_FIND_REQUIRES;
+#--- rpm-4.5/lib/rpmfc.c~      2008-06-11 00:28:21.000000000 +0300
+#+++ rpm-4.5/lib/rpmfc.c       2008-06-11 00:37:51.675282123 +0300
+#@@ -829,7 +829,6 @@
+#      }
+#     } else
+#     if (fc->fcolor->vals[fc->ix] & RPMFC_PYTHON) {
+#-     xx = rpmfcHelper(fc, 'P', "python");
+#      if (fc->findprov)
+#          xx = rpmfcHelper(fc, 'P', "python", fc->noautoprov, fc->noautoprov_c);
+# #ifdef       NOTYET
+#--- rpm-4.5/lib/rpmfc.c~      2008-06-11 00:37:51.000000000 +0300
+#+++ rpm-4.5/lib/rpmfc.c       2008-06-11 00:39:12.427942547 +0300
+#@@ -876,7 +876,8 @@
+#          xx = rpmfcHelper(fc, 'R', "java", fc->noautoreq, fc->noautoreq_c);
+#     } else
+#     if (fc->fcolor->vals[fc->ix] & RPMFC_DESKTOP_FILE) {
+#-     xx = rpmfcHelper(fc, 'P', "mimetype");
+#+     if (fc->findprov)
+#+         xx = rpmfcHelper(fc, 'P', "mimetype", fc->noautoprov, fc->noautoprov_c);
+#     }
+# 
+#     return 0;
+--- rpm-4.4.8/lib/rpmfc.c.orig 2007-02-14 07:31:50.000000000 +0100
++++ rpm-4.4.8/lib/rpmfc.c      2007-04-08 16:48:00.273560592 +0200
+@@ -773,7 +773,7 @@
+     } else
+     if (fc->fcolor->vals[fc->ix] & RPMFC_PHP) {
+       xx = rpmfcHelper(fc, 'P', "php");
+-      if (is_executable)
++      /* not only executable, files run by httpd usually are not */
+           xx = rpmfcHelper(fc, 'R', "php");
+     }
+
This page took 0.05364 seconds and 4 git commands to generate.