##// END OF EJS Templates
mercurial.spec: include CONTRIBUTORS, COPYING and man pages in rpm
Adam Spiers -
r4753:620cea14 default
parent child Browse files
Show More
@@ -1,78 +1,81
1 Summary: Mercurial -- a distributed SCM
1 Summary: Mercurial -- a distributed SCM
2 Name: mercurial
2 Name: mercurial
3 Version: snapshot
3 Version: snapshot
4 Release: 0
4 Release: 0
5 License: GPL
5 License: GPL
6 Group: Development/Tools
6 Group: Development/Tools
7 Source: http://www.selenic.com/mercurial/release/%{name}-%{version}.tar.gz
7 Source: http://www.selenic.com/mercurial/release/%{name}-%{version}.tar.gz
8 URL: http://www.selenic.com/mercurial
8 URL: http://www.selenic.com/mercurial
9 BuildRoot: /tmp/build.%{name}-%{version}-%{release}
9 BuildRoot: /tmp/build.%{name}-%{version}-%{release}
10
10
11 # From the README:
11 # From the README:
12 #
12 #
13 # Note: some distributions fails to include bits of distutils by
13 # Note: some distributions fails to include bits of distutils by
14 # default, you'll need python-dev to install. You'll also need a C
14 # default, you'll need python-dev to install. You'll also need a C
15 # compiler and a 3-way merge tool like merge, tkdiff, or kdiff3.
15 # compiler and a 3-way merge tool like merge, tkdiff, or kdiff3.
16 #
16 #
17 # python-devel provides an adequate python-dev. The merge tool is a
17 # python-devel provides an adequate python-dev. The merge tool is a
18 # run-time dependency.
18 # run-time dependency.
19 #
19 #
20 BuildRequires: python >= 2.3, python-devel, make, gcc
20 BuildRequires: python >= 2.3, python-devel, make, gcc, asciidoc, xmlto
21
21
22 %define pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))')
22 %define pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))')
23 %define pythonlib %{_libdir}/python%{pythonver}/site-packages/%{name}
23 %define pythonlib %{_libdir}/python%{pythonver}/site-packages/%{name}
24 %define hgext %{_libdir}/python%{pythonver}/site-packages/hgext
24 %define hgext %{_libdir}/python%{pythonver}/site-packages/hgext
25
25
26 %description
26 %description
27 Mercurial is a fast, lightweight source control management system designed
27 Mercurial is a fast, lightweight source control management system designed
28 for efficient handling of very large distributed projects.
28 for efficient handling of very large distributed projects.
29
29
30 %prep
30 %prep
31 rm -rf $RPM_BUILD_ROOT
31 rm -rf $RPM_BUILD_ROOT
32 %setup -q
32 %setup -q
33
33
34 %build
34 %build
35 python setup.py build
35 make all
36
36
37 %install
37 %install
38 python setup.py install --root $RPM_BUILD_ROOT --prefix %{_prefix}
38 python setup.py install --root $RPM_BUILD_ROOT --prefix %{_prefix}
39 make install-doc DESTDIR=$RPM_BUILD_ROOT MANDIR=%{_mandir}
40
39 install contrib/hgk $RPM_BUILD_ROOT%{_bindir}
41 install contrib/hgk $RPM_BUILD_ROOT%{_bindir}
40 install contrib/convert-repo $RPM_BUILD_ROOT%{_bindir}/mercurial-convert-repo
42 install contrib/convert-repo $RPM_BUILD_ROOT%{_bindir}/mercurial-convert-repo
41 install contrib/hg-ssh $RPM_BUILD_ROOT%{_bindir}
43 install contrib/hg-ssh $RPM_BUILD_ROOT%{_bindir}
42 install contrib/git-viz/{hg-viz,git-rev-tree} $RPM_BUILD_ROOT%{_bindir}
44 install contrib/git-viz/{hg-viz,git-rev-tree} $RPM_BUILD_ROOT%{_bindir}
43
45
44 bash_completion_dir=$RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
46 bash_completion_dir=$RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
45 mkdir -p $bash_completion_dir
47 mkdir -p $bash_completion_dir
46 install contrib/bash_completion $bash_completion_dir/mercurial.sh
48 install contrib/bash_completion $bash_completion_dir/mercurial.sh
47
49
48 zsh_completion_dir=$RPM_BUILD_ROOT%{_datadir}/zsh/site-functions
50 zsh_completion_dir=$RPM_BUILD_ROOT%{_datadir}/zsh/site-functions
49 mkdir -p $zsh_completion_dir
51 mkdir -p $zsh_completion_dir
50 install contrib/zsh_completion $zsh_completion_dir/_mercurial
52 install contrib/zsh_completion $zsh_completion_dir/_mercurial
51
53
52 lisp_dir=$RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
54 lisp_dir=$RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
53 mkdir -p $lisp_dir
55 mkdir -p $lisp_dir
54 install contrib/mercurial.el $lisp_dir
56 install contrib/mercurial.el $lisp_dir
55
57
56 %clean
58 %clean
57 rm -rf $RPM_BUILD_ROOT
59 rm -rf $RPM_BUILD_ROOT
58
60
59 %files
61 %files
60 %defattr(-,root,root,-)
62 %defattr(-,root,root,-)
61 %doc doc/* *.cgi
63 %doc CONTRIBUTORS COPYING doc/README doc/hg*.txt doc/hg*.html doc/ja *.cgi
64 %{_mandir}/man?/hg*.gz
62 %dir %{pythonlib}
65 %dir %{pythonlib}
63 %dir %{hgext}
66 %dir %{hgext}
64 %{_sysconfdir}/bash_completion.d/mercurial.sh
67 %{_sysconfdir}/bash_completion.d/mercurial.sh
65 %{_datadir}/zsh/site-functions/_mercurial
68 %{_datadir}/zsh/site-functions/_mercurial
66 %{_datadir}/emacs/site-lisp/mercurial.el
69 %{_datadir}/emacs/site-lisp/mercurial.el
67 %{_bindir}/hg
70 %{_bindir}/hg
68 %{_bindir}/hgk
71 %{_bindir}/hgk
69 %{_bindir}/hgmerge
72 %{_bindir}/hgmerge
70 %{_bindir}/hg-ssh
73 %{_bindir}/hg-ssh
71 %{_bindir}/hg-viz
74 %{_bindir}/hg-viz
72 %{_bindir}/git-rev-tree
75 %{_bindir}/git-rev-tree
73 %{_bindir}/mercurial-convert-repo
76 %{_bindir}/mercurial-convert-repo
74 %{pythonlib}/templates
77 %{pythonlib}/templates
75 %{pythonlib}/*.py*
78 %{pythonlib}/*.py*
76 %{pythonlib}/hgweb/*.py*
79 %{pythonlib}/hgweb/*.py*
77 %{pythonlib}/*.so
80 %{pythonlib}/*.so
78 %{hgext}/*.py*
81 %{hgext}/*.py*
@@ -1,44 +1,44
1 SOURCES=$(wildcard *.[0-9].txt)
1 SOURCES=$(wildcard *.[0-9].txt)
2 MAN=$(SOURCES:%.txt=%)
2 MAN=$(SOURCES:%.txt=%)
3 HTML=$(SOURCES:%.txt=%.html)
3 HTML=$(SOURCES:%.txt=%.html)
4 PREFIX=/usr/local
4 PREFIX=/usr/local
5 MANDIR=$(PREFIX)/share/man
5 MANDIR=$(PREFIX)/share/man
6 INSTALL=install -c
6 INSTALL=install -c
7
7
8 all: man html
8 all: man html
9
9
10 man: $(MAN)
10 man: $(MAN)
11
11
12 html: $(HTML)
12 html: $(HTML)
13
13
14 hg.1.txt: hg.1.gendoc.txt
14 hg.1.txt: hg.1.gendoc.txt
15 touch hg.1.txt
15 touch hg.1.txt
16
16
17 hg.1.gendoc.txt: ../mercurial/commands.py ../mercurial/help.py
17 hg.1.gendoc.txt: ../mercurial/commands.py ../mercurial/help.py
18 python gendoc.py > $@
18 python gendoc.py > $@
19
19
20 %: %.xml
20 %: %.xml
21 xmlto man $*.xml
21 xmlto man $*.xml
22
22
23 %.xml: %.txt
23 %.xml: %.txt
24 asciidoc -d manpage -b docbook $*.txt
24 asciidoc -d manpage -b docbook $*.txt
25
25
26 %.html: %.txt
26 %.html: %.txt
27 asciidoc -b html4 $*.txt || asciidoc -b html $*.txt
27 asciidoc -b html4 $*.txt || asciidoc -b html $*.txt
28
28
29 MANIFEST: man html
29 MANIFEST: man html
30 # versionned files are already in the main MANIFEST
30 # versionned files are already in the main MANIFEST
31 $(RM) $@
31 $(RM) $@
32 for i in $(MAN) $(HTML) hg.1.gendoc.txt; do \
32 for i in $(MAN) $(HTML) hg.1.gendoc.txt; do \
33 echo "doc/$$i" >> $@ ; \
33 echo "doc/$$i" >> $@ ; \
34 done
34 done
35
35
36 install: man
36 install: man
37 for i in $(MAN) ; do \
37 for i in $(MAN) ; do \
38 subdir=`echo $$i | sed -n 's/..*\.\([0-9]\)$$/man\1/p'` ; \
38 subdir=`echo $$i | sed -n 's/..*\.\([0-9]\)$$/man\1/p'` ; \
39 mkdir -p $(DESTDIR)/$(MANDIR)/$$subdir ; \
39 mkdir -p $(DESTDIR)$(MANDIR)/$$subdir ; \
40 $(INSTALL) $$i $(DESTDIR)/$(MANDIR)/$$subdir ; \
40 $(INSTALL) $$i $(DESTDIR)$(MANDIR)/$$subdir ; \
41 done
41 done
42
42
43 clean:
43 clean:
44 $(RM) $(MAN) $(MAN:%=%.xml) $(MAN:%=%.html) *.[0-9].gendoc.txt MANIFEST
44 $(RM) $(MAN) $(MAN:%=%.xml) $(MAN:%=%.html) *.[0-9].gendoc.txt MANIFEST
General Comments 0
You need to be logged in to leave comments. Login now