NAME ?= targeted REPO ?= repo RPMBUILDFLAGS = \ -D "_topdir ${PWD}" \ -D "_srcrpmdir ${PWD}" \ -D "_sourcedir ${PWD}" \ -D "_specdir ${PWD}" \ -D "_rpmdir ${PWD}" ARCH = noarch VERSION = $(shell rpm -q --qf '%{VERSION}' --specfile dch-selinux.spec) RELEASE = $(shell rpm -q --qf '%{RELEASE}' --specfile dch-selinux.spec) TAR = dch-selinux-$(VERSION).tar.xz SPEC = dch-selinux.spec RPM = dch-selinux-$(VERSION)-$(RELEASE).$(ARCH).rpm SRPM = dch-selinux-$(VERSION)-$(RELEASE).src.rpm GITEA_URL = https://git.pyrocufflink.net GITEA_ORG = infra define buildpp $(MAKE) NAME=$(NAME) -f /usr/share/selinux/devel/Makefile endef .PHONY: \ clean \ default \ dist \ mockbuild \ pp \ publish \ repo \ rpm \ srpm default: pp dch-samba.pp: dch-samba.fc dch-samba.if dch-samba.te $(call buildpp) $(TAR): \ $(wildcard *.fc) \ $(wildcard *.if) \ $(wildcard *.te) tar -cJf $@ --transform 's/^/dch-selinux-$(VERSION)\//' $^ $(RPM): $(SPEC) $(TAR) rpmbuild $(RPMBUILDFLAGS) -bb -v $< mv $(ARCH)/$@ $@ rmdir $(ARCH) $(SRPM): $(SPEC) $(TAR) rpmbuild $(RPMBUILDFLAGS) -bs -v $< dist: $(TAR) clean: rm -f *.pp *.rpm *.srpm *.tar.xz rm -rf BUILD BUILDROOT rm -rf repo rm -rf tmp mockbuild: $(SRPM) ifeq ($(MOCKTARGET),) $(error MOCKTARGET is required, e.g. make MOCKTARGET=fedora-37-x86_64 mockbuild) endif mock -r '$(MOCKTARGET)' $(SRPM) cp -a /var/lib/mock/$(MOCKTARGET)/result/*.noarch.rpm . publish: $(RPM) ifeq ($(GITEA_USERNAME),) $(error GITEA_USERNAME and GITEA_PASSWORD are required) endif curl -f \ '$(GITEA_URL)/api/packages/$(GITEA_ORG)/rpm/upload' \ -u '$(GITEA_USERNAME):$(GITEA_PASSWORD)' \ -T $< rpm: $(RPM) srpm: $(SRPM) pp: dch-samba.pp