e713d3a013
According to comments in the Makefile, to make pxeboot work we need to have crt0.o first. This is needed because the simplified loader in pxeboot assumes that the startup code is at offset 0 in this binary. In normal booting, the start address can be obtained from headers of the binary, but since pxeboot encodes this as a pure binary, it has no way of knowing where that is and assumes 0. Added comments to that effect in the Makefile. We've done this by adding it to OBJS before all the other .o's are added. However, there's a problem. This also adds it to the CLEANFILES variable, which causes it to be removed from multiple places. The dependencies may also cause it to be re-built at a time that's after boot2 is built. This causes installs to fail because at install time boot2 is considered to be out of date and the programs to rebuild it are no longer in the path. Cope with this problem by just adding it to LDFLAGS instead. Glanced at by: kevans ("I thought that went in ages ago") Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D28876 |
||
---|---|---|
.. | ||
boot0 | ||
boot0sio | ||
boot2 | ||
btx | ||
cdboot | ||
common | ||
gptboot | ||
gptzfsboot | ||
isoboot | ||
libfirewire | ||
libi386 | ||
loader | ||
loader_4th | ||
loader_lua | ||
loader_simp | ||
mbr | ||
pmbr | ||
pxeldr | ||
zfsboot | ||
boot.ldscript | ||
Makefile | ||
Makefile.inc |