otherwise we have:
src/spdk/dpdk/lib/librte_eal/linux/eal.c:591:11: error: variable 'total_mem' set but not used [-Werror,-Wunused-but-set-variable]
uint64_t total_mem = 0;
^
1 error generated.
when building dpdk with Clang. dpdk passes -Werror to compiler, so
we have to disable this option.
Signed-off-by: Kefu Chai <kchai@redhat.com>
set(dpdk_source_dir ${CMAKE_SOURCE_DIR}/src/spdk/dpdk)
endif()
+ set(extra_cflags "-fPIC")
+ include(CheckCCompilerFlag)
+ check_c_compiler_flag("-Wno-unused-but-set-variable"
+ HAVE_UNUSED_BUT_SET_VARIABLE)
+ if(HAVE_UNUSED_BUT_SET_VARIABLE)
+ string(APPEND extra_cflags " -Wno-unused-but-set-variable")
+ endif()
+
include(ExternalProject)
ExternalProject_Add(dpdk-ext
SOURCE_DIR ${dpdk_source_dir}
CONFIGURE_COMMAND ${make_cmd} config O=${dpdk_dir} T=${target}
- BUILD_COMMAND ${make_cmd} O=${dpdk_dir} CC=${CMAKE_C_COMPILER} EXTRA_CFLAGS=-fPIC
+ BUILD_COMMAND ${make_cmd} O=${dpdk_dir} CC=${CMAKE_C_COMPILER} EXTRA_CFLAGS=${extra_cflags}
BUILD_IN_SOURCE 1
INSTALL_COMMAND "")
if(NUMA_FOUND)