| From 28b8651b0ccba1f41802a2aff12643b51436b32b Mon Sep 17 00:00:00 2001 | 
 | From: Lorenz Brun <lorenz@monogon.tech> | 
 | Date: Tue, 29 Aug 2023 19:02:45 +0200 | 
 | Subject: [PATCH] Add support for UEFI targets and OS | 
 |  | 
 | --- | 
 |  rust/platform/triple_mappings.bzl | 7 +++++++ | 
 |  1 file changed, 7 insertions(+) | 
 |  | 
 | diff --git a/rust/platform/triple_mappings.bzl b/rust/platform/triple_mappings.bzl | 
 | index 61a71c73..ce594522 100644 | 
 | --- a/rust/platform/triple_mappings.bzl | 
 | +++ b/rust/platform/triple_mappings.bzl | 
 | @@ -27,6 +27,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = [ | 
 |      "aarch64-fuchsia", | 
 |      "aarch64-linux-android", | 
 |      "aarch64-pc-windows-msvc", | 
 | +    "aarch64-unknown-uefi", | 
 |      "arm-unknown-linux-gnueabi", | 
 |      "armv7-linux-androideabi", | 
 |      "armv7-unknown-linux-gnueabi", | 
 | @@ -45,6 +46,7 @@ SUPPORTED_T2_PLATFORM_TRIPLES = [ | 
 |      "x86_64-linux-android", | 
 |      "x86_64-unknown-freebsd", | 
 |      "x86_64-unknown-none", | 
 | +    "x86_64-unknown-uefi", | 
 |  ] | 
 |   | 
 |  SUPPORTED_PLATFORM_TRIPLES = SUPPORTED_T1_PLATFORM_TRIPLES + SUPPORTED_T2_PLATFORM_TRIPLES | 
 | @@ -97,6 +99,7 @@ _SYSTEM_TO_BUILTIN_SYS_SUFFIX = { | 
 |      "none": "none", | 
 |      "openbsd": "openbsd", | 
 |      "solaris": None, | 
 | +    "uefi": "uefi", | 
 |      "unknown": None, | 
 |      "wasi": None, | 
 |      "windows": "windows", | 
 | @@ -113,6 +116,7 @@ _SYSTEM_TO_BINARY_EXT = { | 
 |      "ios": "", | 
 |      "linux": "", | 
 |      "none": "", | 
 | +    "uefi": ".efi", | 
 |      # This is currently a hack allowing us to have the proper | 
 |      # generated extension for the wasm target, similarly to the | 
 |      # windows target | 
 | @@ -132,6 +136,7 @@ _SYSTEM_TO_STATICLIB_EXT = { | 
 |      "ios": ".a", | 
 |      "linux": ".a", | 
 |      "none": ".a", | 
 | +    "uefi": ".lib", | 
 |      "unknown": "", | 
 |      "wasi": "", | 
 |      "windows": ".lib", | 
 | @@ -148,6 +153,7 @@ _SYSTEM_TO_DYLIB_EXT = { | 
 |      "ios": ".dylib", | 
 |      "linux": ".so", | 
 |      "none": ".so", | 
 | +    "uefi": "", # UEFI doesn't have dynamic linking | 
 |      "unknown": ".wasm", | 
 |      "wasi": ".wasm", | 
 |      "windows": ".dll", | 
 | @@ -191,6 +197,7 @@ _SYSTEM_TO_STDLIB_LINKFLAGS = { | 
 |      "none": [], | 
 |      "openbsd": ["-lpthread"], | 
 |      "solaris": ["-lsocket", "-lposix4", "-lpthread", "-lresolv"], | 
 | +    "uefi": [], | 
 |      "unknown": [], | 
 |      "uwp": ["ws2_32.lib"], | 
 |      "wasi": [], | 
 | --  | 
 | 2.41.0 | 
 |  |