0940b4be168680787a0f65212cd6d7a0a0896dc9
[dpdk.git] / examples / Makefile
1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(c) 2016 6WIND S.A.
3
4 ifeq ($(RTE_SDK),)
5 $(error "Please define RTE_SDK environment variable")
6 endif
7
8 # Default target, detect a build directory, by looking for a path with a .config
9 RTE_TARGET ?= $(notdir $(abspath $(dir $(firstword $(wildcard $(RTE_SDK)/*/.config)))))
10
11 include $(RTE_SDK)/mk/rte.vars.mk
12
13 DIRS-$(CONFIG_RTE_LIBRTE_BBDEV) += bbdev_app
14 DIRS-$(CONFIG_RTE_LIBRTE_PMD_BOND) += bond
15 DIRS-y += cmdline
16 ifeq ($(CONFIG_RTE_LIBRTE_POWER),y)
17 DIRS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) += distributor
18 endif
19 DIRS-y += ethtool
20 DIRS-$(CONFIG_RTE_LIBRTE_EFD) += server_node_efd
21 DIRS-$(CONFIG_RTE_LIBRTE_CRYPTODEV) += fips_validation
22 DIRS-$(CONFIG_RTE_LIBRTE_FLOW_CLASSIFY) += flow_classify
23 DIRS-y += flow_filtering
24 DIRS-y += helloworld
25 DIRS-$(CONFIG_RTE_LIBRTE_PIPELINE) += ip_pipeline
26 ifeq ($(CONFIG_RTE_LIBRTE_LPM),y)
27 DIRS-$(CONFIG_RTE_IP_FRAG) += ip_reassembly
28 DIRS-$(CONFIG_RTE_IP_FRAG) += ip_fragmentation
29 endif
30 ifeq ($(CONFIG_RTE_LIBRTE_ACL)$(CONFIG_RTE_LIBRTE_HASH)$(CONFIG_RTE_LIBRTE_LPM)$(CONFIG_RTE_LIBRTE_SECURITY),yyyy)
31 DIRS-$(CONFIG_RTE_LIBRTE_CRYPTODEV) += ipsec-secgw
32 endif
33 DIRS-$(CONFIG_RTE_LIBRTE_HASH) += ipv4_multicast
34 DIRS-$(CONFIG_RTE_LIBRTE_KNI) += kni
35 DIRS-y += l2fwd
36 ifneq ($(PQOS_INSTALL_PATH),)
37 DIRS-y += l2fwd-cat
38 endif
39 DIRS-$(CONFIG_RTE_LIBRTE_CRYPTODEV) += l2fwd-crypto
40 DIRS-$(CONFIG_RTE_LIBRTE_JOBSTATS) += l2fwd-jobstats
41 DIRS-y += l2fwd-keepalive
42 DIRS-y += l2fwd-keepalive/ka-agent
43 ifeq ($(CONFIG_RTE_LIBRTE_HASH),y)
44 DIRS-$(CONFIG_RTE_LIBRTE_LPM) += l3fwd
45 endif
46 DIRS-$(CONFIG_RTE_LIBRTE_ACL) += l3fwd-acl
47 ifeq ($(CONFIG_RTE_LIBRTE_LPM)$(CONFIG_RTE_LIBRTE_HASH),yy)
48 DIRS-$(CONFIG_RTE_LIBRTE_POWER) += l3fwd-power
49 endif
50 DIRS-y += link_status_interrupt
51 DIRS-$(CONFIG_RTE_LIBRTE_LPM) += load_balancer
52 DIRS-y += multi_process
53 DIRS-y += netmap_compat/bridge
54 DIRS-y += ntb
55 DIRS-$(CONFIG_RTE_LIBRTE_REORDER) += packet_ordering
56 ifeq ($(CONFIG_RTE_ARCH_X86_64),y)
57 DIRS-y += performance-thread
58 endif
59 DIRS-$(CONFIG_RTE_LIBRTE_IEEE1588) += ptpclient
60 DIRS-$(CONFIG_RTE_LIBRTE_METER) += qos_meter
61 DIRS-$(CONFIG_RTE_LIBRTE_SCHED) += qos_sched
62 DIRS-y += quota_watermark
63 DIRS-$(CONFIG_RTE_ETHDEV_RXTX_CALLBACKS) += rxtx_callbacks
64 DIRS-y += service_cores
65 DIRS-y += skeleton
66 ifeq ($(CONFIG_RTE_LIBRTE_HASH),y)
67 DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += tep_termination
68 endif
69 DIRS-$(CONFIG_RTE_LIBRTE_TIMER) += timer
70 DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += vhost vdpa
71 ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
72 DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += vhost_crypto
73 endif
74 DIRS-y += vmdq
75 DIRS-y += vmdq_dcb
76 ifeq ($(CONFIG_RTE_LIBRTE_POWER), y)
77 ifeq ($(shell pkg-config --atleast-version=0.9.3 libvirt; echo $$?), 0)
78 DIRS-y += vm_power_manager
79 else
80 $(info vm_power_manager requires libvirt >= 0.9.3)
81 endif
82 endif
83
84 DIRS-y += eventdev_pipeline
85
86 include $(RTE_SDK)/mk/rte.extsubdir.mk