-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
42 lines (32 loc) · 865 Bytes
/
Makefile
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
31
32
33
34
35
36
37
38
39
40
41
42
CFLAGS += -std=c99 -fPIC -Wall -Wextra -Wno-unused-result -Iinclude
LDFLAGS += -Wl,--no-undefined
ifdef RELEASE
CONFIG := release
CFLAGS += -O2
else
CONFIG := debug
CFLAGS += -O0 -g3
endif
ifdef WERROR
CFLAGS += -Werror
endif
SOURCES := src/signals.c
BUILD_DIR := build/$(CONFIG)/plugin
PLUGIN_FILE := signals.so
PLUGIN_PATH := $(BUILD_DIR)/$(PLUGIN_FILE)
DESTDIR ?= ~/.local/lib/deadbeef
plugin: $(PLUGIN_PATH)
$(PLUGIN_PATH): $(SOURCES)
mkdir -p $(BUILD_DIR)
$(CC) $(CFLAGS) $(LDFLAGS) -shared -o $(PLUGIN_PATH) $(SOURCES)
pkg: $(PLUGIN_PATH) LICENSE scripts/build-pkg.sh
scripts/build-pkg.sh
clean:
rm -f $(PLUGIN_PATH)
scripts/build-pkg.sh --clean
install: $(PLUGIN_PATH)
mkdir -p $(DESTDIR)
cp -t $(DESTDIR) $(PLUGIN_PATH)
uninstall:
rm $(DESTDIR)/$(PLUGIN_FILE)
.PHONY: plugin pkg clean install uninstall