blob: e10a4762be14aeade46514ec0ed538dbe52d7e7a (
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# ── umbrella Makefile ─────────────────────────────────────────────────────────
CC = gcc
CFLAGS = -Wall -Wextra -Wpedantic -std=c11 -D_GNU_SOURCE \
-O2 -g
LDFLAGS = -lyaml -lsystemd
DAEMON_SRCS = \
src/main.c \
src/daemon.c \
src/unit.c \
src/proto.c \
src/client.c \
src/log.c \
src/log_tail.c \
src/console/rcon.c \
src/console/a2s.c
CLI_SRCS = clients/umbrella-cli/main.c
DAEMON_OBJS = $(DAEMON_SRCS:.c=.o)
CLI_OBJS = $(CLI_SRCS:.c=.o)
.PHONY: all clean install
all: umbrella umbrella-cli
umbrella: $(DAEMON_OBJS)
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
umbrella-cli: $(CLI_OBJS)
$(CC) $(CFLAGS) -o $@ $^
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<
# ── Install ───────────────────────────────────────────────────────────────────
PREFIX ?= /usr/local
CONF_DIR = /etc/umbrella
UNITS_DIR = /etc/umbrella/units
RUN_DIR = /run/umbrella
LOG_DIR = /var/log/umbrella
install: all
install -Dm755 umbrella $(PREFIX)/sbin/umbrella
install -Dm755 umbrella-cli $(PREFIX)/bin/umbrella-cli
install -dm755 $(CONF_DIR)
install -dm755 $(UNITS_DIR)
install -dm755 $(RUN_DIR)
install -dm755 $(LOG_DIR)
@if [ ! -f $(CONF_DIR)/umbrella.conf ]; then \
install -Dm644 umbrella.conf.example $(CONF_DIR)/umbrella.conf; \
echo "Installed default config to $(CONF_DIR)/umbrella.conf"; \
fi
@echo "Done. Edit $(CONF_DIR)/umbrella.conf and add unit files to $(UNITS_DIR)/"
clean:
rm -f $(DAEMON_OBJS) $(CLI_OBJS) umbrella umbrella-cli
|