pkg_set_string(oldpkg, PKG_PRIORITY, pkg_get_string(newpkg, PKG_PRIORITY));
if (!pkg_get_string(oldpkg, PKG_SOURCE))
pkg_set_string(oldpkg, PKG_SOURCE, pkg_get_string(newpkg, PKG_SOURCE));
+ if (!pkg_get_string(oldpkg, PKG_ABIVERSION))
+ pkg_set_string(oldpkg, PKG_ABIVERSION, pkg_get_string(newpkg, PKG_ABIVERSION));
if (!pkg_get_ptr(oldpkg, PKG_CONFFILES)) {
pkg_set_ptr(oldpkg, PKG_CONFFILES, pkg_get_ptr(newpkg, PKG_CONFFILES));
switch (field[0]) {
case 'a':
case 'A':
- if (strcasecmp(field, "Alternatives") == 0) {
+ if (strcasecmp(field, "ABIVersion") == 0) {
+ p = pkg_get_string(pkg, PKG_ABIVERSION);
+ if (p) {
+ fprintf(fp, "ABIVersion: %s\n", p);
+ }
+ } else if (strcasecmp(field, "Alternatives") == 0) {
struct pkg_alternatives *pkg_alts = pkg_get_ptr(pkg, PKG_ALTERNATIVES);
if (pkg_alts && pkg_alts->nalts > 0) {
}
pkg_formatted_field(file, pkg, "Package");
+ pkg_formatted_field(file, pkg, "ABIVersion");
pkg_formatted_field(file, pkg, "Version");
pkg_formatted_field(file, pkg, "Depends");
pkg_formatted_field(file, pkg, "Recommends");
switch (*line) {
case 'A':
- if ((mask & PFM_ALTERNATIVES) && is_field("Alternatives", line))
+ if ((mask & PFM_ABIVERSION) && is_field("ABIVersion", line))
+ pkg_set_string(pkg, PKG_ABIVERSION, line + strlen("ABIVersion") + 1);
+ else if ((mask & PFM_ALTERNATIVES) && is_field("Alternatives", line))
parse_alternatives(pkg, line + strlen("Alternatives") + 1);
else if ((mask & PFM_ARCHITECTURE) && is_field("Architecture", line))
parse_architecture(pkg, line + strlen("Architecture") + 1);