xref: /openbmc/linux/kernel/bpf/Makefile (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
2f89b7755SAlexei Starovoitovobj-y := core.o
3080b6f40SArd Biesheuvelifneq ($(CONFIG_BPF_JIT_ALWAYS_ON),y)
4080b6f40SArd Biesheuvel# ___bpf_prog_run() needs GCSE disabled on x86; see 3193c0836f203 for details
5080b6f40SArd Biesheuvelcflags-nogcse-$(CONFIG_X86)$(CONFIG_CC_IS_GCC) := -fno-gcse
6080b6f40SArd Biesheuvelendif
7080b6f40SArd BiesheuvelCFLAGS_core.o += $(call cc-disable-warning, override-init) $(cflags-nogcse-yy)
8b2197755SDaniel Borkmann
94294a0a7SAndrii Nakryikoobj-$(CONFIG_BPF_SYSCALL) += syscall.o verifier.o inode.o helpers.o tnum.o log.o
104294a0a7SAndrii Nakryikoobj-$(CONFIG_BPF_SYSCALL) += bpf_iter.o map_iter.o task_iter.o prog_iter.o link_iter.o
119330986cSJoanne Koongobj-$(CONFIG_BPF_SYSCALL) += hashtab.o arraymap.o percpu_freelist.o bpf_lru_list.o lpm_trie.o map_in_map.o bloom_filter.o
12457f4436SAndrii Nakryikoobj-$(CONFIG_BPF_SYSCALL) += local_storage.o queue_stack_maps.o ringbuf.o
13a10787e6SSong Liuobj-$(CONFIG_BPF_SYSCALL) += bpf_local_storage.o bpf_task_storage.o
148ea63684SKP Singhobj-${CONFIG_BPF_LSM}	  += bpf_inode_storage.o
15053c8e1fSDaniel Borkmannobj-$(CONFIG_BPF_SYSCALL) += disasm.o mprog.o
16fec56f58SAlexei Starovoitovobj-$(CONFIG_BPF_JIT) += trampoline.o
177c8199e2SAlexei Starovoitovobj-$(CONFIG_BPF_SYSCALL) += btf.o memalloc.o
1875ccbef6SBjörn Töpelobj-$(CONFIG_BPF_JIT) += dispatcher.o
19546ac1ffSJohn Fastabendifeq ($(CONFIG_NET),y)
206bdc9c4cSJohn Fastabendobj-$(CONFIG_BPF_SYSCALL) += devmap.o
216710e112SJesper Dangaard Brouerobj-$(CONFIG_BPF_SYSCALL) += cpumap.o
22ab3f0063SJakub Kicinskiobj-$(CONFIG_BPF_SYSCALL) += offload.o
23b27f7bb5SJakub Sitnickiobj-$(CONFIG_BPF_SYSCALL) += net_namespace.o
24*e420bed0SDaniel Borkmannobj-$(CONFIG_BPF_SYSCALL) += tcx.o
255f103c5dSJohn Fastabendendif
26d5a3b1f6SAlexei Starovoitovifeq ($(CONFIG_PERF_EVENTS),y)
27d5a3b1f6SAlexei Starovoitovobj-$(CONFIG_BPF_SYSCALL) += stackmap.o
28d5a3b1f6SAlexei Starovoitovendif
29d4ccaf58SHao Luoifeq ($(CONFIG_CGROUPS),y)
30c4bcfb38SYonghong Songobj-$(CONFIG_BPF_SYSCALL) += cgroup_iter.o bpf_cgrp_storage.o
31d4ccaf58SHao Luoendif
3230070984SDaniel Mackobj-$(CONFIG_CGROUP_BPF) += cgroup.o
335dc4c4b7SMartin KaFai Lauifeq ($(CONFIG_INET),y)
345dc4c4b7SMartin KaFai Lauobj-$(CONFIG_BPF_SYSCALL) += reuseport_array.o
355dc4c4b7SMartin KaFai Lauendif
36341dfcf8SAndrii Nakryikoifeq ($(CONFIG_SYSFS),y)
37341dfcf8SAndrii Nakryikoobj-$(CONFIG_DEBUG_INFO_BTF) += sysfs_btf.o
38341dfcf8SAndrii Nakryikoendif
3927ae7997SMartin KaFai Lauifeq ($(CONFIG_BPF_JIT),y)
4027ae7997SMartin KaFai Lauobj-$(CONFIG_BPF_SYSCALL) += bpf_struct_ops.o
41516f4d33SDavid Vernetobj-$(CONFIG_BPF_SYSCALL) += cpumask.o
42fc611f47SKP Singhobj-${CONFIG_BPF_LSM} += bpf_lsm.o
4327ae7997SMartin KaFai Lauendif
44d71fa5c9SAlexei Starovoitovobj-$(CONFIG_BPF_PRELOAD) += preload/
4529db4beaSAlexei Starovoitov
4629db4beaSAlexei Starovoitovobj-$(CONFIG_BPF_SYSCALL) += relo_core.o
4729db4beaSAlexei Starovoitov$(obj)/relo_core.o: $(srctree)/tools/lib/bpf/relo_core.c FORCE
4829db4beaSAlexei Starovoitov	$(call if_changed_rule,cc_o_c)
49