Imported Upstream version 0.7.2
[platform/upstream/libsolv.git] / src / solver.h
index 1b85fb3..6fc2e9f 100644 (file)
 extern "C" {
 #endif
 
-struct _Solver {
+struct s_Solver {
   Pool *pool;                          /* back pointer to pool */
   Queue job;                           /* copy of the job we're solving */
 
-  int (*solution_callback)(struct _Solver *solv, void *data);
+  int (*solution_callback)(struct s_Solver *solv, void *data);
   void *solution_callback_data;
 
   int pooljobcnt;                      /* number of pooljob entries in job queue */
@@ -68,6 +68,7 @@ struct _Solver {
   Id duprules_end;
 
   Id bestrules;                                /* rules from SOLVER_FORCEBEST */
+  Id bestrules_up;                     /* update rule part starts here*/
   Id bestrules_end;
   Id *bestrules_pkg;
 
@@ -166,6 +167,7 @@ struct _Solver {
   int urpmreorder;                     /* true: do special urpm package reordering */
   int strongrecommends;                        /* true: create weak rules for recommends */
   int install_also_updates;            /* true: do not prune install job rules to installed packages */
+  int only_namespace_recommended;      /* true: only install packages recommended by namespace */
 
   int process_orphans;                 /* true: do special orphan processing */
   Map dupmap;                          /* dup to those packages */
@@ -210,7 +212,7 @@ struct _Solver {
 #endif /* LIBSOLV_INTERNAL */
 };
 
-typedef struct _Solver Solver;
+typedef struct s_Solver Solver;
 
 /*
  * queue commands
@@ -316,6 +318,7 @@ typedef struct _Solver Solver;
 #define SOLVER_FLAG_FOCUS_BEST                 24
 #define SOLVER_FLAG_STRONG_RECOMMENDS          25
 #define SOLVER_FLAG_INSTALL_ALSO_UPDATES       26
+#define SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED 27
 
 #define GET_USERINSTALLED_NAMES                        (1 << 0)        /* package names instead of ids */
 #define GET_USERINSTALLED_INVERTED             (1 << 1)        /* autoinstalled */