1 |
Hello, |
2 |
|
3 |
I've finally got around to writing the header wrapping functions for |
4 |
multilib. That's an initial yet working draft. I will send patches in |
5 |
reply to this mail. |
6 |
|
7 |
The first patch just converts internal distutils-r1 root merging |
8 |
function to globally available multibuild_merge_root(). This is used |
9 |
in distutils-r1 to merge fakerooted distutils installs, and will be |
10 |
used to merge wrapped headers on top of regular install. |
11 |
|
12 |
The second one adds the actual code. The headers to wrap are listed |
13 |
in a global variable. After each install, the headers are moved to |
14 |
temporary location and wrapper is being prepared there. When all |
15 |
installs are done, all those files are merged on top of them. |
16 |
|
17 |
The per-ABI headers are installed onto /usr/include/$CHOST, repeating |
18 |
the directory structure from original /usr/include install. Wrapper |
19 |
includes the headers by full <$CHOST/foo/bar.h> path. |
20 |
|
21 |
Potential issues: |
22 |
|
23 |
- only /usr/include is supported (to be extended if necessary), |
24 |
|
25 |
- no 'fallback' code in header (to be added in the future), if no ABIs |
26 |
match, no code is given, |
27 |
|
28 |
- not tested thoroughly. I'd appreciate if someone could play with it |
29 |
a bit and see whether proper headers are actually included and it |
30 |
works everywhere. |
31 |
|
32 |
-- |
33 |
Best regards, |
34 |
Michał Górny |