# # Copyright (c) 2021-2026 NVIDIA CORPORATION AND 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 the NVIDIA 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 NVIDIA CORPORATION 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 TOR (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # option('enable_all_applications', type: 'boolean', value: true, description: 'Enable all DOCA applications.') option('enable_cross_compilation_to_dpu', type: 'boolean', value: false, description: 'Enable cross-compilation mode from host to DPU.') option('enable_deprecated_features', type: 'boolean', value: false, description: 'Silence compilation warnings regarding deprecated DOCA features.') option('enable_trace_log', type: 'boolean', value: false, description: 'Enable trace log.') option('enable_pcc_application_tx_counter_sampling', type: 'boolean', value: false, description: 'Enable sampling of TX bytes counter in PCC application.') option('enable_pcc_application_np_rx_rate', type: 'boolean', value: false, description: 'Enable PCC application CC rate update via notification point RX bytes.') # gRPC versions option('upstream_grpc', type : 'boolean', value : true, description : 'Are we compiling using upstream gRPC?') # SPDK and DPDK packages option('spdk_prefix', type : 'string', value : '/opt/mellanox/spdk', description : 'SPDK installation prefix.') option('spdk_dpdk_prefix', type : 'string', value : '/opt/mellanox/spdk', description : 'Installation prefix of DPDK used by SPDK.') option('spdk_isal_prefix', type : 'string', value : '/opt/mellanox/spdk/lib', description : 'SPDK ISA-L installation prefix.') # DPACC options option('dpacc_mcpu', type : 'string', value : 'nv-dpa-bf3,nv-dpa-cx7,nv-dpa-cx8,nv-dpa-cx9,nv-dpa-cx10', description : 'Set the supported architecture for DPA related application.') # Enables per application - turned off by default option('enable_app_shield_agent', type: 'boolean', value: false, description: 'Enable the App Shield Agent application.') option('enable_bifurcated_driver_model', type: 'boolean', value: false, description: 'Enable the Bifurcated Driver Model application.') option('enable_dma_copy', type: 'boolean', value: false, description: 'Enable the DMA copy application.') option('enable_dpa_all_to_all', type: 'boolean', value: false, description: 'Enable DPA All to All application.') option('enable_dpu_gpu_remote_offload', type: 'boolean', value: false, description: 'Enable DPU GPU remote offload application.') option('enable_eth_l2_fwd', type: 'boolean', value: false, description: 'Enable the Ethernet L2 Forwarding application.') option('enable_file_compression', type: 'boolean', value: false, description: 'Enable the File Compression application.') option('enable_file_integrity', type: 'boolean', value: false, description: 'Enable the File Integrity application.') option('enable_gpu_packet_processing', type: 'boolean', value: false, description: 'Enable GPUNetIO packet processing application.') option('enable_ip_frag', type: 'boolean', value: false, description: 'Enable IP fragmentation application.') option('enable_ipsec_security_gw', type: 'boolean', value: false, description: 'Enable IPsec Security Gateway application.') option('enable_psp_gateway', type: 'boolean', value: false, description: 'Enable PSP Gateway application.') option('enable_nvme_emulation', type: 'boolean', value: false, description: 'Enable NVMe Emulation application.') option('enable_pcc', type: 'boolean', value: false, description: 'Enable PCC application.') option('enable_secure_channel', type: 'boolean', value: false, description: 'Enable Secure Channel application.') option('enable_simple_fwd_vnf', type: 'boolean', value: false, description: 'Enable Simple Forward VNF application.') option('enable_sta_offload', type: 'boolean', value: false, description: 'Enable STA Offload application.') option('enable_storage', type: 'boolean', value: false, description: 'Enable storage reference applications.') option('enable_stream_receive_perf', type: 'boolean', value: false, description: 'Enable the Stream Receive Performance application.') option('enable_switch', type: 'boolean', value: false, description: 'Enable Switch application.') option('enable_telemetry', type: 'boolean', value: false, description: 'Enable Telemetry applications.') option('enable_telemetry_traceback', type: 'boolean', value: true, description: 'Enable Telemetry Traceback application.') option('enable_telemetry_opentelemetry', type: 'boolean', value: true, description: 'Enable Telemetry OpenTelemetry application.') option('enable_time_sync', type: 'boolean', value: false, description: 'Enable Time Sync application.') option('enable_upf_accel', type: 'boolean', value: false, description: 'Enable UPF Acceleration application.') option('enable_urom_rdmo', type: 'boolean', value: false, description: 'Enable UROM RDMO application.') option('enable_vblk_pci_dev', type: 'boolean', value: false, description: 'Enable VirtIO Block PCI Device application.') option('enable_verbs_multi_rail_server_client', type: 'boolean', value: false, description: 'Enable Verbs Multi Rail Server Client application.') option('enable_virtiofs', type: 'boolean', value: false, description: 'Enable Virtiofs application.') option('enable_vnet_pci_dev', type: 'boolean', value: false, description: 'Enable VirtIO Net PCI Device application.') option('enable_yara_inspection', type: 'boolean', value: false, description: 'Enable Yara Inspection application.')