blob: ed540b1f5f1ee00e834af302caa04825bb59edce [file] [log] [blame]
From fa72e847a7fb503daa25b5007edb28483a0f6e42 Mon Sep 17 00:00:00 2001
From: Serge Bazanski <serge@monogon.tech>
Date: Tue, 4 Jun 2024 14:31:54 +0200
Subject: [PATCH 6/6] bazel support: implement
---
BUILD.bazel | 45 ++++++++++++++++++++++++++++++++++++++++
WORKSPACE | 0
include/libtpms/config.h | 3 +++
src/tpm_library.c | 1 +
src/tpm_tpm2_interface.c | 1 +
5 files changed, 50 insertions(+)
create mode 100644 BUILD.bazel
create mode 100644 WORKSPACE
create mode 100644 include/libtpms/config.h
diff --git a/BUILD.bazel b/BUILD.bazel
new file mode 100644
index 0000000..591942d
--- /dev/null
+++ b/BUILD.bazel
@@ -0,0 +1,45 @@
+cc_library(
+ name = "libtpms_tpm2",
+ includes = [
+ "include",
+ ],
+ copts = [
+ "-Iexternal/_main~_repo_rules~libtpms/include/libtpms",
+ "-Iexternal/_main~_repo_rules~libtpms/src",
+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2",
+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2/crypto",
+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2/crypto/openssl",
+ ],
+ defines = [
+ "TPM_LIBTPMS_CALLBACKS",
+ "TPM_NV_DISK",
+ ],
+ deps = [
+ "@boringssl//:ssl",
+ ],
+ textual_hdrs = [
+ "src/tpm2/EccConstantData.inl",
+ ],
+ srcs = glob([
+ "include/config.h",
+ "include/libtpms/*.h",
+
+ "src/*.h",
+ "src/*.c",
+
+ "src/tpm2/*.h",
+ "src/tpm2/*.c",
+
+ "src/tpm2/crypto/*.h",
+ "src/tpm2/crypto/openssl/*.h",
+ "src/tpm2/crypto/openssl/*.c",
+
+ "src/monogon_unsafe.c",
+ ], [
+ # No TPM1.2 support.
+ "src/tpm_tpm12*",
+ ]),
+ visibility = [
+ "//visibility:public",
+ ],
+)
diff --git a/WORKSPACE b/WORKSPACE
new file mode 100644
index 0000000..e69de29
diff --git a/include/libtpms/config.h b/include/libtpms/config.h
new file mode 100644
index 0000000..bb4316e
--- /dev/null
+++ b/include/libtpms/config.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#define WITH_TPM2 1
diff --git a/src/tpm_library.c b/src/tpm_library.c
index 20153b7..a3c5694 100644
--- a/src/tpm_library.c
+++ b/src/tpm_library.c
@@ -63,6 +63,7 @@
#include "tpm_debug.h"
#include "tpm_error.h"
#include "tpm_library.h"
+#include "tpm_library_conf.h"
#include "tpm_library_intern.h"
#include "tpm_nvfilename.h"
#include "tpm_tis.h"
diff --git a/src/tpm_tpm2_interface.c b/src/tpm_tpm2_interface.c
index 4570d78..7e51b5e 100644
--- a/src/tpm_tpm2_interface.c
+++ b/src/tpm_tpm2_interface.c
@@ -65,6 +65,7 @@
#include "tpm_nvfile.h" // TPM_NVRAM_Loaddata()
#include "tpm_error.h"
#include "tpm_library_intern.h"
+#include "tpm_library_conf.h"
#include "tpm_nvfilename.h"
extern BOOL g_inFailureMode;
--
2.42.0