Moving uefi build to separate uefi manifest

Bug: 316570668
Test: checkout uefi-gbl-mainline, cp this topic, tools/bazel run //bootable/libbootloader:gbl_efi_dist --extra_toolchains=@gbl//toolchain:all
Change-Id: I7d9e4bbe0851f194f1f35b494e970973de189080
diff --git a/.gitignore b/.gitignore
index 23cfa17..5651a10 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,5 @@
 gbl/bazel-gbl
 gbl/bazel-out
 gbl/bazel-testlogs
+
+MODULE.bazel.lock
diff --git a/BUILD b/BUILD
new file mode 100644
index 0000000..badeb83
--- /dev/null
+++ b/BUILD
@@ -0,0 +1,22 @@
+# Copyright (C) 2024 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+
+copy_to_dist_dir(
+    name = "gbl_efi_dist",
+    data = ["@gbl//efi:all_platforms"],
+    dist_dir = "out/gbl_efi/",
+    flat = True,
+)
diff --git a/gbl/MODULE.bazel b/gbl/MODULE.bazel
new file mode 100644
index 0000000..00bb183
--- /dev/null
+++ b/gbl/MODULE.bazel
@@ -0,0 +1,6 @@
+###############################################################################
+# Bazel now uses Bzlmod by default to manage external dependencies.
+# Please consider migrating your external dependencies from WORKSPACE to MODULE.bazel.
+#
+# For more details, please check https://github.com/bazelbuild/bazel/issues/18958
+###############################################################################
diff --git a/gbl/bazel.WORKSPACE b/gbl/bazel.WORKSPACE
new file mode 100644
index 0000000..1902f87
--- /dev/null
+++ b/gbl/bazel.WORKSPACE
@@ -0,0 +1,26 @@
+# Copyright (C) 2024 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+load("//build/kernel/kleaf:workspace.bzl", "define_kleaf_workspace")
+
+local_repository(
+    name = "gbl",
+    path = "bootable/libbootloader/gbl",
+)
+
+define_kleaf_workspace(common_kernel_package = "@gbl//")
+
+load("@gbl//integration/aosp_u-boot-mainline:workspace.bzl", "define_gbl_workspace")
+
+define_gbl_workspace()
diff --git a/gbl/build.config.constants b/gbl/build.config.constants
new file mode 100644
index 0000000..370ff7d
--- /dev/null
+++ b/gbl/build.config.constants
@@ -0,0 +1,2 @@
+BRANCH=u-boot-mainline
+CLANG_VERSION=r475365b