Files
bearhub/bauh/gems/arch/pkgbuild.py
2020-02-11 18:41:12 -03:00

27 lines
798 B
Python

import re
from typing import Set
RE_PKGBUILD_OPTDEPS = re.compile(r"optdepends = (.+)")
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, x86_64: bool) -> dict:
res = {}
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, 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)))
return optdeps