git: fe3f792f9a29 - main - Add build option for the ia32 loader

From: Warner Losh <imp_at_FreeBSD.org>
Date: Fri, 20 Sep 2024 14:59:16 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=fe3f792f9a2982678138e239f5e8d66e8ee71aeb

commit fe3f792f9a2982678138e239f5e8d66e8ee71aeb
Author:     Ahmad Khalifa <ahmadkhalifa570@gmail.com>
AuthorDate: 2024-05-14 19:27:06 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-09-20 14:45:05 +0000

    Add build option for the ia32 loader
    
    In preparation for supporting 64-bit machines with 32-bit UEFI firmware,
    add a build option for compiling the ia32 loader. Currently unused.
    
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1098
---
 share/mk/src.opts.mk                    | 5 +++++
 tools/build/options/WITHOUT_LOADER_IA32 | 1 +
 tools/build/options/WITH_LOADER_IA32    | 1 +
 3 files changed, 7 insertions(+)

diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk
index 179b444a8ec7..f9d94ab663b0 100644
--- a/share/mk/src.opts.mk
+++ b/share/mk/src.opts.mk
@@ -132,6 +132,7 @@ __DEFAULT_YES_OPTIONS = \
     LOADER_OFW \
     LOADER_PXEBOOT \
     LOADER_UBOOT \
+    LOADER_IA32 \
     LOCALES \
     LOCATE \
     LPR \
@@ -330,6 +331,10 @@ BROKEN_OPTIONS+=LOADER_KBOOT
 .if (${__T:Marm*} == "" && ${__T:Mpowerpc*} == "") || ${__T} == "powerpc64le"
 BROKEN_OPTIONS+=LOADER_UBOOT
 .endif
+# The 32-bit UEFI loader is only for amd64
+.if ${__T} != "amd64"
+BROKEN_OPTIONS+=LOADER_IA32
+.endif
 # GELI and Lua in loader currently cause boot failures on powerpc.
 # Further debugging is required -- probably they are just broken on big
 # endian systems generically (they jump to null pointers or try to read
diff --git a/tools/build/options/WITHOUT_LOADER_IA32 b/tools/build/options/WITHOUT_LOADER_IA32
new file mode 100644
index 000000000000..2df947216b8f
--- /dev/null
+++ b/tools/build/options/WITHOUT_LOADER_IA32
@@ -0,0 +1 @@
+Do not build the 32-bit UEFI loader.
diff --git a/tools/build/options/WITH_LOADER_IA32 b/tools/build/options/WITH_LOADER_IA32
new file mode 100644
index 000000000000..2030619dbb85
--- /dev/null
+++ b/tools/build/options/WITH_LOADER_IA32
@@ -0,0 +1 @@
+Build the 32-bit UEFI loader.