Gentoo Archives: gentoo-commits

From: "Fabian Groffen (grobian)" <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r10091 - main/branches/prefix/pym/portage/dbapi
Date: Fri, 02 May 2008 15:35:55
Message-Id: E1JrxEJ-0004Ox-3R@stork.gentoo.org
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