2025-08-13 08:34:13 +10:00
|
|
|
CFLAGS = -flto -Wall -Wextra -Werror -Wl,-z,now
|
|
|
|
CFLAGS_RELEASE = ${CFLAGS} -O3 -s -D_FORTIFY_SOURCE=2
|
2022-03-08 16:44:46 +01:00
|
|
|
CFLAGS_DEBUG = ${CFLAGS} -O0 -g -fsanitize=undefined
|
2022-12-04 08:03:31 -03:00
|
|
|
CFLAGS_STATIC = ${CFLAGS_RELEASE} -static-pie
|
2022-05-05 08:21:48 +02:00
|
|
|
LIBS = -lcrypt
|
2025-08-13 02:04:32 +03:30
|
|
|
CC = cc
|
2022-02-09 19:37:43 +01:00
|
|
|
|
2025-08-13 11:13:10 +10:00
|
|
|
PREFIX ?= /usr/local
|
|
|
|
BINDIR = ${PREFIX}/bin
|
|
|
|
MANDIR = ${PREFIX}/share/man
|
|
|
|
|
|
|
|
all: rdo
|
|
|
|
|
|
|
|
rdo: rdo.c
|
2022-02-09 19:37:43 +01:00
|
|
|
${CC} ${CFLAGS_RELEASE} rdo.c -o rdo ${LIBS}
|
2021-07-14 06:13:34 +02:00
|
|
|
|
2022-12-03 18:50:41 -03:00
|
|
|
static: rdo.c
|
|
|
|
${CC} ${CFLAGS_STATIC} rdo.c -o rdo ${LIBS}
|
|
|
|
|
2021-07-14 06:13:34 +02:00
|
|
|
debug: rdo.c
|
2022-02-09 19:37:43 +01:00
|
|
|
${CC} ${CFLAGS_DEBUG} rdo.c -o rdo ${LIBS}
|
2021-07-13 21:33:12 +02:00
|
|
|
|
2025-08-13 11:13:10 +10:00
|
|
|
install: all
|
|
|
|
mkdir -p ${DESTDIR}${BINDIR}
|
|
|
|
cp rdo ${DESTDIR}${BINDIR}/rdo
|
|
|
|
chmod 4755 ${DESTDIR}${BINDIR}/rdo
|
|
|
|
mkdir -p ${DESTDIR}${MANDIR}/man1
|
|
|
|
cp rdo.1 ${DESTDIR}${MANDIR}/man1/rdo.1
|
|
|
|
chmod 644 ${DESTDIR}${MANDIR}/man1/rdo.1
|
|
|
|
mkdir -p ${DESTDIR}${MANDIR}/man5
|
|
|
|
cp rdo.conf.5 ${DESTDIR}${MANDIR}/man5/rdo.conf.5
|
|
|
|
chmod 644 ${DESTDIR}${MANDIR}/man5/rdo.conf.5
|
|
|
|
mkdir -p ${DESTDIR}/etc
|
|
|
|
@if [ -f ${DESTDIR}/etc/rdo.conf ]; then \
|
|
|
|
echo "Skipping existing configuration file: ${DESTDIR}/etc/rdo.conf"; \
|
|
|
|
else \
|
|
|
|
cp rdo_sample.conf ${DESTDIR}/etc/rdo.conf; \
|
|
|
|
chmod 644 ${DESTDIR}/etc/rdo.conf; \
|
|
|
|
fi
|
|
|
|
|
2021-07-13 21:33:12 +02:00
|
|
|
|
|
|
|
uninstall:
|
2025-08-13 11:13:10 +10:00
|
|
|
rm -f ${DESTDIR}${BINDIR}/rdo
|
|
|
|
rm -f ${DESTDIR}${MANDIR}/man1/rdo.1
|
|
|
|
rm -f ${DESTDIR}${MANDIR}/man5/rdo.conf.5
|
2021-07-13 23:21:34 +02:00
|
|
|
|
2021-07-13 21:33:12 +02:00
|
|
|
clean:
|
|
|
|
rm rdo
|
2022-12-14 14:57:22 -03:00
|
|
|
|
|
|
|
bench-clean:
|
|
|
|
docker rmi -f rdo-benchmark
|
|
|
|
|
|
|
|
bench-build: bench-clean
|
|
|
|
docker buildx build -t rdo-benchmark -f benchmark/Dockerfile .
|
|
|
|
|
|
|
|
bench-run:
|
|
|
|
docker run --rm -t rdo-benchmark
|