aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/contrib/examples/extract-keys/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/examples/extract-keys/Makefile')
-rw-r--r--contrib/examples/extract-keys/Makefile27
1 files changed, 27 insertions, 0 deletions
diff --git a/contrib/examples/extract-keys/Makefile b/contrib/examples/extract-keys/Makefile
new file mode 100644
index 0000000..a1dd7a2
--- /dev/null
+++ b/contrib/examples/extract-keys/Makefile
@@ -0,0 +1,27 @@
+ifeq ($(KERNELRELEASE),)
+KERNELDIR ?= /lib/modules/$(shell uname -r)/build
+PWD := $(shell pwd)
+CFLAGS ?= -O3 -march=native
+CFLAGS += -Wall -pedantic -std=gnu11
+
+extract-keys: extract-keys.c config.h
+ $(CC) $(CFLAGS) $(CPPFLAGS) -D_FILE_OFFSET_BITS=64 -o $@ -lresolv $<
+
+config.o: config.c
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) $@
+ objcopy -j '.rodata*' $@ $@
+
+config: config.c config.o
+ $(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $^
+
+config.h: config
+ ./$< > $@
+
+clean:
+ rm -f extract-keys config config.h
+ $(MAKE) -C $(KERNELDIR) M=$(PWD) clean
+
+.PHONY: clean
+else
+config-m := config.o
+endif