1 |
Author: grobian |
2 |
Date: 2008-05-02 15:31:22 +0000 (Fri, 02 May 2008) |
3 |
New Revision: 10091 |
4 |
|
5 |
Modified: |
6 |
main/branches/prefix/pym/portage/dbapi/vartree.py |
7 |
Log: |
8 |
Call Prefix scanelf (yuck this is ugly!), do not run basename on NEEDED |
9 |
entries any more, genone says the code can deal with it. |
10 |
|
11 |
|
12 |
|
13 |
Modified: main/branches/prefix/pym/portage/dbapi/vartree.py |
14 |
=================================================================== |
15 |
--- main/branches/prefix/pym/portage/dbapi/vartree.py 2008-05-02 14:49:33 UTC (rev 10090) |
16 |
+++ main/branches/prefix/pym/portage/dbapi/vartree.py 2008-05-02 15:31:22 UTC (rev 10091) |
17 |
@@ -142,7 +142,7 @@ |
18 |
# have to call scanelf for preserved libs here as they aren't |
19 |
# registered in NEEDED.ELF.2 files |
20 |
if self._dbapi.plib_registry and self._dbapi.plib_registry.getPreservedLibs(): |
21 |
- args = ["/usr/bin/scanelf", "-yqF", "%a;%F;%S;%r;%n"] |
22 |
+ args = [EPREFIX+"/usr/bin/scanelf", "-yqF", "%a;%F;%S;%r;%n"] |
23 |
for items in self._dbapi.plib_registry.getPreservedLibs().values(): |
24 |
args += items |
25 |
proc = subprocess.Popen(args, stdout=subprocess.PIPE) |
26 |
@@ -256,22 +256,11 @@ |
27 |
for lib in libs: |
28 |
# In Prefix we can't do anything about host provided |
29 |
# libs, it also makes little sense to try and |
30 |
- # preserve them, so filter them out here. See below |
31 |
- # why we can detect this in certain cases. |
32 |
+ # preserve them, so filter them out here. |
33 |
if '/' in lib: |
34 |
if not lib.startswith(EPREFIX): |
35 |
continue |
36 |
|
37 |
- # The contract says we only have basenames in the |
38 |
- # keys of the reverse map (as that is the only thing |
39 |
- # available on Linux/ELF) and the code calling this |
40 |
- # assumes/uses this. However, Darwin's MACH-O |
41 |
- # objects have full paths to the objects, and |
42 |
- # Sun/Solaris' ELF objects can have (and do have) |
43 |
- # absolute path arguments, so extract the basename |
44 |
- # for the key here to make sure we respect the |
45 |
- # contract. |
46 |
- lib = os.path.basename(lib) |
47 |
if not obj_dict.has_key(lib): |
48 |
obj_dict[lib] = [mysplit[0]] |
49 |
else: |
50 |
|
51 |
-- |
52 |
gentoo-commits@l.g.o mailing list |