[RTEMS Project] #3818: New build system
RTEMS trac
trac at rtems.org
Tue Sep 15 08:02:05 UTC 2020
#3818: New build system
-----------------------------+------------------------------
Reporter: Sebastian Huber | Owner: Sebastian Huber
Type: enhancement | Status: accepted
Priority: normal | Milestone: 6.1
Component: build | Version: 6
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: 3250 |
-----------------------------+------------------------------
Comment (by kgardas):
Replying to [comment:50 Sebastian Huber]:
> Replying to [comment:48 kgardas]:
> > unfortunately so far I struggle with translating this to waf, probably
should look for some waf doc or so. E.g. linking steps of appcpustart.o
into appstart.o is what makes me trouble. Also I'm not able to find out
how rtemsbsp lib is linked and its dependency specified...
>
> Thanks testing the new build system and for the bug report. I checked in
a fix, could you please test if this fixes the issues on this BSP.
>
> Working with waf is also not easy for me. Fortunately, we don't have
that many areas in the build which need a special treatment like this. It
was the first spot which needed to include a specially build object file
in a library.
Build builds both no-SMP and SMP BSPs fine, but neither of them runs on
neither qemu nor on real hardware. If you find helpful, then qemu
connected gdb shows those 3 traces over few seconds of BSP run:
{{{
Program received signal SIGINT, Interrupt.
0x00008d54 in _RBTree_Insert_inline (less=<optimized out>, key=<synthetic
pointer>, the_node=0x5ccc3d04, the_rbtree=0x736f4d74) at
../../../cpukit/include/rtems/score/rbtree.h:523
523 while ( *link != NULL ) {
(gdb) where
#0 0x00008d54 in _RBTree_Insert_inline (less=<optimized out>,
key=<synthetic pointer>, the_node=0x5ccc3d04, the_rbtree=0x736f4d74) at
../../../cpukit/include/rtems/score/rbtree.h:523
#1 _Priority_Plain_insert (priority=0, node=0x5ccc3d04,
aggregation=0xc031 <vesa_realmode_bootup_init+3305>) at
../../../cpukit/include/rtems/score/priorityimpl.h:417
#2 _Thread_queue_Priority_do_enqueue (heads=0xc031
<vesa_realmode_bootup_init+3305>, queue_context=0x6c6c6544,
the_thread=0x74 <_establish_stack+19>, queue=0x726f5020)
at ../../../cpukit/score/src/threadqops.c:484
#3 _Thread_queue_Queue_enqueue (enqueue=<optimized out>,
initialize=<optimized out>, queue_context=0x6c6c6544, the_thread=0x74
<_establish_stack+19>, queue=0x726f5020)
at ../../../cpukit/score/src/threadqops.c:96
#4 _Thread_queue_Priority_enqueue (queue=0x726f5020, the_thread=0x74
<_establish_stack+19>, queue_context=0x6c6c6544) at
../../../cpukit/score/src/threadqops.c:566
#5 0x6c616972 in ?? ()
#6 0x00000000 in ?? ()
(gdb) c
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x00008d48 in _Chain_Insert_unprotected (the_node=0x283d4 <idtHdl+2708>,
after_node=0x9002d0ff) at
../../../cpukit/include/rtems/score/chainimpl.h:666
666 before_node->previous = the_node;
(gdb) where
#0 0x00008d48 in _Chain_Insert_unprotected (the_node=0x283d4
<idtHdl+2708>, after_node=0x9002d0ff) at
../../../cpukit/include/rtems/score/chainimpl.h:666
#1 _Chain_Prepend_unprotected (the_node=0x283d4 <idtHdl+2708>,
the_chain=0x9002d0ff) at
../../../cpukit/include/rtems/score/chainimpl.h:737
#2 _Thread_queue_Queue_enqueue (enqueue=<optimized out>,
initialize=<optimized out>, queue_context=0x6c6c6544, the_thread=0x74
<_establish_stack+19>, queue=0x726f5020)
at ../../../cpukit/score/src/threadqops.c:95
#3 _Thread_queue_Priority_enqueue (queue=0x726f5020, the_thread=0x74
<_establish_stack+19>, queue_context=0x6c6c6544) at
../../../cpukit/score/src/threadqops.c:566
#4 0x6c616972 in ?? ()
#5 0x00000000 in ?? ()
(gdb) c
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x00008d54 in _RBTree_Insert_inline (less=<optimized out>, key=<synthetic
pointer>, the_node=0x5ccc3d04, the_rbtree=0x736f4d74) at
../../../cpukit/include/rtems/score/rbtree.h:523
523 while ( *link != NULL ) {
(gdb) where
#0 0x00008d54 in _RBTree_Insert_inline (less=<optimized out>,
key=<synthetic pointer>, the_node=0x5ccc3d04, the_rbtree=0x736f4d74) at
../../../cpukit/include/rtems/score/rbtree.h:523
#1 _Priority_Plain_insert (priority=0, node=0x5ccc3d04,
aggregation=0xc031 <vesa_realmode_bootup_init+3305>) at
../../../cpukit/include/rtems/score/priorityimpl.h:417
#2 _Thread_queue_Priority_do_enqueue (heads=0xc031
<vesa_realmode_bootup_init+3305>, queue_context=0x6c6c6544,
the_thread=0x74 <_establish_stack+19>, queue=0x726f5020)
at ../../../cpukit/score/src/threadqops.c:484
#3 _Thread_queue_Queue_enqueue (enqueue=<optimized out>,
initialize=<optimized out>, queue_context=0x6c6c6544, the_thread=0x74
<_establish_stack+19>, queue=0x726f5020)
at ../../../cpukit/score/src/threadqops.c:96
#4 _Thread_queue_Priority_enqueue (queue=0x726f5020, the_thread=0x74
<_establish_stack+19>, queue_context=0x6c6c6544) at
../../../cpukit/score/src/threadqops.c:566
#5 0x6c616972 in ?? ()
#6 0x00000000 in ?? ()
(gdb)
}}}
--
Ticket URL: <http://devel.rtems.org/ticket/3818#comment:51>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list