14418919fSjohnjiang# SPDX-License-Identifier: BSD-3-Clause 24418919fSjohnjiang# Copyright(c) 2019 Intel Corporation 34418919fSjohnjiang 44418919fSjohnjiang# binary name 54418919fSjohnjiangAPP = ntb_fwd 64418919fSjohnjiang 74418919fSjohnjiang# all source are stored in SRCS-y 84418919fSjohnjiangSRCS-y := ntb_fwd.c 94418919fSjohnjiang 104418919fSjohnjiang# Build using pkg-config variables if possible 11*2d9fd380Sjfb8856606ifneq ($(shell pkg-config --exists libdpdk && echo 0),0) 12*2d9fd380Sjfb8856606$(error "no installation of DPDK found") 13*2d9fd380Sjfb8856606endif 144418919fSjohnjiang 154418919fSjohnjiangall: shared 164418919fSjohnjiang.PHONY: shared static 174418919fSjohnjiangshared: build/$(APP)-shared 184418919fSjohnjiang ln -sf $(APP)-shared build/$(APP) 194418919fSjohnjiangstatic: build/$(APP)-static 204418919fSjohnjiang ln -sf $(APP)-static build/$(APP) 214418919fSjohnjiang 224418919fSjohnjiangPKGCONF ?= pkg-config 234418919fSjohnjiang 244418919fSjohnjiangCFLAGS += -D_FILE_OFFSET_BITS=64 254418919fSjohnjiangLDFLAGS += -pthread 264418919fSjohnjiang 274418919fSjohnjiangPC_FILE := $(shell $(PKGCONF) --path libdpdk 2>/dev/null) 284418919fSjohnjiangCFLAGS += -O3 $(shell $(PKGCONF) --cflags libdpdk) 29*2d9fd380Sjfb8856606CFLAGS += -DALLOW_EXPERIMENTAL_API 304418919fSjohnjiangLDFLAGS_SHARED = $(shell $(PKGCONF) --libs libdpdk) 310c6bd470SfengbojiangLDFLAGS_STATIC = $(shell $(PKGCONF) --static --libs libdpdk) 324418919fSjohnjiang 334418919fSjohnjiangbuild/$(APP)-shared: $(SRCS-y) Makefile $(PC_FILE) | build 344418919fSjohnjiang $(CC) $(CFLAGS) $(SRCS-y) -o $@ $(LDFLAGS) $(LDFLAGS_SHARED) 354418919fSjohnjiang 364418919fSjohnjiangbuild/$(APP)-static: $(SRCS-y) Makefile $(PC_FILE) | build 374418919fSjohnjiang $(CC) $(CFLAGS) $(SRCS-y) -o $@ $(LDFLAGS) $(LDFLAGS_STATIC) 384418919fSjohnjiang 394418919fSjohnjiangbuild: 404418919fSjohnjiang @mkdir -p $@ 414418919fSjohnjiang 424418919fSjohnjiang.PHONY: clean 434418919fSjohnjiangclean: 444418919fSjohnjiang rm -f build/$(APP) build/$(APP)-static build/$(APP)-shared 450c6bd470Sfengbojiang test -d build && rmdir -p build || true 46