Merge pull request 'feat: add package util-linux' (#134) from sisungo/semios-packages:util-linux into master
Reviewed-on: #134
This commit was merged in pull request #134.
This commit is contained in:
@@ -0,0 +1,323 @@
|
||||
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")
|
||||
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)
|
||||
Reference in New Issue
Block a user