Hi all,
As I see in [1], when we prepare port for dde_rump, it fetches from [2] and not from [3]. And I found that the "src/sys/sys/common_ansi.h" is not present in [2]. May be for this reason while building sculpt the error came up. Also in [1] I can see that its fetching libc files from "/src/common/lib/libc/arch/aarch64/atomic" and not from "/src/common/lib/libc/arch/riscv/atomic". Is it okay or should I update this in [1] ?

[1] repos/dde_rump/ports/dde_rump.port
[2] https://github.com/ssumpf/rump.git
[3] https://github.com/justincormack/netbsd-src

Were you suggesting to update this thing ? Please have a look and suggest steps I need to take.
I think this must be the reason for that fatal error. Kindly acknowledge.

Regards,
Pranab

On Mon, Mar 13, 2023 at 4:07 PM Sebastian Sumpf <Sebastian.Sumpf@genode-labs.com> wrote:
Hello Pranab,

On 3/13/23 07:47, Pranab Kumar Rout cs21m045 wrote:
> Hello genodians,
> While building sculpt for virt_qemu_riscv, I found that dde_rump port is not
> prepared for RISCV. Taking help from the community, I used the same approach as
> for arm_v8a (aarch64) as found under "repos/dde_rump/lib/mk/spec/arm_64/*" just
> for "spec/riscv" in order to enable rump support for RISC-V.
> I am getting this error. If you find it familiar, kindly help me
> checking library dependencies...
>    Library ldso_so_support
>      COMPILE  so_support.o
>      MERGE    ldso_so_support.lib.a
>    Library ld
>      CONVERT  ld.symbols.s
>      ASSEMBLE ld.symbols.o
>      MERGE ld.abi.so <http://ld.abi.so>
>    Library base
>      MERGE    base.lib.a
>    Library block_session
>      MERGE    block_session.lib.a
>    Library config
>      MERGE    config.lib.a
>    Library file_system
>      MERGE    file_system.lib.a
>    Library file_system_session
>      MERGE    file_system_session.lib.a
>    Library os
>      MERGE    os.lib.a
>    Library rump_include
>      MERGE    rump_include.lib.a
>    Library rump
>      COMPILE  __main.o
> In file included from
> /genode/depot/genodelabs/src/rump/2023-03-07-b/src/lib/dde_rump/src/sys/sys/types.h:47,
>                   from
> /genode/depot/genodelabs/src/rump/2023-03-07-b/src/lib/dde_rump/src/sys/lib/libkern/__main.c:33:
> /genode/depot/genodelabs/bin/riscv/rump/2023-03-07-b.build/var/libcache/rump/include/machine/ansi.h:3:10: fatal error: sys/common_ansi.h: No such file or directory
>      3 | #include <sys/common_ansi.h>
>        |  ^~~~~~~~~~~~~~~~~~~

When looking at "contrib/dde_rump-<hash>/src/lib/dde_rump_aarch64_backport" I
can see that only "src/sys/arch" [1] is checked out from [2] while
"common_ansi.h" resides under "src/sys/sys/common_ansi.h" [3]. Therefore, you
could adjust [1] to also checkout "src/sys" or "src/sys/sys" and update the
"INC_DIR" and/or symlinks under "dde_rump/lib/mk/spec/riscv" accordingly.

[1] repos/dde_rump/ports/dde_rump.port
[2] https://github.com/justincormack/netbsd-src
[3]
https://github.com/justincormack/netbsd-src/blob/master/src/sys/sys/common_ansi.h

*Note: When adjusting "dde_rump.port" you need to execute

! ./tool/ports/update_hash dde_rump

in order to create a new hash for the port.

Regards,

Sebastian

--
Sebastian Sumpf
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth





_______________________________________________
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users