From e3e040e9167f778c8221573ea96ce306b84df777 Mon Sep 17 00:00:00 2001 From: Violet Purcell Date: Sun, 6 Sep 2026 13:34:26 -0400 Subject: [PATCH] sys-kernel/scx: add 1.1.3 Signed-off-by: Violet Purcell Part-of: https://codeberg.org/gentoo/gentoo/pulls/1810 Signed-off-by: Sam James --- sys-kernel/scx/Manifest | 2 + sys-kernel/scx/scx-1.1.3.ebuild | 108 ++++++++++++++++++++++++++++++++ 2 files changed, 110 insertions(+) create mode 100644 sys-kernel/scx/scx-1.1.3.ebuild diff --git a/sys-kernel/scx/Manifest b/sys-kernel/scx/Manifest index 142c6e83398a4..13130569a7547 100644 --- a/sys-kernel/scx/Manifest +++ b/sys-kernel/scx/Manifest @@ -4,3 +4,5 @@ DIST scx-1.1.1-crates.tar.xz 57570832 BLAKE2B 1fdfb79cb96999e7130283660b49b9c09e DIST scx-1.1.1.tar.gz 12169813 BLAKE2B 12442a4a71bef5a377a76649c2a23ee76c2af56e64f7058c37beb9490444ee06837541ace7012460855008709a6d0d3e9eee236e5020a93aa9f79931b48bc62b SHA512 7598fca26c74bd23e2670295bbfba380876882953f7487091624d9d8df45db0c47d8c83ba1903091d4c4d9143624e9c18f02ab4151f17e9073a88a90f4382aa3 DIST scx-1.1.2-crates.tar.xz 80264324 BLAKE2B ab939f23bdc0708acce45f191cc6bd19efafd9b65e8e2005bbd6d5e20c1e11ab1b9843ea123e63712278aba34f4a643cca99f808b2019514a218d1645d0fe84a SHA512 318d86bf049f6e8a648b1776fcec2fd38a9d2e91602bdd00a044dae2c4f26a9a29efa5d537e9302f484c869e9a3638a4a78560fae85640d49670176148fad827 DIST scx-1.1.2.tar.gz 12412574 BLAKE2B 7b2f4c40eb96bef9fb327bcd0253e0fb1f0a3e999383ae8835d22d3a34a1bfbb253287ae84517752d15119c3f2d4594c20ee6ecfad7972ea6a213fcd43235a9b SHA512 88a3f395a16467fbcaf32e01088cc7327c3c21e0e0f02a9fd218521783b88629c909e14147198562fd579674ef94a5acdc3b6c0488ebbfca556256cee84ba8cf +DIST scx-1.1.3-crates.tar.xz 77089516 BLAKE2B 8b14d69d30deba3aea83189bcbacf869f9c922010ab839da76b125dcc8974935c74fa1f268a1c80bde945ee532186008f04a721df918ccb67fbc336bd3515804 SHA512 94f0270a506701977cb79caddb766b2326d86816df18c4aacf8149ba90670fc1d43b63af25ddd7a39d45a8544fbc82ff1aad08988b25396bce7d384d85b39ddb +DIST scx-1.1.3.tar.gz 11847388 BLAKE2B 399ecb8fa11de62988e669a2c23335b9c11e3f63f1ca77c906a16170628b40be78973f83f64609920d23fba620c01dd8826ea86a341b21c8924f82143e2f97b4 SHA512 dfed9d7b4a4eead1f6a2923c302ed089d1718a45a299365e89ddda226023ddd2dd9da7c3e18fe7030230efda6e3443697454a90a0a08e651aff95723ca0709e1 diff --git a/sys-kernel/scx/scx-1.1.3.ebuild b/sys-kernel/scx/scx-1.1.3.ebuild new file mode 100644 index 0000000000000..b77ea62d35557 --- /dev/null +++ b/sys-kernel/scx/scx-1.1.3.ebuild @@ -0,0 +1,108 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {16..22} ) + +RUST_MIN_VER="1.94.1" + +inherit cargo llvm-r2 linux-info + +DESCRIPTION="sched_ext schedulers and tools" +HOMEPAGE="https://github.com/sched-ext/scx" +SRC_URI=" + https://github.com/sched-ext/scx/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + ${CARGO_CRATE_URIS} +" +if [[ ${PKGBUMPING} != ${PVR} ]]; then + SRC_URI+=" + https://github.com/gentoo-crate-dist/scx/releases/download/v${PV}/scx-${PV}-crates.tar.xz + " +fi + +LICENSE="GPL-2" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 BSD-2 BSD CC0-1.0 ISC MIT MPL-2.0 Unicode-3.0 ZLIB +" +SLOT="0" +KEYWORDS="~amd64" + +DEPEND=" + >=dev-libs/libbpf-1.6:= + sys-libs/libseccomp + virtual/libelf:= + virtual/zlib:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + app-misc/jq + dev-libs/protobuf[protoc(+)] + >=dev-util/bpftool-7.5.0 + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}=[llvm_targets_BPF(-)] + ') +" +PDEPEND="~sys-kernel/scx-loader-${PV}" + +CONFIG_CHECK=" + ~BPF + ~BPF_EVENTS + ~BPF_JIT + ~BPF_JIT_ALWAYS_ON + ~BPF_JIT_DEFAULT_ON + ~BPF_SYSCALL + ~DEBUG_INFO_BTF + ~FTRACE + ~KALLSYMS_ALL + ~SCHED_CLASS_EXT +" + +QA_PREBUILT="/usr/bin/vmlinux_docify" + +pkg_setup() { + linux-info_pkg_setup + llvm-r2_pkg_setup + rust_pkg_setup +} + +src_compile() { + local -x BPF_CLANG=clang-${LLVM_SLOT} + cargo_src_compile +} + +src_test() { + # Skip broken tests in scx_mitosis and scx_utils + # Upstream: https://github.com/sched-ext/scx/issues/3418 + cargo_src_test -- \ + --skip cell_manager::tests::test_borrowable_cpumasks_respects_cpuset \ + --skip cell_manager::tests::test_cpuset_parsing_from_file \ + --skip cell_manager::tests::test_deficit_all_cells_exceed_target \ + --skip cell_manager::tests::test_symmetric_pairwise_overlap_produces_equal_cells \ + --skip cpumask::tests::test_to_cpulist_roundtrip +} + +src_install() { + einfo "Installing schedulers" + local sched + for sched in scheds/rust/scx_*; do + einfo "Installing ${sched#scheds/rust/}" + dobin "target/$(usex debug debug release)/${sched#scheds/rust}" + done + + einfo "Installing tools" + dobin target/$(usex debug debug release)/{scxtop,vmlinux_docify} + + dodoc README.md + + local readme readme_name + for readme in scheds/rust/*/README.md ./rust/*/README.md; do + [[ -e ${readme} ]] || continue + readme_name="${readme#*/rust/}" + readme_name="${readme_name%/README.md}" + newdoc "${readme}" "${readme_name}.md" + done +}