2018-08-07 22:30:17 +08:00
|
|
|
README
|
|
|
|
======
|
|
|
|
|
|
|
|
This directory provides support for the two-pass build. Its primary
|
|
|
|
purpose is to incorporate source logic generated by applications into the
|
|
|
|
kernel phase of the build.
|
|
|
|
|
|
|
|
In the two pass build, the application logic is built during the first
|
|
|
|
phase, pass 1. In that phase, the application may generate and install
|
2019-03-18 03:42:44 +08:00
|
|
|
source files into the pass1/ directory.
|
2018-08-07 22:30:17 +08:00
|
|
|
|
|
|
|
The operating system is built during phase 2 of the build. At that time,
|
|
|
|
those source files in the pass1/ directory will be built and incorporated
|
|
|
|
into the kernel address space.
|
|
|
|
|
|
|
|
The primary purpose of the pass1/ directory is to such application-
|
|
|
|
generated kernel symbol tables. For an example of the use of this
|
|
|
|
feature, look at apps/examples/module/drivers/Makefile. Kernel symbol
|
|
|
|
tables are needed to support kernel modules.
|
|
|
|
|
|
|
|
Of course, addition board-specific logic in, say, configs/<board>/src
|
|
|
|
would have to be included to make use of the application-installed symbol
|
|
|
|
tables.
|