Files
xdp-project-bpf-examples/Makefile
Toke Høiland-Jørgensen b7544155f7 Add lib/Makefile
Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2020-10-06 15:59:44 +02:00

63 lines
1.4 KiB
Makefile

# SPDX-License-Identifier: GPL-2.0
# Top level Makefile for xdp-tools
ifeq ("$(origin V)", "command line")
VERBOSE = $(V)
endif
ifndef VERBOSE
VERBOSE = 0
endif
ifeq ($(VERBOSE),0)
MAKEFLAGS += --no-print-directory
endif
SUBDIRS := encap-forward
.PHONY: check_submodule help clobber distclean clean $(SUBDIRS)
all: lib $(SUBDIRS)
lib: config.mk check_submodule
@echo; echo $@; $(MAKE) -C $@
$(SUBDIRS):
@echo; echo $@; $(MAKE) -C $@
help:
@echo "Make Targets:"
@echo " all - build binaries"
@echo " clean - remove products of build"
@echo " distclean - remove configuration and build"
@echo " install - install binaries on local machine"
@echo " test - run test suite"
@echo " archive - create tarball of all sources"
@echo ""
@echo "Make Arguments:"
@echo " V=[0|1] - set build verbosity level"
config.mk:
sh configure
check_submodule:
@if [ -d .git ] && `git submodule status lib/libbpf | grep -q '^+'`; then \
echo "" ;\
echo "** WARNING **: git submodule SHA-1 out-of-sync" ;\
echo " consider running: git submodule update" ;\
echo "" ;\
fi\
clobber:
touch config.mk
$(MAKE) clean
rm -f config.mk cscope.* compile_commands.json
distclean: clobber
clean: check_submodule
@for i in $(SUBDIRS); \
do $(MAKE) -C $$i clean; done
compile_commands.json: clean
compiledb make V=1