1 |
On 09/01/14 02:24, Fabian Groffen wrote: |
2 |
> On 30-08-2014 16:02:51 -0400, Anthony G. Basile wrote: |
3 |
>> ... During that meeting, the council focused on NEEDED.ELF.2 which is |
4 |
>> recorded by portage, but not paludis. Linkage information is generated |
5 |
>> during package builds, is expensive to recalculate and is needed by |
6 |
>> other packages like revdep-pax for PaX marking ELF objects. |
7 |
> Portage is able to calculate dependency information for |
8 |
> @preserved-rebuild based on the information stored in multiple files, |
9 |
> (NEEDED,) NEEDED.ELF.2, NEEDED.MACHO.3, NEEDED.XCOFF, NEEDED.PECOFF, etc. |
10 |
> For this purpose, it would be helpful if a generalised interface would |
11 |
> be exported, instead of the raw files (and their storage format |
12 |
> version). Portage, for instance, internally has a function that queries |
13 |
> for consumers of a specific library (file), abstracting away parts of |
14 |
> the shared library format internals, that otherwise would have to be |
15 |
> implemented by all tools. |
16 |
> |
17 |
> Fabian |
18 |
> |
19 |
> |
20 |
|
21 |
Here are some packages that raw-read VDB, other than portage itself: |
22 |
|
23 |
* sys-apps/elfix (python) |
24 |
* app-portage/gentoolkit (python) |
25 |
* app-portage/portage-utils (C) |
26 |
* app-portage/eix (C++) |
27 |
|
28 |
There are probably more, but I am familiar with their internals. |
29 |
Generally, these packages use VDB information for 1) lists of files and |
30 |
2) linking information. Again, caching this information (because it is |
31 |
expensive to re-calculate) and exporting it via a general interface is |
32 |
useful. |
33 |
|
34 |
Fabian thanks for pointing out the other NEEDED.* files. I wondered how |
35 |
portage did this for alternative exe formats. |
36 |
|
37 |
-- |
38 |
Anthony G. Basile, Ph.D. |
39 |
Gentoo Linux Developer [Hardened] |
40 |
E-Mail : blueness@g.o |
41 |
GnuPG FP : 1FED FAD9 D82C 52A5 3BAB DC79 9384 FA6E F52D 4BBA |
42 |
GnuPG ID : F52D4BBA |