KSRC := /lib/modules/$(shell uname -r)/build SRC_DIR=$(shell pwd) all: prereq_check kernel-module # test user programs UEXE := netlink-cs netlink-p2p netlink-u2k test: $(UEXE) netlink-cs: netlink-u2u.c gcc -g -O2 -o $@ $^ netlink-p2p: netlink-u2u.c gcc -g -O2 -DPEER_TO_PEER -o $@ $^ netlink-u2k: netlink-u2k.c gcc -g -O2 -o $@ $^ SRCS := knetlink.c OBJS := knetlink.o prereq_check: @ if [ ! -f $(KSRC)/include/linux/version.h ]; then \ echo "Kernel sources not been found. Aborting."; \ exit 1;\ fi MODULE := knetlink.ko obj-m := knetlink.o knetlink-objs := kernel-module: $(MAKE) -C $(KSRC) SUBDIRS=$(SRC_DIR) modules clean: rm -f *.o *.ko .*.ko.cmd .*.o.cmd *.mod.[oc] *~ rm -rf .tmp_versions rm -f $(UEXE)