SF_FILELIST_CHANGED = 128, /* needs filelist written */
SF_USER = 256,
SF_NEED_DETAIL = 512,
+ SF_IGNORE = 1024, /* ignore this package in dependency checks */
SF_LAST_STATE_FLAG
};
typedef enum pkg_state_flag pkg_state_flag_t;
PKG_DEPENDS,
PKG_CONFLICTS,
PKG_CONFFILES,
+ PKG_ALTERNATIVES,
};
struct abstract_pkg {
#include "pkg_depends.h"
+enum pkg_alternative_field {
+ PAF_PRIO,
+ PAF_PATH,
+ PAF_ALTPATH,
+ __PAF_MAX,
+};
+
+struct pkg_alternative {
+ int prio;
+ char *path;
+ char *altpath;
+};
+
+struct pkg_alternatives {
+ int nalts;
+ struct pkg_alternative **alts;
+};
+
/* XXX: CLEANUP: I'd like to clean up pkg_t in several ways:
The 3 version fields should go into a single version struct. (This
void pkg_formatted_info(FILE * fp, pkg_t * pkg);
void pkg_formatted_field(FILE * fp, pkg_t * pkg, const char *field);
-void set_flags_from_control(pkg_t * pkg);
-
void pkg_print_status(pkg_t * pkg, FILE * file);
str_list_t *pkg_get_installed_files(pkg_t * pkg);
void pkg_free_installed_files(pkg_t * pkg);