Diff scx-1.0.19 with a scx-1.1.0

/usr/portage/sys-kernel/scx/scx-1.1.0.ebuild 2026-05-20 19:17:03.720912006 +0300
5 5

  
6 6
LLVM_COMPAT=( {16..21} )
7 7

  
8
RUST_MIN_VER="1.86.0"
8
RUST_MIN_VER="1.88.0"
9 9

  
10 10
inherit cargo llvm-r2 linux-info
11 11

  
......
52 52
	~BPF
53 53
	~BPF_EVENTS
54 54
	~BPF_JIT
55
	~BPF_JIT_ALWAYS_ON
56
	~BPF_JIT_DEFAULT_ON
55 57
	~BPF_SYSCALL
56 58
	~DEBUG_INFO_BTF
57 59
	~FTRACE
......
61 63

  
62 64
QA_PREBUILT="/usr/bin/vmlinux_docify"
63 65

  
66
PATCHES=(
67
	# Made obsolete by rebasing upstream, can be dropped in 1.1.1
68
	"${FILESDIR}/${P}-scx_cake-musl-fix.patch"
69
)
70

  
64 71
pkg_setup() {
65 72
	linux-info_pkg_setup
66 73
	llvm-r2_pkg_setup
......
68 75
}
69 76

  
70 77
src_compile() {
71
	einfo "Building rust schedulers"
78
	local -x BPF_CLANG=clang-${LLVM_SLOT}
72 79
	cargo_src_compile
80
}
73 81

  
74
	einfo "Building C schedulers"
75
	emake BPF_CLANG="$(get_llvm_prefix)/bin/clang"
82
src_test() {
83
	# Skip broken tests in scx_mitosis and scx_utils
84
	# Upstream: https://github.com/sched-ext/scx/issues/3418
85
	cargo_src_test -- \
86
		--skip cell_manager::tests::test_borrowable_cpumasks_respects_cpuset \
87
		--skip cell_manager::tests::test_cpuset_parsing_from_file \
88
		--skip cell_manager::tests::test_deficit_all_cells_exceed_target \
89
		--skip cell_manager::tests::test_symmetric_pairwise_overlap_produces_equal_cells \
90
		--skip cpumask::tests::test_to_cpulist_roundtrip
76 91
}
77 92

  
78 93
src_install() {
79
	einfo "Installing rust schedulers"
94
	einfo "Installing schedulers"
80 95
	local sched
81 96
	for sched in scheds/rust/scx_*; do
82 97
		einfo "Installing ${sched#scheds/rust/}"
83 98
		dobin "target/$(usex debug debug release)/${sched#scheds/rust}"
84 99
	done
85 100

  
86
	einfo "Installing C schedulers"
87
	emake INSTALL_DIR="${ED}/usr/bin" install
88

  
89 101
	einfo "Installing tools"
90 102
	dobin target/$(usex debug debug release)/{scx{cash,top},vmlinux_docify}
91 103

  
92 104
	dodoc README.md
93 105

  
94 106
	local readme readme_name
95
	for readme in scheds/{rust,c}/*/README.md ./rust/*/README.md; do
107
	for readme in scheds/rust/*/README.md ./rust/*/README.md; do
96 108
		[[ -e ${readme} ]] || continue
97 109
		readme_name="${readme#*/rust/}"
98
		readme_name="${readme_name#*/c/}"
99 110
		readme_name="${readme_name%/README.md}"
100 111
		newdoc "${readme}" "${readme_name}.md"
101 112
	done
Thank you!