brintos

brintos / linux-shallow public Read only

0
0
Text · 1.3 KiB · 713f5fb Raw
54 lines · plain
1# SPDX-License-Identifier: GPL-2.02 3CC=gcc4CFLAGS=-std=gnu11 -O2 -W -Wall -Wextra -Wno-unused-parameter -Wshadow \5	-I../lib/ -idirafter $(UAPI_PATH)6ifeq ("$(DEBUG)","1")7  CFLAGS += -g -fsanitize=address -fsanitize=leak -static-libasan8endif9 10include ../Makefile.deps11 12YNL_GEN_ARG_ethtool:=--user-header linux/ethtool_netlink.h \13	--exclude-op stats-get14 15TOOL:=../ynl-gen-c.py16 17GENS_PATHS=$(shell grep -nrI --files-without-match \18		'protocol: netlink' \19		../../../../Documentation/netlink/specs/)20GENS=$(patsubst ../../../../Documentation/netlink/specs/%.yaml,%,${GENS_PATHS})21SRCS=$(patsubst %,%-user.c,${GENS})22HDRS=$(patsubst %,%-user.h,${GENS})23OBJS=$(patsubst %,%-user.o,${GENS})24 25all: protos.a $(HDRS) $(SRCS) $(KHDRS) $(KSRCS) $(UAPI)26 27protos.a: $(OBJS)28	@echo -e "\tAR $@"29	@ar rcs $@ $(OBJS)30 31%-user.h: ../../../../Documentation/netlink/specs/%.yaml $(TOOL)32	@echo -e "\tGEN $@"33	@$(TOOL) --mode user --header --spec $< -o $@ $(YNL_GEN_ARG_$*)34 35%-user.c: ../../../../Documentation/netlink/specs/%.yaml $(TOOL)36	@echo -e "\tGEN $@"37	@$(TOOL) --mode user --source --spec $< -o $@ $(YNL_GEN_ARG_$*)38 39%-user.o: %-user.c %-user.h40	@echo -e "\tCC $@"41	@$(COMPILE.c) $(CFLAGS_$*) -o $@ $<42 43clean:44	rm -f *.o45 46distclean: clean47	rm -f *.c *.h *.a48 49regen:50	@../ynl-regen.sh51 52.PHONY: all clean distclean regen53.DEFAULT_GOAL: all54