On 04/21/2016 01:12 PM, Jiri Svoboda wrote:
> If it fixes the MIPS build, so much the better :-)

Well, now all builds appear to be broken :-)

The error message looks like this:

In file included from ../../lib/c/include/rtld/dynamic.h:39:0,
                 from ../../lib/c/include/rtld/rtld.h:42,
                 from ../../lib/c/include/elf/elf_load.h:40,
                 from generic/elf/elf_load.c:40:
../../lib/c/include/rtld/elf_dyn.h:40:34: fatal error:
libarch/rtld/elf_dyn.h: No such file or directory
 #include <libarch/rtld/elf_dyn.h>
                                  ^
compilation terminated.

Jakub

> 
> Cheers,
> Jiri
> 
> 
> Od: Jakub Jermář
> 
> 
>     Hi Jiri,
> 
>     Looks like mainline,2461 broke the MIPS builds:
> 
>     revno: 2461
>     committer: Jiri Svoboda <jiri@wiwaxia>
>     branch nick: main-clone
>     timestamp: Tue 2016-04-19 19:04:15 +0200
>     message:
>     __IN_SHARED_LIBC__ is not needed.
>     diff:
>     === modified file 'uspace/lib/c/generic/libc.c'
>     --- uspace/lib/c/generic/libc.c 2015-06-06 14:41:16 +0000
>     +++ uspace/lib/c/generic/libc.c 2016-04-19 17:04:15 +0000
>     @@ -88,7 +88,7 @@
>     int argc;
>     char **argv;
> 
>     -#ifdef __IN_SHARED_LIBC__
>     +#ifdef __PIC__
>     if (__pcb != NULL && __pcb->rtld_runtime != NULL) {
>     runtime_env = (runtime_env_t *) __pcb->rtld_runtime;
>     }
> 
>     This should be compiled in only when runtime_env is declared, which is
>     only when CONFIG_RTLD is defined. However, __PIC__ appears to be defined
>     even for static MIPS builds for some reason, so runtime_env is
>     undeclared and the build fails.
> 
>     This can be oviously fixed by:
> 
>     === modified file 'uspace/lib/c/generic/libc.c'
>     --- uspace/lib/c/generic/libc.c 2016-04-19 17:04:15 +0000
>     +++ uspace/lib/c/generic/libc.c 2016-04-20 19:23:05 +0000
>     @@ -88,7 +88,7 @@
>     int argc;
>     char **argv;
> 
>     -#ifdef __PIC__
>     +#ifdef CONFIG_RTLD
>     if (__pcb != NULL && __pcb->rtld_runtime != NULL) {
>     runtime_env = (runtime_env_t *) __pcb->rtld_runtime;
>     }
> 
> 
>     But I am not sure this was your original intention as libs gets to built
>     twice during dynamically linked buillds - once statically and once
>     dynamically.
> 
>     Jakub
> 
> 
>     _______________________________________________
>     HelenOS-devel mailing list
>     [email protected]
>     http://lists.modry.cz/listinfo/helenos-devel
> 
> 
> 
> _______________________________________________
> HelenOS-devel mailing list
> [email protected]
> http://lists.modry.cz/listinfo/helenos-devel
> 

_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/listinfo/helenos-devel

Reply via email to