X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Frepo.h;h=bd9c58c74fbb8c4e6a68792cb6a8a09e8404c60d;hb=e679b515eddb3dd340fb25620de0160211f40fdc;hp=a63999a653cddd5b514b6523daa057335cbd1f9a;hpb=f458102388250c8a1cbbfa8f18d27baa204c696c;p=platform%2Fupstream%2Flibsolv.git diff --git a/src/repo.h b/src/repo.h index a63999a..bd9c58c 100644 --- a/src/repo.h +++ b/src/repo.h @@ -15,6 +15,7 @@ #include "pooltypes.h" #include "pool.h" +#include "poolarch.h" #include "repodata.h" #include "dataiterator.h" #include "hash.h" @@ -98,13 +99,22 @@ static inline int pool_disabled_solvable(const Pool *pool, Solvable *s) return 0; } +static inline int pool_badarch_solvable(const Pool *pool, Solvable *s) +{ + if (!s->arch) + return 1; + if (pool->id2arch && pool_arch2score(pool, s->arch) == 0) + return 1; + return 0; +} + static inline int pool_installable(const Pool *pool, Solvable *s) { if (!s->arch || s->arch == ARCH_SRC || s->arch == ARCH_NOSRC) return 0; if (s->repo && s->repo->disabled) return 0; - if (pool->id2arch && (s->arch > pool->lastarch || !pool->id2arch[s->arch])) + if (pool->id2arch && pool_arch2score(pool, s->arch) == 0) return 0; if (pool->considered) {