]> git.pld-linux.org Git - packages/poldek.git/blob - poldek-deps-fix.patch
- force switch to db4.2 and rpm built with it, release 16
[packages/poldek.git] / poldek-deps-fix.patch
1 --- pkgset-install.c    16 Nov 2002 00:23:22 -0000      1.82
2 +++ pkgset-install.c    16 Jul 2003 10:55:04 -0000      1.82.4.1
3 @@ -224,11 +224,11 @@
4          
5          if (p != pkg && pkg_is_marked(p)) {
6              if (req == NULL || pkg_statisfies_req(p, req, 0)) {
7 -            DBGF("%s -> yes, %s\n", pkg_snprintf_s0(pkg), pkg_snprintf_s1(p));
8 -            return 1;
9 +                DBGF("%s -> yes, %s\n", pkg_snprintf_s0(pkg), pkg_snprintf_s1(p));
10 +                return 1;
11 +            }
12          }
13      }
14 -    }
15  
16      return 0;
17  }
18 @@ -303,7 +303,7 @@
19                      struct pkg **candidates, int npkgs,
20                      struct pkgset *ps, struct upgrade_s *upg)
21  {
22 -    int *ncnfls, i, j, i_min, cnfl_min;
23 +    int *ncnfls, i, j, i_best, cnfl_min;
24      int i_ver_eq = -1, i_evr_eq = -1;
25  
26      DBGF("%s (%d)\n", pkg_snprintf_s(marker), npkgs);
27 @@ -345,38 +345,44 @@
28          return i_ver_eq;
29  
30      cnfl_min = INT_MAX;
31 -    i_min = -1;
32 +    i_best = -1;
33      for (i=0; i < npkgs; i++) {
34          DBGF("%d. %s %d\n", i, pkg_snprintf_s(candidates[i]), ncnfls[i]);
35          if (cnfl_min > ncnfls[i]) {
36              cnfl_min = ncnfls[i];
37 -            i_min = i;
38 +            i_best = i;
39          }
40      }
41      
42 -    DBGF("[after cnfls] i_min = %d\n", i_min);
43 +    DBGF("[after cnfls] i_best = %d\n", i_best);
44      if (cnfl_min == 0) {
45          int n = INT_MAX, *nmarks;
46          
47          nmarks = alloca(npkgs * sizeof(*nmarks));
48          
49          for (i=0; i < npkgs; i++) {
50 +            if (other_version_marked(candidates[i], ps->pkgs, NULL)) {
51 +                DBGF("%d. %s other version is already marked, skipped\n",
52 +                     i, pkg_snprintf_s(candidates[i]));
53 +                continue;
54 +            }
55 +
56              nmarks[i] = pkg_drags(candidates[i], ps, upg);
57 -            DBGF("%d %s -> %d\n", i, pkg_snprintf_s(candidates[i]), nmarks[i]);
58 -            if (n > nmarks[i]) {
59 +            DBGF("%d. %s -> %d\n", i, pkg_snprintf_s(candidates[i]), nmarks[i]);
60 +            if (n > nmarks[i])
61                  n = nmarks[i];
62 -            }
63 -            
64 +
65              if (n == 0 && ncnfls[i] == 0) {
66 -                i_min = i;
67 +                i_best = i;
68                  break;
69              }
70          }
71      }
72  
73 -    if (i_min == -1) 
74 -        i_min = 0;
75 -    return i_min;
76 +    if (i_best == -1) 
77 +        i_best = 0;
78 +    DBGF("RET %d. %s\n", i_best, pkg_snprintf_s(candidates[i]));
79 +    return i_best;
80  }
81  
82  #define FINDREQ_BESTSEL    0
83 @@ -1009,7 +1015,7 @@
84              capreq_snprintf(reqname, 256, req);
85          }
86  
87 -        DBGF("req %s\n", capreq_snprintf_s(req));
88 +        DBGF("%s: REQ %s\n", pkg_snprintf_s(pkg), capreq_snprintf_s(req));
89  
90          if ((upg->inst->flags & INSTS_EQPKG_ASKUSER) && upg->inst->askpkg_fn)
91              tomark_candidates_ptr = &tomark_candidates;
92 @@ -1022,7 +1028,8 @@
93                  goto l_end_loop;
94              }
95          }
96 -        
97 +        DBGF("%s: TOMARK %s\n", pkg_snprintf_s1(pkg),
98 +             tomark ? pkg_snprintf_s0(tomark) : "NULL");
99          /* don't check foreign dependencies */
100          if (process_as == PROCESS_AS_ORPHAN) {
101  #if 0   /* buggy,  TODO - unmark foreign on adding to uninst_set */
This page took 0.037045 seconds and 3 git commands to generate.