2019-08-22 17:26:08 +00:00
|
|
|
#
|
|
|
|
# BSD LICENSE
|
|
|
|
#
|
|
|
|
# Copyright (c) Intel Corporation.
|
|
|
|
# All rights reserved.
|
|
|
|
#
|
|
|
|
# Redistribution and use in source and binary forms, with or without
|
|
|
|
# modification, are permitted provided that the following conditions
|
|
|
|
# are met:
|
|
|
|
#
|
|
|
|
# * Redistributions of source code must retain the above copyright
|
|
|
|
# notice, this list of conditions and the following disclaimer.
|
|
|
|
# * Redistributions in binary form must reproduce the above copyright
|
|
|
|
# notice, this list of conditions and the following disclaimer in
|
|
|
|
# the documentation and/or other materials provided with the
|
|
|
|
# distribution.
|
|
|
|
# * Neither the name of Intel Corporation nor the names of its
|
|
|
|
# contributors may be used to endorse or promote products derived
|
|
|
|
# from this software without specific prior written permission.
|
|
|
|
#
|
|
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
|
|
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
|
|
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
|
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
|
|
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
#
|
|
|
|
|
2019-08-12 22:46:38 +00:00
|
|
|
# A quick note on organization:
|
|
|
|
#
|
|
|
|
# Each grouping is independent from itself. it depends only on libraries
|
|
|
|
# in the grouping above it. All dependencies are listed alphabetically within
|
|
|
|
# groups. The only exception to this is the JSON_LIBS grouping which is a special
|
|
|
|
# case since they almost always occur together.
|
|
|
|
|
|
|
|
JSON_LIBS := json jsonrpc rpc
|
|
|
|
|
2019-08-20 16:58:45 +00:00
|
|
|
DEPDIRS-env_ocf :=
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-log :=
|
2019-09-06 16:34:34 +00:00
|
|
|
DEPDIRS-rte_vhost :=
|
2019-08-12 22:46:38 +00:00
|
|
|
|
2021-07-30 13:46:25 +00:00
|
|
|
DEPDIRS-env_dpdk := log util
|
2021-02-12 18:34:35 +00:00
|
|
|
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-ioat := log
|
2021-11-16 22:11:47 +00:00
|
|
|
DEPDIRS-idxd := log util
|
2020-01-28 19:24:46 +00:00
|
|
|
DEPDIRS-sock := log $(JSON_LIBS)
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-util := log
|
|
|
|
DEPDIRS-vmd := log
|
2021-04-26 06:29:38 +00:00
|
|
|
DEPDIRS-dma := log
|
2021-08-30 14:02:50 +00:00
|
|
|
DEPDIRS-trace_parser := log
|
2020-08-19 15:35:38 +00:00
|
|
|
ifeq ($(CONFIG_VFIO_USER),y)
|
|
|
|
DEPDIRS-vfio_user := log
|
|
|
|
endif
|
2019-08-12 22:46:38 +00:00
|
|
|
|
|
|
|
DEPDIRS-conf := log util
|
|
|
|
DEPDIRS-json := log util
|
2020-03-14 09:20:44 +00:00
|
|
|
DEPDIRS-rdma := log util
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-reduce := log util
|
2021-04-02 09:49:21 +00:00
|
|
|
DEPDIRS-thread := log util trace
|
2020-03-14 09:20:44 +00:00
|
|
|
|
2021-08-25 17:04:51 +00:00
|
|
|
DEPDIRS-nvme := log sock util trace
|
2020-03-14 09:20:44 +00:00
|
|
|
ifeq ($(CONFIG_RDMA),y)
|
2021-05-19 09:36:18 +00:00
|
|
|
DEPDIRS-nvme += rdma dma
|
2020-03-14 09:20:44 +00:00
|
|
|
endif
|
2020-08-19 15:35:38 +00:00
|
|
|
ifeq ($(CONFIG_VFIO_USER),y)
|
|
|
|
DEPDIRS-nvme += vfio_user
|
|
|
|
endif
|
2019-08-12 22:46:38 +00:00
|
|
|
|
|
|
|
DEPDIRS-blob := log util thread
|
2020-05-20 11:23:12 +00:00
|
|
|
DEPDIRS-accel := log util thread json
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-jsonrpc := log util json
|
|
|
|
DEPDIRS-virtio := log util json thread
|
|
|
|
|
|
|
|
DEPDIRS-lvol := log util blob
|
|
|
|
DEPDIRS-rpc := log util json jsonrpc
|
|
|
|
|
|
|
|
DEPDIRS-net := log util $(JSON_LIBS)
|
|
|
|
DEPDIRS-notify := log util $(JSON_LIBS)
|
|
|
|
DEPDIRS-trace := log util $(JSON_LIBS)
|
|
|
|
|
2020-10-12 10:21:50 +00:00
|
|
|
DEPDIRS-bdev := log util thread $(JSON_LIBS) notify trace
|
2020-10-14 14:01:26 +00:00
|
|
|
DEPDIRS-blobfs := log thread blob trace
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event := log util thread $(JSON_LIBS) trace init
|
2021-03-02 19:34:25 +00:00
|
|
|
DEPDIRS-init := jsonrpc json log rpc thread util
|
2019-08-12 22:46:38 +00:00
|
|
|
|
2020-01-08 15:13:00 +00:00
|
|
|
DEPDIRS-ftl := log util thread trace bdev
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-nbd := log util thread $(JSON_LIBS) bdev
|
2020-12-08 14:44:35 +00:00
|
|
|
DEPDIRS-nvmf := accel log sock util nvme thread $(JSON_LIBS) trace bdev
|
2020-03-14 08:32:18 +00:00
|
|
|
ifeq ($(CONFIG_RDMA),y)
|
|
|
|
DEPDIRS-nvmf += rdma
|
|
|
|
endif
|
2019-08-12 22:46:38 +00:00
|
|
|
DEPDIRS-scsi := log util thread $(JSON_LIBS) trace bdev
|
|
|
|
|
2020-09-23 17:37:48 +00:00
|
|
|
DEPDIRS-iscsi := log sock util conf thread $(JSON_LIBS) trace scsi
|
2020-10-12 10:47:00 +00:00
|
|
|
DEPDIRS-vhost = log util thread $(JSON_LIBS) bdev scsi
|
2019-08-16 23:20:15 +00:00
|
|
|
|
|
|
|
# ------------------------------------------------------------------------
|
|
|
|
# Start module/ directory - This section extends the organizational pattern from
|
|
|
|
# above. However, it introduces several more groupings which may not strictly follow
|
|
|
|
# the ordering pattern above. These are used for convenience and to help quickly
|
|
|
|
# determine the unique dependencies of a given module. It is also grouped by directory.
|
|
|
|
|
|
|
|
BDEV_DEPS = log util $(JSON_LIBS) bdev
|
|
|
|
BDEV_DEPS_THREAD = $(BDEV_DEPS) thread
|
|
|
|
|
|
|
|
# module/blob
|
|
|
|
DEPDIRS-blob_bdev := log thread bdev
|
|
|
|
|
2019-08-28 08:06:50 +00:00
|
|
|
# module/blobfs
|
|
|
|
DEPDIRS-blobfs_bdev := $(BDEV_DEPS_THREAD) blob_bdev blobfs
|
2020-08-28 09:19:38 +00:00
|
|
|
ifeq ($(CONFIG_FUSE),y)
|
|
|
|
DEPDIRS-blobfs_bdev += event
|
|
|
|
endif
|
2019-08-28 08:06:50 +00:00
|
|
|
|
2020-02-05 17:10:05 +00:00
|
|
|
# module/accel
|
2020-11-25 18:37:40 +00:00
|
|
|
DEPDIRS-accel_ioat := log ioat thread jsonrpc rpc accel
|
2021-11-11 20:35:34 +00:00
|
|
|
DEPDIRS-accel_idxd := log idxd thread $(JSON_LIBS) accel trace
|
2019-08-16 23:20:15 +00:00
|
|
|
|
2019-12-10 23:29:37 +00:00
|
|
|
# module/env_dpdk
|
|
|
|
DEPDIRS-env_dpdk_rpc := log $(JSON_LIBS)
|
|
|
|
|
2019-08-16 23:20:15 +00:00
|
|
|
# module/sock
|
2020-02-28 20:23:10 +00:00
|
|
|
DEPDIRS-sock_posix := log sock util
|
2019-10-14 23:58:51 +00:00
|
|
|
DEPDIRS-sock_uring := log sock util
|
2019-08-16 23:20:15 +00:00
|
|
|
|
2021-08-06 09:17:16 +00:00
|
|
|
# module/scheduler
|
|
|
|
DEPDIRS-scheduler_dynamic := event log thread util
|
|
|
|
ifeq ($(SPDK_ROOT_DIR)/lib/env_dpdk,$(CONFIG_ENV))
|
|
|
|
ifeq ($(OS),Linux)
|
|
|
|
DEPDIRS-scheduler_dpdk_governor := event log
|
|
|
|
DEPDIRS-scheduler_gscheduler := event log
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2019-08-16 23:20:15 +00:00
|
|
|
# module/bdev
|
2020-10-12 10:57:37 +00:00
|
|
|
DEPDIRS-bdev_gpt := bdev json log thread util
|
2019-08-16 23:20:15 +00:00
|
|
|
|
2020-10-12 10:55:13 +00:00
|
|
|
DEPDIRS-bdev_error := $(BDEV_DEPS)
|
2019-08-16 23:20:15 +00:00
|
|
|
DEPDIRS-bdev_lvol := $(BDEV_DEPS) lvol blob blob_bdev
|
|
|
|
DEPDIRS-bdev_rpc := $(BDEV_DEPS)
|
2020-10-12 11:25:43 +00:00
|
|
|
DEPDIRS-bdev_split := $(BDEV_DEPS)
|
2019-08-16 23:20:15 +00:00
|
|
|
|
2020-10-12 10:53:20 +00:00
|
|
|
DEPDIRS-bdev_aio := $(BDEV_DEPS_THREAD)
|
2019-08-16 23:20:15 +00:00
|
|
|
DEPDIRS-bdev_compress := $(BDEV_DEPS_THREAD) reduce
|
2020-10-14 14:51:18 +00:00
|
|
|
DEPDIRS-bdev_crypto := $(BDEV_DEPS_THREAD)
|
2019-08-16 23:20:15 +00:00
|
|
|
DEPDIRS-bdev_delay := $(BDEV_DEPS_THREAD)
|
2020-10-14 14:51:18 +00:00
|
|
|
DEPDIRS-bdev_iscsi := $(BDEV_DEPS_THREAD)
|
2021-12-16 08:28:25 +00:00
|
|
|
DEPDIRS-bdev_malloc := $(BDEV_DEPS_THREAD) accel
|
2020-10-12 11:00:57 +00:00
|
|
|
DEPDIRS-bdev_null := $(BDEV_DEPS_THREAD)
|
2021-03-08 17:43:10 +00:00
|
|
|
DEPDIRS-bdev_nvme = $(BDEV_DEPS_THREAD) accel nvme
|
2020-10-14 14:51:18 +00:00
|
|
|
DEPDIRS-bdev_ocf := $(BDEV_DEPS_THREAD)
|
2020-10-12 11:05:46 +00:00
|
|
|
DEPDIRS-bdev_passthru := $(BDEV_DEPS_THREAD)
|
2020-10-14 14:51:18 +00:00
|
|
|
DEPDIRS-bdev_pmem := $(BDEV_DEPS_THREAD)
|
|
|
|
DEPDIRS-bdev_raid := $(BDEV_DEPS_THREAD)
|
|
|
|
DEPDIRS-bdev_rbd := $(BDEV_DEPS_THREAD)
|
2020-10-14 14:35:07 +00:00
|
|
|
DEPDIRS-bdev_uring := $(BDEV_DEPS_THREAD)
|
2020-10-12 12:05:56 +00:00
|
|
|
DEPDIRS-bdev_virtio := $(BDEV_DEPS_THREAD) virtio
|
2019-08-21 08:38:53 +00:00
|
|
|
DEPDIRS-bdev_zone_block := $(BDEV_DEPS_THREAD)
|
2020-01-08 15:30:35 +00:00
|
|
|
ifeq ($(OS),Linux)
|
|
|
|
DEPDIRS-bdev_ftl := $(BDEV_DEPS_THREAD) ftl
|
|
|
|
endif
|
2019-08-16 23:20:15 +00:00
|
|
|
|
|
|
|
# module/event
|
|
|
|
|
2019-08-22 22:06:05 +00:00
|
|
|
# module/event/subsystems
|
|
|
|
# These depdirs include subsystem interdependencies which
|
|
|
|
# are not related to symbols, but are defined directly in
|
|
|
|
# the SPDK event subsystem code.
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event_accel := init accel
|
|
|
|
DEPDIRS-event_vmd := init vmd $(JSON_LIBS) log thread
|
2019-08-22 22:06:05 +00:00
|
|
|
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event_bdev := init bdev event_accel event_vmd event_sock
|
2019-08-22 22:06:05 +00:00
|
|
|
|
2021-03-25 10:46:22 +00:00
|
|
|
DEPDIRS-event_scheduler := event init json log
|
2021-08-06 09:17:16 +00:00
|
|
|
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event_nbd := init nbd event_bdev
|
2021-08-06 09:17:16 +00:00
|
|
|
DEPDIRS-event_nvmf := init nvmf event_bdev event_scheduler event_sock thread log bdev util $(JSON_LIBS)
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event_scsi := init scsi event_bdev
|
2019-08-22 22:06:05 +00:00
|
|
|
|
2021-08-06 09:17:16 +00:00
|
|
|
DEPDIRS-event_iscsi := init iscsi event_scheduler event_scsi event_sock
|
|
|
|
DEPDIRS-event_vhost := init vhost event_scheduler event_scsi
|
2021-02-26 22:00:03 +00:00
|
|
|
DEPDIRS-event_sock := init sock
|