1## 2## SPDX-License-Identifier: GPL-2.0-only 3 4PROGRAM = cbmem 5TOP ?= $(abspath ../..) 6ROOT = $(TOP)/src 7COMMONLIB = $(ROOT)/commonlib 8CC ?= $(CROSS_COMPILE)gcc 9INSTALL ?= /usr/bin/env install 10PREFIX ?= /usr/local 11CFLAGS ?= -O2 12WERROR=-Werror 13CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wshadow $(WERROR) 14CPPFLAGS += -I . -I $(ROOT)/commonlib/include -I $(ROOT)/commonlib/bsd/include 15CPPFLAGS += -include $(ROOT)/commonlib/bsd/include/commonlib/bsd/compiler.h 16 17OBJS = $(PROGRAM).o $(COMMONLIB)/bsd/ipchksum.o 18 19all: $(PROGRAM) 20 21$(PROGRAM): $(OBJS) 22 23clean: 24 rm -f $(PROGRAM) $(OBJS:.c=.o) .dependencies *~ junit.xml 25 26install: $(PROGRAM) 27 $(INSTALL) -d $(DESTDIR)$(PREFIX)/sbin/ 28 $(INSTALL) cbmem $(DESTDIR)$(PREFIX)/sbin/ 29 30distclean: clean 31 32.dependencies: 33 @$(CC) $(CFLAGS) $(CPPFLAGS) -MM *.c > .dependencies 34 35help: 36 @echo "${PROGRAM}: View machine's cbmem contents" 37 @echo "Targets: all, clean, distclean, help, install" 38 @echo "To disable warnings as errors, run make as:" 39 @echo " make all WERROR=\"\"" 40 41.PHONY: all clean distclean install help 42 43-include .dependencies 44