40 lines
1.3 KiB
Makefile
40 lines
1.3 KiB
Makefile
# -*- mode: Makefile -*-
|
|
|
|
GITREV = $$(git describe --always --tags)
|
|
GITREV_FOR_PKG = $(shell echo "$(GITREV)" | sed -e 's,-,\.,g' -e 's,^v,,')
|
|
|
|
srcdir=$(shell pwd)
|
|
PACKAGE=$(shell basename $(srcdir))
|
|
|
|
PKG_VER = $(PACKAGE)-$(GITREV_FOR_PKG)
|
|
|
|
dist-snapshot:
|
|
set -x; \
|
|
echo "PACKAGE=$(PACKAGE)"; \
|
|
TARFILE_TMP=$(PKG_VER).tar.tmp; \
|
|
echo "Archiving $(PACKAGE) at $(GITREV)"; \
|
|
(cd $(srcdir); git archive --format=tar --prefix=$(PKG_VER)/ $(GITREV)) > $${TARFILE_TMP}; \
|
|
(cd $$(git rev-parse --show-toplevel); git submodule status) | while read line; do \
|
|
rev=$$(echo $$line | cut -f 1 -d ' '); path=$$(echo $$line | cut -f 2 -d ' '); \
|
|
echo "Archiving $${path} at $${rev}"; \
|
|
(cd $(srcdir)/$$path; git archive --format=tar --prefix=$(PKG_VER)/$$path/ $${rev}) > submodule.tar; \
|
|
tar -A -f $${TARFILE_TMP} submodule.tar; \
|
|
rm submodule.tar; \
|
|
done; \
|
|
mv $(PKG_VER).tar{.tmp,}; \
|
|
rm -f $(PKG_VER).tar.xz; \
|
|
xz $(PKG_VER).tar
|
|
|
|
srpm: dist-snapshot
|
|
(cd $(srcdir)/packaging; \
|
|
cp ../$(PKG_VER).tar.xz . ; \
|
|
sed -e "s,^Version:.*,Version: $(GITREV_FOR_PKG)," $(PACKAGE).spec.in > $(PACKAGE).spec; \
|
|
./rpmbuild-cwd -bs $(PACKAGE).spec)
|
|
|
|
rpm: srpm
|
|
$(srcdir)/packaging/rpmbuild-cwd --rebuild packaging/$(PKG_VER)*.src.rpm
|
|
|
|
buildinstall: rpm
|
|
sudo yum localinstall $(PKG_VER)*.src.rpm
|
|
|