Makefile 717 B

1234567891011121314151617181920212223242526272829303132333435
  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. $(BINS): ../lib/ynl.a ../generated/protos.a $(SRCS)
  16. @echo -e '\tCC sample $@'
  17. @$(COMPILE.c) $(CFLAGS_$@) $@.c -o $@.o
  18. @$(LINK.c) $@.o -o $@ $(LDLIBS)
  19. clean:
  20. rm -f *.o *.d *~
  21. distclean: clean
  22. rm -f $(BINS)
  23. .PHONY: all clean distclean
  24. .DEFAULT_GOAL=all