import os from lib import arch, common, make, pkgcomposer def is_abslink(path): try: return os.readlink(path).startswith("/") except: return False def autolink_bin(composer: pkgcomposer.PkgComposer): if is_abslink("bin"): return for i in common.treedir("bin"): if i.is_file() and os.access(i.path, os.X_OK): make.link(f"bin/{i.name}", "/bin/" + i.name) def autolink_lib(composer: pkgcomposer.PkgComposer): if is_abslink("lib"): return for i in common.treedir("lib"): if i.is_file(): make.link(f"lib/{i.name}", "/lib/" + arch.get_target() + "/" + i.name) def autolink_include(composer: pkgcomposer.PkgComposer): if is_abslink("include"): return for i in common.treedir("include"): if i.is_file(): make.link( f"include/{i.name}", "/lib/" + arch.get_target() + "/include/" + i.name, ) def autolink(composer: pkgcomposer.PkgComposer): os.chdir(composer.workdir + "/bundle/") try: autolink_bin(composer) except: pass try: autolink_lib(composer) except: pass try: autolink_include(composer) except: pass