mirror of
https://git.rtems.org/rtems-docs/
synced 2025-05-15 23:06:39 +08:00
73 lines
1.1 KiB
Plaintext
73 lines
1.1 KiB
Plaintext
'
|
|
' Executable Application
|
|
'
|
|
' Copyright (c) 2018 Chris Johns <chrisj@rtems.org>
|
|
' All rights reserved.
|
|
'
|
|
@startuml
|
|
|
|
folder Application {
|
|
file app1.c
|
|
file app2.c
|
|
}
|
|
|
|
rectangle "3rd Party\nHeaders" as 3rd_party_headers {
|
|
folder headers as pkg_headers
|
|
}
|
|
|
|
folder rtems_headers {
|
|
file rtems.h
|
|
}
|
|
|
|
folder std_headers {
|
|
file stddef.h
|
|
file stdio.h
|
|
}
|
|
|
|
agent cc
|
|
file objects
|
|
|
|
Application --> cc : app1.c\napp2.c
|
|
pkg_headers --> cc : -Ipkg
|
|
rtems_headers --> cc : -Irtems
|
|
std_headers --> cc
|
|
cc --> objects: **compile**
|
|
|
|
rectangle "3rd Party\nLibraries" as 3rd_party {
|
|
package libpkg as pkg
|
|
}
|
|
|
|
folder librtems {
|
|
folder rtems
|
|
folder posix
|
|
folder sapi
|
|
folder score
|
|
}
|
|
|
|
folder stdlibs {
|
|
file libc
|
|
file libm
|
|
file "libstdc++"
|
|
}
|
|
|
|
agent ld
|
|
|
|
objects --> ld : app1.o\napp2.o
|
|
pkg --> ld : -lpkg
|
|
librtems --> ld : -lrtems
|
|
stdlibs --> ld : "-lm\n-lstdc++"
|
|
|
|
file executable
|
|
|
|
ld --> executable: **link**
|
|
|
|
rectangle Target {
|
|
agent bootloader
|
|
agent memory
|
|
}
|
|
|
|
executable --> bootloader: **load**
|
|
bootloader -right-> memory: **execute**
|
|
|
|
@enduml
|