Hi Scott,
On Thu, 26 Jan 2012, Scott D Anderson wrote:
Ah, my apologies. I didn't realize that the patch had half-succeeded. I
have reinstalled the python-setuptools package from the Fedora repo and
I've verified that the package is unmodified. I've attached the
build_ext.py.orig file, which is identical to the build_ext.py file.
Sorry for the double-attachment last time. I was trying to get it to
attach as plain text instead of octet stream, and then I couldn't delete
the extra attachment.
This is what I was afraid of. The original setuptools sources on PyPI,
http://pypi.python.org/**packages/source/s/setuptools/**
setuptools-0.6c11.tar.gz#md5=**7df2a529a074f613b509fb44feefe7**4e<http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz#md5=7df2a529a074f613b509fb44feefe74e>
(which list the author, pje, as the file owner even), has a different
version of build_ext.py from what you sent me.
The diff is attached and included below.
Unless you can explain where your modified version is coming from and why,
I really don't see what I can do to 'properly' fix this.
The comment about distutils 3.1 in your version that doesn't exist in the
original seems to indicate that your version is newer than what it's
purported to be, 0.6c11.
If there is a newer version of setuptools out there that needs a new
patch, I can certainly write it but what is it and where is it coming from ?
Andi..
--- /Users/vajda/build_ext.py.orig 2012-01-27 15:13:36.000000000
-0800
+++ /Users/vajda/tmp/s.b/**setuptools-0.6c11/setuptools/**command/build_ext.py
2009-10-19 10:35:44.000000000 -0700
@@ -77,27 +77,25 @@
sources = _build_ext.swig_sources(self, sources) or sources
# Then do any actual SWIG stuff on the remainder
return _du_build_ext.swig_sources(**self, sources, *otherargs)
def get_ext_filename(self, fullname):
filename = _build_ext.get_ext_filename(**self,fullname)
- if fullname not in self.ext_map:
- return filename
- ext = self.ext_map[fullname]
- if isinstance(ext,Library):
- fn, ext = os.path.splitext(filename)
- return self.shlib_compiler.library_**filename(fn,libtype)
- elif use_stubs and ext._links_to_dynamic:
- d,fn = os.path.split(filename)
- return os.path.join(d,'dl-'+fn)
- else:
- return filename
+ if fullname in self.ext_map:
+ ext = self.ext_map[fullname]
+ if isinstance(ext,Library):
+ fn, ext = os.path.splitext(filename)
+ return self.shlib_compiler.library_**filename(fn,libtype)
+ elif use_stubs and ext._links_to_dynamic:
+ d,fn = os.path.split(filename)
+ return os.path.join(d,'dl-'+fn)
+ return filename
def initialize_options(self):
_build_ext.initialize_options(**self)
self.shlib_compiler = None
self.shlibs = []
self.ext_map = {}
def finalize_options(self):
@@ -108,21 +106,16 @@
if isinstance(ext,Library)]
if self.shlibs:
self.setup_shlib_compiler()
for ext in self.extensions:
ext._full_name = self.get_ext_fullname(ext.name**)
for ext in self.extensions:
fullname = ext._full_name
self.ext_map[fullname] = ext
-
- # distutils 3.1 will also ask for module names
- # XXX what to do with conflicts?
- self.ext_map[fullname.split('.**')[-1]] = ext
-
ltd = ext._links_to_dynamic = \
self.shlibs and self.links_to_dynamic(ext) or False
ext._needs_stub = ltd and use_stubs and not
isinstance(ext,Library)
filename = ext._file_name = self.get_ext_filename(**fullname)
libdir = os.path.dirname(os.path.join(**
self.build_lib,filename))
if ltd and libdir not in ext.library_dirs:
ext.library_dirs.append(**libdir)
if ltd and use_stubs and os.curdir not in
ext.runtime_library_dirs: