diff options
Diffstat (limited to 'src/Makefile')
-rw-r--r-- | src/Makefile | 106 |
1 files changed, 32 insertions, 74 deletions
diff --git a/src/Makefile b/src/Makefile index 031ffa9f..fae3f476 100644 --- a/src/Makefile +++ b/src/Makefile @@ -2,74 +2,48 @@ # Makefile for sos system support tools # -NAME = sos +NAME = sos VERSION = $(shell awk '/^%define version / { print $$3 }' sos.spec) RELEASE = $(shell awk '/^%define release / { print $$3 }' sos.spec) REPO = http://svn.fedorahosted.org/svn/sos -SVNTAG = r$(subst .,-,$(VERSION))_$(RELEASE) +SVNTAG = r$(subst .,-,$(VERSION))_$(RELEASE) SRCDIR = $(PWD) -TOPDIR = $(PWD)/build/rpm-$(NAME)-$(VERSION) +# Needs to be changed to reflect +# your rpm development tree. +TOPDIR = $(HOME)/redhat/$(NAME) +TMPDIR = /tmp/$(NAME)-$(VERSION) +MANPAGE = $(PWD)/sosreport.1 +SOURCE1 = $(PWD)/sos.conf +SOURCE2 = $(PWD)/sosreport.1.gz +SOURCE3 = $(PWD)/gpgkeys/rhsupport.pub all: -.PHONY: tag-release tarball release install version clean +.PHONY: tarball install clean rpm -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 +tarball: clean mo gpgkey + @echo "Build Archive" + @test -f $(SOURCE2) || gzip -c $(MANPAGE) > $(SOURCE2) + @mkdir $(TMPDIR) + @python setup.py sdist -d $(TMPDIR) + @cp {$(SOURCE1),$(SOURCE2),$(SOURCE3)} $(TMPDIR) + @mkdir $(PWD)/dist + @mv $(TMPDIR)/* $(PWD)/dist @echo " " - @echo "The final archive is ./$(NAME)-$(VERSION).tar.bz2." + @echo "The final archive is $(PWD)/dist/" 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/* + @rm -fv *~ .*~ changenew ChangeLog.old $(NAME)-$(VERSION).tar.gz + @rm -rfv {dist,build} + @rm -rf MANIFEST + @rm -rfv $(TMPDIR) + @rm -rf {$(SOURCE2),$(SOURCE3)} +# TODO: This needs work internal-rpm: gpgkey @test -f sos-internal.spec @mkdir -p $(TOPDIR)/SOURCES $(TOPDIR)/SRPMS $(TOPDIR)/RPMS $(TOPDIR)/BUILD $(SRCDIR)/dist @@ -88,36 +62,20 @@ internal-rpm: gpgkey @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 - +rpm: tarball + @test -d $(TOPDIR) || mkdir -p $(TOPDIR) + @mv dist/* $(TOPDIR) @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/ + rpmbuild -ba sos.spec pot: python tools/pygettext.py -o locale/sos.pot sosreport lib/sos/policyredhat.py mo: + @echo "Generating mo files" find locale/*/LC_MESSAGES -name sos.po -exec python tools/msgfmt.py {} \; gpgkey: + @echo "Building gpg key" @test -f gpgkeys/rhsupport.pub && echo "GPG key already exists." || \ gpg --batch --gen-key gpgkeys/gpg.template |