# # BSD LICENSE # # Copyright (c) Intel Corporation. # All rights reserved. # Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. 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. # # Installation prefix CONFIG_PREFIX="/usr/local" # Target architecture CONFIG_ARCH=native # Prefix for cross compilation CONFIG_CROSS_PREFIX= # Build with debug logging. Turn off for performance testing and normal usage CONFIG_DEBUG=n # Treat warnings as errors (fail the build on any warning). CONFIG_WERROR=n # Build with link-time optimization. CONFIG_LTO=n # Generate profile guided optimization data. CONFIG_PGO_CAPTURE=n # Use profile guided optimization data. CONFIG_PGO_USE=n # Build with code coverage instrumentation. CONFIG_COVERAGE=n # Build with Address Sanitizer enabled CONFIG_ASAN=n # Build with Undefined Behavior Sanitizer enabled CONFIG_UBSAN=n # Build with LLVM fuzzing enabled CONFIG_FUZZER=n CONFIG_FUZZER_LIB= # Build with Thread Sanitizer enabled CONFIG_TSAN=n # Build functional tests CONFIG_TESTS=y # Build unit tests CONFIG_UNIT_TESTS=y # Build examples CONFIG_EXAMPLES=y # Build apps CONFIG_APPS=y # Build with Control-flow Enforcement Technology (CET) CONFIG_CET=n # Directory that contains the desired SPDK environment library. # By default, this is implemented using DPDK. CONFIG_ENV= # This directory should contain 'include' and 'lib' directories for your DPDK # installation. CONFIG_DPDK_DIR= # Automatically set via pkg-config when bare --with-dpdk is set CONFIG_DPDK_LIB_DIR= CONFIG_DPDK_INC_DIR= CONFIG_DPDK_PKG_CONFIG=n # This directory should contain 'include' and 'lib' directories for WPDK. CONFIG_WPDK_DIR= # Build SPDK FIO plugin. Requires CONFIG_FIO_SOURCE_DIR set to a valid # fio source code directory. CONFIG_FIO_PLUGIN=n # This directory should contain the source code directory for fio # which is required for building the SPDK FIO plugin. CONFIG_FIO_SOURCE_DIR=/usr/src/fio # Enable RDMA support for the NVMf target. # Requires ibverbs development libraries. CONFIG_RDMA=n CONFIG_RDMA_SEND_WITH_INVAL=n CONFIG_RDMA_SET_ACK_TIMEOUT=n CONFIG_RDMA_PROV=verbs # Enable NVMe Character Devices. CONFIG_NVME_CUSE=n # Enable FC support for the NVMf target. # Requires FC low level driver (from FC vendor) CONFIG_FC=n CONFIG_FC_PATH= # Build Ceph RBD support in bdev modules # Requires librbd development libraries CONFIG_RBD=n # Build vhost library. CONFIG_VHOST=y # Build vhost initiator (Virtio) driver. CONFIG_VIRTIO=y # Build custom vfio-user transport for NVMf target and NVMe initiator. CONFIG_VFIO_USER=n CONFIG_VFIO_USER_DIR= # Build with PMDK backends CONFIG_PMDK=n CONFIG_PMDK_DIR= # Enable the dependencies for building the compress vbdev CONFIG_REDUCE=n # Enable mlx5_pci dpdk compress PMD, enabled automatically if CONFIG_REDUCE=y and libmlx5 exists CONFIG_REDUCE_MLX5=n # Requires libiscsi development libraries. CONFIG_ISCSI_INITIATOR=n # Enable the dependencies for building the crypto vbdev CONFIG_CRYPTO=n # Build spdk shared libraries in addition to the static ones. CONFIG_SHARED=n # Build with VTune suport. CONFIG_VTUNE=n CONFIG_VTUNE_DIR= # Build Intel IPSEC_MB library CONFIG_IPSEC_MB=n # Enable OCF module CONFIG_OCF=n CONFIG_OCF_PATH= CONFIG_CUSTOMOCF=n # Build ISA-L library CONFIG_ISAL=y # Build with IO_URING support CONFIG_URING=n # Path to custom built IO_URING library CONFIG_URING_PATH= # Build with FUSE support CONFIG_FUSE=n # Build with RAID5 support CONFIG_RAID5=n # Build with IDXD support # In this mode, SPDK fully controls the DSA device. CONFIG_IDXD=n # Build with USDT support CONFIG_USDT=n # Build with IDXD kernel support. # In this mode, SPDK shares the DSA device with the kernel. CONFIG_IDXD_KERNEL=n