52 lines
1.5 KiB
Python
52 lines
1.5 KiB
Python
version = "12.2.0"
|
|
revision = 1
|
|
metadata = meta(
|
|
description = "Modern, secure, portable, multiprotocol bootloader and boot manager",
|
|
license = "BSD-2-Clause",
|
|
website = "https://limine-bootloader.org"
|
|
)
|
|
source = tarball_source(
|
|
url = f"https://github.com/Limine-Bootloader/Limine/releases/download/v{version}/limine-{version}.tar.gz",
|
|
sha256 = "db8a119878cfeead63c0a78236c577c40539c5759496950ea0ed32a6cf567865",
|
|
strip_components = 1,
|
|
)
|
|
host_deps = ["binutils", "gcc"]
|
|
deps = [options.libc]
|
|
|
|
build_if = options.target_arch in ["x86_64", "aarch64", "riscv64", "loongarch64"]
|
|
|
|
arch_configure_args = {
|
|
"x86_64": ["--enable-uefi-x86-64", "--enable-uefi-ia32", "--enable-bios", "--enable-bios-cd"],
|
|
"aarch64": ["--enable-uefi-aarch64"],
|
|
"riscv64": ["--enable-uefi-riscv64"],
|
|
"loongarch64": ["--enable-uefi-loongarch64"],
|
|
}
|
|
|
|
configure, build, install = autotools(
|
|
configure_args = ["--enable-uefi-cd"] + arch_configure_args.get(options.target_arch),
|
|
configure_env = {"TOOLCHAIN_FOR_TARGET": options.target_triple + "-"},
|
|
)
|
|
|
|
subpackages = [
|
|
subpackage(
|
|
"limine-uefi",
|
|
meta(description = "UEFI files"),
|
|
[
|
|
"usr/share/limine/BOOT*.EFI",
|
|
"usr/share/limine/limine-uefi-*.bin",
|
|
],
|
|
),
|
|
]
|
|
|
|
if options.target_arch == "x86_64":
|
|
subpackages += [
|
|
subpackage(
|
|
"limine-bios",
|
|
meta(description = "BIOS files"),
|
|
[
|
|
"usr/share/limine/limine-bios*",
|
|
],
|
|
)
|
|
]
|
|
|