blob: ed540b1f5f1ee00e834af302caa04825bb59edce [file] [log] [blame]
Serge Bazanski72c1f2b2024-06-04 13:42:48 +00001From fa72e847a7fb503daa25b5007edb28483a0f6e42 Mon Sep 17 00:00:00 2001
2From: Serge Bazanski <serge@monogon.tech>
3Date: Tue, 4 Jun 2024 14:31:54 +0200
4Subject: [PATCH 6/6] bazel support: implement
5
6---
7 BUILD.bazel | 45 ++++++++++++++++++++++++++++++++++++++++
8 WORKSPACE | 0
9 include/libtpms/config.h | 3 +++
10 src/tpm_library.c | 1 +
11 src/tpm_tpm2_interface.c | 1 +
12 5 files changed, 50 insertions(+)
13 create mode 100644 BUILD.bazel
14 create mode 100644 WORKSPACE
15 create mode 100644 include/libtpms/config.h
16
17diff --git a/BUILD.bazel b/BUILD.bazel
18new file mode 100644
19index 0000000..591942d
20--- /dev/null
21+++ b/BUILD.bazel
22@@ -0,0 +1,45 @@
23+cc_library(
24+ name = "libtpms_tpm2",
25+ includes = [
26+ "include",
27+ ],
28+ copts = [
Tim Windelschmidte1420ab2024-08-27 01:53:16 +020029+ "-Iexternal/_main~_repo_rules~libtpms/include/libtpms",
30+ "-Iexternal/_main~_repo_rules~libtpms/src",
31+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2",
32+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2/crypto",
33+ "-Iexternal/_main~_repo_rules~libtpms/src/tpm2/crypto/openssl",
Serge Bazanski72c1f2b2024-06-04 13:42:48 +000034+ ],
35+ defines = [
36+ "TPM_LIBTPMS_CALLBACKS",
37+ "TPM_NV_DISK",
38+ ],
39+ deps = [
40+ "@boringssl//:ssl",
41+ ],
42+ textual_hdrs = [
43+ "src/tpm2/EccConstantData.inl",
44+ ],
45+ srcs = glob([
46+ "include/config.h",
47+ "include/libtpms/*.h",
48+
49+ "src/*.h",
50+ "src/*.c",
51+
52+ "src/tpm2/*.h",
53+ "src/tpm2/*.c",
54+
55+ "src/tpm2/crypto/*.h",
56+ "src/tpm2/crypto/openssl/*.h",
57+ "src/tpm2/crypto/openssl/*.c",
58+
59+ "src/monogon_unsafe.c",
60+ ], [
61+ # No TPM1.2 support.
62+ "src/tpm_tpm12*",
63+ ]),
64+ visibility = [
65+ "//visibility:public",
66+ ],
67+)
68diff --git a/WORKSPACE b/WORKSPACE
69new file mode 100644
70index 0000000..e69de29
71diff --git a/include/libtpms/config.h b/include/libtpms/config.h
72new file mode 100644
73index 0000000..bb4316e
74--- /dev/null
75+++ b/include/libtpms/config.h
76@@ -0,0 +1,3 @@
77+#pragma once
78+
79+#define WITH_TPM2 1
80diff --git a/src/tpm_library.c b/src/tpm_library.c
81index 20153b7..a3c5694 100644
82--- a/src/tpm_library.c
83+++ b/src/tpm_library.c
84@@ -63,6 +63,7 @@
85 #include "tpm_debug.h"
86 #include "tpm_error.h"
87 #include "tpm_library.h"
88+#include "tpm_library_conf.h"
89 #include "tpm_library_intern.h"
90 #include "tpm_nvfilename.h"
91 #include "tpm_tis.h"
92diff --git a/src/tpm_tpm2_interface.c b/src/tpm_tpm2_interface.c
93index 4570d78..7e51b5e 100644
94--- a/src/tpm_tpm2_interface.c
95+++ b/src/tpm_tpm2_interface.c
96@@ -65,6 +65,7 @@
97 #include "tpm_nvfile.h" // TPM_NVRAM_Loaddata()
98 #include "tpm_error.h"
99 #include "tpm_library_intern.h"
100+#include "tpm_library_conf.h"
101 #include "tpm_nvfilename.h"
102
103 extern BOOL g_inFailureMode;
104--
1052.42.0
106