blob: 37c384bc511a07181a64096ee7ca2bf4bde7a872 (
plain) (
blame)
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
#
# Makefile for sos system support tools
#
NAME = sos
VERSION = $(shell awk '/^%define version / { print $$3 }' sos.spec)
RELEASE = $(shell awk '/^%define release / { print $$3 }' sos.spec)
REPO = svn+ssh://svn.fedoraproject.org/svn/hosted/sos
SVNTAG = r$(subst .,-,$(VERSION))_$(RELEASE)
SRCDIR = $(PWD)
TOPDIR = $(PWD)/build/rpm-$(NAME)-$(VERSION)
all:
.PHONY: tag-release tarball release install version clean
diff-tag:
svn diff $(REPO)/trunk/src $(REPO)/tags/$(SVNTAG)
tag:
@if ( svn list $(REPO)/tags/$(SVNTAG)/Makefile &> /dev/null ); then \
echo "The repository already contains a tag for version $(VERSION)"; \
exit 1; \
fi
@svn copy $(REPO)/trunk/src $(REPO)/tags/$(SVNTAG) \
-m "Tagging the $(SVNTAG) release of the sos project"
@echo "Tagged as $(SVNTAG)"
tag-force:
@echo svn del $(REPO)/tags/$(SVNTAG)
@echo make diff-tag
tarball: clean
@echo "Creating an archive from HEAD of development"
@rm -rf /tmp/$(NAME)
@svn export -q $(REPO)/trunk/src /tmp/$(NAME) \
|| echo GRRRrrrrr -- ignore [export aborted]
@mv /tmp/$(NAME) /tmp/$(NAME)-$(VERSION)
@cd /tmp; tar --bzip2 -cSpf $(NAME)-$(VERSION).tar.bz2 $(NAME)-$(VERSION)
@rm -rf /tmp/$(NAME)-$(VERSION)
@mv /tmp/$(NAME)-$(VERSION).tar.bz2 .
@echo " "
@echo "The final archive is ./$(NAME)-$(VERSION).tar.bz2."
release: clean
@if ( ! svn list $(REPO)/tags/$(SVNTAG)/Makefile &> /dev/null ); then \
echo "There is no tag in the repository for this version, must be tagged before release"; \
exit 1; \
fi
@echo "Creating an archive from tag $(SVNTAG)"
@rm -rf /tmp/$(NAME)
@svn export -q $(REPO)/tags/$(SVNTAG) /tmp/$(NAME) \
|| echo GRRRrrrrr -- ignore [export aborted]
@mv /tmp/$(NAME) /tmp/$(NAME)-$(VERSION)
@cd /tmp; tar --bzip2 -cSpf $(NAME)-$(VERSION).tar.bz2 $(NAME)-$(VERSION)
@rm -rf /tmp/$(NAME)-$(VERSION)
@cp /tmp/$(NAME)-$(VERSION).tar.bz2 .
@rm -f /tmp/$(NAME)-$(VERSION).tar.bz2
@echo " "
@echo "The final archive is ./$(NAME)-$(VERSION).tar.bz2."
install:mo gpgkey
python setup.py install
@rm -rf build/lib
version:
@echo "The version is $(NAME)-$(VERSION)"
clean:
@rm -fv *~ .*~ changenew ChangeLog.old $(NAME)-$(VERSION).tar.bz2 sosreport.1.gz gpgkeys/rhsupport.*
@rm -rfv build/*
internal-rpm: gpgkey
@test -f sos-internal.spec
@mkdir -p $(TOPDIR)/SOURCES $(TOPDIR)/SRPMS $(TOPDIR)/RPMS $(TOPDIR)/BUILD $(SRCDIR)/dist
cp gpgkeys/rhsupport.pub gpgkeys/rhsupport.key $(TOPDIR)/SOURCES
# this builds an RPM from the current working copy
@cd $(TOPDIR)/BUILD ; \
rm -rf $(NAME)-$(VERSION) ; \
ln -s $(SRCDIR) $(NAME)-$(VERSION) ; \
tar --gzip --exclude=.svn --exclude=svn-commit.tmp --exclude=$(NAME)-$(VERSION)/build --exclude=$(NAME)-$(VERSION)/dist \
--exclude gpgkeys/rhsupport.pub --exclude gpgkeys/rhsupport.key \
-chSpf $(TOPDIR)/SOURCES/$(NAME)-$(VERSION).tar.gz $(NAME)-$(VERSION) ; \
rm -f $(NAME)-$(VERSION)
rpmbuild -ba --define="_topdir $(TOPDIR)" sos-internal.spec
@mv $(TOPDIR)/RPMS/noarch/$(NAME)-internal-*.rpm $(TOPDIR)/SRPMS/$(NAME)-internal-*.rpm dist/
cp gpgkeys/rhsupport.key dist/
rpm: mo gpgkey
@mkdir -p $(TOPDIR)/SOURCES $(TOPDIR)/SRPMS $(TOPDIR)/RPMS $(TOPDIR)/BUILD $(SRCDIR)/dist
cp gpgkeys/rhsupport.pub $(TOPDIR)/SOURCES
@test -f sos.spec
# this builds an RPM from the current working copy
@cd $(TOPDIR)/BUILD ; \
rm -rf $(NAME)-$(VERSION) ; \
ln -s $(SRCDIR) $(NAME)-$(VERSION) ; \
tar --gzip --exclude=.svn --exclude=svn-commit.tmp --exclude=$(NAME)-$(VERSION)/build --exclude=$(NAME)-$(VERSION)/dist \
--exclude gpgkeys/rhsupport.pub --exclude gpgkeys/rhsupport.key \
-chSpf $(TOPDIR)/SOURCES/$(NAME)-$(VERSION).tar.gz $(NAME)-$(VERSION) ; \
rm -f $(NAME)-$(VERSION)
# this builds an RPM from HEAD
# @rm -rf $(TOPDIR)/BUILD/$(NAME)-$(VERSION)
# @svn export -q $(REPO)/trunk/src $(TOPDIR)/BUILD/$(NAME)-$(VERSION)
# @cd $(TOPDIR)/BUILD ; tar --gzip -cSpf $(TOPDIR)/SOURCES/$(NAME)-$(VERSION).tar.gz $(NAME)-$(VERSION); rm -rf $(NAME)-$(VERSION)
rpmbuild -ba --define="_topdir $(TOPDIR)" sos.spec
@mv $(TOPDIR)/RPMS/noarch/$(NAME)-$(VERSION)*.rpm $(TOPDIR)/SRPMS/$(NAME)-$(VERSION)*.rpm $(TOPDIR)/SOURCES/$(NAME)-$(VERSION).tar.gz dist/
pot:
python tools/pygettext.py -o locale/sos.pot sosreport lib/sos/policyredhat.py
mo:
find locale/*/LC_MESSAGES -name sos.po -exec python tools/msgfmt.py {} \;
gpgkey:
@test -f gpgkeys/rhsupport.pub && echo "GPG key already exists." || \
gpg --batch --gen-key gpgkeys/gpg.template
|