rdo/Makefile

58 lines
1.4 KiB
Makefile
Raw Normal View History

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
CFLAGS_DEBUG = ${CFLAGS} -O0 -g -fsanitize=undefined
CFLAGS_STATIC = ${CFLAGS_RELEASE} -static-pie
LIBS = -lcrypt
CC = cc
2025-08-13 11:13:10 +10:00
PREFIX ?= /usr/local
BINDIR = ${PREFIX}/bin
MANDIR = ${PREFIX}/share/man
all: rdo
rdo: rdo.c
${CC} ${CFLAGS_RELEASE} rdo.c -o rdo ${LIBS}
static: rdo.c
${CC} ${CFLAGS_STATIC} rdo.c -o rdo ${LIBS}
debug: rdo.c
${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 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