# buildorder.py - script to generate a build order respecting package dependencies
import os
+import re
import sys
from itertools import filterfalse
comma_deps = line[len(prefix):].replace('"', '')
return set([
- dep.strip() for dep in comma_deps.split(',')
+ # Replace parenthesis to handle version qualifiers, as in "gcc (>= 5.0)":
+ re.sub(r'\(.*?\)', '', dep).strip() for dep in comma_deps.split(',')
if 'libandroid-support' not in dep
])
# search package build.sh
build_sh_path = os.path.join(self.dir, 'build.sh')
if not os.path.isfile(build_sh_path):
- raise Exception("build.sh not found")
+ raise Exception("build.sh not found for package '" + name + "'")
self.buildfile = TermuxBuildFile(build_sh_path)
self.deps = self.buildfile._get_dependencies()