ec74d277e9badeb7239bbd2dd01ae34d98de0ac4
[dpdk.git] / drivers / baseband / turbo_sw / Makefile
1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(c) 2017 Intel Corporation
3
4 include $(RTE_SDK)/mk/rte.vars.mk
5
6 # library name
7 LIB = librte_pmd_bbdev_turbo_sw.a
8
9 # build flags
10 CFLAGS += -DALLOW_EXPERIMENTAL_API
11 CFLAGS += -O3
12 CFLAGS += $(WERROR_FLAGS)
13 LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring -lrte_kvargs
14 LDLIBS += -lrte_bbdev
15 LDLIBS += -lrte_bus_vdev
16
17 # versioning export map
18 EXPORT_MAP := rte_pmd_bbdev_turbo_sw_version.map
19
20 # external library dependencies if available
21 ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),y)
22 ifeq ($(FLEXRAN_SDK),)
23 $(error "Please define FLEXRAN_SDK environment variable")
24 endif
25 CFLAGS += -I$(FLEXRAN_SDK)/lib_common
26 CFLAGS += -I$(FLEXRAN_SDK)/lib_turbo
27 CFLAGS += -I$(FLEXRAN_SDK)/lib_crc
28 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_matching
29 LDLIBS += -L$(FLEXRAN_SDK)/lib_turbo -lturbo
30 LDLIBS += -L$(FLEXRAN_SDK)/lib_crc -lcrc
31 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_matching -lrate_matching
32 LDLIBS += -L$(FLEXRAN_SDK)/lib_common -lcommon
33 LDLIBS += -lstdc++ -lirc -limf -lipps -lsvml
34 endif
35
36 ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX512),y)
37 ifeq ($(CONFIG_RTE_BBDEV_SDK_AVX2),n)
38 $(error "CONFIG_RTE_BBDEV_SDK_AVX512 requires CONFIG_RTE_BBDEV_SDK_AVX2 set")
39 endif
40 CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr
41 CFLAGS += -I$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr
42 CFLAGS += -I$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr
43 CFLAGS += -I$(FLEXRAN_SDK)/lib_rate_dematching_5gnr
44 LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_encoder_5gnr -lldpc_encoder_5gnr
45 LDLIBS += -L$(FLEXRAN_SDK)/lib_ldpc_decoder_5gnr -lldpc_decoder_5gnr
46 LDLIBS += -L$(FLEXRAN_SDK)/lib_LDPC_ratematch_5gnr -lLDPC_ratematch_5gnr
47 LDLIBS += -L$(FLEXRAN_SDK)/lib_rate_dematching_5gnr -lrate_dematching_5gnr
48 endif
49
50 # library source files
51 SRCS-$(CONFIG_RTE_LIBRTE_PMD_BBDEV_TURBO_SW) += bbdev_turbo_software.c
52
53 include $(RTE_SDK)/mk/rte.lib.mk