blob: b0b4839e7df96ee1a579179f81d4af52cef38469 [file] [log] [blame]
Tom Cherry37b5ada2017-05-12 17:05:22 -07001//
2// Copyright (C) 2017 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17cc_defaults {
18 name: "fs_mgr_defaults",
19 sanitize: {
20 misc_undefined: ["integer"],
21 },
22 local_include_dirs: ["include/"],
Chih-Hung Hsieh122352d2017-10-02 15:20:07 -070023 cflags: [
24 "-Wall",
25 "-Werror",
26 "-Wno-unused-variable",
27 ],
Bowgo Tsai80281892017-12-12 00:47:43 +080028 cppflags: [
29 "-std=gnu++1z",
30 ],
Tom Cherry37b5ada2017-05-12 17:05:22 -070031}
32
33cc_library_static {
34 name: "libfs_mgr",
35 defaults: ["fs_mgr_defaults"],
Jiyong Parka0e75042018-05-24 14:11:00 +090036 recovery_available: true,
Tom Cherry37b5ada2017-05-12 17:05:22 -070037 export_include_dirs: ["include"],
38 include_dirs: ["system/vold"],
39 srcs: [
40 "fs_mgr.cpp",
41 "fs_mgr_dm_ioctl.cpp",
42 "fs_mgr_format.cpp",
Tom Cherry37b5ada2017-05-12 17:05:22 -070043 "fs_mgr_verity.cpp",
44 "fs_mgr_avb.cpp",
45 "fs_mgr_avb_ops.cpp",
David Anderson62e5b202018-05-01 17:09:17 -070046 "fs_mgr_dm_linear.cpp",
Jiyong Parke7df1f72017-06-28 11:17:30 +090047 ],
48 static_libs: [
Jiyong Parke7df1f72017-06-28 11:17:30 +090049 "libfec",
50 "libfec_rs",
51 "libbase",
52 "libcrypto_utils",
53 "libcrypto",
54 "libext4_utils",
55 "libsquashfs_utils",
56 "libselinux",
57 "libavb",
58 "libfstab",
Sandeep Patil59f04ee2018-05-30 13:46:55 -070059 "libdm",
David Andersonea3b8ac2018-06-07 15:36:09 -070060 "liblp",
Jiyong Parke7df1f72017-06-28 11:17:30 +090061 ],
62 export_static_lib_headers: [
63 "libfstab",
Sandeep Patil59f04ee2018-05-30 13:46:55 -070064 "libdm",
David Andersonea3b8ac2018-06-07 15:36:09 -070065 "liblp",
Jiyong Parke7df1f72017-06-28 11:17:30 +090066 ],
67 whole_static_libs: [
David Andersonea3b8ac2018-06-07 15:36:09 -070068 "liblp",
Jin Qian42d81372017-04-21 16:56:34 -070069 "liblogwrap",
Sandeep Patil59f04ee2018-05-30 13:46:55 -070070 "libdm",
Jiyong Parke7df1f72017-06-28 11:17:30 +090071 "libfstab",
Tom Cherry37b5ada2017-05-12 17:05:22 -070072 ],
Tom Cherry31121ca2017-10-10 13:30:57 -070073 cppflags: [
Tom Cherry31121ca2017-10-10 13:30:57 -070074 "-DALLOW_ADBD_DISABLE_VERITY=0",
75 ],
Tom Cherry37b5ada2017-05-12 17:05:22 -070076 product_variables: {
77 debuggable: {
Tom Cherry31121ca2017-10-10 13:30:57 -070078 cppflags: [
79 "-UALLOW_ADBD_DISABLE_VERITY",
80 "-DALLOW_ADBD_DISABLE_VERITY=1",
81 ],
Tom Cherry37b5ada2017-05-12 17:05:22 -070082 },
Tom Cherry37b5ada2017-05-12 17:05:22 -070083 },
84}
Jiyong Parke7df1f72017-06-28 11:17:30 +090085
86cc_library_static {
87 name: "libfstab",
88 vendor_available: true,
Jiyong Parka0e75042018-05-24 14:11:00 +090089 recovery_available: true,
Jiyong Parke7df1f72017-06-28 11:17:30 +090090 defaults: ["fs_mgr_defaults"],
91 srcs: [
92 "fs_mgr_fstab.cpp",
93 "fs_mgr_boot_config.cpp",
94 "fs_mgr_slotselect.cpp",
95 ],
96 export_include_dirs: ["include_fstab"],
97 header_libs: ["libbase_headers"],
98}