| Jan Schär | 51c6748 | 2025-05-05 13:11:55 +0000 | [diff] [blame] | 1 | load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_filegroup") |
| Tim Windelschmidt | 16cb15a | 2025-02-24 18:47:48 +0100 | [diff] [blame] | 2 | load("@rules_cc//cc:defs.bzl", "cc_binary") |
| 3 | |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 4 | cc_binary( |
| Jan Schär | 51c6748 | 2025-05-05 13:11:55 +0000 | [diff] [blame] | 5 | name = "efistub_bin", |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 6 | srcs = [("src/boot/efi/%s" % v) for v in [ |
| 7 | "assert.c", |
| 8 | "cpio.c", |
| 9 | "disk.c", |
| 10 | "graphics.c", |
| Lorenz Brun | 6ff6b45 | 2025-05-22 14:35:09 +0200 | [diff] [blame] | 11 | "console.c", |
| 12 | "devicetree.c", |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 13 | "linux.c", |
| Lorenz Brun | 6ff6b45 | 2025-05-22 14:35:09 +0200 | [diff] [blame] | 14 | "linux_x86.c", |
| 15 | "initrd.c", |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 16 | "measure.c", |
| Lorenz Brun | 6ff6b45 | 2025-05-22 14:35:09 +0200 | [diff] [blame] | 17 | "ticks.c", |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 18 | "pe.c", |
| 19 | "secure-boot.c", |
| 20 | "splash.c", |
| 21 | "stub.c", |
| Lorenz Brun | 6ff6b45 | 2025-05-22 14:35:09 +0200 | [diff] [blame] | 22 | "efi-string.c", |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 23 | "util.c", |
| 24 | ]] + glob(["src/boot/efi/*.h", "src/fundamental/*.c", "src/fundamental/*.h"]), |
| Lorenz Brun | 6ff6b45 | 2025-05-22 14:35:09 +0200 | [diff] [blame] | 25 | includes = ["src/fundamental", "src/boot/efi"], |
| 26 | copts = ["-std=gnu11", "-O2", "-DSD_BOOT", "-DGIT_VERSION=\\\"0.0.0-mngn\\\""], |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 27 | deps = ["@gnuefi//:gnuefi"], |
| Jan Schär | 51c6748 | 2025-05-05 13:11:55 +0000 | [diff] [blame] | 28 | target_compatible_with = [ |
| 29 | "@platforms//os:uefi", |
| 30 | ], |
| 31 | visibility = ["//visibility:private"], |
| 32 | ) |
| 33 | |
| 34 | platform_transition_filegroup( |
| 35 | name = "efistub", |
| 36 | srcs = [":efistub_bin"], |
| 37 | target_platform = select({ |
| 38 | "@platforms//cpu:x86_64": "@//build/platforms:uefi_x86_64", |
| 39 | "@platforms//cpu:aarch64": "@//build/platforms:uefi_aarch64", |
| 40 | }), |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 41 | visibility = ["//visibility:public"], |
| 42 | ) |