github.com/bugraaydogar/snapd@v0.0.0-20210315170335-8c70bb858939/cmd/snap-seccomp-blacklist/Makefile (about)

     1  .PHONY: all
     2  all: $(foreach v,LE BE,$v-blacklist.bpf) | analyze
     3  
     4  .PHONY: clean
     5  clean:
     6  	rm -f snap-seccomp-blacklist snap-seccomp-blacklist.o *.pfc *.bpf
     7  
     8  .PHONY: fmt
     9  fmt: snap-seccomp-blacklist.c
    10  	clang-format -style='{BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 120}' -i $^
    11  
    12  DESTDIR ?=
    13  
    14  .PHONY: install
    15  install:: blacklist.bpf | $(DESTDIR)/var/lib/snapd/seccomp/bpf
    16  	install -m 644 $^ $|/global.bin
    17  
    18  $(DESTDIR)/var/lib/snapd/seccomp/bpf:
    19  	install -m 755 -d $@
    20  
    21  $(foreach v,LE BE,$v-blacklist.pfc $v-blacklist.bpf): snap-seccomp-blacklist
    22  	./$<
    23  
    24  .PHONY: analyze
    25  analyze: $(foreach v,LE BE,$v-blacklist.bpf $v-blacklist.pfc $v-bpf-script)
    26  	# Not everyone has bpf_dbg installed, not everyone has support for "load bpf-blob".
    27  	-bpf_dbg LE-bpf-script
    28  	cat LE-blacklist.pfc
    29  	-bpf_dbg BE-bpf-script
    30  	cat BE-blacklist.pfc
    31  
    32  snap-seccomp-blacklist: snap-seccomp-blacklist.o
    33  	$(CC) -o $@ $^ $(LDLIBS)
    34  
    35  %.o: %.c
    36  	$(CC) -o $@ -c $^ $(CFLAGS)
    37  
    38  CFLAGS += -Wall -Werror
    39  CFLAGS += $(shell pkg-config libseccomp --cflags)
    40  LDLIBS += $(shell pkg-config libseccomp --libs)