[aur] architecture dependencies

This commit is contained in:
Vinícius Moreira
2020-02-11 18:41:12 -03:00
parent 2b9f4bf69f
commit 82ae65ebb7
4 changed files with 57 additions and 23 deletions

View File

@@ -2,21 +2,25 @@ import re
from typing import Set
RE_PKGBUILD_OPTDEPS = re.compile(r"optdepends = (.+)")
RE_PKGBUILD_DEPSON = re.compile(r"\s+depends = (.+)")
RE_PKGBUILD_OPTDEPS_x86_64 = re.compile(r"optdepends_x86_64 = (.+)")
RE_PKGBUILD_OPTDEPS_i686 = re.compile(r"optdepends_i686 = (.+)")
def read_optdeps_as_dict(srcinfo: str) -> dict:
def read_optdeps_as_dict(srcinfo: str, x86_64: bool) -> dict:
res = {}
for optdep in read_optdeps(srcinfo):
for optdep in read_optdeps(srcinfo, x86_64):
split_dep = optdep.split(':')
res[split_dep[0].strip()] = split_dep[1].strip() if len(split_dep) > 1 else None
return res
def read_optdeps(srcinfo: str) -> Set[str]:
return set(RE_PKGBUILD_OPTDEPS.findall(srcinfo))
def read_optdeps(srcinfo: str, x86_64: bool) -> Set[str]:
optdeps = set(RE_PKGBUILD_OPTDEPS.findall(srcinfo))
if x86_64:
optdeps.update(set(RE_PKGBUILD_OPTDEPS_x86_64.findall(srcinfo)))
else:
optdeps.update(set(RE_PKGBUILD_OPTDEPS_i686.findall(srcinfo)))
def read_depends_on(srcinfo: str) -> Set[str]:
return set(RE_PKGBUILD_DEPSON.findall(srcinfo))
return optdeps