Fixup buildsystem for jenkins EL builds

This commit is contained in:
2014-04-21 22:36:25 -07:00
parent a5d9c7297e
commit 600e036236

View File

@@ -1,12 +1,11 @@
VERSION:=$(shell if [ -d .git ]; then bash -c 'bash ./gitversion.sh | grep "^MAJOR=" | cut -d = -f 2'; else source version.sh && echo $$MAJOR ; fi) VERSION:=$(shell if [ -d .git ]; then bash -c 'gitversion.sh | grep "^MAJOR=" | cut -d = -f 2'; else source version.sh && echo $$MAJOR ; fi)
RELEASE:=$(shell if [ -d .git ]; then bash -c 'bash ./gitversion.sh | grep "^BUILD=" | cut -d = -f 2'; else source version.sh && echo $$BUILD ; fi) RELEASE:=$(shell if [ -d .git ]; then bash -c 'gitversion.sh | grep "^BUILD=" | cut -d = -f 2'; else source version.sh && echo $$BUILD ; fi)
DISTFILE=./dist/versioners-$(VERSION)-$(RELEASE).tar.gz DISTFILE=./dist/versioners-$(VERSION)-$(RELEASE).tar.gz
SPECFILE=versioners.spec SPECFILE=versioners.spec
SRPM=versioners-$(VERSION)-$(RELEASE).src.rpm
ifndef RHEL_VERSION ifndef RHEL_VERSION
RHEL_VERSION=5 RHEL_VERSION=5
endif endif
RPM=versioners-$(VERSION)-$(RELEASE).noarch.rpm
ifeq ($(RHEL_VERSION),5) ifeq ($(RHEL_VERSION),5)
MOCKFLAGS=--define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5" MOCKFLAGS=--define "_source_filedigest_algorithm md5" --define "_binary_filedigest_algorithm md5"
endif endif
@@ -14,6 +13,11 @@ ifndef PREFIX
PREFIX='' PREFIX=''
endif endif
RHEL_RELEASE:=$(RELEASE).el$(RHEL_VERSION)
SRPM=versioners-$(VERSION)-$(RHEL_RELEASE).src.rpm
RPM=versioners-$(VERSION)-$(RHEL_RELEASE).noarch.rpm
RHEL_DISTFILE=./dist/cmdarg-$(VERSION)-$(RHEL_RELEASE).tar.gz
DISTFILE_DEPS=$(shell find . -type f | grep -Ev '\.git|\./dist/|$(DISTFILE)') DISTFILE_DEPS=$(shell find . -type f | grep -Ev '\.git|\./dist/|$(DISTFILE)')
all: ./dist/$(RPM) all: ./dist/$(RPM)
@@ -22,7 +26,7 @@ all: ./dist/$(RPM)
.PHONY: clean srpm rpm gitclean dist .PHONY: clean srpm rpm gitclean dist
clean: clean:
rm -f $(DISTFILE) rm -f $(DISTFILE) $(RHEL_DISTFILE)
rm -fr dist/versioners-$(VERSION)-$(RELEASE)* rm -fr dist/versioners-$(VERSION)-$(RELEASE)*
version.sh: version.sh:
@@ -39,8 +43,6 @@ gitclean:
# --- End phony targets # --- End phony targets
# This was borrowed from distiller, and I think it's to prevent version.sh
# from updating unnecessarily
version.sh: version.sh:
if [ ! -d .git ] && [ -f version.sh ]; then echo "No git, keeping old version.sh" ; fi ; \ if [ ! -d .git ] && [ -f version.sh ]; then echo "No git, keeping old version.sh" ; fi ; \
if [ ! -d .git ] && [ ! -f version.sh ]; then echo "No git and no version.sh, you're boned"; exit 1; fi ; \ if [ ! -d .git ] && [ ! -f version.sh ]; then echo "No git and no version.sh, you're boned"; exit 1; fi ; \
@@ -59,13 +61,18 @@ $(DISTFILE): version.sh
rsync -aWH . --exclude=.git --exclude=dist ./dist/versioners-$(VERSION)-$(RELEASE)/ rsync -aWH . --exclude=.git --exclude=dist ./dist/versioners-$(VERSION)-$(RELEASE)/
cd dist && tar -czvf ../$@ versioners-$(VERSION)-$(RELEASE) cd dist && tar -czvf ../$@ versioners-$(VERSION)-$(RELEASE)
./dist/$(SRPM): $(DISTFILE) $(RHEL_DISTFILE): $(DISTFILE)
cd dist && \
cp -R versioners-$(VERSION)-$(RELEASE) versioners-$(VERSION)-$(RHEL_RELEASE) && \
tar -czvf ../$@ versioners-$(VERSION)-$(RHEL_RELEASE)
./dist/$(SRPM): $(RHEL_DISTFILE)
rm -fr ./dist/$(SRPM) rm -fr ./dist/$(SRPM)
/usr/bin/mock --buildsrpm --spec $(SPECFILE) $(MOCKFLAGS) --sources ./dist/ --resultdir ./dist/ --define "version $(VERSION)" --define "release $(RELEASE)" /usr/bin/mock --verbose -r epel-$(RHEL_VERSION)-noarch --buildsrpm --spec $(SPECFILE) $(MOCKFLAGS) --sources ./dist/ --resultdir ./dist/ --define "version $(VERSION)" --define "release $(RHEL_RELEASE)"
./dist/$(RPM): ./dist/$(SRPM) ./dist/$(RPM): ./dist/$(SRPM)
rm -fr ./dist/$(RPM) rm -fr ./dist/$(RPM)
/usr/bin/mock -r epel-$(RHEL_VERSION)-noarch ./dist/$(SRPM) --resultdir ./dist/ --define "version $(VERSION)" --define "release $(RELEASE)" /usr/bin/mock --verbose -r epel-$(RHEL_VERSION)-noarch ./dist/$(SRPM) --resultdir ./dist/ --define "version $(VERSION)" --define "release $(RHEL_RELEASE)"
uninstall: uninstall:
rm -f $(PREFIX)/usr/bin/taggit.sh rm -f $(PREFIX)/usr/bin/taggit.sh