Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 3a078aa

Browse files
author
Sean Reifscheider
committed
issue5063: Fixes for building RPM on CentOS plus misc .spec file enhancements.
1 parent 2843aa8 commit 3a078aa

1 file changed

Lines changed: 34 additions & 30 deletions

File tree

Misc/RPM/python-3.2.spec

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@
2525
%define config_ipv6 yes
2626
%define config_ipv6 no
2727

28+
# Build shared libraries or .a library?
29+
#WARNING: Commenting out doesn't work. Last line is what's used.
30+
%define config_sharedlib no
31+
%define config_sharedlib yes
32+
2833
# Location of the HTML directory.
2934
%define config_htmldir /var/www/html/python
3035

@@ -35,7 +40,7 @@
3540
%define name python
3641
#--start constants--
3742
%define version 3.2a0
38-
%define libver 3.2
43+
%define libvers 3.2
3944
#--end constants--
4045
%define release 1pydotorg
4146
%define __prefix /usr
@@ -46,6 +51,8 @@
4651
%define binsuffix %(if [ "%{config_binsuffix}" = none ]; then echo ; else echo "%{config_binsuffix}"; fi)
4752
%define include_tkinter %(if [ \\( "%{config_tkinter}" = auto -a -f /usr/bin/wish \\) -o "%{config_tkinter}" = yes ]; then echo 1; else echo 0; fi)
4853
%define libdirname %(( uname -m | egrep -q '_64$' && [ -d /usr/lib64 ] && echo lib64 ) || echo lib)
54+
%define sharedlib %(if [ "%{config_sharedlib}" = yes ]; then echo --enable-shared; else echo ; fi)
55+
%define include_sharedlib %(if [ "%{config_sharedlib}" = yes ]; then echo 1; else echo 0; fi)
4956

5057
# detect if documentation is available
5158
%define include_docs %(if [ -f "%{_sourcedir}/html-%{version}.tar.bz2" ]; then echo 1; else echo 0; fi)
@@ -54,7 +61,7 @@ Summary: An interpreted, interactive, object-oriented programming language.
5461
Name: %{name}%{binsuffix}
5562
Version: %{version}
5663
Release: %{release}
57-
Copyright: Modified CNRI Open Source License
64+
License: Modified CNRI Open Source License
5865
Group: Development/Languages
5966
Source: Python-%{version}.tar.bz2
6067
%if %{include_docs}
@@ -223,7 +230,14 @@ formats.
223230
# BUILD
224231
########
225232
%build
226-
./configure --enable-unicode=ucs4 %{ipv6} %{pymalloc} --prefix=%{__prefix}
233+
echo "Setting for ipv6: %{ipv6}"
234+
echo "Setting for pymalloc: %{pymalloc}"
235+
echo "Setting for binsuffix: %{binsuffix}"
236+
echo "Setting for include_tkinter: %{include_tkinter}"
237+
echo "Setting for libdirname: %{libdirname}"
238+
echo "Setting for sharedlib: %{sharedlib}"
239+
echo "Setting for include_sharedlib: %{include_sharedlib}"
240+
./configure --enable-unicode=ucs4 %{sharedlib} %{ipv6} %{pymalloc} --prefix=%{__prefix}
227241
make
228242

229243
##########
@@ -254,11 +268,10 @@ fi
254268
# add the binsuffix
255269
if [ ! -z "%{binsuffix}" ]
256270
then
257-
( cd $RPM_BUILD_ROOT%{__prefix}/bin; rm -f python[0-9a-zA-Z]*;
258-
mv -f python python"%{binsuffix}" )
259-
( cd $RPM_BUILD_ROOT%{__prefix}/man/man1; mv python.1 python%{binsuffix}.1 )
260-
( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f pydoc pydoc"%{binsuffix}" )
261-
( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f idle idle"%{binsuffix}" )
271+
rm -f $RPM_BUILD_ROOT%{__prefix}/bin/python[0-9a-zA-Z]*
272+
( cd $RPM_BUILD_ROOT%{__prefix}/bin;
273+
for file in *; do mv "$file" "$file"%{binsuffix}; done )
274+
( cd $RPM_BUILD_ROOT%{_mandir}/man1; mv python.1 python%{binsuffix}.1 )
262275
fi
263276

