summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael DeHaan <michael.dehaan@gmail.com>2012-08-01 16:29:16 -0700
committerMichael DeHaan <michael.dehaan@gmail.com>2012-08-01 16:29:16 -0700
commit08999a2a2fb8e7c31e9b405e6a8f469a4a058b01 (patch)
treecb729d9680ec58becee89b99ae9528a2e5af5d27
parent3ff03d14e3e57bd1d62af88eb2074639ac28f4c7 (diff)
parent6b774f8cf5202a5a20b2f7004a08c736b189d2b5 (diff)
downloadansible-08999a2a2fb8e7c31e9b405e6a8f469a4a058b01.tar.gz
Merge pull request #748 from dagwieers/make-rpm
Implement git commit date into RPM release
-rw-r--r--Makefile24
1 files changed, 18 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index ad872502ef..ba0d94f021 100644
--- a/Makefile
+++ b/Makefile
@@ -28,13 +28,21 @@ SITELIB = $(shell python -c "from distutils.sysconfig import get_python_lib; pri
# VERSION file provides one place to update the software version
VERSION := $(shell cat VERSION)
+### Get the branch information from git
+ifneq ($(shell which git),)
+GIT_DATE := $(shell git log -n 1 --format="%ai")
+endif
+DATE := $(shell date --date="$(GIT_DATE)" +%Y%m%d%H%M)
+
# RPM build parameters
RPMSPECDIR= packaging/rpm
RPMSPEC = $(RPMSPECDIR)/ansible.spec
-RPMVERSION := $(shell awk '/Version/{print $$2; exit}' < $(RPMSPEC) | cut -d "%" -f1)
-RPMRELEASE := $(shell awk '/Release/{print $$2; exit}' < $(RPMSPEC) | cut -d "%" -f1)
RPMDIST = $(shell rpm --eval '%dist')
-RPMNVR = "$(NAME)-$(RPMVERSION)-$(RPMRELEASE)$(RPMDIST)"
+RPMRELEASE = 1
+ifeq ($(OFFICIAL),)
+ RPMRELEASE = 0.git$(DATE)
+endif
+RPMNVR = "$(NAME)-$(VERSION)-$(RPMRELEASE)$(RPMDIST)"
########################################################
@@ -102,6 +110,7 @@ sdist: clean
rpmcommon: sdist
@mkdir -p rpm-build
@cp dist/*.gz rpm-build/
+ @sed -e 's#^Version:.*#Version: $(VERSION)#' -e 's#^Release:.*#Release: $(RPMRELEASE)%{?dist}#' $(RPMSPEC) >rpm-build/$(NAME).spec
srpm: rpmcommon
@rpmbuild --define "_topdir %(pwd)/rpm-build" \
@@ -110,7 +119,8 @@ srpm: rpmcommon
--define "_srcrpmdir %{_topdir}" \
--define "_specdir $(RPMSPECDIR)" \
--define "_sourcedir %{_topdir}" \
- -bs $(RPMSPEC)
+ -bs rpm-build/$(NAME).spec
+ @rm -f rpm-build/$(NAME).spec
@echo "#############################################"
@echo "Ansible SRPM is built:"
@echo " rpm-build/$(RPMNVR).src.rpm"
@@ -123,10 +133,12 @@ rpm: rpmcommon
--define "_srcrpmdir %{_topdir}" \
--define "_specdir $(RPMSPECDIR)" \
--define "_sourcedir %{_topdir}" \
- -ba $(RPMSPEC)
+ --define "_rpmfilename $(RPMNVR).%%{ARCH}.rpm" \
+ -ba rpm-build/$(NAME).spec
+ @rm -f rpm-build/$(NAME).spec
@echo "#############################################"
@echo "Ansible RPM is built:"
- @echo " rpm-build/noarch/$(RPMNVR).noarch.rpm"
+ @echo " rpm-build/$(RPMNVR).noarch.rpm"
@echo "#############################################"
debian: sdist