2.7.3-33: add workaround for cmpi-bindings issue (rhbz#817554)

* Wed Mar  6 2013 David Malcolm <dmalcolm@redhat.com> - 2.7.3-33
- add workaround for cmpi-bindings issue (rhbz#817554)
This commit is contained in:
David Malcolm 2013-03-06 15:03:56 -05:00
parent d542bae2c2
commit 4e8ad3c099
2 changed files with 41 additions and 1 deletions

View File

@ -0,0 +1,28 @@
diff -up Python-2.7.3/Modules/getpath.c.fix-for-usr-move Python-2.7.3/Modules/getpath.c
--- Python-2.7.3/Modules/getpath.c.fix-for-usr-move 2013-03-06 14:25:32.801828698 -0500
+++ Python-2.7.3/Modules/getpath.c 2013-03-06 14:59:05.399691078 -0500
@@ -510,6 +510,24 @@ calculate_path(void)
MAXPATHLEN bytes long.
*/
+ /*
+ Workaround for rhbz#817554, where an empty argv0_path erroneously
+ locates "prefix" as "/lib[64]/python2.7" due to it finding
+ "/lib[64]/python2.7/os.py" via the /lib -> /usr/lib symlink for
+ https://fedoraproject.org/wiki/Features/UsrMove
+ */
+ if (argv0_path[0] == '\0') {
+ /*
+ We have an empty argv0_path, presumably because prog aka
+ Py_GetProgramName() was not found on $PATH.
+
+ Set argv0_path to "/usr/" so that search_for_prefix() and
+ search_for_exec_prefix() don't erroneously pick up
+ on /lib/ via the UsrMove symlink:
+ */
+ strcpy(argv0_path, "/usr/");
+ }
+
if (!(pfound = search_for_prefix(argv0_path, home))) {
if (!Py_FrozenFlag)
fprintf(stderr,

View File

@ -106,7 +106,7 @@ Summary: An interpreted, interactive, object-oriented programming language
Name: %{python}
# Remember to also rebase python-docs when changing this:
Version: 2.7.3
Release: 32%{?dist}
Release: 33%{?dist}
License: Python
Group: Development/Languages
Requires: %{python}-libs%{?_isa} = %{version}-%{release}
@ -811,6 +811,14 @@ Patch172: 00172-use-poll-for-multiprocessing-socket-connection.patch
# (rhbz#913732)
Patch173: 00173-workaround-ENOPROTOOPT-in-bind_port.patch
# 00174 #
# Workaround for failure to set up prefix/exec_prefix when running
# an embededed libpython that sets Py_SetProgramName() to a name not
# on $PATH when run from the root directory due to
# https://fedoraproject.org/wiki/Features/UsrMove
# e.g. cmpi-bindings under systemd (rhbz#817554):
Patch174: 00174-fix-for-usr-move.patch
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora 17 onwards,
@ -1151,6 +1159,7 @@ mv Modules/cryptmodule.c Modules/_cryptmodule.c
%patch171 -p1 -b .raise-correct-exception-when-dev-urandom-is-missing
%patch172 -p1
%patch173 -p1
%patch174 -p1 -b .fix-for-usr-move
# This shouldn't be necesarry, but is right now (2.2a3)
@ -1983,6 +1992,9 @@ rm -fr %{buildroot}
# ======================================================
%changelog
* Wed Mar 6 2013 David Malcolm <dmalcolm@redhat.com> - 2.7.3-33
- add workaround for cmpi-bindings issue (rhbz#817554)
* Mon Mar 4 2013 David Malcolm <dmalcolm@redhat.com> - 2.7.3-32
- add workaround for ENOPROTOOPT seen running selftests in Koji
(rhbz#913732)