scx_lavd 1.0.20

A Latency-criticality Aware Virtual Deadline (LAVD) scheduler based on sched_ext, which is a Linux kernel feature which enables implementing kernel thread schedulers in BPF and dynamically loading them. https://github.com/sched-ext/scx/tree/main
libs = ['sdt_alloc', 'sdt_task']

objs = []

foreach src: libs
  # Copy of gen_bpf_o(), because custom targets and generators don't mix
  bpf_o = custom_target(src,
            output: src + '.bpf.o',
            input: src + '.bpf.c',
            command: [bpf_clang, bpf_base_cflags, '-target', 'bpf', libbpf_c_headers, bpf_includes,
                        '-c', '@INPUT@', '-o', '@OUTPUT@'],
            depends: [libbpf, bpftool_target]
            )

  objs += [bpf_o]
endforeach

scx_lib = custom_target(scx_lib_name,
  output: scx_lib_name + '.bpf.o',
  command: [compile_scx_lib, bpftool_exe_path, '@OUTPUT@', scx_lib_name, objs],
  depends: objs,
)