blob: e63a1ce40e6d377b630eb128236691dd854dfa34 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
GFS_TAR = ../../glusterfs-3git.tar.gz
UFO_TAR = ../../gluster-swift-ufo-3git.tar.gz
GFS_SPEC = ../../glusterfs.spec
.PHONY: all
all:
@echo "To build RPMS run `make glusterrpms`"
.PHONY: glusterrpms prep srcrpm testsrpm clean
glusterrpms: prep srcrpm rpms
-rm -rf rpmbuild
prep::
if [ ! -e $(GFS_TAR) -a ! -e $(UFO_TAR) -a ! -e $(GFS_SPEC) ]; then \
$(MAKE) -c ../.. dist; \
fi
-mkdir -p rpmbuild/SPECS
-mkdir -p rpmbuild/RPMS
-mkdir -p rpmbuild/SRPMS
-rm -rf rpmbuild/SOURCES
cd rpmbuild && git clone http://pkgs.fedoraproject.org/cgit/glusterfs.git > /dev/null && mv glusterfs SOURCES
cp ../../*.tar.gz rpmbuild/SOURCES
cp ../../glusterfs.spec rpmbuild/SPECS
# openstack/launchpad 'hides' source tarballs behind javascript glorp,
# and curl will fail to fetch it using their download URL; we're forced
# to fetch it from somewhere else.
# maybe someone with better awk and sed skills than I have can suggest
# something better here.
SWIFT_URL = http://pkgs.fedoraproject.org/repo/pkgs/glusterfs/$(shell grep -v gluster rpmbuild/SOURCES/sources | cut -d ' ' -f 3)/$(shell grep -v gluster rpmbuild/SOURCES/sources | cut -d ' ' -f 1)/$(shell grep -v gluster rpmbuild/SOURCES/sources | cut -d ' ' -f 3)
prep::
@if [ -x /usr/bin/curl -a ! -e rpmbuild/SOURCES/swift-1.7.4.tar.gz ]; then \
echo "fetching swift..." ; \
cd rpmbuild/SOURCES && /usr/bin/curl -s -O $(SWIFT_URL) ; \
elif [ ! -x /usr/bin/curl ]; then \
echo "you don't have curl installed, swift source not fetched" ; \
exit 1 ; \
fi
srcrpm:
rpmbuild --define '_topdir $(shell pwd)/rpmbuild' -bs rpmbuild/SPECS/glusterfs.spec
mv rpmbuild/SRPMS/* .
rpms:
rpmbuild --define '_topdir $(shell pwd)/rpmbuild' -bb rpmbuild/SPECS/glusterfs.spec
mv rpmbuild/RPMS/*/* .
# EPEL-5 does not like new versions of rpmbuild and requires some
# _source_* defines
testsrpm: prep
rpmbuild --define '_topdir $(shell pwd)/rpmbuild' \
--define '_source_payload w9.gzdio' \
--define '_source_filedigest_algorithm 1' \
-bs rpmbuild/SPECS/glusterfs.spec
mv rpmbuild/SRPMS/* ../..
-rm -rf rpmbuild
clean:
-rm -rf rpmbuild
-rm -f *.rpm
|