Makefile 755 B

123456789101112131415161718192021222324252627282930313233343536
  1. # SPDX-License-Identifier: GPL-2.0
  2. include ../Makefile.deps
  3. CC=gcc
  4. CFLAGS += -std=gnu11 -O2 -W -Wall -Wextra -Wno-unused-parameter -Wshadow \
  5. -I../lib/ -I../generated/ -idirafter $(UAPI_PATH)
  6. ifeq ("$(DEBUG)","1")
  7. CFLAGS += -g -fsanitize=address -fsanitize=leak -static-libasan
  8. endif
  9. LDLIBS=../lib/ynl.a ../generated/protos.a
  10. SRCS=$(wildcard *.c)
  11. BINS=$(patsubst %.c,%,${SRCS})
  12. include $(wildcard *.d)
  13. all: $(BINS)
  14. CFLAGS_page-pool=$(CFLAGS_netdev)
  15. CFLAGS_tc-filter-add:=$(CFLAGS_tc)
  16. $(BINS): ../lib/ynl.a ../generated/protos.a $(SRCS)
  17. @echo -e '\tCC sample $@'
  18. @$(COMPILE.c) $(CFLAGS_$@) $@.c -o $@.o
  19. @$(LINK.c) $@.o -o $@ $(LDLIBS)
  20. clean:
  21. rm -f *.o *.d *~
  22. distclean: clean
  23. rm -f $(BINS)
  24. .PHONY: all clean distclean
  25. .DEFAULT_GOAL=all