1NAME=davix
2SPEC=rpm/specs/$(NAME).spec
3VERSION=${shell grep '^Version:' $(SPEC) | awk '{print $$2}' }
4# Leave blank. To be overriden by CI tools.
5RELEASE=
6
7CWD=${shell pwd}
8
9RPMBUILD=/tmp/rpmbuild
10SRPMS=$(CWD)
11RPMS=$(CWD)/out
12
13MOCK_CHROOT=epel-6-cernonly-x86_64
14MOCK_FLAGS=--verbose
15
16
17RPMDEFINES_SRC=--define='_topdir $(RPMBUILD)' \
18	--define='_sourcedir $(CWD)' \
19	--define='_builddir %{_topdir}/BUILD' \
20	--define='_srcrpmdir $(SRPMS)' \
21	--define='_rpmdir $(RPMS)' \
22    --define "_source_filedigest_algorithm md5" \
23    $(RPMBUILD_SRC_EXTRA_FLAGS)
24
25RPMDEFINES_BIN=--define='_topdir $(RPMBUILD)' \
26	--define='_sourcedir %{_topdir}/SOURCES' \
27	--define='_builddir %{_topdir}/BUILD' \
28	--define='_srcrpmdir $(SRPMS).' \
29	--define='_rpmdir $(RPMS)' \
30    --define "_binary_filedigest_algorithm md5" \
31    $(RPMBUILD_BIN_EXTRA_FLAGS)
32
33
34PBUILDER_FLAGS=
35PBUILDER_TMP="/tmp/"
36
37
38clean:
39	rm -fv *.tar
40	rm -fv *.tar.gz
41	rm -fv *.rpm
42	rm -fv *.log
43	rm -rfv out
44	rm -fv *.deb
45	rm -fv *.xz
46	rm -fv *.dsc
47	rm -fv *.changes
48	rm -rfv "$(RPMBUILD)"
49
50dist: clean
51	tar vczf "$(NAME)-$(VERSION).tar.gz" --exclude="*.rpm" --exclude="*.gz" --exclude=".git" --exclude="*.pyc" --transform="s,^,$(NAME)-$(VERSION)/," ..
52
53$(RPMBUILD):
54	mkdir -p "$(RPMBUILD)"
55
56override_release: $(SPEC)
57	$(if $(RELEASE), sed -i "s/Release:.*/Release: $(RELEASE)/g" "$(SPEC)")
58
59mock:
60	cd ..; ./packaging/make-srpm.sh
61	/usr/bin/mock $(MOCK_FLAGS) -r $(MOCK_CHROOT) ../build/SRPMS/*.src.rpm
62
63deb-src: dist
64	rm -rf "$(PBUILDER_TMP)/$(NAME)-$(VERSION)"
65	tar xzf "$(NAME)-$(VERSION).tar.gz" -C "$(PBUILDER_TMP)"
66	cp -rv debian "$(PBUILDER_TMP)/$(NAME)-$(VERSION)"
67	$(if $(RELEASE), sed -ri "s/($(NAME) )\((([0-9]+\.)+[0-9]+)-[0-9]+\)/\\1(\\2-$(RELEASE))/g" "$(PBUILDER_TMP)/$(NAME)-$(VERSION)/debian/changelog")
68	cp -f "$(NAME)-$(VERSION).tar.gz" "$(PBUILDER_TMP)/$(NAME)_$(VERSION).orig.tar.gz"
69	cd "$(PBUILDER_TMP)/$(NAME)-$(VERSION)"; \
70		debuild -us -uc -S
71	mv $(PBUILDER_TMP)/$(NAME)_$(VERSION)*.gz .
72	mv $(PBUILDER_TMP)/$(NAME)_$(VERSION)*.xz .
73	mv $(PBUILDER_TMP)/$(NAME)_$(VERSION)*.dsc .
74
75deb: deb-src
76	pbuilder build $(PBUILDER_FLAGS) $(NAME)_$(VERSION)*.dsc
77
78