326 lines
7.8 KiB
Python
326 lines
7.8 KiB
Python
import os
|
|
|
|
from lib.make import *
|
|
from lib import cpp
|
|
|
|
builddep("shortcut/c")
|
|
builddep("shortcut/autotools")
|
|
builddep("gettext")
|
|
builddep("bash")
|
|
builddep(f"linux-dev @{arch.get_target()}")
|
|
builddep(f"libintl-dev @{arch.get_target()}")
|
|
builddep(f"libz-ng-dev @{arch.get_target()}")
|
|
builddep(f"libncurses-dev @{arch.get_target()}")
|
|
|
|
version("2.42.2")
|
|
description("a random collection of Linux utilities")
|
|
maintainer("sisungo <[email protected]>")
|
|
source_url("https://www.kernel.org/pub/linux/utils/util-linux/v2.42/util-linux-2.42.2.tar.xz")
|
|
|
|
def build():
|
|
cpp.configure([
|
|
"--prefix=/",
|
|
"--enable-fs-paths-default=/bin",
|
|
"--disable-su",
|
|
"--disable-sulogin",
|
|
"--disable-chfn-chsh",
|
|
"--disable-login",
|
|
"--without-systemd",
|
|
"--disable-makeinstall-setuid",
|
|
"--disable-makeinstall-chown",
|
|
"--disable-makeinstall-tty-setgid",
|
|
])
|
|
cpp.make()
|
|
cpp.make_install()
|
|
|
|
on_build(build)
|
|
|
|
|
|
def fix_pc(libname: str):
|
|
pkgname_lib = f"lib{libname}"
|
|
pkgname_dev = f"lib{libname}-dev"
|
|
pc_path = f"lib/pkgconfig/{libname}.pc"
|
|
with open(pc_path, "r") as file:
|
|
pc_content = file.read()
|
|
pc_content = pc_content.replace(
|
|
"libdir=//lib", f"libdir={get_prefix(pkgname_lib)}/lib"
|
|
).replace(
|
|
"includedir=//include", f"includedir={get_prefix(pkgname_dev)}/include"
|
|
)
|
|
with open(pc_path, "wt") as file:
|
|
file.write(pc_content)
|
|
|
|
|
|
def pack_lib(composer, name):
|
|
composer.makedir("lib")
|
|
for i in os.listdir("lib"):
|
|
if name in i and "so" in i:
|
|
composer.addfile(f"lib/{i}", f"lib/{i}")
|
|
|
|
def pack_dev(composer, name):
|
|
fix_pc(name)
|
|
composer.makedir("lib")
|
|
for i in os.listdir("lib"):
|
|
if name in i and "so" not in i:
|
|
composer.addfile(f"lib/{i}", f"lib/{i}")
|
|
composer.makedir("lib/pkgconfig")
|
|
composer.addfile(f"lib/pkgconfig/{name}.pc", f"lib/pkgconfig/{name}.pc")
|
|
composer.makedir("include")
|
|
for i in os.listdir("include"):
|
|
if name in i:
|
|
composer.add_dir(f"include/{i}", f"include/{i}")
|
|
|
|
def pack_bin(composer, list):
|
|
composer.makedir("bin")
|
|
for i in list:
|
|
if i.startswith("sbin/"):
|
|
i = i.replace("sbin/", "")
|
|
composer.addfile(f"sbin/{i}", f"bin/{i}")
|
|
else:
|
|
composer.addfile(f"bin/{i}", f"bin/{i}")
|
|
|
|
package("libblkid")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_lib(composer, "blkid"))
|
|
|
|
package("libblkid-dev")
|
|
dep("libblkid (same)")
|
|
on_pack(lambda composer: pack_dev(composer, "blkid"))
|
|
|
|
package("libfdisk")
|
|
dep("libuuid (same)")
|
|
dep("libblkid (same)")
|
|
on_pack(lambda composer: pack_lib(composer, "fdisk"))
|
|
|
|
package("libfdisk-dev")
|
|
dep("libfdisk (same)")
|
|
on_pack(lambda composer: pack_dev(composer, "fdisk"))
|
|
|
|
package("libmount")
|
|
dep("libblkid (same)")
|
|
on_pack(lambda composer: pack_lib(composer, "mount"))
|
|
|
|
package("libmount-dev")
|
|
dep("libmount (same)")
|
|
on_pack(lambda composer: pack_dev(composer, "mount"))
|
|
|
|
package("libsmartcols")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_lib(composer, "smartcols"))
|
|
|
|
package("libsmartcols-dev")
|
|
dep("libsmartcols (same)")
|
|
on_pack(lambda composer: pack_dev(composer, "smartcols"))
|
|
|
|
package("libuuid")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_lib(composer, "uuid"))
|
|
|
|
package("libuuid-dev")
|
|
dep("libuuid (same)")
|
|
on_pack(lambda composer: pack_dev(composer, "uuid"))
|
|
|
|
package("util-linux-swap")
|
|
dep("libblkid (same)")
|
|
dep("libmount (same)")
|
|
dep("libsmartcols (same)")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/swaplabel", "sbin/swapoff", "sbin/swapon", "sbin/mkswap"]))
|
|
|
|
package("util-linux-mount")
|
|
provide("mount")
|
|
dep("libmount (same)")
|
|
on_pack(lambda composer: pack_bin(composer, ["mount", "umount"]))
|
|
|
|
package("util-linux-fdisk")
|
|
provide("fdisk")
|
|
dep("libfdisk (same)")
|
|
dep("libsmartcols (same)")
|
|
dep("libncurses @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/fdisk"]))
|
|
|
|
package("util-linux-sfdisk")
|
|
provide("sfdisk")
|
|
dep("libfdisk (same)")
|
|
dep("libsmartcols (same)")
|
|
dep("libncurses @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/sfdisk"]))
|
|
|
|
package("util-linux-cfdisk")
|
|
provide("cfdisk")
|
|
dep("libfdisk (same)")
|
|
dep("libsmartcols (same)")
|
|
dep("libncurses @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/cfdisk"]))
|
|
|
|
package("util-linux-mkfs")
|
|
dep("semi-libc @same-arch")
|
|
dep("libz @same-arch")
|
|
provide("mkfs")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/mkfs", "sbin/mkfs.bfs", "sbin/mkfs.cramfs", "sbin/mkfs.minix"]))
|
|
|
|
package("util-linux-fsck")
|
|
dep("libmount (same)")
|
|
dep("libblkid (same)")
|
|
dep("libz @same-arch")
|
|
provide("fsck")
|
|
on_pack(lambda composer: pack_bin(composer, ["sbin/fsck", "sbin/fsck.cramfs", "sbin/fsck.minix"]))
|
|
|
|
package("util-linux-fs")
|
|
dep("libblkid (same)")
|
|
dep("libsmartcols (same)")
|
|
dep("libmount (same)")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"sbin/addpart",
|
|
"sbin/resizepart",
|
|
"sbin/delpart",
|
|
"sbin/partx",
|
|
"sbin/losetup",
|
|
"sbin/blkdiscard",
|
|
"sbin/blkid",
|
|
"sbin/blkpr",
|
|
"sbin/blkzone",
|
|
"sbin/blockdev",
|
|
"sbin/findfs",
|
|
"sbin/fsfreeze",
|
|
"sbin/fstrim",
|
|
"copyfilerange",
|
|
"exch",
|
|
"fadvise",
|
|
"fallocate",
|
|
"fincore",
|
|
"flock",
|
|
"getino",
|
|
"hardlink",
|
|
"mountpoint",
|
|
"namei",
|
|
"rename",
|
|
"whereis",
|
|
"sbin/pivot_root",
|
|
"sbin/switch_root",
|
|
"sbin/wipefs",
|
|
"sbin/zramctl",
|
|
"findmnt",
|
|
]))
|
|
|
|
package("util-linux-security")
|
|
dep("libsmartcols (same)")
|
|
dep("libmount (same)")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"utmpdump",
|
|
"unshare",
|
|
"last",
|
|
"lastb",
|
|
"nsenter",
|
|
"lsns",
|
|
"sbin/nologin",
|
|
]))
|
|
|
|
package("util-linux-proc")
|
|
dep("libsmartcols (same)")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"uclampset",
|
|
"waitpid",
|
|
"setsid",
|
|
"setpgid",
|
|
"taskset",
|
|
"chrt",
|
|
"coresched",
|
|
"prlimit",
|
|
"renice",
|
|
"ionice",
|
|
]))
|
|
|
|
package("util-linux-text")
|
|
dep("libncurses @same-arch")
|
|
dep("libsmartcols (same)")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"bits",
|
|
"cal",
|
|
"colcrt",
|
|
"colrm",
|
|
"column",
|
|
"getopt",
|
|
"hexdump",
|
|
"look",
|
|
"mcookie",
|
|
"rev",
|
|
"ul",
|
|
]))
|
|
|
|
package("util-linux-term")
|
|
dep("libncurses @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"setterm",
|
|
"mesg",
|
|
"script",
|
|
"scriptlive",
|
|
"scriptreplay",
|
|
"wall",
|
|
"sbin/agetty",
|
|
"sbin/ldattach",
|
|
]))
|
|
|
|
package("util-linux-ipc")
|
|
dep("libmount (same)")
|
|
dep("libsmartcols (same)")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"ipcmk",
|
|
"ipcrm",
|
|
"ipcs",
|
|
"lslocks",
|
|
"pipesz",
|
|
"dmesg",
|
|
]))
|
|
|
|
package("util-linux-hardware")
|
|
dep("libsmartcols (same)")
|
|
dep("libncurses @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"irqtop",
|
|
"lsirq",
|
|
"lsmem",
|
|
"wdctl",
|
|
"sbin/hwclock",
|
|
"sbin/readprofile",
|
|
"sbin/rfkill",
|
|
"sbin/rtcwake",
|
|
]))
|
|
|
|
package("isosize")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, ["isosize"]))
|
|
|
|
package("util-linux-arch")
|
|
dep("semi-libc @same-arch")
|
|
on_pack(lambda composer: pack_bin(composer, ["setarch", "uname26", "linux32", "linux64"]))
|
|
|
|
package("util-linux-uuid")
|
|
dep("libuuid (same)")
|
|
dep("libsmartcols (same)")
|
|
on_pack(lambda composer: pack_bin(composer, [
|
|
"uuidgen",
|
|
"uuidparse",
|
|
"sbin/uuidd",
|
|
]))
|
|
|
|
package("util-linux")
|
|
dep("util-linux-swap (same)")
|
|
dep("util-linux-mount (same)")
|
|
dep("util-linux-fdisk (same)")
|
|
dep("util-linux-sfdisk (same)")
|
|
dep("util-linux-cfdisk (same)")
|
|
dep("util-linux-mkfs (same)")
|
|
dep("util-linux-fsck (same)")
|
|
dep("util-linux-fs (same)")
|
|
dep("util-linux-security (same)")
|
|
dep("util-linux-proc (same)")
|
|
dep("util-linux-text (same)")
|
|
dep("util-linux-term (same)")
|
|
dep("util-linux-ipc (same)")
|
|
dep("util-linux-hardware (same)")
|
|
dep("isosize (same)")
|
|
dep("util-linux-arch (same)")
|
|
dep("util-linux-uuid (same)")
|
|
on_pack(lambda _composer: None)
|