blob: 28d7d3d58a4f0272d1a83f7f4b325c7255e15851 [file] [log] [blame]
Yecheng Zhao08dd6a52021-05-10 15:50:22 -07001# Copyright 2021 The Pigweed Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4# use this file except in compliance with the License. You may obtain a copy of
5# the License at
6#
7# https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations under
13# the License.
14
15load(
16 "//pw_build:pigweed.bzl",
17 "pw_cc_facade",
18 "pw_cc_library",
19)
20
21package(default_visibility = ["//visibility:public"])
22
Rob Mohr5fc25412021-06-23 09:35:23 -070023licenses(["notice"])
Yecheng Zhao08dd6a52021-05-10 15:50:22 -070024
25pw_cc_facade(
26 name = "pw_tls_client_facade",
27 hdrs = [
28 "public/pw_tls_client/options.h",
29 "public/pw_tls_client/session.h",
30 "public/pw_tls_client/status.h",
31 ],
32 includes = ["public"],
33 deps = [
34 "//pw_assert",
35 "//pw_bytes",
36 "//pw_result",
37 "//pw_status",
38 "//pw_stream",
Rob Mohrcc471b92021-06-22 07:23:55 -070039 ],
Yecheng Zhao08dd6a52021-05-10 15:50:22 -070040)
41
42pw_cc_library(
43 name = "pw_tls_client",
Rob Mohrcc471b92021-06-22 07:23:55 -070044 deps = [":pw_tls_client_facade"],
Yecheng Zhao08dd6a52021-05-10 15:50:22 -070045)
46
47# TODO(zyecheng): Add a "backend_multiplexer" target once BoringSSL/MbedTLS is
48# ready.
Yecheng Zhaoe5dbfc02021-06-07 16:38:48 -070049
50pw_cc_facade(
Yecheng Zhao3e692522021-06-28 09:09:51 -070051 name = "entropy_facade",
Yecheng Zhaoe5dbfc02021-06-07 16:38:48 -070052 hdrs = [
53 "public/pw_tls_client/entropy.h",
54 ],
55 includes = ["public"],
56 deps = [
57 "//pw_bytes",
58 "//pw_status",
Rob Mohr5d694842021-06-22 12:02:34 -070059 ],
Yecheng Zhaoe5dbfc02021-06-07 16:38:48 -070060)
Yecheng Zhao568e1652021-06-21 15:47:45 -070061
Yecheng Zhao3e692522021-06-28 09:09:51 -070062pw_cc_library(
63 name = "fake_entropy",
64 srcs = [ "fake_entropy.cc" ],
65 deps = [
66 ":entropy_facade"
67 ],
68)
69
Yecheng Zhao568e1652021-06-21 15:47:45 -070070# TODO(zyecheng): The target requires a build_time.h header that defines a
71# 'constexpr size_t kBuildTimeMicrosecondsUTC' variable for storing the build time.
72# In gn build, this is generated by a python action target. Need to figure out a
73# solution in bazel build.
74pw_cc_library(
75 name = "build_time",
76 srcs = [
77 "build_time.cc",
78 ],
79)
Yecheng Zhao3cdb68e2021-06-09 15:36:05 -070080
81pw_cc_library(
82 name = "crlset",
83 hdrs = ["public/pw_tls_client/crlset.h"],
84 includes = ["public"],
85 deps = [
86 "//pw_bytes",
87 ],
88)