summaryrefslogtreecommitdiff
path: root/misc/radare2/Makefile
blob: aff2fdbab1ac69f6d53084a5cbf68f3687a5ee3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
MAKEFLAGS += --no-builtin-rules
R2_PLUGIN_PATH ?= $(shell r2 -H R2_USER_PLUGINS)

# GCC 7: -Wstringop-overflow=, -Walloc-size-larger-than=, -Wduplicated-{branches,cond}
WARNINGS := -Wall -Wextra -Wformat=2 -Wstrict-aliasing=3 -Wstrict-overflow=5 -Wstack-usage=12500 \
        -Wfloat-equal -Wcast-align -Wpointer-arith -Wchar-subscripts -Warray-bounds=2

override CFLAGS ?= -g
override CFLAGS += -std=c11 $(WARNINGS)

libs = asm_fspec.so
all: $(libs)

%.so:
        $(LINK.c) -fPIC -shared $(filter %.c,$^) $(LDLIBS) -o $@

asm_fspec.so: private CFLAGS += $(shell pkg-config --cflags r_anal)
asm_fspec.so: private LDLIBS += $(shell pkg-config --libs-only-l r_anal)
asm_fspec.so: asm_fspec.c

install: $(libs)
        install -Dm755 $^ -t "$(R2_PLUGIN_PATH)"

uninstall:
        $(RM) "$(R2_PLUGIN_PATH)"/asm_fspec.so

clean:
        $(RM) $(libs)

.PHONY: all clean install uninstall