##// END OF EJS Templates
buildrpm: bump bundled docutils version to 0.14 when building for centos{5,6}...
Antonio Muci -
r36161:e8443884 default
parent child Browse files
Show More
@@ -1,164 +1,164 b''
1 %global emacs_lispdir %{_datadir}/emacs/site-lisp
1 %global emacs_lispdir %{_datadir}/emacs/site-lisp
2
2
3 %define withpython %{nil}
3 %define withpython %{nil}
4
4
5 %if "%{?withpython}"
5 %if "%{?withpython}"
6
6
7 %global pythonver %{withpython}
7 %global pythonver %{withpython}
8 %global pythonname Python-%{withpython}
8 %global pythonname Python-%{withpython}
9 %global docutilsname docutils-0.12
9 %global docutilsname docutils-0.14
10 %global docutilsmd5 4622263b62c5c771c03502afa3157768
10 %global docutilsmd5 c53768d63db3873b7d452833553469de
11 %global pythonhg python-hg
11 %global pythonhg python-hg
12 %global hgpyprefix /opt/%{pythonhg}
12 %global hgpyprefix /opt/%{pythonhg}
13 # byte compilation will fail on some some Python /test/ files
13 # byte compilation will fail on some some Python /test/ files
14 %global _python_bytecompile_errors_terminate_build 0
14 %global _python_bytecompile_errors_terminate_build 0
15
15
16 %else
16 %else
17
17
18 %global pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))')
18 %global pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))')
19
19
20 %endif
20 %endif
21
21
22 Summary: A fast, lightweight Source Control Management system
22 Summary: A fast, lightweight Source Control Management system
23 Name: mercurial
23 Name: mercurial
24 Version: snapshot
24 Version: snapshot
25 Release: 0
25 Release: 0
26 License: GPLv2+
26 License: GPLv2+
27 Group: Development/Tools
27 Group: Development/Tools
28 URL: https://mercurial-scm.org/
28 URL: https://mercurial-scm.org/
29 Source0: %{name}-%{version}-%{release}.tar.gz
29 Source0: %{name}-%{version}-%{release}.tar.gz
30 %if "%{?withpython}"
30 %if "%{?withpython}"
31 Source1: %{pythonname}.tgz
31 Source1: %{pythonname}.tgz
32 Source2: %{docutilsname}.tar.gz
32 Source2: %{docutilsname}.tar.gz
33 %endif
33 %endif
34 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
34 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
35
35
36 BuildRequires: make, gcc, gettext
36 BuildRequires: make, gcc, gettext
37 %if "%{?withpython}"
37 %if "%{?withpython}"
38 BuildRequires: readline-devel, openssl-devel, ncurses-devel, zlib-devel, bzip2-devel
38 BuildRequires: readline-devel, openssl-devel, ncurses-devel, zlib-devel, bzip2-devel
39 %else
39 %else
40 BuildRequires: python >= 2.7, python-devel, python-docutils >= 0.5
40 BuildRequires: python >= 2.7, python-devel, python-docutils >= 0.5
41 Requires: python >= 2.7
41 Requires: python >= 2.7
42 %endif
42 %endif
43 # The hgk extension uses the wish tcl interpreter, but we don't enforce it
43 # The hgk extension uses the wish tcl interpreter, but we don't enforce it
44 #Requires: tk
44 #Requires: tk
45
45
46 %description
46 %description
47 Mercurial is a fast, lightweight source control management system designed
47 Mercurial is a fast, lightweight source control management system designed
48 for efficient handling of very large distributed projects.
48 for efficient handling of very large distributed projects.
49
49
50 %prep
50 %prep
51
51
52 %if "%{?withpython}"
52 %if "%{?withpython}"
53 %setup -q -n mercurial-%{version}-%{release} -a1 -a2
53 %setup -q -n mercurial-%{version}-%{release} -a1 -a2
54 # despite the comments in cgi.py, we do this to prevent rpmdeps from picking /usr/local/bin/python up
54 # despite the comments in cgi.py, we do this to prevent rpmdeps from picking /usr/local/bin/python up
55 sed -i '1c#! /usr/bin/env python' %{pythonname}/Lib/cgi.py
55 sed -i '1c#! /usr/bin/env python' %{pythonname}/Lib/cgi.py
56 %else
56 %else
57 %setup -q -n mercurial-%{version}-%{release}
57 %setup -q -n mercurial-%{version}-%{release}
58 %endif
58 %endif
59
59
60 %build
60 %build
61
61
62 %if "%{?withpython}"
62 %if "%{?withpython}"
63
63
64 PYPATH=$PWD/%{pythonname}
64 PYPATH=$PWD/%{pythonname}
65 cd $PYPATH
65 cd $PYPATH
66 ./configure --prefix=%{hgpyprefix}
66 ./configure --prefix=%{hgpyprefix}
67 make all %{?_smp_mflags}
67 make all %{?_smp_mflags}
68 cd -
68 cd -
69
69
70 cd %{docutilsname}
70 cd %{docutilsname}
71 LD_LIBRARY_PATH=$PYPATH $PYPATH/python setup.py build
71 LD_LIBRARY_PATH=$PYPATH $PYPATH/python setup.py build
72 cd -
72 cd -
73
73
74 # verify Python environment
74 # verify Python environment
75 LD_LIBRARY_PATH=$PYPATH PYTHONPATH=$PWD/%{docutilsname} $PYPATH/python -c 'import sys, zlib, bz2, ssl, curses, readline'
75 LD_LIBRARY_PATH=$PYPATH PYTHONPATH=$PWD/%{docutilsname} $PYPATH/python -c 'import sys, zlib, bz2, ssl, curses, readline'
76
76
77 # set environment for make
77 # set environment for make
78 export PATH=$PYPATH:$PATH
78 export PATH=$PYPATH:$PATH
79 export LD_LIBRARY_PATH=$PYPATH
79 export LD_LIBRARY_PATH=$PYPATH
80 export CFLAGS="-L $PYPATH"
80 export CFLAGS="-L $PYPATH"
81 export PYTHONPATH=$PWD/%{docutilsname}
81 export PYTHONPATH=$PWD/%{docutilsname}
82
82
83 %endif
83 %endif
84
84
85 make all
85 make all
86 make -C contrib/chg
86 make -C contrib/chg
87
87
88 %install
88 %install
89 rm -rf $RPM_BUILD_ROOT
89 rm -rf $RPM_BUILD_ROOT
90
90
91 %if "%{?withpython}"
91 %if "%{?withpython}"
92
92
93 PYPATH=$PWD/%{pythonname}
93 PYPATH=$PWD/%{pythonname}
94 cd $PYPATH
94 cd $PYPATH
95 make install DESTDIR=$RPM_BUILD_ROOT
95 make install DESTDIR=$RPM_BUILD_ROOT
96 # these .a are not necessary and they are readonly and strip fails - kill them!
96 # these .a are not necessary and they are readonly and strip fails - kill them!
97 rm -f %{buildroot}%{hgpyprefix}/lib/{,python2.*/config}/libpython2.*.a
97 rm -f %{buildroot}%{hgpyprefix}/lib/{,python2.*/config}/libpython2.*.a
98 cd -
98 cd -
99
99
100 cd %{docutilsname}
100 cd %{docutilsname}
101 LD_LIBRARY_PATH=$PYPATH $PYPATH/python setup.py install --root="$RPM_BUILD_ROOT"
101 LD_LIBRARY_PATH=$PYPATH $PYPATH/python setup.py install --root="$RPM_BUILD_ROOT"
102 cd -
102 cd -
103
103
104 PATH=$PYPATH:$PATH LD_LIBRARY_PATH=$PYPATH make install DESTDIR=$RPM_BUILD_ROOT PREFIX=%{hgpyprefix} MANDIR=%{_mandir}
104 PATH=$PYPATH:$PATH LD_LIBRARY_PATH=$PYPATH make install DESTDIR=$RPM_BUILD_ROOT PREFIX=%{hgpyprefix} MANDIR=%{_mandir}
105 mkdir -p $RPM_BUILD_ROOT%{_bindir}
105 mkdir -p $RPM_BUILD_ROOT%{_bindir}
106 ( cd $RPM_BUILD_ROOT%{_bindir}/ && ln -s ../..%{hgpyprefix}/bin/hg . )
106 ( cd $RPM_BUILD_ROOT%{_bindir}/ && ln -s ../..%{hgpyprefix}/bin/hg . )
107 ( cd $RPM_BUILD_ROOT%{_bindir}/ && ln -s ../..%{hgpyprefix}/bin/python2.? %{pythonhg} )
107 ( cd $RPM_BUILD_ROOT%{_bindir}/ && ln -s ../..%{hgpyprefix}/bin/python2.? %{pythonhg} )
108
108
109 %else
109 %else
110
110
111 make install DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} MANDIR=%{_mandir}
111 make install DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} MANDIR=%{_mandir}
112
112
113 %endif
113 %endif
114
114
115 install -m 755 contrib/chg/chg $RPM_BUILD_ROOT%{_bindir}/
115 install -m 755 contrib/chg/chg $RPM_BUILD_ROOT%{_bindir}/
116 install -m 755 contrib/hgk $RPM_BUILD_ROOT%{_bindir}/
116 install -m 755 contrib/hgk $RPM_BUILD_ROOT%{_bindir}/
117 install -m 755 contrib/hg-ssh $RPM_BUILD_ROOT%{_bindir}/
117 install -m 755 contrib/hg-ssh $RPM_BUILD_ROOT%{_bindir}/
118
118
119 bash_completion_dir=$RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
119 bash_completion_dir=$RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
120 mkdir -p $bash_completion_dir
120 mkdir -p $bash_completion_dir
121 install -m 644 contrib/bash_completion $bash_completion_dir/mercurial.sh
121 install -m 644 contrib/bash_completion $bash_completion_dir/mercurial.sh
122
122
123 zsh_completion_dir=$RPM_BUILD_ROOT%{_datadir}/zsh/site-functions
123 zsh_completion_dir=$RPM_BUILD_ROOT%{_datadir}/zsh/site-functions
124 mkdir -p $zsh_completion_dir
124 mkdir -p $zsh_completion_dir
125 install -m 644 contrib/zsh_completion $zsh_completion_dir/_mercurial
125 install -m 644 contrib/zsh_completion $zsh_completion_dir/_mercurial
126
126
127 mkdir -p $RPM_BUILD_ROOT%{emacs_lispdir}
127 mkdir -p $RPM_BUILD_ROOT%{emacs_lispdir}
128 install -m 644 contrib/mercurial.el $RPM_BUILD_ROOT%{emacs_lispdir}/
128 install -m 644 contrib/mercurial.el $RPM_BUILD_ROOT%{emacs_lispdir}/
129 install -m 644 contrib/mq.el $RPM_BUILD_ROOT%{emacs_lispdir}/
129 install -m 644 contrib/mq.el $RPM_BUILD_ROOT%{emacs_lispdir}/
130
130
131 mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/mercurial/hgrc.d
131 mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/mercurial/hgrc.d
132
132
133 %clean
133 %clean
134 rm -rf $RPM_BUILD_ROOT
134 rm -rf $RPM_BUILD_ROOT
135
135
136 %files
136 %files
137 %defattr(-,root,root,-)
137 %defattr(-,root,root,-)
138 %doc CONTRIBUTORS COPYING doc/README doc/hg*.txt doc/hg*.html *.cgi contrib/*.fcgi
138 %doc CONTRIBUTORS COPYING doc/README doc/hg*.txt doc/hg*.html *.cgi contrib/*.fcgi
139 %doc %attr(644,root,root) %{_mandir}/man?/hg*
139 %doc %attr(644,root,root) %{_mandir}/man?/hg*
140 %doc %attr(644,root,root) contrib/*.svg
140 %doc %attr(644,root,root) contrib/*.svg
141 %dir %{_datadir}/zsh/
141 %dir %{_datadir}/zsh/
142 %dir %{_datadir}/zsh/site-functions/
142 %dir %{_datadir}/zsh/site-functions/
143 %{_datadir}/zsh/site-functions/_mercurial
143 %{_datadir}/zsh/site-functions/_mercurial
144 %dir %{_datadir}/emacs/site-lisp/
144 %dir %{_datadir}/emacs/site-lisp/
145 %{_datadir}/emacs/site-lisp/mercurial.el
145 %{_datadir}/emacs/site-lisp/mercurial.el
146 %{_datadir}/emacs/site-lisp/mq.el
146 %{_datadir}/emacs/site-lisp/mq.el
147 %{_bindir}/hg
147 %{_bindir}/hg
148 %{_bindir}/chg
148 %{_bindir}/chg
149 %{_bindir}/hgk
149 %{_bindir}/hgk
150 %{_bindir}/hg-ssh
150 %{_bindir}/hg-ssh
151 %dir %{_sysconfdir}/bash_completion.d/
151 %dir %{_sysconfdir}/bash_completion.d/
152 %config(noreplace) %{_sysconfdir}/bash_completion.d/mercurial.sh
152 %config(noreplace) %{_sysconfdir}/bash_completion.d/mercurial.sh
153 %dir %{_sysconfdir}/mercurial
153 %dir %{_sysconfdir}/mercurial
154 %dir %{_sysconfdir}/mercurial/hgrc.d
154 %dir %{_sysconfdir}/mercurial/hgrc.d
155 %if "%{?withpython}"
155 %if "%{?withpython}"
156 %{_bindir}/%{pythonhg}
156 %{_bindir}/%{pythonhg}
157 %{hgpyprefix}
157 %{hgpyprefix}
158 %else
158 %else
159 %{_libdir}/python%{pythonver}/site-packages/%{name}-*-py%{pythonver}.egg-info
159 %{_libdir}/python%{pythonver}/site-packages/%{name}-*-py%{pythonver}.egg-info
160 %{_libdir}/python%{pythonver}/site-packages/%{name}
160 %{_libdir}/python%{pythonver}/site-packages/%{name}
161 %{_libdir}/python%{pythonver}/site-packages/hgext
161 %{_libdir}/python%{pythonver}/site-packages/hgext
162 %{_libdir}/python%{pythonver}/site-packages/hgext3rd
162 %{_libdir}/python%{pythonver}/site-packages/hgext3rd
163 %{_libdir}/python%{pythonver}/site-packages/hgdemandimport
163 %{_libdir}/python%{pythonver}/site-packages/hgdemandimport
164 %endif
164 %endif
General Comments 0
You need to be logged in to leave comments. Login now