• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2020 Google LLC
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
15import("//build_overrides/pigweed.gni")
16import("$dir_pw_build/target_types.gni")
17
18config("external_config_ed25519") {
19  include_dirs = [
20    "src/include",
21    "include/ed25519",
22  ]
23}
24
25config("external_config_p384") {
26  include_dirs = [
27    "src/include",
28    "include/p384",
29  ]
30}
31
32config("internal_config") {
33  visibility = [ ":*" ]  # Only targets in this file can depend on this.
34  include_dirs = [ "src/src" ]
35  cflags = [ "-Wno-cast-qual" ]
36}
37
38pw_static_library("cose-c_ed25519") {
39  public = [ "src/include/cose/cose.h" ]
40  sources = [
41    "cose_ed25519_deps.cc",
42    "src/src/Cose.cpp",
43    "src/src/CoseKey.cpp",
44    "src/src/Sign1.cpp",
45    "src/src/cbor.cpp",
46  ]
47  public_configs = [ ":external_config_ed25519" ]
48  configs = [ ":internal_config" ]
49  public_deps = [
50    "//third_party/boringssl:crypto",
51    "//third_party/cn-cbor:cn-cbor",
52  ]
53}
54
55pw_static_library("cose-c_p384") {
56  public = [ "src/include/cose/cose.h" ]
57  sources = [
58    "cose_p384_deps.cc",
59    "src/src/Cose.cpp",
60    "src/src/CoseKey.cpp",
61    "src/src/Sign1.cpp",
62    "src/src/cbor.cpp",
63  ]
64  public_configs = [ ":external_config_p384" ]
65  configs = [ ":internal_config" ]
66  public_deps = [
67    "//third_party/boringssl:crypto",
68    "//third_party/cn-cbor:cn-cbor",
69  ]
70}
71