symbian-qemu-0.9.1-12/python-2.6.1/Misc/RPM/python-2.6.spec
changeset 1 2fb8b9db1c86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/python-2.6.1/Misc/RPM/python-2.6.spec	Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,387 @@
+##########################
+#  User-modifiable configs
+##########################
+
+#  Is the resulting package and the installed binary named "python" or
+#  "python2"?
+#WARNING: Commenting out doesn't work.  Last line is what's used.
+%define config_binsuffix none
+%define config_binsuffix 2.6
+
+#  Build tkinter?  "auto" enables it if /usr/bin/wish exists.
+#WARNING: Commenting out doesn't work.  Last line is what's used.
+%define config_tkinter no
+%define config_tkinter yes
+%define config_tkinter auto
+
+#  Use pymalloc?  The last line (commented or not) determines wether
+#  pymalloc is used.
+#WARNING: Commenting out doesn't work.  Last line is what's used.
+%define config_pymalloc no
+%define config_pymalloc yes
+
+#  Enable IPV6?
+#WARNING: Commenting out doesn't work.  Last line is what's used.
+%define config_ipv6 yes
+%define config_ipv6 no
+
+#  Location of the HTML directory.
+%define config_htmldir /var/www/html/python
+
+#################################
+#  End of user-modifiable configs
+#################################
+
+%define name python
+#--start constants--
+%define version 2.6.1
+%define libver 2.6
+#--end constants--
+%define release 1pydotorg
+%define __prefix /usr
+
+#  kludge to get around rpm <percent>define weirdness
+%define ipv6 %(if [ "%{config_ipv6}" = yes ]; then echo --enable-ipv6; else echo --disable-ipv6; fi)
+%define pymalloc %(if [ "%{config_pymalloc}" = yes ]; then echo --with-pymalloc; else echo --without-pymalloc; fi)
+%define binsuffix %(if [ "%{config_binsuffix}" = none ]; then echo ; else echo "%{config_binsuffix}"; fi)
+%define include_tkinter %(if [ \\( "%{config_tkinter}" = auto -a -f /usr/bin/wish \\) -o "%{config_tkinter}" = yes ]; then echo 1; else echo 0; fi)
+%define libdirname %(( uname -m | egrep -q '_64$' && [ -d /usr/lib64 ] && echo lib64 ) || echo lib)
+
+#  detect if documentation is available
+%define include_docs %(if [ -f "%{_sourcedir}/html-%{version}.tar.bz2" ]; then echo 1; else echo 0; fi)
+
+Summary: An interpreted, interactive, object-oriented programming language.
+Name: %{name}%{binsuffix}
+Version: %{version}
+Release: %{release}
+Copyright: Modified CNRI Open Source License
+Group: Development/Languages
+Source: Python-%{version}.tar.bz2
+%if %{include_docs}
+Source1: html-%{version}.tar.bz2
+%endif
+BuildRoot: %{_tmppath}/%{name}-%{version}-root
+BuildPrereq: expat-devel
+BuildPrereq: db4-devel
+BuildPrereq: gdbm-devel
+BuildPrereq: sqlite-devel
+Prefix: %{__prefix}
+Packager: Sean Reifschneider <jafo-rpms@tummy.com>
+
+%description
+Python is an interpreted, interactive, object-oriented programming
+language.  It incorporates modules, exceptions, dynamic typing, very high
+level dynamic data types, and classes. Python combines remarkable power
+with very clear syntax. It has interfaces to many system calls and
+libraries, as well as to various window systems, and is extensible in C or
+C++. It is also usable as an extension language for applications that need
+a programmable interface.  Finally, Python is portable: it runs on many
+brands of UNIX, on PCs under Windows, MS-DOS, and OS/2, and on the
+Mac.
+
+%package devel
+Summary: The libraries and header files needed for Python extension development.
+Prereq: python%{binsuffix} = %{PACKAGE_VERSION}
+Group: Development/Libraries
+
+%description devel
+The Python programming language's interpreter can be extended with
+dynamically loaded extensions and can be embedded in other programs.
+This package contains the header files and libraries needed to do
+these types of tasks.
+
+Install python-devel if you want to develop Python extensions.  The
+python package will also need to be installed.  You'll probably also
+want to install the python-docs package, which contains Python
+documentation.
+
+%if %{include_tkinter}
+%package tkinter
+Summary: A graphical user interface for the Python scripting language.
+Group: Development/Languages
+Prereq: python%{binsuffix} = %{PACKAGE_VERSION}-%{release}
+
+%description tkinter
+The Tkinter (Tk interface) program is an graphical user interface for
+the Python scripting language.
+
+You should install the tkinter package if you'd like to use a graphical
+user interface for Python programming.
+%endif
+
+%package tools
+Summary: A collection of development tools included with Python.
+Group: Development/Tools
+Prereq: python%{binsuffix} = %{PACKAGE_VERSION}-%{release}
+
+%description tools
+The Python package includes several development tools that are used
+to build python programs.  This package contains a selection of those
+tools, including the IDLE Python IDE.
+
+Install python-tools if you want to use these tools to develop
+Python programs.  You will also need to install the python and
+tkinter packages.
+
+%if %{include_docs}
+%package docs
+Summary: Python-related documentation.
+Group: Development/Documentation
+
+%description docs
+Documentation relating to the Python programming language in HTML and info
+formats.
+%endif
+
+%changelog
+* Mon Dec 20 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.4-2pydotorg]
+- Changing the idle wrapper so that it passes arguments to idle.
+
+* Tue Oct 19 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.4b1-1pydotorg]
+- Updating to 2.4.
+
+* Thu Jul 22 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.4-3pydotorg]
+- Paul Tiemann fixes for %{prefix}.
+- Adding permission changes for directory as suggested by reimeika.ca
+- Adding code to detect when it should be using lib64.
+- Adding a define for the location of /var/www/html for docs.
+
+* Thu May 27 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.4-2pydotorg]
+- Including changes from Ian Holsman to build under Red Hat 7.3.
+- Fixing some problems with the /usr/local path change.
+
+* Sat Mar 27 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.2-3pydotorg]
+- Being more agressive about finding the paths to fix for
+  #!/usr/local/bin/python.
+
+* Sat Feb 07 2004 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.3-2pydotorg]
+- Adding code to remove "#!/usr/local/bin/python" from particular files and
+  causing the RPM build to terminate if there are any unexpected files
+  which have that line in them.
+
+* Mon Oct 13 2003 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.2-1pydotorg]
+- Adding code to detect wether documentation is available to build.
+
+* Fri Sep 19 2003 Sean Reifschneider <jafo-rpms@tummy.com> [2.3.1-1pydotorg]
+- Updating to the 2.3.1 release.
+
+* Mon Feb 24 2003 Sean Reifschneider <jafo-rpms@tummy.com> [2.3b1-1pydotorg]
+- Updating to 2.3b1 release.
+
+* Mon Feb 17 2003 Sean Reifschneider <jafo-rpms@tummy.com> [2.3a1-1]
+- Updating to 2.3 release.
+
+* Sun Dec 23 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2-2]
+- Added -docs package.
+- Added "auto" config_tkinter setting which only enables tk if
+  /usr/bin/wish exists.
+
+* Sat Dec 22 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2-1]
+- Updated to 2.2.
+- Changed the extension to "2" from "2.2".
+
+* Tue Nov 18 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2c1-1]
+- Updated to 2.2c1.
+
+* Thu Nov  1 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2b1-3]
+- Changed the way the sed for fixing the #! in pydoc works.
+
+* Wed Oct  24 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2b1-2]
+- Fixed missing "email" package, thanks to anonymous report on sourceforge.
+- Fixed missing "compiler" package.
+
+* Mon Oct 22 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2b1-1]
+- Updated to 2.2b1.
+
+* Mon Oct  9 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2a4-4]
+- otto@balinor.mat.unimi.it mentioned that the license file is missing.
+
+* Sun Sep 30 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2a4-3]
+- Ignacio Vazquez-Abrams pointed out that I had a spruious double-quote in
+  the spec files.  Thanks.
+
+* Wed Jul 25 2001 Sean Reifschneider <jafo-rpms@tummy.com>
+[Release 2.2a1-1]
+- Updated to 2.2a1 release.
+- Changed idle and pydoc to use binsuffix macro
+
+#######
+#  PREP
+#######
+%prep
+%setup -n Python-%{version}
+
+########
+#  BUILD
+########
+%build
+./configure --enable-unicode=ucs4 %{ipv6} %{pymalloc} --prefix=%{__prefix}
+make
+
+##########
+#  INSTALL
+##########
+%install
+#  set the install path
+echo '[install_scripts]' >setup.cfg
+echo 'install_dir='"${RPM_BUILD_ROOT}%{__prefix}/bin" >>setup.cfg
+
+[ -d "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+mkdir -p $RPM_BUILD_ROOT%{__prefix}/%{libdirname}/python%{libvers}/lib-dynload
+make prefix=$RPM_BUILD_ROOT%{__prefix} install
+
+#  REPLACE PATH IN PYDOC
+if [ ! -z "%{binsuffix}" ]
+then
+   (
+      cd $RPM_BUILD_ROOT%{__prefix}/bin
+      mv pydoc pydoc.old
+      sed 's|#!.*|#!%{__prefix}/bin/env python'%{binsuffix}'|' \
+            pydoc.old >pydoc
+      chmod 755 pydoc
+      rm -f pydoc.old
+   )
+fi
+
+#  add the binsuffix
+if [ ! -z "%{binsuffix}" ]
+then
+   ( cd $RPM_BUILD_ROOT%{__prefix}/bin; rm -f python[0-9a-zA-Z]*;
+         mv -f python python"%{binsuffix}" )
+   ( cd $RPM_BUILD_ROOT%{__prefix}/man/man1; mv python.1 python%{binsuffix}.1 )
+   ( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f pydoc pydoc"%{binsuffix}" )
+   ( cd $RPM_BUILD_ROOT%{__prefix}/bin; mv -f idle idle"%{binsuffix}" )
+fi
+
+########
+#  Tools
+echo '#!%{__prefix}/bin/env python%{binsuffix}' >${RPM_BUILD_ROOT}%{__prefix}/bin/idle%{binsuffix}
+echo 'import os, sys' >>${RPM_BUILD_ROOT}%{__prefix}/bin/idle%{binsuffix}
+echo 'os.execvp("%{__prefix}/bin/python%{binsuffix}", ["%{__prefix}/bin/python%{binsuffix}", "%{__prefix}/lib/python%{libvers}/idlelib/idle.py"] + sys.argv[1:])' >>${RPM_BUILD_ROOT}%{__prefix}/bin/idle%{binsuffix}
+echo 'print "Failed to exec Idle"' >>${RPM_BUILD_ROOT}%{__prefix}/bin/idle%{binsuffix}
+echo 'sys.exit(1)' >>${RPM_BUILD_ROOT}%{__prefix}/bin/idle%{binsuffix}
+chmod 755 $RPM_BUILD_ROOT%{__prefix}/bin/idle%{binsuffix}
+cp -a Tools $RPM_BUILD_ROOT%{__prefix}/%{libdirname}/python%{libvers}
+
+#  MAKE FILE LISTS
+rm -f mainpkg.files
+find "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/lib-dynload -type f |
+	sed "s|^${RPM_BUILD_ROOT}|/|" |
+	grep -v -e '_tkinter.so$' >mainpkg.files
+find "$RPM_BUILD_ROOT""%{__prefix}"/bin -type f |
+	sed "s|^${RPM_BUILD_ROOT}|/|" |
+	grep -v -e '/bin/idle%{binsuffix}$' >>mainpkg.files
+
+rm -f tools.files
+find "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/idlelib \
+      "$RPM_BUILD_ROOT""%{__prefix}"/%{libdirname}/python%{libvers}/Tools -type f |
+      sed "s|^${RPM_BUILD_ROOT}|/|" >tools.files
+echo "%{__prefix}"/bin/idle%{binsuffix} >>tools.files
+
+######
+# Docs
+%if %{include_docs}
+mkdir -p "$RPM_BUILD_ROOT"%{config_htmldir}
+(
+   cd "$RPM_BUILD_ROOT"%{config_htmldir}
+   bunzip2 < %{SOURCE1} | tar x
+)
+%endif
+
+#  fix the #! line in installed files
+find "$RPM_BUILD_ROOT" -type f -print0 |
+      xargs -0 grep -l /usr/local/bin/python | while read file
+do
+   FIXFILE="$file"
+   sed 's|^#!.*python|#!%{__prefix}/bin/env python'"%{binsuffix}"'|' \
+         "$FIXFILE" >/tmp/fix-python-path.$$
+   cat /tmp/fix-python-path.$$ >"$FIXFILE"
+   rm -f /tmp/fix-python-path.$$
+done
+
+#  check to see if there are any straggling #! lines
+find "$RPM_BUILD_ROOT" -type f | xargs egrep -n '^#! */usr/local/bin/python' \
+      | grep ':1:#!' >/tmp/python-rpm-files.$$ || true
+if [ -s /tmp/python-rpm-files.$$ ]
+then
+   echo '*****************************************************'
+   cat /tmp/python-rpm-files.$$
+   cat <<@EOF
+   *****************************************************
+     There are still files referencing /usr/local/bin/python in the
+     install directory.  They are listed above.  Please fix the .spec
+     file and try again.  If you are an end-user, you probably want
+     to report this to jafo-rpms@tummy.com as well.
+   *****************************************************
+@EOF
+   rm -f /tmp/python-rpm-files.$$
+   exit 1
+fi
+rm -f /tmp/python-rpm-files.$$
+
+########
+#  CLEAN
+########
+%clean
+[ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT
+rm -f mainpkg.files tools.files
+
+########
+#  FILES
+########
+%files -f mainpkg.files
+%defattr(-,root,root)
+%doc Misc/README Misc/cheatsheet Misc/Porting
+%doc LICENSE Misc/ACKS Misc/HISTORY Misc/NEWS
+%{__prefix}/man/man1/python%{binsuffix}.1*
+
+%attr(755,root,root) %dir %{__prefix}/include/python%{libvers}
+%attr(755,root,root) %dir %{__prefix}/%{libdirname}/python%{libvers}/
+%{__prefix}/%{libdirname}/python%{libvers}/*.txt
+%{__prefix}/%{libdirname}/python%{libvers}/*.py*
+%{__prefix}/%{libdirname}/python%{libvers}/pdb.doc
+%{__prefix}/%{libdirname}/python%{libvers}/profile.doc
+%{__prefix}/%{libdirname}/python%{libvers}/curses
+%{__prefix}/%{libdirname}/python%{libvers}/distutils
+%{__prefix}/%{libdirname}/python%{libvers}/encodings
+%{__prefix}/%{libdirname}/python%{libvers}/plat-linux2
+%{__prefix}/%{libdirname}/python%{libvers}/site-packages
+%{__prefix}/%{libdirname}/python%{libvers}/test
+%{__prefix}/%{libdirname}/python%{libvers}/xml
+%{__prefix}/%{libdirname}/python%{libvers}/email
+%{__prefix}/%{libdirname}/python%{libvers}/email/mime
+%{__prefix}/%{libdirname}/python%{libvers}/sqlite3
+%{__prefix}/%{libdirname}/python%{libvers}/compiler
+%{__prefix}/%{libdirname}/python%{libvers}/bsddb
+%{__prefix}/%{libdirname}/python%{libvers}/hotshot
+%{__prefix}/%{libdirname}/python%{libvers}/logging
+%{__prefix}/%{libdirname}/python%{libvers}/lib-old
+
+%files devel
+%defattr(-,root,root)
+%{__prefix}/include/python%{libvers}/*.h
+%{__prefix}/%{libdirname}/python%{libvers}/config
+
+%files -f tools.files tools
+%defattr(-,root,root)
+
+%if %{include_tkinter}
+%files tkinter
+%defattr(-,root,root)
+%{__prefix}/%{libdirname}/python%{libvers}/lib-tk
+%{__prefix}/%{libdirname}/python%{libvers}/lib-dynload/_tkinter.so*
+%endif
+
+%if %{include_docs}
+%files docs
+%defattr(-,root,root)
+%{config_htmldir}/*
+%endif