Files
2026-08-03 18:52:58 +08:00

55 lines
1.2 KiB
Python

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