1 |
Ha, I did not think about the possibility that "rm -f ... || die" would |
2 |
delete nothing but refuse to die! |
3 |
|
4 |
Replacing .so with $(get_libname) seems to work for me. |
5 |
|
6 |
Thanks a lot Francois! |
7 |
|
8 |
On Thu, Sep 14, 2017 at 6:57 PM, Francois Bissey < |
9 |
francois.bissey@×××××××××××××.nz> wrote: |
10 |
|
11 |
> It is very curious. The QA check happen after the install phase. And |
12 |
> your log shows that’s when you get the message so somehow those files are |
13 |
> not |
14 |
> properly deleted. I am guessing that because “rm -f” is used the “die” |
15 |
> statement |
16 |
> may not be invoked. |
17 |
> |
18 |
> Ah! the rm command is elf centric it looks for .so files when on OS X we |
19 |
> have .dylib |
20 |
> files. We need to replace .so with $(get_libname) from the multilib eclass. |
21 |
> |
22 |
> François |
23 |
> |
24 |
> > On 15/09/2017, at 10:37, Anton Molyboha <anton.stay.connected@×××××.com> |
25 |
> wrote: |
26 |
> > |
27 |
> > Hi all, |
28 |
> > |
29 |
> > I am trying to build mono under Prefix on my Mac, and it fails - but I |
30 |
> think it _almost_ works and I just need a little help. |
31 |
> > |
32 |
> > The emerge error is "invalid install_name found", the culprits being |
33 |
> some mcs.exe.dylib and mscorlib.dll.dylib (the build.log and requisite |
34 |
> emerge output are attached) |
35 |
> > At first I thought that some linker flags are off, but then found this |
36 |
> snippet from the ebuild: |
37 |
> > |
38 |
> > multilib_src_install() { |
39 |
> > default_src_install |
40 |
> > |
41 |
> > # Remove files not respecting LDFLAGS and that we are not supposed |
42 |
> to provide, see Fedora |
43 |
> > # mono.spec and http://www.mail-archive.com/ |
44 |
> mono-devel-list@××××××××××××.com/msg24870.html |
45 |
> > # for reference. |
46 |
> > rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mscorlib.dll.so || die |
47 |
> > rm -f "${ED}"/usr/lib/mono/{2.0,4.5}/mcs.exe.so || die |
48 |
> > } |
49 |
> > |
50 |
> > Looks like those files should just never get to be checked for the |
51 |
> install_name -- yet, apparently, the check happens before the execution |
52 |
> gets to those "rm" lines. |
53 |
> > |
54 |
> > So, the question is: is there a way to make the ebuild delete the |
55 |
> offenders between compilation and QA checks? How can I do that -- and how |
56 |
> do I find the build directory in a portable way? |
57 |
> > |
58 |
> > Thanks! |
59 |
> > Anton |
60 |
> > <emerge-info.txt><build.log><emerge-pqv.txt> |
61 |
> |
62 |
> |