Files
prysm/third_party/com_github_supranational_blst.patch

133 lines
2.8 KiB
Diff

diff --color -urN a/BUILD.bazel b/BUILD.bazel
--- a/BUILD.bazel 1969-12-31 18:00:00.000000000 -0600
+++ b/BUILD.bazel 2025-09-17 10:29:51.159884226 -0500
@@ -0,0 +1,128 @@
+load("@prysm//tools/go:def.bzl", "go_library")
+load("@io_bazel_rules_go//go:def.bzl", "go_test")
+
+config_setting(
+ name = "blst_modern",
+ constraint_values = [
+ "@platforms//os:linux",
+ "@platforms//cpu:x86_64",
+ ],
+ values = {
+ "define": "blst_modern=true",
+ },
+)
+
+go_library(
+ name = "go_default_library",
+ srcs = [
+ "bindings/go/blst.go",
+ "bindings/go/cgo_server.c",
+ ],
+ cgo = True,
+ copts = [
+ "-D__BLST_CGO__",
+ "-Ibindings",
+ "-Isrc",
+ "-O2",
+ ] + select({
+ "@io_bazel_rules_go//go/platform:amd64": [
+ "-mno-avx",
+ "-D__ADX__",
+ ],
+ "//conditions:default": [],
+ }) + select({
+ "//conditions:default": [
+ "-D__BLST_PORTABLE__",
+ ],
+ ":blst_modern": [],
+ }),
+ cdeps = [":blst"],
+ importpath = "github.com/supranational/blst/bindings/go",
+ visibility = ["//visibility:public"],
+)
+
+go_test(
+ name = "go_default_test",
+ srcs = [
+ "bindings/go/blst_htoc_test.go",
+ "bindings/go/blst_minpk_test.go",
+ "bindings/go/blst_minsig_test.go",
+ ],
+ embed = [":go_default_library"],
+ data = glob([
+ "bindings/go/hash_to_curve/*.json",
+ ]),
+)
+
+cc_library(
+ name = "blst",
+ srcs = [
+ "bindings/blst.h",
+ "bindings/blst_aux.h",
+ ],
+ hdrs = [
+ "bindings/blst.h",
+ "bindings/blst_aux.h",
+ ],
+ deps = [
+ ":src",
+ ":asm",
+ ],
+ strip_include_prefix = "bindings",
+ visibility = ["//visibility:public"],
+)
+
+cc_library(
+ name = "asm_hdrs",
+ hdrs = glob([
+ "build/**/*.s",
+ "build/**/*.S",
+ ], exclude = ["build/assembly.s"]),
+)
+
+cc_library(
+ name = "asm",
+ srcs = [
+ "build/assembly.S",
+ ],
+ copts = [
+ "-O2",
+ ] + select({
+ "@io_bazel_rules_go//go/platform:amd64": [
+ "-mno-avx",
+ "-D__ADX__",
+ ],
+ "//conditions:default": [],
+ }) + select({
+ "//conditions:default": [
+ "-D__BLST_PORTABLE__",
+ ],
+ ":blst_modern": [],
+ }),
+ deps = [":asm_hdrs"],
+ linkstatic = True,
+)
+
+cc_library(
+ name = "hdrs",
+ hdrs = glob(
+ [
+ "src/*.c",
+ "src/*.h",
+ ],
+ exclude = [
+ "src/client_*.c",
+ ],
+ ),
+ strip_include_prefix = "src",
+)
+
+cc_library(
+ name = "src",
+ srcs = [
+ "src/server.c",
+ ],
+ deps = [
+ ":hdrs",
+ ],
+)