X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fpolicy.h;h=68f4db93d1f3091c2e6b5add446f8eacfa2615d3;hb=e679b515eddb3dd340fb25620de0160211f40fdc;hp=734ffde281146119fc2558abe239069fb9c3ef7a;hpb=66e7a252604ae81a027a2c7b8c437b7228eddcc4;p=platform%2Fupstream%2Flibsolv.git diff --git a/src/policy.h b/src/policy.h index 734ffde..68f4db9 100644 --- a/src/policy.h +++ b/src/policy.h @@ -12,20 +12,39 @@ #include "solver.h" +#ifdef __cplusplus +extern "C" { +#endif + #define POLICY_MODE_CHOOSE 0 #define POLICY_MODE_RECOMMEND 1 #define POLICY_MODE_SUGGEST 2 +#define POLICY_MODE_CHOOSE_NOREORDER 3 /* internal, do not use */ +#define POLICY_MODE_SUPPLEMENT 4 /* internal, do not use */ #define POLICY_ILLEGAL_DOWNGRADE 1 #define POLICY_ILLEGAL_ARCHCHANGE 2 #define POLICY_ILLEGAL_VENDORCHANGE 4 +#define POLICY_ILLEGAL_NAMECHANGE 8 extern void policy_filter_unwanted(Solver *solv, Queue *plist, int mode); extern int policy_illegal_archchange(Solver *solv, Solvable *s1, Solvable *s2); extern int policy_illegal_vendorchange(Solver *solv, Solvable *s1, Solvable *s2); extern int policy_is_illegal(Solver *solv, Solvable *s1, Solvable *s2, int ignore); extern void policy_findupdatepackages(Solver *solv, Solvable *s, Queue *qs, int allowall); +extern const char *policy_illegal2str(Solver *solv, int illegal, Solvable *s, Solvable *rs); +extern void policy_update_recommendsmap(Solver *solv); extern void policy_create_obsolete_index(Solver *solv); +extern void pool_best_solvables(Pool *pool, Queue *plist, int flags); + +/* internal, do not use */ +extern void prune_to_best_version(Pool *pool, Queue *plist); +extern void policy_prefer_favored(Solver *solv, Queue *plist); + + +#ifdef __cplusplus +} +#endif