diff --git a/.dpdk.metadata b/.dpdk.metadata
index 076973b..71047a7 100644
--- a/.dpdk.metadata
+++ b/.dpdk.metadata
@@ -1 +1 @@
-29e715804c5af6afc44ffeb128716628823c89d2 SOURCES/dpdk-19.11.2.tar.xz
+cee6b23d62e0a19f6c6d652f4a415b7d62e95796 SOURCES/dpdk-20.11.tar.xz
diff --git a/.gitignore b/.gitignore
index 7bbd763..b405c22 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/dpdk-19.11.2.tar.xz
+SOURCES/dpdk-20.11.tar.xz
diff --git a/SOURCES/arm64-armv8a-linuxapp-gcc-config b/SOURCES/arm64-armv8a-linuxapp-gcc-config
deleted file mode 100644
index 93605bd..0000000
--- a/SOURCES/arm64-armv8a-linuxapp-gcc-config
+++ /dev/null
@@ -1,606 +0,0 @@
-# -*- cfg-sha: fedc4fc78a46e35070ea61c62f51c1cb9283062b4bad46fb91f6c2eb9ec536c5
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2015 Cavium, Inc
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2017 Cavium, Inc
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2016 Intel Corporation
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2017 Intel Corporation
-# String that appears before the version number
-CONFIG_RTE_VER_PREFIX="DPDK"
-# Version information completed when this file is processed for a build
-CONFIG_RTE_VER_YEAR=19
-CONFIG_RTE_VER_MONTH=11
-CONFIG_RTE_VER_MINOR=2
-CONFIG_RTE_VER_SUFFIX=""
-CONFIG_RTE_VER_RELEASE=99
- # RTE_EXEC_ENV values are the directories in mk/exec-env/
-CONFIG_RTE_EXEC_ENV="linuxapp"
-# RTE_ARCH values are architecture we compile for. directories in mk/arch/
-CONFIG_RTE_ARCH="arm64"
-# machine can define specific variables or action for a specific board
-# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
-CONFIG_RTE_MACHINE="armv8a"
-# The compiler we use.
-# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
-CONFIG_RTE_TOOLCHAIN="gcc"
-# Use intrinsics or assembly code for key routines
-CONFIG_RTE_FORCE_INTRINSICS=y
-# Machine forces strict alignment constraints.
-CONFIG_RTE_ARCH_STRICT_ALIGN=n
-# Enable link time optimization
-CONFIG_RTE_ENABLE_LTO=n
-# Compile to share library
-CONFIG_RTE_BUILD_SHARED_LIB=y
-# Use newest code breaking previous ABI
-CONFIG_RTE_NEXT_ABI=n
-# Machine's cache line size
-CONFIG_RTE_CACHE_LINE_SIZE=128
-# Memory model
-CONFIG_RTE_USE_C11_MEM_MODEL=y
-# Compile Environment Abstraction Layer
-CONFIG_RTE_LIBRTE_EAL=y
-CONFIG_RTE_MAX_LCORE=256
-CONFIG_RTE_MAX_NUMA_NODES=8
-CONFIG_RTE_MAX_HEAPS=32
-CONFIG_RTE_MAX_MEMSEG_LISTS=64
-# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
-# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
-CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
-# a "type" is a combination of page size and NUMA node. total number of memseg
-# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
-# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
-# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
-# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
-CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
-# global maximum usable amount of VA, in megabytes
-CONFIG_RTE_MAX_MEM_MB=524288
-CONFIG_RTE_MAX_MEMZONE=2560
-CONFIG_RTE_MAX_TAILQ=32
-CONFIG_RTE_ENABLE_ASSERT=n
-CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
-CONFIG_RTE_LOG_HISTORY=256
-CONFIG_RTE_BACKTRACE=y
-CONFIG_RTE_LIBEAL_USE_HPET=n
-CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
-CONFIG_RTE_EAL_IGB_UIO=n
-CONFIG_RTE_EAL_VFIO=y
-CONFIG_RTE_MAX_VFIO_GROUPS=64
-CONFIG_RTE_MAX_VFIO_CONTAINERS=64
-CONFIG_RTE_MALLOC_DEBUG=n
-CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
-CONFIG_RTE_USE_LIBBSD=n
-# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
-# AVX512 is marked as experimental for now, will enable it after enough
-# field test and possible optimization.
-CONFIG_RTE_ENABLE_AVX=y
-CONFIG_RTE_ENABLE_AVX512=n
-# Use ARM LSE ATOMIC instructions
-CONFIG_RTE_ARM_FEATURE_ATOMICS=n
-# Default driver path (or "" to disable)
-CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
-# Compile Environment Abstraction Layer to support Vmware TSC map
-CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y
-# Compile architecture we compile for. PCI library
-CONFIG_RTE_LIBRTE_PCI=y
-# Compile architecture we compile for. argument parser library
-CONFIG_RTE_LIBRTE_KVARGS=y
-# Compile generic ethernet library
-CONFIG_RTE_LIBRTE_ETHER=y
-CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
-CONFIG_RTE_MAX_ETHPORTS=32
-CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
-CONFIG_RTE_LIBRTE_IEEE1588=n
-CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
-CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
-CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
-# Turn off Tx preparation stage
-# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
-# driver which do not implement any Tx preparation.
-CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
-# Common libraries, before Bus/PMDs
-CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
-# Compile architecture we compile for. Intel FPGA bus
-CONFIG_RTE_LIBRTE_IFPGA_BUS=n
-# Compile PCI bus driver
-CONFIG_RTE_LIBRTE_PCI_BUS=y
-# Compile architecture we compile for. vdev bus
-CONFIG_RTE_LIBRTE_VDEV_BUS=y
-# Compile ARK PMD
-CONFIG_RTE_LIBRTE_ARK_PMD=n
-CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
-CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
-# Compile Aquantia Atlantic PMD driver
-CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
-# Compile AMD PMD
-CONFIG_RTE_LIBRTE_AXGBE_PMD=n
-CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
-# Compile burst-oriented Broadcom PMD driver
-CONFIG_RTE_LIBRTE_BNX2X_PMD=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
-# Compile burst-oriented Broadcom BNXT PMD driver
-CONFIG_RTE_LIBRTE_BNXT_PMD=n
-# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
-CONFIG_RTE_LIBRTE_CXGBE_PMD=n
-# Compile burst-oriented NXP PFE PMD driver
-CONFIG_RTE_LIBRTE_PFE_PMD=n
-# NXP DPAA Bus
-CONFIG_RTE_LIBRTE_DPAA_BUS=n
-CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA_PMD=n
-CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
-# Compile NXP DPAA2 FSL-MC Bus
-CONFIG_RTE_LIBRTE_FSLMC_BUS=n
-# Compile Support Libraries for NXP DPAA2
-CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
-# Compile burst-oriented NXP DPAA2 PMD driver
-CONFIG_RTE_LIBRTE_DPAA2_PMD=n
-CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
-# Compile NXP ENETC PMD Driver
-CONFIG_RTE_LIBRTE_ENETC_PMD=n
-# Compile burst-oriented Amazon ENA PMD driver
-CONFIG_RTE_LIBRTE_ENA_PMD=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
-# Compile burst-oriented Cisco ENIC PMD driver
-CONFIG_RTE_LIBRTE_ENIC_PMD=n
-# Compile burst-oriented IGB & EM PMD drivers
-CONFIG_RTE_LIBRTE_EM_PMD=n
-CONFIG_RTE_LIBRTE_IGB_PMD=y
-CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n
-# Compile burst-oriented HINIC PMD driver
-CONFIG_RTE_LIBRTE_HINIC_PMD=n
-# Compile burst-oriented HNS3 PMD driver
-CONFIG_RTE_LIBRTE_HNS3_PMD=n
-# Compile burst-oriented IXGBE PMD driver
-CONFIG_RTE_LIBRTE_IXGBE_PMD=y
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
-CONFIG_RTE_IXGBE_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
-# Compile burst-oriented I40E PMD driver
-CONFIG_RTE_LIBRTE_I40E_PMD=y
-CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
-# Compile burst-oriented FM10K PMD
-CONFIG_RTE_LIBRTE_FM10K_PMD=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
-CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
-# Compile burst-oriented ICE PMD driver
-CONFIG_RTE_LIBRTE_ICE_PMD=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
-# Compile burst-oriented IAVF PMD driver
-CONFIG_RTE_LIBRTE_IAVF_PMD=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
-CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
-# Compile burst-oriented IPN3KE PMD driver
-CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
-# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
-CONFIG_RTE_LIBRTE_MLX4_PMD=n
-CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
-# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
-# ConnectX-6 & BlueField (MLX5) PMD
-CONFIG_RTE_LIBRTE_MLX5_PMD=n
-CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
-# Linking method for mlx4/5 dependency on ibverbs and related libraries
-# Default linking is dynamic by linker.
-# Other options are: dynamic by dlopen at run-time, or statically embedded.
-CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
-CONFIG_RTE_IBVERBS_LINK_STATIC=n
-# Compile burst-oriented Netronome NFP PMD driver
-CONFIG_RTE_LIBRTE_NFP_PMD=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
-# QLogic 10G/25G/40G/50G/100G PMD
-CONFIG_RTE_LIBRTE_QEDE_PMD=n
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
-#Provides abs path/name of architecture we compile for. firmware file.
-#Empty string denotes driver will use default firmware
-CONFIG_RTE_LIBRTE_QEDE_FW=""
-# Compile burst-oriented Solarflare libefx-based PMD
-CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
-CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
-# Compile software PMD backed by SZEDATA2 device
-CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
-# Compile software PMD backed by NFB device
-CONFIG_RTE_LIBRTE_NFB_PMD=n
-# Compile burst-oriented Cavium Thunderx NICVF PMD driver
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
-# Compile burst-oriented Cavium LiquidIO PMD driver
-CONFIG_RTE_LIBRTE_LIO_PMD=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
-# Compile burst-oriented Cavium OCTEONTX network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
-# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
-# Compile WRS accelerated virtual port (AVP) guest PMD driver
-CONFIG_RTE_LIBRTE_AVP_PMD=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
-# Compile burst-oriented VIRTIO PMD driver
-CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
-# Compile virtio device emulation inside virtio PMD driver
-CONFIG_RTE_VIRTIO_USER=n
-# Compile burst-oriented VMXNET3 PMD driver
-CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
-# Compile software PMD backed by AF_PACKET sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
-# Compile software PMD backed by AF_XDP sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
-# Compile Memory Interface PMD driver (Linux only)
-CONFIG_RTE_LIBRTE_PMD_MEMIF=n
-# Compile link bonding PMD library
-CONFIG_RTE_LIBRTE_PMD_BOND=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
-# Compile fail-safe PMD
-CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
-# Compile Marvell PMD driver
-CONFIG_RTE_LIBRTE_MVPP2_PMD=n
-# Compile Marvell MVNETA PMD driver
-CONFIG_RTE_LIBRTE_MVNETA_PMD=n
-# Compile support for VMBus library
-CONFIG_RTE_LIBRTE_VMBUS=n
-# Compile native PMD for Hyper-V/Azure
-CONFIG_RTE_LIBRTE_NETVSC_PMD=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
-# Compile virtual device driver for NetVSC on Hyper-V/Azure
-CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=n
-# Compile null PMD
-CONFIG_RTE_LIBRTE_PMD_NULL=n
-# Compile software PMD backed by PCAP files
-CONFIG_RTE_LIBRTE_PMD_PCAP=n
-# Compile example software rings based PMD
-CONFIG_RTE_LIBRTE_PMD_RING=y
-CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
-CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
-# Compile SOFTNIC PMD
-CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
-# Compile architecture we compile for. TAP PMD
-# It is enabled by default for Linux only.
-CONFIG_RTE_LIBRTE_PMD_TAP=y
-# Do prefetch of packet data within PMD driver receive function
-CONFIG_RTE_PMD_PACKET_PREFETCH=y
-# Compile generic wireless base band device library
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_BBDEV=n
-CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
-CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
-CONFIG_RTE_BBDEV_SDK_AVX2=n
-CONFIG_RTE_BBDEV_SDK_AVX512=n
-# Compile PMD for NULL bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
-# Compile PMD for turbo software bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
-# Compile PMD for Intel FPGA LTE FEC bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
-# Compile generic crypto device library
-CONFIG_RTE_LIBRTE_CRYPTODEV=n
-CONFIG_RTE_CRYPTO_MAX_DEVS=64
-# Compile PMD for ARMv8 Crypto device
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
-# Compile NXP CAAM JR crypto Driver
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
-# Compile NXP DPAA2 crypto sec driver for CAAM HW
-CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
-# NXP DPAA caam - crypto driver
-CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
-CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
-# Compile PMD for Cavium OCTEON TX crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
-# Compile PMD for Marvell OCTEON TX2 crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
-# Compile PMD for QuickAssist based devices - see docs for details
-CONFIG_RTE_LIBRTE_PMD_QAT=n
-CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
-CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
-# Max. number of QuickAssist devices, which can be detected and attached
-CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
-CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
-# Compile PMD for virtio crypto devices
-CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
-# Number of maximum virtio crypto devices
-CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
-# Compile PMD for AESNI backed device
-CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
-# Compile PMD for Software backed device
-CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
-# Compile PMD for AESNI GCM device
-CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
-# Compile PMD for SNOW 3G device
-CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
-CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
-# Compile PMD for KASUMI device
-CONFIG_RTE_LIBRTE_PMD_KASUMI=n
-# Compile PMD for ZUC device
-CONFIG_RTE_LIBRTE_PMD_ZUC=n
-# Compile PMD for Crypto Scheduler device
-CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
-# Compile PMD for NULL Crypto device
-CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
-# Compile PMD for AMD CCP crypto device
-CONFIG_RTE_LIBRTE_PMD_CCP=n
-# Compile PMD for Marvell Crypto device
-CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
-# Compile PMD for NITROX crypto device
-CONFIG_RTE_LIBRTE_PMD_NITROX=n
-# Compile generic security library
-CONFIG_RTE_LIBRTE_SECURITY=n
-# Compile generic compression device library
-CONFIG_RTE_LIBRTE_COMPRESSDEV=n
-CONFIG_RTE_COMPRESS_MAX_DEVS=64
-# Compile compressdev unit test
-CONFIG_RTE_COMPRESSDEV_TEST=n
-# Compile PMD for Octeontx ZIPVF compression device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
-# Compile PMD for ISA-L compression device
-CONFIG_RTE_LIBRTE_PMD_ISAL=n
-# Compile PMD for ZLIB compression device
-CONFIG_RTE_LIBRTE_PMD_ZLIB=n
-# Compile generic event device library
-CONFIG_RTE_LIBRTE_EVENTDEV=n
-CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
-CONFIG_RTE_EVENT_MAX_DEVS=16
-CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
-CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
-CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
-CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
-CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
-# Compile PMD for skeleton event device
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
-# Compile PMD for software event device
-CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
-# Compile PMD for distributed software event device
-CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
-# Compile PMD for octeontx sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
-# Compile PMD for octeontx2 sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
-# Compile PMD for OPDL event device
-CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
-# Compile PMD for NXP DPAA event device
-CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
-# Compile PMD for NXP DPAA2 event device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
-# Compile raw device support
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_RAWDEV=n
-CONFIG_RTE_RAWDEV_MAX_DEVS=64
-CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
-# Compile PMD for NXP DPAA2 CMDIF raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
-# Compile PMD for NXP DPAA2 QDMA raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
-# Compile PMD for Intel FPGA raw device
-CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
-# Compile PMD for Intel IOAT raw device
-CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
-# Compile PMD for octeontx2 DMA raw device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
-# Compile PMD for NTB raw device
-CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
-# Compile librte_ring
-CONFIG_RTE_LIBRTE_RING=y
-# Compile librte_stack
-CONFIG_RTE_LIBRTE_STACK=y
-# Compile librte_mempool
-CONFIG_RTE_LIBRTE_MEMPOOL=y
-CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
-CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
-# Compile Mempool drivers
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
-CONFIG_RTE_DRIVER_MEMPOOL_RING=y
-CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
-# Compile PMD for octeontx fpa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
-# Compile PMD for octeontx2 npa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
-# Compile librte_mbuf
-CONFIG_RTE_LIBRTE_MBUF=y
-CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
-CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
-CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
-CONFIG_RTE_PKTMBUF_HEADROOM=128
-# Compile librte_timer
-CONFIG_RTE_LIBRTE_TIMER=n
-CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
-# Compile librte_cfgfile
-CONFIG_RTE_LIBRTE_CFGFILE=n
-# Compile librte_cmdline
-CONFIG_RTE_LIBRTE_CMDLINE=y
-CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
-# Compile librte_hash
-CONFIG_RTE_LIBRTE_HASH=y
-CONFIG_RTE_LIBRTE_HASH_DEBUG=n
-# Compile librte_efd
-CONFIG_RTE_LIBRTE_EFD=n
-# Compile librte_member
-CONFIG_RTE_LIBRTE_MEMBER=y
-# Compile librte_jobstats
-CONFIG_RTE_LIBRTE_JOBSTATS=n
-# Compile architecture we compile for. device metrics library
-CONFIG_RTE_LIBRTE_METRICS=y
-# Compile architecture we compile for. bitrate statistics library
-CONFIG_RTE_LIBRTE_BITRATE=y
-# Compile architecture we compile for. latency statistics library
-CONFIG_RTE_LIBRTE_LATENCY_STATS=y
-# Compile librte_telemetry
-CONFIG_RTE_LIBRTE_TELEMETRY=n
-# Compile librte_rcu
-CONFIG_RTE_LIBRTE_RCU=n
-CONFIG_RTE_LIBRTE_RCU_DEBUG=n
-# Compile librte_rib
-CONFIG_RTE_LIBRTE_RIB=n
-# Compile librte_fib
-CONFIG_RTE_LIBRTE_FIB=n
-CONFIG_RTE_LIBRTE_FIB_DEBUG=n
-# Compile librte_lpm
-CONFIG_RTE_LIBRTE_LPM=n
-CONFIG_RTE_LIBRTE_LPM_DEBUG=n
-# Compile librte_acl
-CONFIG_RTE_LIBRTE_ACL=n
-CONFIG_RTE_LIBRTE_ACL_DEBUG=n
-# Compile librte_power
-CONFIG_RTE_LIBRTE_POWER=n
-CONFIG_RTE_LIBRTE_POWER_DEBUG=n
-CONFIG_RTE_MAX_LCORE_FREQS=64
-# Compile librte_net
-CONFIG_RTE_LIBRTE_NET=y
-# Compile librte_ip_frag
-CONFIG_RTE_LIBRTE_IP_FRAG=y
-CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
-CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
-CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
-# Compile GRO library
-CONFIG_RTE_LIBRTE_GRO=y
-# Compile GSO library
-CONFIG_RTE_LIBRTE_GSO=y
-# Compile librte_meter
-CONFIG_RTE_LIBRTE_METER=y
-# Compile librte_classify
-CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
-# Compile librte_sched
-CONFIG_RTE_LIBRTE_SCHED=n
-CONFIG_RTE_SCHED_DEBUG=n
-CONFIG_RTE_SCHED_RED=n
-CONFIG_RTE_SCHED_COLLECT_STATS=n
-CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
-CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
-CONFIG_RTE_SCHED_VECTOR=n
-# Compile architecture we compile for. distributor library
-CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
-# Compile architecture we compile for. reorder library
-CONFIG_RTE_LIBRTE_REORDER=n
-# Compile librte_port
-CONFIG_RTE_LIBRTE_PORT=n
-CONFIG_RTE_PORT_STATS_COLLECT=n
-CONFIG_RTE_PORT_PCAP=n
-# Compile librte_table
-CONFIG_RTE_LIBRTE_TABLE=n
-CONFIG_RTE_TABLE_STATS_COLLECT=n
-# Compile librte_pipeline
-CONFIG_RTE_LIBRTE_PIPELINE=n
-CONFIG_RTE_PIPELINE_STATS_COLLECT=n
-# Compile librte_kni
-CONFIG_RTE_LIBRTE_KNI=n
-CONFIG_RTE_LIBRTE_PMD_KNI=n
-CONFIG_RTE_KNI_KMOD=n
-CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
-# Compile architecture we compile for. pdump library
-CONFIG_RTE_LIBRTE_PDUMP=y
-# Compile vhost user library
-CONFIG_RTE_LIBRTE_VHOST=y
-CONFIG_RTE_LIBRTE_VHOST_NUMA=y
-CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
-# Compile vhost PMD
-# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
-CONFIG_RTE_LIBRTE_PMD_VHOST=y
-# Compile IFC driver
-# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
-# should be enabled.
-CONFIG_RTE_LIBRTE_IFC_PMD=n
-# Compile librte_bpf
-CONFIG_RTE_LIBRTE_BPF=n
-# allow load BPF from ELF files (requires libelf)
-CONFIG_RTE_LIBRTE_BPF_ELF=n
-# Compile librte_ipsec
-CONFIG_RTE_LIBRTE_IPSEC=n
-# Compile architecture we compile for. test application
-CONFIG_RTE_APP_TEST=y
-CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
-# Compile architecture we compile for. procinfo application
-CONFIG_RTE_PROC_INFO=n
-# Compile architecture we compile for. PMD test application
-CONFIG_RTE_TEST_PMD=y
-CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
-CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
-# Compile architecture we compile for. bbdev test application
-CONFIG_RTE_TEST_BBDEV=n
-# Compile architecture we compile for. compression performance application
-CONFIG_RTE_APP_COMPRESS_PERF=n
-# Compile architecture we compile for. crypto performance application
-CONFIG_RTE_APP_CRYPTO_PERF=n
-# Compile architecture we compile for. eventdev application
-CONFIG_RTE_APP_EVENTDEV=n
-CONFIG_RTE_EXEC_ENV_LINUX=y
-CONFIG_RTE_EXEC_ENV_LINUXAPP=y
-CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
-# Common libraries, before Bus/PMDs
-# NXP DPAA BUS and drivers
-# NXP FSLMC BUS and DPAA2 drivers
-# NXP ENETC PMD Driver
-# HINIC PMD driver
-# Hisilicon HNS3 PMD driver
-# Compile PMD for Intel FPGA raw device
-# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
-CONFIG_RTE_ARCH_ARM64=y
-CONFIG_RTE_ARCH_64=y
-# Maximum available cache line size in arm64 implementations.
-# Setting to maximum available cache line size in generic config
-# to address minimum DMA alignment across all arm64 implementations.
-# Accelarate rte_memcpy. Be sure to run unit test (memcpy_perf_autotest)
-# to determine architecture we compile for. best threshold in code. Refer to notes in source file
-# (lib/librte_eal/common/include/arch/arm/rte_memcpy_64.h) for more info.
-CONFIG_RTE_ARCH_ARM64_MEMCPY=n
-#CONFIG_RTE_ARM64_MEMCPY_ALIGNED_THRESHOLD=2048
-#CONFIG_RTE_ARM64_MEMCPY_UNALIGNED_THRESHOLD=512
-# Leave below RTE_ARM64_MEMCPY_xxx options commented out, unless there're
-# strong reasons.
-#CONFIG_RTE_ARM64_MEMCPY_SKIP_GCC_VER_CHECK=n
-#CONFIG_RTE_ARM64_MEMCPY_ALIGN_MASK=0xF
-#CONFIG_RTE_ARM64_MEMCPY_STRICT_ALIGN=n
-# NXP PFE PMD Driver
-CONFIG_RTE_TOOLCHAIN_GCC=y
diff --git a/SOURCES/configlib.sh b/SOURCES/configlib.sh
deleted file mode 100644
index cf8d70d..0000000
--- a/SOURCES/configlib.sh
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright (C) 2017, Red Hat, Inc.
-#
-# Core configuration file library.
-
-# Configurations are determined by sha values.  The way to determine is by
-# the special text:
-# $FILE_COMMENT_TYPE -*- cfg-sha: $SHA256 -*-
-
-export LC_ALL=C
-
-# check required binaries
-__check_reqd_binaries() {
-    local BIN __binaries=("egrep" "sort" "sha256sum" "sed")
-    for BIN in $__binaries; do
-        if ! type -P $BIN >/dev/null 2>&1; then
-            echo "Binary $BIN not found.  Please install."
-            exit 1
-        fi
-    done
-}
-
-# Calculates a sha from a file
-# The algorithm for generating a sha from a config is thus:
-#
-# 1. Remove all comment lines and blank lines
-# 2. Sort the content
-# 3. generate the sha-256 sum
-#
-# From a script perspective, this means:
-#   egrep -v ^\# %file% | egrep -v ^$ | sort -u | sha256sum
-#
-# Params:
-#  $1 = output variable
-#  $2 = file to use to calculate the shasum
-#  $3 = file comment type (defaults to # if unspecified)
-calc_sha() {
-    __check_reqd_binaries
-
-    if [ "$1" == "" ]; then
-        echo "Please pass in a storage variable."
-        return 1
-    fi
-
-    local __resultvar=$1
-    __retval=1
-    shift
-
-    local __file=$1
-    local cmnt=${2:-#}
-
-    if [ -f "$__file" ]; then
-        local __shasum=$(egrep -v ^"$cmnt" "$__file" | egrep -v ^$ | sort -u | sha256sum -t | cut -d" " -f1)
-        eval $__resultvar="'$__shasum'"
-        __retval=0
-    fi
-    return $__retval
-}
-
-# Retrieves a sha stored in a file
-# Param:
-#  $1 = output variable
-#  $2 = file to use to calculate the shasum
-#  $3 = file comment type (defaults to # if unspecified)
-retr_sha() {
-    __check_reqd_binaries
-
-    if [ "$1" == "" ]; then
-        echo "Please pass in a storage variable."
-        return 1
-    fi
-
-    local __resultvar=$1
-    __retval=1
-    shift
-
-    local __file=$1
-    local cmnt=${2:-#}
-
-    if [ -f "$__file" ]; then
-        if grep -q "$cmnt -\*- cfg-sha:" "$__file"; then
-            local __shasum=$(grep "$cmnt -\*- cfg-sha:" "$__file" | sed -e "s@$cmnt -\*- cfg-sha: @@" | cut -d" " -f1)
-            eval $__resultvar="'$__shasum'"
-            __retval=0
-        fi
-    fi
-    return $__retval
-}
-
-
-# Set a config value
-# set_conf dpdk_build_tree parameter value
-# dpdk_build_tree is the directory where the .config lives
-# parameter is the config parameter
-# value is the value to set for the config parameter
-set_conf() {
-    c="$1/.config"
-    shift
-
-    if grep -q "$1" "$c"; then
-        sed -i "s:^$1=.*$:$1=$2:g" $c
-    else
-        echo $1=$2 >> "$c"
-    fi
-}
diff --git a/SOURCES/gen_config_group.sh b/SOURCES/gen_config_group.sh
deleted file mode 100755
index 9ac8790..0000000
--- a/SOURCES/gen_config_group.sh
+++ /dev/null
@@ -1,237 +0,0 @@
-#!/bin/bash
-
-source configlib.sh
-
-# Generates arch configurations in the current directory based on
-# 1. an dpdk.spec file
-# 2. an expanded dpdk tree
-
-if (( $# != 2 )); then
-    echo "$0: dpdk.spec dpdk_tree" >&2
-    exit 1
-fi
-
-DPDKSPEC="$1"
-DPDKDIR="$2"
-
-# accumulate all arch + name triples
-DPDK_CONF_MACH_ARCH=()
-for arch in $(grep %define\ machine_arch "$DPDKSPEC" | sed 's@%define machine_arch @@')
-do
-    DPDK_CONF_MACH_ARCH+=($arch)
-done
-
-DPDK_CONF_MACH_TMPL=()
-for tmpl in $(grep %define\ machine_tmpl "$DPDKSPEC" | sed 's@%define machine_tmpl @@')
-do
-    DPDK_CONF_MACH_TMPL+=($tmpl)
-done
-
-DPDK_CONF_MACH=()
-for mach in $(grep %define\ machine\  "$DPDKSPEC" | sed 's@%define machine @@')
-do
-    DPDK_CONF_MACH+=($mach)
-done
-
-DPDK_TARGETS=()
-for ((i=0; i < ${#DPDK_CONF_MACH[@]}; i++));
-do
-    DPDK_TARGETS+=("${DPDK_CONF_MACH_ARCH[$i]}-${DPDK_CONF_MACH_TMPL[$i]}-linuxapp-gcc")
-    echo "DPDK-target: ${DPDK_TARGETS[$i]}"
-done
-
-OUTPUT_DIR=$(pwd)
-pushd "$DPDKDIR"
-for ((i=0; i < ${#DPDK_TARGETS[@]}; i++));
-do
-    echo "For ${DPDK_TARGETS[$i]}:"
-
-    echo "     a. Generating initial config"
-    echo "        make V=1 T=${DPDK_TARGETS[$i]} O=${DPDK_TARGETS[$i]}"
-    make V=1 T=${DPDK_TARGETS[$i]} O=${DPDK_TARGETS[$i]} -j8 config
-    ORIG_SHA=""
-    OUTDIR="${DPDK_TARGETS[$i]}"
-
-    echo "     b. calculating and applying sha"
-    calc_sha ORIG_SHA "${OUTDIR}/.config"
-    if [ "$ORIG_SHA" == "" ]; then
-        echo "ERROR: Unable to get sha for arch ${DPDK_TARGETS[$i]}"
-        exit 1
-    fi
-    echo "# -*- cfg-sha: ${ORIG_SHA}" > ${OUTDIR}/.config.new
-    cat "${OUTDIR}/.config" >> "${OUTDIR}/.config.new"
-    cp "${OUTDIR}/.config" "${OUTDIR}/.config.orig"
-    mv -f "${OUTDIR}/.config.new" "${OUTDIR}/.config"
-
-    echo "     c. setting initial configurations"
-    # these are the original setconf values from dpdk.spec
-    set_conf "${OUTDIR}" CONFIG_RTE_MACHINE "\\\"${DPDK_CONF_MACH[$i]}\\\""
-
-    # Enable automatic driver loading from this path
-    set_conf "${OUTDIR}" CONFIG_RTE_EAL_PMD_PATH '"/usr/lib64/dpdk-pmds"'
-
-    # Disable DPDK libraries not needed
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_TIMER n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CFGFILE n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_JOBSTATS n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_LPM n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_ACL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_POWER n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_SCHED n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DISTRIBUTOR n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_REORDER n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PORT n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_TABLE n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PIPELINE n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_KNI n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CRYPTODEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_SECURITY n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FLOW_CLASSIFY n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BBDEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_COMPRESSDEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BPF n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DPAA_MEMPOOL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_CFGFILE n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_EFD n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FLOW_CLASSIFY n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_RCU n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_RIB n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_FIB n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IPSEC n
-
-
-    # Disable all eventdevs
-    for eventdev in $(grep _EVENTDEV= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
-    do
-        set_conf "${OUTDIR}" $eventdev n
-    done
-
-    # Disable all rawdevs
-    for rawdev in $(grep _RAWDEV= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
-    do
-        set_conf "${OUTDIR}" $rawdev n
-    done
-
-    # Disable virtio user
-    set_conf "${OUTDIR}" CONFIG_RTE_VIRTIO_USER n
-
-    # Enable vhost numa as libnuma dep is ok
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VHOST_NUMA y
-
-    # start by disabling ALL PMDs
-    for pmd in $(grep _PMD= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
-    do
-        set_conf "${OUTDIR}" $pmd n
-    done
-
-    # PMDs which have their own naming scheme
-    # the default for this was 'n' at one point.  Make sure we keep it
-    # as such
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_QAT n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VHOST n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_KNI n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NULL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_PCAP n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BOND n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_AF_PACKET n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_SOFTNIC n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_DPAA_SEC n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_COMMON_DPAAX n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CAAM_JR n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_MEMIF n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO n
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_NITROX n
-
-    # whitelist of enabled PMDs
-    # Soft PMDs to enable
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_RING y
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_VHOST y
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VIRTIO_PMD y
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_TAP y
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PMD_FAILSAFE y
-
-
-    # start by disabling all buses
-    for bus in $(grep _BUS= "${OUTDIR}/.config" | sed 's@=\(y\|n\)@@g')
-    do
-        set_conf "${OUTDIR}" $bus n
-    done
-
-    # blacklist buses that don't conform to std naming
-    # May override VMBUS later in arch specific section
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VMBUS n
-
-    # whitelist buses
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_PCI_BUS y
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VDEV_BUS y
-
-
-    # Disable some other miscellanous items related to test apps
-    set_conf "${OUTDIR}" CONFIG_RTE_TEST_BBDEV n
-    set_conf "${OUTDIR}" CONFIG_RTE_APP_CRYPTO_PERF n
-    set_conf "${OUTDIR}" CONFIG_RTE_APP_COMPRESS_PERF n
-    set_conf "${OUTDIR}" CONFIG_RTE_PROC_INFO n
-
-    # Disable kernel modules
-    set_conf "${OUTDIR}" CONFIG_RTE_EAL_IGB_UIO n
-    set_conf "${OUTDIR}" CONFIG_RTE_KNI_KMOD n
-
-    # Disable experimental stuff
-    set_conf "${OUTDIR}" CONFIG_RTE_NEXT_ABI n
-
-    # Build DPDK as shared library
-    set_conf "${OUTDIR}" CONFIG_RTE_BUILD_SHARED_LIB y
-
-    # Compile the PMD test application
-    set_conf "${OUTDIR}" CONFIG_RTE_TEST_PMD y
-
-    # Arch specific
-    set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_I40E_PMD y
-    case "${DPDK_CONF_MACH_ARCH[i]}" in
-    x86_64)
-        # Hw PMD
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_BNXT_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_ENIC_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_MLX4_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_MLX5_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_NFP_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_QEDE_PMD y
-        # Sw PMD
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_NETVSC_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD y
-        # Bus
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_VMBUS y
-        ;&
-    arm64)
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IXGBE_PMD y
-        set_conf "${OUTDIR}" CONFIG_RTE_LIBRTE_IGB_PMD y
-        ;;
-    esac
-
-    cp "${OUTDIR}/.config" "${OUTPUT_DIR}/${DPDK_TARGETS[$i]}-config"
-done
-popd >/dev/null
-
-echo -n "For each arch ( "
-for ((i=0; i < ${#DPDK_CONF_MACH_ARCH[@]}; i++));
-do
-    echo -n "${DPDK_CONF_MACH_ARCH[i]} "
-done
-echo "):"
-echo "1. ensure you enable the requisite hw"
diff --git a/SOURCES/ppc_64-power8-linuxapp-gcc-config b/SOURCES/ppc_64-power8-linuxapp-gcc-config
deleted file mode 100644
index 6ca431f..0000000
--- a/SOURCES/ppc_64-power8-linuxapp-gcc-config
+++ /dev/null
@@ -1,592 +0,0 @@
-# -*- cfg-sha: 46dcea384e8aae2041f0f78fedef7f7da8906ed14c1ce3812b7e02ed4f2a3baf
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright (C) IBM Corporation 2014.
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2016 Intel Corporation
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2017 Intel Corporation
-# String that appears before the version number
-CONFIG_RTE_VER_PREFIX="DPDK"
-# Version information completed when this file is processed for a build
-CONFIG_RTE_VER_YEAR=19
-CONFIG_RTE_VER_MONTH=11
-CONFIG_RTE_VER_MINOR=2
-CONFIG_RTE_VER_SUFFIX=""
-CONFIG_RTE_VER_RELEASE=99
- # RTE_EXEC_ENV values are the directories in mk/exec-env/
-CONFIG_RTE_EXEC_ENV="linuxapp"
-# RTE_ARCH values are architecture we compile for. directories in mk/arch/
-CONFIG_RTE_ARCH="ppc_64"
-# machine can define specific variables or action for a specific board
-# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
-CONFIG_RTE_MACHINE="power8"
-# The compiler we use.
-# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
-CONFIG_RTE_TOOLCHAIN="gcc"
-# Use intrinsics or assembly code for key routines
-CONFIG_RTE_FORCE_INTRINSICS=n
-# Machine forces strict alignment constraints.
-CONFIG_RTE_ARCH_STRICT_ALIGN=n
-# Enable link time optimization
-CONFIG_RTE_ENABLE_LTO=n
-# Compile to share library
-CONFIG_RTE_BUILD_SHARED_LIB=y
-# Use newest code breaking previous ABI
-CONFIG_RTE_NEXT_ABI=n
-# Machine's cache line size
-CONFIG_RTE_CACHE_LINE_SIZE=128
-# Memory model
-CONFIG_RTE_USE_C11_MEM_MODEL=n
-# Compile Environment Abstraction Layer
-CONFIG_RTE_LIBRTE_EAL=y
-CONFIG_RTE_MAX_LCORE=1536
-CONFIG_RTE_MAX_NUMA_NODES=32
-CONFIG_RTE_MAX_HEAPS=32
-CONFIG_RTE_MAX_MEMSEG_LISTS=64
-# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
-# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
-CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
-# a "type" is a combination of page size and NUMA node. total number of memseg
-# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
-# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
-# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
-# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
-CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
-# global maximum usable amount of VA, in megabytes
-CONFIG_RTE_MAX_MEM_MB=524288
-CONFIG_RTE_MAX_MEMZONE=2560
-CONFIG_RTE_MAX_TAILQ=32
-CONFIG_RTE_ENABLE_ASSERT=n
-CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
-CONFIG_RTE_LOG_HISTORY=256
-CONFIG_RTE_BACKTRACE=y
-CONFIG_RTE_LIBEAL_USE_HPET=n
-CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
-CONFIG_RTE_EAL_IGB_UIO=n
-CONFIG_RTE_EAL_VFIO=y
-CONFIG_RTE_MAX_VFIO_GROUPS=64
-CONFIG_RTE_MAX_VFIO_CONTAINERS=64
-CONFIG_RTE_MALLOC_DEBUG=n
-CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
-CONFIG_RTE_USE_LIBBSD=n
-# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
-# AVX512 is marked as experimental for now, will enable it after enough
-# field test and possible optimization.
-CONFIG_RTE_ENABLE_AVX=y
-CONFIG_RTE_ENABLE_AVX512=n
-# Use ARM LSE ATOMIC instructions
-CONFIG_RTE_ARM_FEATURE_ATOMICS=n
-# Default driver path (or "" to disable)
-CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
-# Compile Environment Abstraction Layer to support Vmware TSC map
-CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=n
-# Compile architecture we compile for. PCI library
-CONFIG_RTE_LIBRTE_PCI=y
-# Compile architecture we compile for. argument parser library
-CONFIG_RTE_LIBRTE_KVARGS=y
-# Compile generic ethernet library
-CONFIG_RTE_LIBRTE_ETHER=y
-CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
-CONFIG_RTE_MAX_ETHPORTS=32
-CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
-CONFIG_RTE_LIBRTE_IEEE1588=n
-CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
-CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
-CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
-# Turn off Tx preparation stage
-# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
-# driver which do not implement any Tx preparation.
-CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
-# Common libraries, before Bus/PMDs
-CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
-# Compile architecture we compile for. Intel FPGA bus
-CONFIG_RTE_LIBRTE_IFPGA_BUS=n
-# Compile PCI bus driver
-CONFIG_RTE_LIBRTE_PCI_BUS=y
-# Compile architecture we compile for. vdev bus
-CONFIG_RTE_LIBRTE_VDEV_BUS=y
-# Compile ARK PMD
-CONFIG_RTE_LIBRTE_ARK_PMD=n
-CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
-CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
-# Compile Aquantia Atlantic PMD driver
-CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
-# Compile AMD PMD
-CONFIG_RTE_LIBRTE_AXGBE_PMD=n
-CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
-# Compile burst-oriented Broadcom PMD driver
-CONFIG_RTE_LIBRTE_BNX2X_PMD=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
-# Compile burst-oriented Broadcom BNXT PMD driver
-CONFIG_RTE_LIBRTE_BNXT_PMD=n
-# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
-CONFIG_RTE_LIBRTE_CXGBE_PMD=n
-# Compile burst-oriented NXP PFE PMD driver
-CONFIG_RTE_LIBRTE_PFE_PMD=n
-# NXP DPAA Bus
-CONFIG_RTE_LIBRTE_DPAA_BUS=n
-CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA_PMD=n
-CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
-# Compile NXP DPAA2 FSL-MC Bus
-CONFIG_RTE_LIBRTE_FSLMC_BUS=n
-# Compile Support Libraries for NXP DPAA2
-CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
-# Compile burst-oriented NXP DPAA2 PMD driver
-CONFIG_RTE_LIBRTE_DPAA2_PMD=n
-CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
-# Compile NXP ENETC PMD Driver
-CONFIG_RTE_LIBRTE_ENETC_PMD=n
-# Compile burst-oriented Amazon ENA PMD driver
-CONFIG_RTE_LIBRTE_ENA_PMD=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
-# Compile burst-oriented Cisco ENIC PMD driver
-CONFIG_RTE_LIBRTE_ENIC_PMD=n
-# Compile burst-oriented IGB & EM PMD drivers
-CONFIG_RTE_LIBRTE_EM_PMD=n
-CONFIG_RTE_LIBRTE_IGB_PMD=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n
-# Compile burst-oriented HINIC PMD driver
-CONFIG_RTE_LIBRTE_HINIC_PMD=n
-# Compile burst-oriented HNS3 PMD driver
-CONFIG_RTE_LIBRTE_HNS3_PMD=n
-# Compile burst-oriented IXGBE PMD driver
-CONFIG_RTE_LIBRTE_IXGBE_PMD=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
-CONFIG_RTE_IXGBE_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
-# Compile burst-oriented I40E PMD driver
-CONFIG_RTE_LIBRTE_I40E_PMD=y
-CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
-# Compile burst-oriented FM10K PMD
-CONFIG_RTE_LIBRTE_FM10K_PMD=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
-CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
-# Compile burst-oriented ICE PMD driver
-CONFIG_RTE_LIBRTE_ICE_PMD=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
-# Compile burst-oriented IAVF PMD driver
-CONFIG_RTE_LIBRTE_IAVF_PMD=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
-CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
-# Compile burst-oriented IPN3KE PMD driver
-CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
-# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
-CONFIG_RTE_LIBRTE_MLX4_PMD=n
-CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
-# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
-# ConnectX-6 & BlueField (MLX5) PMD
-CONFIG_RTE_LIBRTE_MLX5_PMD=n
-CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
-# Linking method for mlx4/5 dependency on ibverbs and related libraries
-# Default linking is dynamic by linker.
-# Other options are: dynamic by dlopen at run-time, or statically embedded.
-CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
-CONFIG_RTE_IBVERBS_LINK_STATIC=n
-# Compile burst-oriented Netronome NFP PMD driver
-CONFIG_RTE_LIBRTE_NFP_PMD=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
-# QLogic 10G/25G/40G/50G/100G PMD
-CONFIG_RTE_LIBRTE_QEDE_PMD=n
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
-#Provides abs path/name of architecture we compile for. firmware file.
-#Empty string denotes driver will use default firmware
-CONFIG_RTE_LIBRTE_QEDE_FW=""
-# Compile burst-oriented Solarflare libefx-based PMD
-CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
-CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
-# Compile software PMD backed by SZEDATA2 device
-CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
-# Compile software PMD backed by NFB device
-CONFIG_RTE_LIBRTE_NFB_PMD=n
-# Compile burst-oriented Cavium Thunderx NICVF PMD driver
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
-# Compile burst-oriented Cavium LiquidIO PMD driver
-CONFIG_RTE_LIBRTE_LIO_PMD=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
-# Compile burst-oriented Cavium OCTEONTX network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
-# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
-# Compile WRS accelerated virtual port (AVP) guest PMD driver
-CONFIG_RTE_LIBRTE_AVP_PMD=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
-# Compile burst-oriented VIRTIO PMD driver
-CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
-# Compile virtio device emulation inside virtio PMD driver
-CONFIG_RTE_VIRTIO_USER=n
-# Compile burst-oriented VMXNET3 PMD driver
-CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
-# Compile software PMD backed by AF_PACKET sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
-# Compile software PMD backed by AF_XDP sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
-# Compile Memory Interface PMD driver (Linux only)
-CONFIG_RTE_LIBRTE_PMD_MEMIF=n
-# Compile link bonding PMD library
-CONFIG_RTE_LIBRTE_PMD_BOND=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
-# Compile fail-safe PMD
-CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
-# Compile Marvell PMD driver
-CONFIG_RTE_LIBRTE_MVPP2_PMD=n
-# Compile Marvell MVNETA PMD driver
-CONFIG_RTE_LIBRTE_MVNETA_PMD=n
-# Compile support for VMBus library
-CONFIG_RTE_LIBRTE_VMBUS=n
-# Compile native PMD for Hyper-V/Azure
-CONFIG_RTE_LIBRTE_NETVSC_PMD=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
-# Compile virtual device driver for NetVSC on Hyper-V/Azure
-CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=n
-# Compile null PMD
-CONFIG_RTE_LIBRTE_PMD_NULL=n
-# Compile software PMD backed by PCAP files
-CONFIG_RTE_LIBRTE_PMD_PCAP=n
-# Compile example software rings based PMD
-CONFIG_RTE_LIBRTE_PMD_RING=y
-CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
-CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
-# Compile SOFTNIC PMD
-CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
-# Compile architecture we compile for. TAP PMD
-# It is enabled by default for Linux only.
-CONFIG_RTE_LIBRTE_PMD_TAP=y
-# Do prefetch of packet data within PMD driver receive function
-CONFIG_RTE_PMD_PACKET_PREFETCH=y
-# Compile generic wireless base band device library
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_BBDEV=n
-CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
-CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
-CONFIG_RTE_BBDEV_SDK_AVX2=n
-CONFIG_RTE_BBDEV_SDK_AVX512=n
-# Compile PMD for NULL bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
-# Compile PMD for turbo software bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
-# Compile PMD for Intel FPGA LTE FEC bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
-# Compile generic crypto device library
-CONFIG_RTE_LIBRTE_CRYPTODEV=n
-CONFIG_RTE_CRYPTO_MAX_DEVS=64
-# Compile PMD for ARMv8 Crypto device
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
-# Compile NXP CAAM JR crypto Driver
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
-# Compile NXP DPAA2 crypto sec driver for CAAM HW
-CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
-# NXP DPAA caam - crypto driver
-CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
-CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
-# Compile PMD for Cavium OCTEON TX crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
-# Compile PMD for Marvell OCTEON TX2 crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
-# Compile PMD for QuickAssist based devices - see docs for details
-CONFIG_RTE_LIBRTE_PMD_QAT=n
-CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
-CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
-# Max. number of QuickAssist devices, which can be detected and attached
-CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
-CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
-# Compile PMD for virtio crypto devices
-CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
-# Number of maximum virtio crypto devices
-CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
-# Compile PMD for AESNI backed device
-CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
-# Compile PMD for Software backed device
-CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
-# Compile PMD for AESNI GCM device
-CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
-# Compile PMD for SNOW 3G device
-CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
-CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
-# Compile PMD for KASUMI device
-CONFIG_RTE_LIBRTE_PMD_KASUMI=n
-# Compile PMD for ZUC device
-CONFIG_RTE_LIBRTE_PMD_ZUC=n
-# Compile PMD for Crypto Scheduler device
-CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
-# Compile PMD for NULL Crypto device
-CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
-# Compile PMD for AMD CCP crypto device
-CONFIG_RTE_LIBRTE_PMD_CCP=n
-# Compile PMD for Marvell Crypto device
-CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
-# Compile PMD for NITROX crypto device
-CONFIG_RTE_LIBRTE_PMD_NITROX=n
-# Compile generic security library
-CONFIG_RTE_LIBRTE_SECURITY=n
-# Compile generic compression device library
-CONFIG_RTE_LIBRTE_COMPRESSDEV=n
-CONFIG_RTE_COMPRESS_MAX_DEVS=64
-# Compile compressdev unit test
-CONFIG_RTE_COMPRESSDEV_TEST=n
-# Compile PMD for Octeontx ZIPVF compression device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
-# Compile PMD for ISA-L compression device
-CONFIG_RTE_LIBRTE_PMD_ISAL=n
-# Compile PMD for ZLIB compression device
-CONFIG_RTE_LIBRTE_PMD_ZLIB=n
-# Compile generic event device library
-CONFIG_RTE_LIBRTE_EVENTDEV=n
-CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
-CONFIG_RTE_EVENT_MAX_DEVS=16
-CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
-CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
-CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
-CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
-CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
-# Compile PMD for skeleton event device
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
-# Compile PMD for software event device
-CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
-# Compile PMD for distributed software event device
-CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
-# Compile PMD for octeontx sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
-# Compile PMD for octeontx2 sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
-# Compile PMD for OPDL event device
-CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
-# Compile PMD for NXP DPAA event device
-CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
-# Compile PMD for NXP DPAA2 event device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
-# Compile raw device support
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_RAWDEV=n
-CONFIG_RTE_RAWDEV_MAX_DEVS=64
-CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
-# Compile PMD for NXP DPAA2 CMDIF raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
-# Compile PMD for NXP DPAA2 QDMA raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
-# Compile PMD for Intel FPGA raw device
-CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
-# Compile PMD for Intel IOAT raw device
-CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
-# Compile PMD for octeontx2 DMA raw device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
-# Compile PMD for NTB raw device
-CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
-# Compile librte_ring
-CONFIG_RTE_LIBRTE_RING=y
-# Compile librte_stack
-CONFIG_RTE_LIBRTE_STACK=y
-# Compile librte_mempool
-CONFIG_RTE_LIBRTE_MEMPOOL=y
-CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
-CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
-# Compile Mempool drivers
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
-CONFIG_RTE_DRIVER_MEMPOOL_RING=y
-CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
-# Compile PMD for octeontx fpa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
-# Compile PMD for octeontx2 npa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
-# Compile librte_mbuf
-CONFIG_RTE_LIBRTE_MBUF=y
-CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
-CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
-CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
-CONFIG_RTE_PKTMBUF_HEADROOM=128
-# Compile librte_timer
-CONFIG_RTE_LIBRTE_TIMER=n
-CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
-# Compile librte_cfgfile
-CONFIG_RTE_LIBRTE_CFGFILE=n
-# Compile librte_cmdline
-CONFIG_RTE_LIBRTE_CMDLINE=y
-CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
-# Compile librte_hash
-CONFIG_RTE_LIBRTE_HASH=y
-CONFIG_RTE_LIBRTE_HASH_DEBUG=n
-# Compile librte_efd
-CONFIG_RTE_LIBRTE_EFD=n
-# Compile librte_member
-CONFIG_RTE_LIBRTE_MEMBER=y
-# Compile librte_jobstats
-CONFIG_RTE_LIBRTE_JOBSTATS=n
-# Compile architecture we compile for. device metrics library
-CONFIG_RTE_LIBRTE_METRICS=y
-# Compile architecture we compile for. bitrate statistics library
-CONFIG_RTE_LIBRTE_BITRATE=y
-# Compile architecture we compile for. latency statistics library
-CONFIG_RTE_LIBRTE_LATENCY_STATS=y
-# Compile librte_telemetry
-CONFIG_RTE_LIBRTE_TELEMETRY=n
-# Compile librte_rcu
-CONFIG_RTE_LIBRTE_RCU=n
-CONFIG_RTE_LIBRTE_RCU_DEBUG=n
-# Compile librte_rib
-CONFIG_RTE_LIBRTE_RIB=n
-# Compile librte_fib
-CONFIG_RTE_LIBRTE_FIB=n
-CONFIG_RTE_LIBRTE_FIB_DEBUG=n
-# Compile librte_lpm
-CONFIG_RTE_LIBRTE_LPM=n
-CONFIG_RTE_LIBRTE_LPM_DEBUG=n
-# Compile librte_acl
-CONFIG_RTE_LIBRTE_ACL=n
-CONFIG_RTE_LIBRTE_ACL_DEBUG=n
-# Compile librte_power
-CONFIG_RTE_LIBRTE_POWER=n
-CONFIG_RTE_LIBRTE_POWER_DEBUG=n
-CONFIG_RTE_MAX_LCORE_FREQS=64
-# Compile librte_net
-CONFIG_RTE_LIBRTE_NET=y
-# Compile librte_ip_frag
-CONFIG_RTE_LIBRTE_IP_FRAG=y
-CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
-CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
-CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
-# Compile GRO library
-CONFIG_RTE_LIBRTE_GRO=y
-# Compile GSO library
-CONFIG_RTE_LIBRTE_GSO=y
-# Compile librte_meter
-CONFIG_RTE_LIBRTE_METER=y
-# Compile librte_classify
-CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
-# Compile librte_sched
-CONFIG_RTE_LIBRTE_SCHED=n
-CONFIG_RTE_SCHED_DEBUG=n
-CONFIG_RTE_SCHED_RED=n
-CONFIG_RTE_SCHED_COLLECT_STATS=n
-CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
-CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
-CONFIG_RTE_SCHED_VECTOR=n
-# Compile architecture we compile for. distributor library
-CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
-# Compile architecture we compile for. reorder library
-CONFIG_RTE_LIBRTE_REORDER=n
-# Compile librte_port
-CONFIG_RTE_LIBRTE_PORT=n
-CONFIG_RTE_PORT_STATS_COLLECT=n
-CONFIG_RTE_PORT_PCAP=n
-# Compile librte_table
-CONFIG_RTE_LIBRTE_TABLE=n
-CONFIG_RTE_TABLE_STATS_COLLECT=n
-# Compile librte_pipeline
-CONFIG_RTE_LIBRTE_PIPELINE=n
-CONFIG_RTE_PIPELINE_STATS_COLLECT=n
-# Compile librte_kni
-CONFIG_RTE_LIBRTE_KNI=n
-CONFIG_RTE_LIBRTE_PMD_KNI=n
-CONFIG_RTE_KNI_KMOD=n
-CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
-# Compile architecture we compile for. pdump library
-CONFIG_RTE_LIBRTE_PDUMP=y
-# Compile vhost user library
-CONFIG_RTE_LIBRTE_VHOST=y
-CONFIG_RTE_LIBRTE_VHOST_NUMA=y
-CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
-# Compile vhost PMD
-# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
-CONFIG_RTE_LIBRTE_PMD_VHOST=y
-# Compile IFC driver
-# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
-# should be enabled.
-CONFIG_RTE_LIBRTE_IFC_PMD=n
-# Compile librte_bpf
-CONFIG_RTE_LIBRTE_BPF=n
-# allow load BPF from ELF files (requires libelf)
-CONFIG_RTE_LIBRTE_BPF_ELF=n
-# Compile librte_ipsec
-CONFIG_RTE_LIBRTE_IPSEC=n
-# Compile architecture we compile for. test application
-CONFIG_RTE_APP_TEST=y
-CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
-# Compile architecture we compile for. procinfo application
-CONFIG_RTE_PROC_INFO=n
-# Compile architecture we compile for. PMD test application
-CONFIG_RTE_TEST_PMD=y
-CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
-CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
-# Compile architecture we compile for. bbdev test application
-CONFIG_RTE_TEST_BBDEV=n
-# Compile architecture we compile for. compression performance application
-CONFIG_RTE_APP_COMPRESS_PERF=n
-# Compile architecture we compile for. crypto performance application
-CONFIG_RTE_APP_CRYPTO_PERF=n
-# Compile architecture we compile for. eventdev application
-CONFIG_RTE_APP_EVENTDEV=n
-CONFIG_RTE_EXEC_ENV_LINUX=y
-CONFIG_RTE_EXEC_ENV_LINUXAPP=y
-CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
-# Common libraries, before Bus/PMDs
-# NXP DPAA BUS and drivers
-# NXP FSLMC BUS and DPAA2 drivers
-# NXP ENETC PMD Driver
-# HINIC PMD driver
-# Hisilicon HNS3 PMD driver
-# Compile PMD for Intel FPGA raw device
-# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
-CONFIG_RTE_ARCH_PPC_64=y
-CONFIG_RTE_ARCH_64=y
-CONFIG_RTE_TOOLCHAIN_GCC=y
-# Note: Power doesn't have this support
-# Note: Initially, all of architecture we compile for. PMD drivers compilation are turned off on Power
-# Will turn on them only after architecture we compile for. successful testing on Power
diff --git a/SOURCES/set_config.sh b/SOURCES/set_config.sh
deleted file mode 100755
index 002386b..0000000
--- a/SOURCES/set_config.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/bash
-# Copyright (C) 2017, Red Hat, Inc.
-#
-# set_config.sh will copy a configuration from $1 to $2, in the process
-# checking that the sha header for $1 matches the header in $2
-
-source configlib.sh
-
-if (( $# < 2 )); then
-    echo "$0: source dest [comment-marker]"
-    exit 1
-fi
-
-if [ ! -f "$1" ]; then
-    echo "Source file $1 must exist."
-    exit 1
-fi
-src_file=$1
-shift
-
-if [ ! -f "$1" ]; then
-    echo "Dest file $1 must exist."
-    exit 1
-fi
-dst_file=$1
-shift
-
-comment_sep=${1:-#}
-
-export LANG=en_US.utf8
-
-DEST_FILE_SHA=""
-SRC_FILE_SHA=""
-
-calc_sha DEST_FILE_SHA "$dst_file" "$comment_sep" || echo "Failed to calc sha"
-retr_sha SRC_FILE_SHA "$src_file" "$comment_sep" || echo "Failed to retrieve sha"
-
-if [ "$DEST_FILE_SHA" != "$SRC_FILE_SHA" ]; then
-    echo "ERROR: The requisite starting sha from $dst_file does not match the"
-    echo "       specified sha in $src_file."
-    echo "[ $DEST_FILE_SHA ] vs [ $SRC_FILE_SHA ]"
-    exit 1
-fi
-
-mv "$dst_file" "$dst_file".OLD
-cp "$src_file" "$dst_file"
-echo "copied 1 config file."
-exit 0
diff --git a/SOURCES/x86_64-native-linuxapp-gcc-config b/SOURCES/x86_64-native-linuxapp-gcc-config
deleted file mode 100644
index 195bd7f..0000000
--- a/SOURCES/x86_64-native-linuxapp-gcc-config
+++ /dev/null
@@ -1,590 +0,0 @@
-# -*- cfg-sha: fa840957ea3dbcff81dd55098161c11d90c3cad399b89e6089f793e7362a5c48
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2014 Intel Corporation
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2016 Intel Corporation
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright(c) 2010-2017 Intel Corporation
-# String that appears before the version number
-CONFIG_RTE_VER_PREFIX="DPDK"
-# Version information completed when this file is processed for a build
-CONFIG_RTE_VER_YEAR=19
-CONFIG_RTE_VER_MONTH=11
-CONFIG_RTE_VER_MINOR=2
-CONFIG_RTE_VER_SUFFIX=""
-CONFIG_RTE_VER_RELEASE=99
- # RTE_EXEC_ENV values are the directories in mk/exec-env/
-CONFIG_RTE_EXEC_ENV="linuxapp"
-# RTE_ARCH values are architecture we compile for. directories in mk/arch/
-CONFIG_RTE_ARCH="x86_64"
-# machine can define specific variables or action for a specific board
-# RTE_MACHINE values are architecture we compile for. directories in mk/machine/
-CONFIG_RTE_MACHINE="default"
-# The compiler we use.
-# RTE_TOOLCHAIN values are architecture we compile for. directories in mk/toolchain/
-CONFIG_RTE_TOOLCHAIN="gcc"
-# Use intrinsics or assembly code for key routines
-CONFIG_RTE_FORCE_INTRINSICS=n
-# Machine forces strict alignment constraints.
-CONFIG_RTE_ARCH_STRICT_ALIGN=n
-# Enable link time optimization
-CONFIG_RTE_ENABLE_LTO=n
-# Compile to share library
-CONFIG_RTE_BUILD_SHARED_LIB=y
-# Use newest code breaking previous ABI
-CONFIG_RTE_NEXT_ABI=n
-# Machine's cache line size
-CONFIG_RTE_CACHE_LINE_SIZE=64
-# Memory model
-CONFIG_RTE_USE_C11_MEM_MODEL=n
-# Compile Environment Abstraction Layer
-CONFIG_RTE_LIBRTE_EAL=y
-CONFIG_RTE_MAX_LCORE=128
-CONFIG_RTE_MAX_NUMA_NODES=8
-CONFIG_RTE_MAX_HEAPS=32
-CONFIG_RTE_MAX_MEMSEG_LISTS=64
-# each memseg list will be limited to either RTE_MAX_MEMSEG_PER_LIST pages
-# or RTE_MAX_MEM_MB_PER_LIST megabytes worth of memory, whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_LIST=8192
-CONFIG_RTE_MAX_MEM_MB_PER_LIST=32768
-# a "type" is a combination of page size and NUMA node. total number of memseg
-# lists per type will be limited to either RTE_MAX_MEMSEG_PER_TYPE pages (split
-# over multiple lists of RTE_MAX_MEMSEG_PER_LIST pages), or
-# RTE_MAX_MEM_MB_PER_TYPE megabytes of memory (split over multiple lists of
-# RTE_MAX_MEM_MB_PER_LIST), whichever is smaller
-CONFIG_RTE_MAX_MEMSEG_PER_TYPE=32768
-CONFIG_RTE_MAX_MEM_MB_PER_TYPE=131072
-# global maximum usable amount of VA, in megabytes
-CONFIG_RTE_MAX_MEM_MB=524288
-CONFIG_RTE_MAX_MEMZONE=2560
-CONFIG_RTE_MAX_TAILQ=32
-CONFIG_RTE_ENABLE_ASSERT=n
-CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO
-CONFIG_RTE_LOG_HISTORY=256
-CONFIG_RTE_BACKTRACE=y
-CONFIG_RTE_LIBEAL_USE_HPET=n
-CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n
-CONFIG_RTE_EAL_IGB_UIO=n
-CONFIG_RTE_EAL_VFIO=y
-CONFIG_RTE_MAX_VFIO_GROUPS=64
-CONFIG_RTE_MAX_VFIO_CONTAINERS=64
-CONFIG_RTE_MALLOC_DEBUG=n
-CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=y
-CONFIG_RTE_USE_LIBBSD=n
-# Recognize/ignore architecture we compile for. AVX/AVX512 CPU flags for performance/power testing.
-# AVX512 is marked as experimental for now, will enable it after enough
-# field test and possible optimization.
-CONFIG_RTE_ENABLE_AVX=y
-CONFIG_RTE_ENABLE_AVX512=n
-# Use ARM LSE ATOMIC instructions
-CONFIG_RTE_ARM_FEATURE_ATOMICS=n
-# Default driver path (or "" to disable)
-CONFIG_RTE_EAL_PMD_PATH="/usr/lib64/dpdk-pmds"
-# Compile Environment Abstraction Layer to support Vmware TSC map
-CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y
-# Compile architecture we compile for. PCI library
-CONFIG_RTE_LIBRTE_PCI=y
-# Compile architecture we compile for. argument parser library
-CONFIG_RTE_LIBRTE_KVARGS=y
-# Compile generic ethernet library
-CONFIG_RTE_LIBRTE_ETHER=y
-CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n
-CONFIG_RTE_MAX_ETHPORTS=32
-CONFIG_RTE_MAX_QUEUES_PER_PORT=1024
-CONFIG_RTE_LIBRTE_IEEE1588=n
-CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16
-CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
-CONFIG_RTE_ETHDEV_PROFILE_WITH_VTUNE=n
-# Turn off Tx preparation stage
-# Warning: rte_eth_tx_prepare() can be safely disabled only if using a
-# driver which do not implement any Tx preparation.
-CONFIG_RTE_ETHDEV_TX_PREPARE_NOOP=n
-# Common libraries, before Bus/PMDs
-CONFIG_RTE_LIBRTE_COMMON_DPAAX=n
-# Compile architecture we compile for. Intel FPGA bus
-CONFIG_RTE_LIBRTE_IFPGA_BUS=n
-# Compile PCI bus driver
-CONFIG_RTE_LIBRTE_PCI_BUS=y
-# Compile architecture we compile for. vdev bus
-CONFIG_RTE_LIBRTE_VDEV_BUS=y
-# Compile ARK PMD
-CONFIG_RTE_LIBRTE_ARK_PMD=n
-CONFIG_RTE_LIBRTE_ARK_PAD_TX=y
-CONFIG_RTE_LIBRTE_ARK_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_STATS=n
-CONFIG_RTE_LIBRTE_ARK_DEBUG_TRACE=n
-# Compile Aquantia Atlantic PMD driver
-CONFIG_RTE_LIBRTE_ATLANTIC_PMD=n
-# Compile AMD PMD
-CONFIG_RTE_LIBRTE_AXGBE_PMD=n
-CONFIG_RTE_LIBRTE_AXGBE_PMD_DEBUG=n
-# Compile burst-oriented Broadcom PMD driver
-CONFIG_RTE_LIBRTE_BNX2X_PMD=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
-CONFIG_RTE_LIBRTE_BNX2X_DEBUG_PERIODIC=n
-# Compile burst-oriented Broadcom BNXT PMD driver
-CONFIG_RTE_LIBRTE_BNXT_PMD=y
-# Compile burst-oriented Chelsio Terminator (CXGBE) PMD
-CONFIG_RTE_LIBRTE_CXGBE_PMD=n
-# Compile burst-oriented NXP PFE PMD driver
-CONFIG_RTE_LIBRTE_PFE_PMD=n
-# NXP DPAA Bus
-CONFIG_RTE_LIBRTE_DPAA_BUS=n
-CONFIG_RTE_LIBRTE_DPAA_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA_PMD=n
-CONFIG_RTE_LIBRTE_DPAA_HWDEBUG=n
-# Compile NXP DPAA2 FSL-MC Bus
-CONFIG_RTE_LIBRTE_FSLMC_BUS=n
-# Compile Support Libraries for NXP DPAA2
-CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL=n
-CONFIG_RTE_LIBRTE_DPAA2_USE_PHYS_IOVA=y
-# Compile burst-oriented NXP DPAA2 PMD driver
-CONFIG_RTE_LIBRTE_DPAA2_PMD=n
-CONFIG_RTE_LIBRTE_DPAA2_DEBUG_DRIVER=n
-# Compile NXP ENETC PMD Driver
-CONFIG_RTE_LIBRTE_ENETC_PMD=n
-# Compile burst-oriented Amazon ENA PMD driver
-CONFIG_RTE_LIBRTE_ENA_PMD=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ENA_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n
-# Compile burst-oriented Cisco ENIC PMD driver
-CONFIG_RTE_LIBRTE_ENIC_PMD=y
-# Compile burst-oriented IGB & EM PMD drivers
-CONFIG_RTE_LIBRTE_EM_PMD=n
-CONFIG_RTE_LIBRTE_IGB_PMD=y
-CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n
-# Compile burst-oriented HINIC PMD driver
-CONFIG_RTE_LIBRTE_HINIC_PMD=n
-# Compile burst-oriented HNS3 PMD driver
-CONFIG_RTE_LIBRTE_HNS3_PMD=n
-# Compile burst-oriented IXGBE PMD driver
-CONFIG_RTE_LIBRTE_IXGBE_PMD=y
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n
-CONFIG_RTE_IXGBE_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_IXGBE_BYPASS=n
-# Compile burst-oriented I40E PMD driver
-CONFIG_RTE_LIBRTE_I40E_PMD=y
-CONFIG_RTE_LIBRTE_I40E_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_I40E_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y
-CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64
-CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4
-# Compile burst-oriented FM10K PMD
-CONFIG_RTE_LIBRTE_FM10K_PMD=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_FM10K_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_FM10K_RX_OLFLAGS_ENABLE=y
-CONFIG_RTE_LIBRTE_FM10K_INC_VECTOR=y
-# Compile burst-oriented ICE PMD driver
-CONFIG_RTE_LIBRTE_ICE_PMD=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_ICE_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_ICE_RX_ALLOW_BULK_ALLOC=y
-CONFIG_RTE_LIBRTE_ICE_16BYTE_RX_DESC=n
-# Compile burst-oriented IAVF PMD driver
-CONFIG_RTE_LIBRTE_IAVF_PMD=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_TX_FREE=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_IAVF_DEBUG_DUMP_DESC=n
-CONFIG_RTE_LIBRTE_IAVF_16BYTE_RX_DESC=n
-# Compile burst-oriented IPN3KE PMD driver
-CONFIG_RTE_LIBRTE_IPN3KE_PMD=n
-# Compile burst-oriented Mellanox ConnectX-3 (MLX4) PMD
-CONFIG_RTE_LIBRTE_MLX4_PMD=y
-CONFIG_RTE_LIBRTE_MLX4_DEBUG=n
-# Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,
-# ConnectX-6 & BlueField (MLX5) PMD
-CONFIG_RTE_LIBRTE_MLX5_PMD=y
-CONFIG_RTE_LIBRTE_MLX5_DEBUG=n
-# Linking method for mlx4/5 dependency on ibverbs and related libraries
-# Default linking is dynamic by linker.
-# Other options are: dynamic by dlopen at run-time, or statically embedded.
-CONFIG_RTE_IBVERBS_LINK_DLOPEN=n
-CONFIG_RTE_IBVERBS_LINK_STATIC=n
-# Compile burst-oriented Netronome NFP PMD driver
-CONFIG_RTE_LIBRTE_NFP_PMD=y
-CONFIG_RTE_LIBRTE_NFP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NFP_DEBUG_RX=n
-# QLogic 10G/25G/40G/50G/100G PMD
-CONFIG_RTE_LIBRTE_QEDE_PMD=y
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
-#Provides abs path/name of architecture we compile for. firmware file.
-#Empty string denotes driver will use default firmware
-CONFIG_RTE_LIBRTE_QEDE_FW=""
-# Compile burst-oriented Solarflare libefx-based PMD
-CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
-CONFIG_RTE_LIBRTE_SFC_EFX_DEBUG=n
-# Compile software PMD backed by SZEDATA2 device
-CONFIG_RTE_LIBRTE_PMD_SZEDATA2=n
-# Compile software PMD backed by NFB device
-CONFIG_RTE_LIBRTE_NFB_PMD=n
-# Compile burst-oriented Cavium Thunderx NICVF PMD driver
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
-# Compile burst-oriented Cavium LiquidIO PMD driver
-CONFIG_RTE_LIBRTE_LIO_PMD=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_MBOX=n
-CONFIG_RTE_LIBRTE_LIO_DEBUG_REGS=n
-# Compile burst-oriented Cavium OCTEONTX network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX_PMD=n
-# Compile burst-oriented Marvell OCTEON TX2 network PMD driver
-CONFIG_RTE_LIBRTE_OCTEONTX2_PMD=n
-# Compile WRS accelerated virtual port (AVP) guest PMD driver
-CONFIG_RTE_LIBRTE_AVP_PMD=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_AVP_DEBUG_BUFFERS=n
-# Compile burst-oriented VIRTIO PMD driver
-CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n
-# Compile virtio device emulation inside virtio PMD driver
-CONFIG_RTE_VIRTIO_USER=n
-# Compile burst-oriented VMXNET3 PMD driver
-CONFIG_RTE_LIBRTE_VMXNET3_PMD=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n
-# Compile software PMD backed by AF_PACKET sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_PACKET=n
-# Compile software PMD backed by AF_XDP sockets (Linux only)
-CONFIG_RTE_LIBRTE_PMD_AF_XDP=n
-# Compile Memory Interface PMD driver (Linux only)
-CONFIG_RTE_LIBRTE_PMD_MEMIF=n
-# Compile link bonding PMD library
-CONFIG_RTE_LIBRTE_PMD_BOND=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB=n
-CONFIG_RTE_LIBRTE_BOND_DEBUG_ALB_L1=n
-# Compile fail-safe PMD
-CONFIG_RTE_LIBRTE_PMD_FAILSAFE=y
-# Compile Marvell PMD driver
-CONFIG_RTE_LIBRTE_MVPP2_PMD=n
-# Compile Marvell MVNETA PMD driver
-CONFIG_RTE_LIBRTE_MVNETA_PMD=n
-# Compile support for VMBus library
-CONFIG_RTE_LIBRTE_VMBUS=y
-# Compile native PMD for Hyper-V/Azure
-CONFIG_RTE_LIBRTE_NETVSC_PMD=y
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_TX=n
-CONFIG_RTE_LIBRTE_NETVSC_DEBUG_DUMP=n
-# Compile virtual device driver for NetVSC on Hyper-V/Azure
-CONFIG_RTE_LIBRTE_VDEV_NETVSC_PMD=y
-# Compile null PMD
-CONFIG_RTE_LIBRTE_PMD_NULL=n
-# Compile software PMD backed by PCAP files
-CONFIG_RTE_LIBRTE_PMD_PCAP=n
-# Compile example software rings based PMD
-CONFIG_RTE_LIBRTE_PMD_RING=y
-CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16
-CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16
-# Compile SOFTNIC PMD
-CONFIG_RTE_LIBRTE_PMD_SOFTNIC=n
-# Compile architecture we compile for. TAP PMD
-# It is enabled by default for Linux only.
-CONFIG_RTE_LIBRTE_PMD_TAP=y
-# Do prefetch of packet data within PMD driver receive function
-CONFIG_RTE_PMD_PACKET_PREFETCH=y
-# Compile generic wireless base band device library
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_BBDEV=n
-CONFIG_RTE_LIBRTE_BBDEV_DEBUG=n
-CONFIG_RTE_BBDEV_MAX_DEVS=128
-CONFIG_RTE_BBDEV_OFFLOAD_COST=y
-CONFIG_RTE_BBDEV_SDK_AVX2=n
-CONFIG_RTE_BBDEV_SDK_AVX512=n
-# Compile PMD for NULL bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_NULL=n
-# Compile PMD for turbo software bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW=n
-# Compile PMD for Intel FPGA LTE FEC bbdev device
-CONFIG_RTE_LIBRTE_PMD_BBDEV_FPGA_LTE_FEC=n
-# Compile generic crypto device library
-CONFIG_RTE_LIBRTE_CRYPTODEV=n
-CONFIG_RTE_CRYPTO_MAX_DEVS=64
-# Compile PMD for ARMv8 Crypto device
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO=n
-CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG=n
-# Compile NXP CAAM JR crypto Driver
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR=n
-CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE=n
-# Compile NXP DPAA2 crypto sec driver for CAAM HW
-CONFIG_RTE_LIBRTE_PMD_DPAA2_SEC=n
-# NXP DPAA caam - crypto driver
-CONFIG_RTE_LIBRTE_PMD_DPAA_SEC=n
-CONFIG_RTE_LIBRTE_DPAA_MAX_CRYPTODEV=4
-# Compile PMD for Cavium OCTEON TX crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_CRYPTO=n
-# Compile PMD for Marvell OCTEON TX2 crypto device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_CRYPTO=n
-# Compile PMD for QuickAssist based devices - see docs for details
-CONFIG_RTE_LIBRTE_PMD_QAT=n
-CONFIG_RTE_LIBRTE_PMD_QAT_SYM=n
-CONFIG_RTE_LIBRTE_PMD_QAT_ASYM=n
-# Max. number of QuickAssist devices, which can be detected and attached
-CONFIG_RTE_PMD_QAT_MAX_PCI_DEVICES=48
-CONFIG_RTE_PMD_QAT_COMP_IM_BUFFER_SIZE=65536
-# Compile PMD for virtio crypto devices
-CONFIG_RTE_LIBRTE_PMD_VIRTIO_CRYPTO=n
-# Number of maximum virtio crypto devices
-CONFIG_RTE_MAX_VIRTIO_CRYPTO=32
-# Compile PMD for AESNI backed device
-CONFIG_RTE_LIBRTE_PMD_AESNI_MB=n
-# Compile PMD for Software backed device
-CONFIG_RTE_LIBRTE_PMD_OPENSSL=n
-# Compile PMD for AESNI GCM device
-CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=n
-# Compile PMD for SNOW 3G device
-CONFIG_RTE_LIBRTE_PMD_SNOW3G=n
-CONFIG_RTE_LIBRTE_PMD_SNOW3G_DEBUG=n
-# Compile PMD for KASUMI device
-CONFIG_RTE_LIBRTE_PMD_KASUMI=n
-# Compile PMD for ZUC device
-CONFIG_RTE_LIBRTE_PMD_ZUC=n
-# Compile PMD for Crypto Scheduler device
-CONFIG_RTE_LIBRTE_PMD_CRYPTO_SCHEDULER=n
-# Compile PMD for NULL Crypto device
-CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO=n
-# Compile PMD for AMD CCP crypto device
-CONFIG_RTE_LIBRTE_PMD_CCP=n
-# Compile PMD for Marvell Crypto device
-CONFIG_RTE_LIBRTE_PMD_MVSAM_CRYPTO=n
-# Compile PMD for NITROX crypto device
-CONFIG_RTE_LIBRTE_PMD_NITROX=n
-# Compile generic security library
-CONFIG_RTE_LIBRTE_SECURITY=n
-# Compile generic compression device library
-CONFIG_RTE_LIBRTE_COMPRESSDEV=n
-CONFIG_RTE_COMPRESS_MAX_DEVS=64
-# Compile compressdev unit test
-CONFIG_RTE_COMPRESSDEV_TEST=n
-# Compile PMD for Octeontx ZIPVF compression device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_ZIPVF=n
-# Compile PMD for ISA-L compression device
-CONFIG_RTE_LIBRTE_PMD_ISAL=n
-# Compile PMD for ZLIB compression device
-CONFIG_RTE_LIBRTE_PMD_ZLIB=n
-# Compile generic event device library
-CONFIG_RTE_LIBRTE_EVENTDEV=n
-CONFIG_RTE_LIBRTE_EVENTDEV_DEBUG=n
-CONFIG_RTE_EVENT_MAX_DEVS=16
-CONFIG_RTE_EVENT_MAX_QUEUES_PER_DEV=64
-CONFIG_RTE_EVENT_TIMER_ADAPTER_NUM_MAX=32
-CONFIG_RTE_EVENT_ETH_INTR_RING_SIZE=1024
-CONFIG_RTE_EVENT_CRYPTO_ADAPTER_MAX_INSTANCE=32
-CONFIG_RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE=32
-# Compile PMD for skeleton event device
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV=n
-CONFIG_RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG=n
-# Compile PMD for software event device
-CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV=n
-# Compile PMD for distributed software event device
-CONFIG_RTE_LIBRTE_PMD_DSW_EVENTDEV=n
-# Compile PMD for octeontx sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=n
-# Compile PMD for octeontx2 sso event device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_EVENTDEV=n
-# Compile PMD for OPDL event device
-CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV=n
-# Compile PMD for NXP DPAA event device
-CONFIG_RTE_LIBRTE_PMD_DPAA_EVENTDEV=n
-# Compile PMD for NXP DPAA2 event device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_EVENTDEV=n
-# Compile raw device support
-# EXPERIMENTAL: API may change without prior notice
-CONFIG_RTE_LIBRTE_RAWDEV=n
-CONFIG_RTE_RAWDEV_MAX_DEVS=64
-CONFIG_RTE_LIBRTE_PMD_SKELETON_RAWDEV=n
-# Compile PMD for NXP DPAA2 CMDIF raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_CMDIF_RAWDEV=n
-# Compile PMD for NXP DPAA2 QDMA raw device
-CONFIG_RTE_LIBRTE_PMD_DPAA2_QDMA_RAWDEV=n
-# Compile PMD for Intel FPGA raw device
-CONFIG_RTE_LIBRTE_PMD_IFPGA_RAWDEV=n
-# Compile PMD for Intel IOAT raw device
-CONFIG_RTE_LIBRTE_PMD_IOAT_RAWDEV=n
-# Compile PMD for octeontx2 DMA raw device
-CONFIG_RTE_LIBRTE_PMD_OCTEONTX2_DMA_RAWDEV=n
-# Compile PMD for NTB raw device
-CONFIG_RTE_LIBRTE_PMD_NTB_RAWDEV=n
-# Compile librte_ring
-CONFIG_RTE_LIBRTE_RING=y
-# Compile librte_stack
-CONFIG_RTE_LIBRTE_STACK=y
-# Compile librte_mempool
-CONFIG_RTE_LIBRTE_MEMPOOL=y
-CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512
-CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n
-# Compile Mempool drivers
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET=y
-CONFIG_RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB=64
-CONFIG_RTE_DRIVER_MEMPOOL_RING=y
-CONFIG_RTE_DRIVER_MEMPOOL_STACK=y
-# Compile PMD for octeontx fpa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX_MEMPOOL=n
-# Compile PMD for octeontx2 npa mempool device
-CONFIG_RTE_LIBRTE_OCTEONTX2_MEMPOOL=n
-# Compile librte_mbuf
-CONFIG_RTE_LIBRTE_MBUF=y
-CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
-CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
-CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
-CONFIG_RTE_PKTMBUF_HEADROOM=128
-# Compile librte_timer
-CONFIG_RTE_LIBRTE_TIMER=n
-CONFIG_RTE_LIBRTE_TIMER_DEBUG=n
-# Compile librte_cfgfile
-CONFIG_RTE_LIBRTE_CFGFILE=n
-# Compile librte_cmdline
-CONFIG_RTE_LIBRTE_CMDLINE=y
-CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n
-# Compile librte_hash
-CONFIG_RTE_LIBRTE_HASH=y
-CONFIG_RTE_LIBRTE_HASH_DEBUG=n
-# Compile librte_efd
-CONFIG_RTE_LIBRTE_EFD=n
-# Compile librte_member
-CONFIG_RTE_LIBRTE_MEMBER=y
-# Compile librte_jobstats
-CONFIG_RTE_LIBRTE_JOBSTATS=n
-# Compile architecture we compile for. device metrics library
-CONFIG_RTE_LIBRTE_METRICS=y
-# Compile architecture we compile for. bitrate statistics library
-CONFIG_RTE_LIBRTE_BITRATE=y
-# Compile architecture we compile for. latency statistics library
-CONFIG_RTE_LIBRTE_LATENCY_STATS=y
-# Compile librte_telemetry
-CONFIG_RTE_LIBRTE_TELEMETRY=n
-# Compile librte_rcu
-CONFIG_RTE_LIBRTE_RCU=n
-CONFIG_RTE_LIBRTE_RCU_DEBUG=n
-# Compile librte_rib
-CONFIG_RTE_LIBRTE_RIB=n
-# Compile librte_fib
-CONFIG_RTE_LIBRTE_FIB=n
-CONFIG_RTE_LIBRTE_FIB_DEBUG=n
-# Compile librte_lpm
-CONFIG_RTE_LIBRTE_LPM=n
-CONFIG_RTE_LIBRTE_LPM_DEBUG=n
-# Compile librte_acl
-CONFIG_RTE_LIBRTE_ACL=n
-CONFIG_RTE_LIBRTE_ACL_DEBUG=n
-# Compile librte_power
-CONFIG_RTE_LIBRTE_POWER=n
-CONFIG_RTE_LIBRTE_POWER_DEBUG=n
-CONFIG_RTE_MAX_LCORE_FREQS=64
-# Compile librte_net
-CONFIG_RTE_LIBRTE_NET=y
-# Compile librte_ip_frag
-CONFIG_RTE_LIBRTE_IP_FRAG=y
-CONFIG_RTE_LIBRTE_IP_FRAG_DEBUG=n
-CONFIG_RTE_LIBRTE_IP_FRAG_MAX_FRAG=4
-CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT=n
-# Compile GRO library
-CONFIG_RTE_LIBRTE_GRO=y
-# Compile GSO library
-CONFIG_RTE_LIBRTE_GSO=y
-# Compile librte_meter
-CONFIG_RTE_LIBRTE_METER=y
-# Compile librte_classify
-CONFIG_RTE_LIBRTE_FLOW_CLASSIFY=n
-# Compile librte_sched
-CONFIG_RTE_LIBRTE_SCHED=n
-CONFIG_RTE_SCHED_DEBUG=n
-CONFIG_RTE_SCHED_RED=n
-CONFIG_RTE_SCHED_COLLECT_STATS=n
-CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
-CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
-CONFIG_RTE_SCHED_VECTOR=n
-# Compile architecture we compile for. distributor library
-CONFIG_RTE_LIBRTE_DISTRIBUTOR=n
-# Compile architecture we compile for. reorder library
-CONFIG_RTE_LIBRTE_REORDER=n
-# Compile librte_port
-CONFIG_RTE_LIBRTE_PORT=n
-CONFIG_RTE_PORT_STATS_COLLECT=n
-CONFIG_RTE_PORT_PCAP=n
-# Compile librte_table
-CONFIG_RTE_LIBRTE_TABLE=n
-CONFIG_RTE_TABLE_STATS_COLLECT=n
-# Compile librte_pipeline
-CONFIG_RTE_LIBRTE_PIPELINE=n
-CONFIG_RTE_PIPELINE_STATS_COLLECT=n
-# Compile librte_kni
-CONFIG_RTE_LIBRTE_KNI=n
-CONFIG_RTE_LIBRTE_PMD_KNI=n
-CONFIG_RTE_KNI_KMOD=n
-CONFIG_RTE_KNI_PREEMPT_DEFAULT=y
-# Compile architecture we compile for. pdump library
-CONFIG_RTE_LIBRTE_PDUMP=y
-# Compile vhost user library
-CONFIG_RTE_LIBRTE_VHOST=y
-CONFIG_RTE_LIBRTE_VHOST_NUMA=y
-CONFIG_RTE_LIBRTE_VHOST_DEBUG=n
-# Compile vhost PMD
-# To compile, CONFIG_RTE_LIBRTE_VHOST should be enabled.
-CONFIG_RTE_LIBRTE_PMD_VHOST=y
-# Compile IFC driver
-# To compile, CONFIG_RTE_LIBRTE_VHOST and CONFIG_RTE_EAL_VFIO
-# should be enabled.
-CONFIG_RTE_LIBRTE_IFC_PMD=n
-# Compile librte_bpf
-CONFIG_RTE_LIBRTE_BPF=n
-# allow load BPF from ELF files (requires libelf)
-CONFIG_RTE_LIBRTE_BPF_ELF=n
-# Compile librte_ipsec
-CONFIG_RTE_LIBRTE_IPSEC=n
-# Compile architecture we compile for. test application
-CONFIG_RTE_APP_TEST=y
-CONFIG_RTE_APP_TEST_RESOURCE_TAR=n
-# Compile architecture we compile for. procinfo application
-CONFIG_RTE_PROC_INFO=n
-# Compile architecture we compile for. PMD test application
-CONFIG_RTE_TEST_PMD=y
-CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n
-CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n
-# Compile architecture we compile for. bbdev test application
-CONFIG_RTE_TEST_BBDEV=n
-# Compile architecture we compile for. compression performance application
-CONFIG_RTE_APP_COMPRESS_PERF=n
-# Compile architecture we compile for. crypto performance application
-CONFIG_RTE_APP_CRYPTO_PERF=n
-# Compile architecture we compile for. eventdev application
-CONFIG_RTE_APP_EVENTDEV=n
-CONFIG_RTE_EXEC_ENV_LINUX=y
-CONFIG_RTE_EXEC_ENV_LINUXAPP=y
-CONFIG_RTE_LIBRTE_VHOST_POSTCOPY=n
-# Common libraries, before Bus/PMDs
-# NXP DPAA BUS and drivers
-# NXP FSLMC BUS and DPAA2 drivers
-# NXP ENETC PMD Driver
-# HINIC PMD driver
-# Hisilicon HNS3 PMD driver
-# Compile PMD for Intel FPGA raw device
-# To compile, CONFIG_RTE_EAL_VFIO should be enabled.
-CONFIG_RTE_ARCH_X86_64=y
-CONFIG_RTE_ARCH_X86=y
-CONFIG_RTE_ARCH_64=y
-CONFIG_RTE_TOOLCHAIN_GCC=y
diff --git a/SPECS/dpdk.spec b/SPECS/dpdk.spec
index 3cd87c8..34f2787 100644
--- a/SPECS/dpdk.spec
+++ b/SPECS/dpdk.spec
@@ -8,10 +8,13 @@
 #% define date 20191128
 #% define shortcommit0 %(c=%{commit0}; echo ${c:0:7})
 
-%define ver 19.11.2
-%define rel 1
+%define ver 20.11
+%define rel 3
 
-%define srcname dpdk-stable
+%define srcname dpdk
+
+%define ninjaver  1.8.2
+%define mesonver  0.49.2
 
 Name: dpdk
 Version: %{ver}
@@ -23,19 +26,16 @@ Source: http://dpdk.org/browse/dpdk/snapshot/dpdk-%{commit0}.tar.xz
 Source: http://fast.dpdk.org/rel/dpdk-%{ver}.tar.xz
 %endif
 
+%if 0%{?rhel} && 0%{?rhel} < 8
+Source1: https://github.com/ninja-build/ninja/archive/v%{ninjaver}.tar.gz#/ninja-build-%{ninjaver}.tar.gz
+Source2: https://github.com/mesonbuild/meson/releases/download/%{mesonver}/meson-%{mesonver}.tar.gz
+%else
+BuildRequires: meson
+%endif
+
 # Only needed for creating snapshot tarballs, not used in build itself
 Source100: dpdk-snapshot.sh
 
-Source500: configlib.sh
-Source501: gen_config_group.sh
-Source502: set_config.sh
-
-# Important: source503 is used as the actual copy file
-# @TODO: this causes a warning - fix it?
-Source504: arm64-armv8a-linuxapp-gcc-config
-Source505: ppc_64-power8-linuxapp-gcc-config
-Source506: x86_64-native-linuxapp-gcc-config
-
 # Patches only in dpdk package
 
 
@@ -54,31 +54,12 @@ License: BSD and LGPLv2 and GPLv2
 # needs extensive work to port it to other architectures.
 ExclusiveArch: x86_64 aarch64 ppc64le
 
-# machine_arch maps between rpm and dpdk arch name, often same as _target_cpu
-# machine_tmpl is the config template machine name, often "native"
-# machine is the actual machine name used in the dpdk make system
-%ifarch x86_64
-%define machine_arch x86_64
-%define machine_tmpl native
-%define machine default
-%endif
-%ifarch aarch64
-%define machine_arch arm64
-%define machine_tmpl armv8a
-%define machine armv8a
-%endif
-%ifarch ppc64le
-%define machine_arch ppc_64
-%define machine_tmpl power8
-%define machine power8
-%endif
-
-%define target %{machine_arch}-%{machine_tmpl}-linuxapp-gcc
-
 %define sdkdir  %{_datadir}/%{name}
 %define docdir  %{_docdir}/%{name}
 %define incdir  %{_includedir}/%{name}
-%define pmddir %{_libdir}/%{name}-pmds
+%define pmddir  %{_libdir}/%{name}-pmds
+
+%define venvdir %{_builddir}/venv
 
 %if 0%{?rhel} > 7 || 0%{?fedora}
 %define _py python3
@@ -95,8 +76,74 @@ Conflicts: dpdk-doc < 18.11-2
 
 BuildRequires: gcc, kernel-headers, zlib-devel, numactl-devel
 BuildRequires: doxygen, %{_py}-devel, %{_py}-sphinx
+BuildRequires: python3-devel
 %ifarch x86_64
-BuildRequires: rdma-core-devel >= 15 libmnl-devel
+BuildRequires: rdma-core-devel >= 15
+%endif
+
+# Macros taked from ninja-build and meson packages and adapted to be defined here
+# See /usr/lib/rpm/macros.d/macros.{ninja,meson}
+%if 0%{?rhel} && 0%{?rhel} < 8
+
+# RHEL-7 doesn't define _vpath_* macros yet
+%if 0%{!?_vpath_srcdir:1}
+%define _vpath_srcdir .
+%endif
+%if 0%{!?_vpath_builddir:1}
+%define _vpath_builddir %_target_platform
+%endif
+
+%define __ninja %{venvdir}/bin/ninja
+%define __ninja_common_opts -v %{?_smp_mflags}
+
+%define ninja_build \
+    %{__ninja} %{__ninja_common_opts}
+
+%define ninja_install \
+    DESTDIR=%{buildroot} %{__ninja} install %{__ninja_common_opts}
+
+%define ninja_test \
+    %{__ninja} test %{__ninja_common_opts}
+
+%define __meson %{venvdir}/bin/meson
+%define __meson_wrap_mode nodownload
+%define __meson_auto_features enabled
+
+%define meson \
+    export CFLAGS="${CFLAGS:-%__global_cflags}"       \
+    export CXXFLAGS="${CXXFLAGS:-%__global_cxxflags}" \
+    export FFLAGS="${FFLAGS:-%__global_fflags}"       \
+    export FCFLAGS="${FCFLAGS:-%__global_fcflags}"    \
+    export LDFLAGS="${LDFLAGS:-%__global_ldflags}"    \
+    %{__meson}                                    \\\
+        --buildtype=plain                         \\\
+        --prefix=%{_prefix}                       \\\
+        --libdir=%{_libdir}                       \\\
+        --libexecdir=%{_libexecdir}               \\\
+        --bindir=%{_bindir}                       \\\
+        --sbindir=%{_sbindir}                     \\\
+        --includedir=%{_includedir}               \\\
+        --datadir=%{_datadir}                     \\\
+        --mandir=%{_mandir}                       \\\
+        --infodir=%{_infodir}                     \\\
+        --localedir=%{_datadir}/locale            \\\
+        --sysconfdir=%{_sysconfdir}               \\\
+        --localstatedir=%{_localstatedir}         \\\
+        --sharedstatedir=%{_sharedstatedir}       \\\
+        --wrap-mode=%{__meson_wrap_mode}          \\\
+        --auto-features=%{__meson_auto_features}  \\\
+        %{_vpath_srcdir} %{_vpath_builddir}       \\\
+        %{nil}
+
+%define meson_build \
+    %ninja_build -C %{_vpath_builddir}
+
+%define meson_install \
+    %ninja_install -C %{_vpath_builddir}
+
+%define meson_test \
+    %ninja_test -C %{_vpath_builddir}
+
 %endif
 
 %description
@@ -107,7 +154,7 @@ fast packet processing in the user space.
 Summary: Data Plane Development Kit development files
 Requires: %{name}%{?_isa} = %{version}-%{release}
 %ifarch x86_64
-Requires: rdma-core-devel libmnl-devel
+Requires: rdma-core-devel
 %endif
 
 %description devel
@@ -142,118 +189,103 @@ as L2 and L3 forwarding.
 %endif
 
 %prep
-%autosetup -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}} -p1
+%if 0%{?rhel} && 0%{?rhel} < 8
+%setup -q -a 1 -a 2 -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}}
+%else
+%setup -q -n %{srcname}-%{?commit0:%{commit0}}%{!?commit0:%{ver}}
+%endif
+%autopatch -p1
 
 %build
-# In case dpdk-devel is installed
-unset RTE_SDK RTE_INCLUDE RTE_TARGET
-
-# Avoid appending second -Wall to everything, it breaks upstream warning
-# disablers in makefiles. Strip expclit -march= from optflags since they
-# will only guarantee build failures, DPDK is picky with that.
-# Note: _hardening_ldflags has to go on the extra cflags line because dpdk is
-# astoundingly convoluted in how it processes its linker flags.  Fixing it in
-# dpdk is the preferred solution, but adjusting to allow a gcc option in the
-# ldflags, even when gcc is used as the linker, requires large tree-wide changes
-touch obj.o
-gcc -### obj.o 2>&1 | awk '/.*collect2.*/ { print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./noopts.txt
-gcc -### $RPM_LD_FLAGS obj.o 2>&1 | awk '/.*collect2.*/ {print $0}' | sed -e 's/\S*\.res\S*//g' -e 's/-z \S*//g' -e 's/[^ ]*\.o//g' -e 's/ /\n/g' | sort -u > ./opts.txt
-EXTRA_RPM_LDFLAGS=$(comm -13 ./noopts.txt ./opts.txt)
-rm -f obj.o
-
-export EXTRA_CFLAGS="$(echo %{optflags} | sed -e 's:-Wall::g' -e 's:-march=[[:alnum:]]* ::g') -Wformat -fPIC %{_hardening_ldflags}"
-export EXTRA_LDFLAGS=$(echo %{__global_ldflags} | sed -e's/-Wl,//g' -e's/-spec.*//')
-export HOST_EXTRA_CFLAGS="$EXTRA_CFLAGS $EXTRA_RPM_LDFLAGS"
-export EXTRA_HOST_LDFLAGS="$EXTRA_RPM_LDFLAGS $(echo %{__global_ldflags} | sed -e's/-spec.*//')"
-
-# DPDK defaults to using builder-specific compiler flags.  However,
-# the config has been changed by specifying CONFIG_RTE_MACHINE=default
-# in order to build for a more generic host.  NOTE: It is possible that
-# the compiler flags used still won't work for all Fedora-supported
-# machines, but runtime checks in DPDK will catch those situations.
-
-make V=1 O=%{target} T=%{target} %{?_smp_mflags} config
-
-cp -f %{SOURCE500} %{SOURCE502} "%{_sourcedir}/%{target}-config" .
-%{SOURCE502} %{target}-config "%{target}/.config"
-
-make V=1 O=%{target} %{?_smp_mflags}
-
-# Creating PDF's has excessive build-requirements, html docs suffice fine
-make V=1 O=%{target} %{?_smp_mflags} doc-api-html doc-guides-html
-
-%if %{with examples}
-make V=1 O=%{target}/examples T=%{target} %{?_smp_mflags} examples
+%if 0%{?rhel} && 0%{?rhel} < 8
+%{__python3} -m venv --clear %{venvdir}
+pushd ninja-%{ninjaver}
+%{venvdir}/bin/python configure.py --bootstrap --with-python %{venvdir}/bin/python
+mv ninja %{venvdir}/bin
+popd
+
+pushd meson-%{mesonver}
+%{venvdir}/bin/python setup.py install
+popd
+
+export PATH="%{venvdir}/bin:$PATH"
 %endif
 
-%install
-# In case dpdk-devel is installed
-unset RTE_SDK RTE_INCLUDE RTE_TARGET
+ENABLED_DRIVERS=(
+    bus/pci
+    bus/vdev
+    mempool/ring
+    net/failsafe
+    net/i40e
+    net/ring
+    net/vhost
+    net/virtio
+    net/tap
+)
 
-%make_install O=%{target} prefix=%{_usr} libdir=%{_libdir}
+%ifarch x86_64
+ENABLED_DRIVERS+=(
+    bus/vmbus
+    common/iavf
+    common/mlx5
+    net/bnxt
+    net/enic
+    net/iavf
+    net/ice
+    net/mlx4
+    net/mlx5
+    net/netvsc
+    net/nfp
+    net/qede
+    net/vdev_netvsc
+)
+%endif
 
-# Replace /usr/bin/env python with the correct python binary
-find %{buildroot}%{sdkdir}/ -name "*.py" -exec \
-  sed -i -e 's|#!\s*/usr/bin/env python|#!%{_py_exec}|' {} +
+%ifarch aarch64 x86_64
+ENABLED_DRIVERS+=(
+    net/e1000
+    net/ixgbe
+)
+%endif
 
-# Create a driver directory with symlinks to all pmds
-mkdir -p %{buildroot}/%{pmddir}
-for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
-    bn=$(basename ${f})
-    ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
+# Since upstream doesn't have a way
+for driver in drivers/*/*/; do
+    driver=${driver#drivers/}
+    driver=${driver%/}
+    [[ " ${ENABLED_DRIVERS[@]} " == *" $driver "* ]] || \
+        disable_drivers="${disable_drivers:+$disable_drivers,}"$driver
 done
 
-%if ! %{with tools}
-rm -rf %{buildroot}%{sdkdir}/usertools
-rm -rf %{buildroot}%{_sbindir}/dpdk-devbind
-%endif
-rm -f %{buildroot}%{sdkdir}/usertools/dpdk-pmdinfo.py
-rm -f %{buildroot}%{sdkdir}/usertools/dpdk-setup.sh
-rm -f %{buildroot}%{sdkdir}/usertools/meson.build
-rm -f %{buildroot}%{_bindir}/dpdk-pdump
-rm -f %{buildroot}%{_bindir}/dpdk-pmdinfo
-rm -f %{buildroot}%{_bindir}/dpdk-test-crypto-perf
-rm -f %{buildroot}%{_bindir}/dpdk-test-eventdev
+%meson --includedir=include/dpdk \
+       --default-library=shared \
+       -Ddisable_drivers="$disable_drivers" \
+       -Ddrivers_install_subdir=dpdk-pmds \
+       -Denable_docs=true \
+       -Dmachine=default \
+       -Dmax_ethports=32 \
+       -Dmax_numa_nodes=8 \
+       -Dtests=false
+%meson_build
 
-%if %{with examples}
-find %{target}/examples/ -name "*.map" | xargs rm -f
-for f in %{target}/examples/*/%{target}/app/*; do
-    bn=`basename ${f}`
-    cp -p ${f} %{buildroot}%{_bindir}/dpdk-${bn}
-done
-%else
-rm -rf %{buildroot}%{sdkdir}/examples
+%install
+%if 0%{?rhel} && 0%{?rhel} < 8
+export PATH="%{venvdir}/bin:$PATH"
 %endif
 
-# Due to RPM limitations delete the backwards compatibility symlinks
-rm -f %{buildroot}%{sdkdir}/mk/exec-env/bsdapp
-rm -f %{buildroot}%{sdkdir}/mk/exec-env/linuxapp
-
-# Setup RTE_SDK environment as expected by apps etc
-mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
-cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh
-if [ -z "\${RTE_SDK}" ]; then
-    export RTE_SDK="%{sdkdir}"
-    export RTE_TARGET="%{target}"
-    export RTE_INCLUDE="%{incdir}"
-fi
-EOF
-
-cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.csh
-if ( ! \$RTE_SDK ) then
-    setenv RTE_SDK "%{sdkdir}"
-    setenv RTE_TARGET "%{target}"
-    setenv RTE_INCLUDE "%{incdir}"
-endif
-EOF
-
-# Fixup target machine mismatch
-sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk*
+%meson_install
+
+# FIXME this file doesn't have chmod +x upstream
+chmod +x %{buildroot}%{sdkdir}/examples/pipeline/examples/vxlan_table.py
+
+rm -f %{buildroot}%{_bindir}/dpdk-pdump
+rm -f %{buildroot}%{_bindir}/dpdk-proc-info
+rm -f %{buildroot}%{_bindir}/dpdk-test{,-acl,-bbdev,-cmdline,-compress-perf,-crypto-perf,-eventdev,-pipeline,-sad,-fib,-flow-perf,-regex}
+rm -f %{buildroot}%{_libdir}/*.a
 
 %files
 # BSD
 %doc README MAINTAINERS
-%{_bindir}/testpmd
+%{_bindir}/dpdk-testpmd
 %dir %{pmddir}
 %{_libdir}/*.so.*
 %{pmddir}/*.so.*
@@ -269,13 +301,15 @@ sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profi
 %{incdir}/
 %{sdkdir}/
 %if %{with tools}
-%exclude %{sdkdir}/usertools/
+%exclude %{_bindir}/dpdk-*.py
 %endif
 %if %{with examples}
 %exclude %{sdkdir}/examples/
 %endif
-%{_sysconfdir}/profile.d/dpdk-sdk-*.*
 %{_libdir}/*.so
+%{pmddir}/*.so
+%{_libdir}/pkgconfig/libdpdk.pc
+%{_libdir}/pkgconfig/libdpdk-libs.pc
 %if %{with examples}
 %files examples
 %{_bindir}/dpdk-*
@@ -284,11 +318,22 @@ sed -i -e 's:-%{machine_tmpl}-:-%{machine}-:g' %{buildroot}/%{_sysconfdir}/profi
 
 %if %{with tools}
 %files tools
-%{sdkdir}/usertools/
-%{_sbindir}/dpdk-devbind
+%{_bindir}/dpdk-*.py
 %endif
 
 %changelog
+* Tue Feb 16 2021 Timothy Redaelli <tredaelli@redhat.com> - 20.11-3
+- Fix gating since on DPDK 20.11 testpmd is called dpdk-testpmd
+
+* Wed Feb 10 2021 Timothy Redaelli <tredaelli@redhat.com> - 20.11-2
+- Enable ice PMD for x86_64 (#1927179)
+
+* Tue Dec 01 2020 Timothy Redaelli <tredaelli@redhat.com> - 20.11-1
+- Rebase DPDK to 20.11 using meson build system (#1908446)
+
+* Thu Aug 13 2020 Timothy Redaelli <tredaelli@redhat.com> - 19.11.3-1
+- Rebase DPDK to 19.11.3 (#1868708)
+
 * Wed May 20 2020 Timothy Redaelli <tredaelli@redhat.com> - 19.11.2-1
 - Rebase DPDK to 19.11.2 (#1836830, #1837024, #1837030, #1837022)