41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
version = "2.73"
|
|
revision = 1
|
|
description = "POSIX 1003.1e capabilities library"
|
|
license = "BSD-3-Clause OR GPL-2.0-only"
|
|
url = "https://sites.google.com/site/fullycapable/"
|
|
source = tarball(
|
|
url=f"https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-{version}.tar.xz",
|
|
sha256="6405f6089cf4cdd8c271540cd990654d78dd0b1989b2d9bda20f933a75a795a5",
|
|
)
|
|
host_deps = ["binutils", "gcc", "pkgconf"]
|
|
deps = [profile["libc"]]
|
|
|
|
|
|
def _args(self):
|
|
# libcap is plain-make: CC builds target objects, BUILD_CC builds the small
|
|
# native code generator. No PAM/Go bindings; force lib= so it lands in /usr/lib.
|
|
return [
|
|
f"CC={self.triple}-gcc",
|
|
"BUILD_CC=gcc",
|
|
"GOLANG=no",
|
|
"PAM_CAP=no",
|
|
"lib=lib",
|
|
"prefix=/usr",
|
|
]
|
|
|
|
|
|
def build(self):
|
|
# libcap builds in-tree; /sources is read-only, so work in /build.
|
|
self.run("cp", "-rp", f"{self.source_dir}/.", self.build_dir)
|
|
self.run("make", f"-j{self.jobs}", *_args(self))
|
|
|
|
|
|
def install(self):
|
|
self.run(
|
|
"make",
|
|
"install",
|
|
f"DESTDIR={self.dest_dir}",
|
|
"RAISE_SETFCAP=no",
|
|
*_args(self),
|
|
)
|