264277
########
@@ -273,17 +286,23 @@ cp -a Tools $RPM_BUILD_ROOT%{__prefix}/%{libdirname}/python%{libvers}
273286

274287
# MAKE FILE LISTS
275288
rm -f mainpkg.files
276-
find "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/lib-dynload -type f |
289+
find "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers} -type f |
277290
sed "s|^${RPM_BUILD_ROOT}|/|" |
278-
grep -v -e '_tkinter.so$' >mainpkg.files
279-
find "$RPM_BUILD_ROOT""%{__prefix}"/bin -type f |
291+
grep -v -e '/python%{libvers}/config$' -e '_tkinter.so$' >mainpkg.files
292+
find "$RPM_BUILD_ROOT""%{__prefix}"/bin -type f -o -type l |
280293
sed "s|^${RPM_BUILD_ROOT}|/|" |
294+
grep -v -e '/bin/2to3%{binsuffix}$' |
295+
grep -v -e '/bin/pydoc%{binsuffix}$' |
296+
grep -v -e '/bin/smtpd.py%{binsuffix}$' |
281297
grep -v -e '/bin/idle%{binsuffix}$' >>mainpkg.files
282298

283299
rm -f tools.files
284300
find "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/idlelib \
285301
"$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/Tools -type f |
286302
sed "s|^${RPM_BUILD_ROOT}|/|" >tools.files
303+
echo "%{__prefix}"/bin/2to3%{binsuffix} >>tools.files
304+
echo "%{__prefix}"/bin/pydoc%{binsuffix} >>tools.files
305+
echo "%{__prefix}"/bin/smtpd.py%{binsuffix} >>tools.files
287306
echo "%{__prefix}"/bin/idle%{binsuffix} >>tools.files
288307

289308
######
@@ -341,28 +360,13 @@ rm -f mainpkg.files tools.files
341360
%defattr(-,root,root)
342361
%doc Misc/README Misc/cheatsheet Misc/Porting
343362
%doc LICENSE Misc/ACKS Misc/HISTORY Misc/NEWS
344-
%{__prefix}/man/man1/python%{binsuffix}.1*
363+
%{_mandir}/man1/python%{binsuffix}.1*
345364

346365
%attr(755,root,root) %dir %{__prefix}/include/python%{libvers}
347366
%attr(755,root,root) %dir %{__prefix}/%{libdirname}/python%{libvers}/
348-
%{__prefix}/%{libdirname}/python%{libvers}/*.txt
349-
%{__prefix}/%{libdirname}/python%{libvers}/*.py*
350-
%{__prefix}/%{libdirname}/python%{libvers}/pdb.doc
351-
%{__prefix}/%{libdirname}/python%{libvers}/profile.doc
352-
%{__prefix}/%{libdirname}/python%{libvers}/curses
353-
%{__prefix}/%{libdirname}/python%{libvers}/distutils
354-
%{__prefix}/%{libdirname}/python%{libvers}/encodings
355-
%{__prefix}/%{libdirname}/python%{libvers}/plat-linux2
356-
%{__prefix}/%{libdirname}/python%{libvers}/site-packages
357-
%{__prefix}/%{libdirname}/python%{libvers}/test
358-
%{__prefix}/%{libdirname}/python%{libvers}/xml
359-
%{__prefix}/%{libdirname}/python%{libvers}/email
360-
%{__prefix}/%{libdirname}/python%{libvers}/email/mime
361-
%{__prefix}/%{libdirname}/python%{libvers}/sqlite3
362-
%{__prefix}/%{libdirname}/python%{libvers}/compiler
363-
%{__prefix}/%{libdirname}/python%{libvers}/hotshot
364-
%{__prefix}/%{libdirname}/python%{libvers}/logging
365-
%{__prefix}/%{libdirname}/python%{libvers}/lib-old
367+
%if %{include_sharedlib}
368+
%{__prefix}/%{libdirname}/libpython*
369+
%endif
366370

367371
%files devel
368372
%defattr(-,root,root)

0 commit comments

Comments
 (0)