-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathTaskfile.yml
46 lines (40 loc) · 1.28 KB
/
Taskfile.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
version: '3'
dotenv: ['.env', '.env.default']
includes:
initramfs: ./taskfiles/TasksInitramfs.yml
kernel: ./taskfiles/TasksKernel.yml
llvm: ./taskfiles/TasksLLVM.yml
passes: ./taskfiles/TasksPasses.yml
qemu: ./taskfiles/TasksQemu.yml
syzkaller: ./taskfiles/TasksSyzkaller.yml
tasks:
gdb:
desc: run gdb automatically attached to qemu
cmds:
- script -c ./scripts/gdb.sh -q -a /dev/null
qemu:
desc: run the kernel within qemu
cmds:
- task: qemu:qemu
syz:
desc: run the syzkaller image within qemu
cmds:
- task: qemu:syzkaller
build:
desc: build static libraries and passes
cmds:
- task kernel:make -- arch/x86/kernel/asm-offsets.s
- mkdir -p {{.REPO}}/build
- cd {{.REPO}}/build && cmake ..
- cd {{.REPO}}/build && make -j${NPROC}
# also call recursively for the other REPOS
- \[ -z `echo {{.NEXT_REPOS}}` \] || task REPOS="{{.NEXT_REPOS}}" build
vars:
REPO:
sh: \[ -z `echo "{{.REPOS}}"` \] || echo "{{.REPOS}}" | awk '{print $1}'
NEXT_REPOS:
sh: \[ -z `echo "{{.REPOS}}"` \] || echo "{{.REPOS}}" | awk '{$1=""; print $0}'
env:
ADDITIONAL_KBUILD_LDFLAGS: ''
ADDITIONAL_CLANG_FLAGS: ''
ADDITIONAL_KBUILD_VMLINUX_OBJS: ''