debian-koji/util/Makefile
Michel Lind 18528e563c Allow overriding sbin directory
This fixes the Koji build for Fedora 42+, where on an installed system,
`/sbin` and `/usr/sbin` are symlinks to `/usr/bin`; see:
https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin

On a build root the symlink does not exist, so attempts in the spec to
manipulate binaries in `%{_sbindir}/` fail as these binaries are
installed to `%{buildroot}/usr/sbin` while the script is looking for
`%{buildroot}/usr/bin`

The default value is set to `/usr/sbin` so not passing `SBINDIR` when
installing results in the current behavior being preserved.

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2025-04-17 10:13:41 -04:00

38 lines
1.3 KiB
Makefile

BINFILES = kojira koji-gc koji-shadow koji-sweep-db koji-sidetag-cleanup
SBINDIR ?= /usr/sbin
SYSTEMDSYSTEMUNITDIR = $(shell pkg-config systemd --variable=systemdsystemunitdir)
_default:
@echo "nothing to make. try make install"
clean:
rm -f *.o *.so *.pyc *~
rm -rf __pycache__
for b in $(BINFILES); do rm -f $${b}c; done
_install:
@if [ "$(DESTDIR)" = "" ]; then \
echo " "; \
echo "ERROR: A destdir is required"; \
exit 1; \
fi
mkdir -p $(DESTDIR)$(SBINDIR)
install -p -m 755 $(BINFILES) $(DESTDIR)$(SBINDIR)
mkdir -p $(DESTDIR)/etc/kojira
install -p -m 644 kojira.conf $(DESTDIR)/etc/kojira/kojira.conf
mkdir -p $(DESTDIR)/etc/koji-gc
install -p -m 644 koji-gc.conf $(DESTDIR)/etc/koji-gc/koji-gc.conf
install -p -m 644 email.tpl $(DESTDIR)/etc/koji-gc/email.tpl
mkdir -p $(DESTDIR)/etc/koji-shadow
install -p -m 644 koji-shadow.conf $(DESTDIR)/etc/koji-shadow/koji-shadow.conf
install: _install
mkdir -p $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)
install -p -m 644 kojira.service $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)
install -p -m 644 koji-gc.service $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)
install -p -m 644 koji-gc.timer $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)
install -p -m 644 koji-sweep-db.service $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)
install -p -m 644 koji-sweep-db.timer $(DESTDIR)$(SYSTEMDSYSTEMUNITDIR)