Commit Graph

21 Commits

Author SHA1 Message Date
Warner Losh
781c4d47f2 Install the 4th files in sys/boot/forth instead of each loader
Also, move generation of loader.help into loader.mk. Set HELP_FILES=
to disable this (so we only install one help file, for now). At the
same time remove some duplicate -I lines. Fix several FILES= and
CLEANFILES= into the += form since we're touching both of those in the
.mk files. Make sure we only build one loader.help file per platform
in a unified way (we were building many on some, with the last to
install winning, though often they were the same text).

Also, we're now installing loader.rc and menu.rc everywhere. arm and
mips uboot installed these as menu.rc.sample, but there's no need
since the loader.rc for those platforms doesn't do menu.rc processing
by default. pcibios.4th is now installed everywhere, but will failsafe
on non x86 platforms (it isn't loaded by default anywhere).

These changes are too intertwined to do separately since aspects of
each are required to have a bug-free commit.

Sponsored by: Netflix
2017-11-10 23:54:58 +00:00
Warner Losh
4728f534ff Move LOADER_{NO,}_GELI_SUPPORT to MK_LOADER_GELI
Transition to WITH/WITHOUT_LOADER_GELI to flag support or not of GELI
in the boot loaders. Add HAVE_GELI so components can flag they need
support (since it's too large to include everywhere). Add temporary
warnings for the old forms to ease transition.

Also, update test script to build without GELI on x86.

Sponsored by: Netflix
2017-11-10 23:54:48 +00:00
Warner Losh
63c69e1beb Centralize all 32-bit builds on 64-bit platform stuff.
Move the addition of the -m32 and other flags to defs.mk. Remove
redunant copies of -m32 that come from multiple locations.

Sponsored by: Netflix
2017-11-06 15:22:24 +00:00
Warner Losh
25f44449ad Move machine and other link creation to defs.mk
Steal the code from kmod.mk and use it to automatically create
links. Modify it a little for the needs of the loader (no need to
guess the OBJS dependency, and we have 32-on-64 cases to contend
with). Remove 15 redundant implementations (which were mostly
different, but kinda the same).

A future commit should factor out this code and that of kmod.mk so we
have only one copy of it in the tree.

Sposnored by: Netflix
2017-11-06 15:22:04 +00:00
Warner Losh
7e3b76ca57 Define LIBFICL32 to be libficl.a on i386 and libficl32.a on amd64.
Sponsored by: Netflix
2017-11-06 15:21:45 +00:00
Warner Losh
268e2d82c4 Powerpc is a 32-bit boot loader.
Stop building libsa32 on powerpc. Build everything on powerpc64
-m32. Transition to using LIBSA from LIBSA32. This elimiantes the
useless build of libsa on powerpc64 (nothing used to use it) and
should be a more direct way of saying this.

Sponsored by: Netflix
2017-11-06 15:21:39 +00:00
Warner Losh
6db64731d7 Revert "WIP: centralize machine links"
This reverts commit accidentally pushed r325376
2017-11-04 03:08:03 +00:00
Warner Losh
796adb9625 Revert "mostly libsa"
This reverts accidentally pushed r325377.
2017-11-04 03:07:58 +00:00
Warner Losh
cc088d92e2 mostly libsa 2017-11-04 03:01:52 +00:00
Warner Losh
2caf918121 WIP: centralize machine links 2017-11-04 03:01:11 +00:00
Warner Losh
8689c387ee For amd64, compile both zfs and zfs32 libraries.
We have a separate copy of zfs for userboot. However, we don't need it
if we compile both 32 and 64 bit ZFS libraries. Remove redunant copies
of zfs related .o files now that both versions are
available. Introduce ZFSSRC and use it everywhere.

Sponsored by: Netflix
2017-10-30 23:14:59 +00:00
Warner Losh
f08693930b Define new EFI variables
Define EFISRC, EFIINC and EFIINCMD. Use them, as well as using other
symbols defined in defs.mk. Prefer <bsd.init.mk> to ../../Makefile.inc
or <src.opts.mk>.

Sponsored by: Netflix
2017-10-29 05:26:59 +00:00
Warner Losh
b533f63ed0 Move BINDIR definition to defs.mk, and override where it isn't /boot
(those files already do that so weren't changed).

Sponsored by: Netflix
2017-10-25 15:27:58 +00:00
Warner Losh
cb3ee5c694 End source directories with SRC rather than a hodgepodge of names
BOOTDIR->BOOTSRC
FICLDIR->FICLSRC
LDR_MI->LDRSRC

This matches the patterns used in the rest of the system a bit vetter.

Suggested by: rgrimes@
Sponsored by: Netflix
2017-10-22 22:50:08 +00:00
Warner Losh
392c874409 Move fdt and uboot defines into common uboot.mk.
Sponsored by: Netflix
2017-10-22 22:49:51 +00:00
Warner Losh
cced8b11d9 Define LIBSA32 to LIBSA on i386 to fix build.
Sponsored by: Netflix
2017-10-22 07:25:28 +00:00
Warner Losh
d1d01d440c Introduce BOOTOBJ: The top level object directory for the boot tree
and use it in preference to spelling out the path.

Sponsored by: Netflix
2017-10-22 03:52:08 +00:00
Warner Losh
913dd6b0fa Use BOOTDIR more consistently in defs.mk rather than repeat sys/boot.
Sponsored By: Netflix
2017-10-22 03:52:03 +00:00
Warner Losh
a7fa2fb669 LOADER_foo_SUPPORTED 2017-10-16 03:59:52 +00:00
Warner Losh
6b9f688352 Move all the ficl common code into ficl.mk
There's a number of copies of basically identical code to enable
building forth in /boot/loader. Move it all into ficl.mk.
2017-10-16 03:59:44 +00:00
Warner Losh
8ed8e50775 create defs.mk for common definitions 2017-10-16 03:59:38 +00:00