Add provider package in pkg_needrebuild() in the form package@provider

This commit is contained in:
Silvan Calarco 2014-07-06 20:15:28 +02:00
parent 56baf37545
commit 7de992a3e5
4 changed files with 8 additions and 8 deletions

View File

@ -521,12 +521,10 @@ resolveFirstLevelDependencies(struct configTag *ct, int archidx)
provided->provider[j]->name,
provided->provider[j]->arch,
ct->repository[provided->provider[j]->altrepository]->tag);
}
fprintf(stderr,"Warning: %s\n",warning);
for (j = 0; j < provided->numproviders; j++) {
addRebuild(provided->provider[j]->sourceheader,currheader->sourceheader);
addRebuild(provided->provider[j]->sourceheader,currheader->sourceheader,provided->provider[j]);
addWarning(provided->provider[j]->sourceheader,warning);
}
fprintf(stderr,"Warning: %s\n",warning);
} else {
/* warn about provides provided by obsoleted packages */
k=0;

View File

@ -93,7 +93,7 @@ struct warningList* addWarning(struct headerSourceList *pkg, char* text)
return pkg->firstwarning;
}
struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSourceList* sourceheader)
struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSourceList* sourceheader, struct headerList* provider)
{
struct rebuildList *currrebuild, *prevrebuild = NULL;
@ -102,7 +102,7 @@ struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSource
currrebuild = pkg->firstrebuild;
while (currrebuild) {
if (currrebuild->sourceheader == sourceheader) return currrebuild;
if ((currrebuild->sourceheader == sourceheader) && (currrebuild->provider == provider)) return currrebuild;
prevrebuild = currrebuild;
currrebuild = currrebuild->next;
}
@ -112,6 +112,7 @@ struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSource
if (!pkg->firstrebuild) pkg->firstrebuild=currrebuild;
currrebuild->sourceheader=sourceheader;
currrebuild->provider=provider;
currrebuild->next=NULL;
if (prevrebuild) prevrebuild->next=currrebuild;

View File

@ -63,6 +63,7 @@ struct warningList {
struct rebuildList {
struct headerSourceList *sourceheader;
struct headerList *provider;
struct rebuildList *next;
};
@ -225,7 +226,7 @@ addToHeaderList(struct configTag *ct,
struct warningList* addWarning(struct headerSourceList *pkg,char* text);
struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSourceList* sourceheader);
struct rebuildList* addRebuild(struct headerSourceList *pkg, struct headerSourceList* sourceheader, struct headerList* provider);
int getPackageNameFromFile(char *name);

View File

@ -2097,7 +2097,7 @@ print_datatables(struct configTag *ct, int arch) {
}
fprintf(fbsh," pkg_needrebuild=(");
while (currrebuild) {
fprintf(fbsh, "%s ", currrebuild->sourceheader->name);
fprintf(fbsh, "%s@%s ", currrebuild->sourceheader->name, currrebuild->provider->name);
currrebuild = currrebuild->next;
}
fprintf(fbsh,"); }\n");