| # Copyright 2019 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| library("zxcrypt-dev") { |
| shared = true |
| static = true |
| sources = [ |
| "ddk-volume.cpp", |
| "volume.cpp", |
| ] |
| |
| public_deps = [ |
| # <zxcrypt/volume.h> has #include <crypto/aead.h> (among others). |
| "$zx/system/ulib/crypto:headers", |
| |
| # <zxcrypt/ddk-volume.h> has #include <ddk/device.h>. |
| "$zx/system/ulib/ddk:headers", |
| ] |
| |
| configs += [ "$zx/public/gn/config:integer-paranoia" ] |
| |
| # To minimize the set of libraries that we depend on that need to be loaded |
| # from /boot/lib in early boot, we statically link most of our dependencies. |
| deps = [ |
| "$zx/system/banjo/ddk.protocol.block", |
| "$zx/system/banjo/ddk.protocol.block.volume", |
| "$zx/system/ulib/crypto:zircon-crypto.static", |
| "$zx/system/ulib/ddk", |
| "$zx/system/ulib/driver", |
| "$zx/system/ulib/fbl", |
| "$zx/system/ulib/fs-management:headers", # only used for zxcrypt_magic |
| "$zx/system/ulib/sync", |
| "$zx/system/ulib/zircon", |
| "$zx/system/ulib/zircon-internal", |
| "$zx/system/ulib/zx", |
| "$zx/third_party/ulib/uboringssl", |
| ] |
| configs += [ "$zx/public/gn/config:static-libc++" ] |
| } |
| |
| library("zxcrypt-fdio") { |
| shared = true |
| sources = [ |
| "fdio-volume.cpp", |
| "volume.cpp", |
| ] |
| public_deps = [ |
| # <zxcrypt/volume.h> has #include <crypto/aead.h> (among others). |
| "$zx/system/ulib/crypto:headers", |
| ] |
| configs += [ "$zx/public/gn/config:integer-paranoia" ] |
| deps = [ |
| "$zx/system/fidl/fuchsia-device:c", |
| "$zx/system/fidl/fuchsia-hardware-block:c", |
| "$zx/system/fidl/fuchsia-hardware-block-volume:c", |
| "$zx/system/fidl/fuchsia-hardware-zxcrypt:c", |
| "$zx/system/ulib/crypto", |
| "$zx/system/ulib/fbl", |
| "$zx/system/ulib/fdio", |
| "$zx/system/ulib/fs-management:headers", # only used for zxcrypt_magic |
| "$zx/system/ulib/fzl", |
| "$zx/system/ulib/kms-stateless", |
| "$zx/system/ulib/ramdevice-client:static", |
| "$zx/system/ulib/sync", |
| "$zx/system/ulib/zircon", |
| "$zx/system/ulib/zircon-internal", |
| "$zx/system/ulib/zx", |
| "$zx/third_party/ulib/uboringssl", |
| ] |
| configs += [ "$zx/public/gn/config:static-libc++" ] |
| } |