blob: 49d58c2af6ac640491663ce98ef97f846002df01 [file] [log] [blame]
San Mehatf1b736b2009-10-10 17:22:08 -07001LOCAL_PATH:= $(call my-dir)
2
Kenny Rootacc9e7d2010-06-18 19:06:50 -07003common_src_files := \
4 VolumeManager.cpp \
5 CommandListener.cpp \
Paul Lawrenced0b42952015-06-03 14:19:51 -07006 CryptCommandListener.cpp \
Kenny Rootacc9e7d2010-06-18 19:06:50 -07007 VoldCommand.cpp \
8 NetlinkManager.cpp \
9 NetlinkHandler.cpp \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070010 Process.cpp \
Jeff Sharkeyd0640f62015-05-21 22:35:42 -070011 fs/Ext4.cpp \
12 fs/F2fs.cpp \
13 fs/Vfat.cpp \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070014 Loop.cpp \
15 Devmapper.cpp \
16 ResponseCode.cpp \
Paul Lawrence87999172014-02-20 12:21:31 -080017 CheckBattery.cpp \
Paul Lawrence707fd6c2015-04-28 22:14:15 +000018 Ext4Crypt.cpp \
Ken Sumrall9caab762013-06-11 19:10:20 -070019 VoldUtil.c \
Wei Wang4375f1b2017-02-24 17:43:01 -080020 cryptfs.cpp \
Jeff Sharkey11c2d382017-09-11 10:32:01 -060021 model/Disk.cpp \
22 model/VolumeBase.cpp \
23 model/PublicVolume.cpp \
24 model/PrivateVolume.cpp \
25 model/EmulatedVolume.cpp \
26 model/ObbVolume.cpp \
Jeff Sharkeydeb24052015-03-02 21:01:40 -080027 Utils.cpp \
Jeff Sharkey1d6fbcc2015-04-24 16:00:03 -070028 MoveTask.cpp \
Jeff Sharkey5a6bfca2015-05-14 20:33:55 -070029 Benchmark.cpp \
Jeff Sharkeyc86ab6f2015-06-26 14:02:09 -070030 TrimTask.cpp \
Pavel Grafove2e2d302017-08-01 17:15:53 +010031 KeyBuffer.cpp \
Paul Crowley1ef25582016-01-21 20:26:12 +000032 Keymaster.cpp \
33 KeyStorage.cpp \
Paul Crowleyf71ace32016-06-02 11:01:19 -070034 KeyUtil.cpp \
Paul Crowley63c18d32016-02-10 14:02:47 +000035 ScryptParameters.cpp \
Jeff Vander Stoepdf725752016-01-29 15:34:43 -080036 secontext.cpp \
Paul Crowleyf71ace32016-06-02 11:01:19 -070037 EncryptInplace.cpp \
Paul Crowleyd5759812016-06-02 11:04:27 -070038 MetadataCrypt.cpp \
Jeff Sharkey068c6be2017-09-06 13:47:40 -060039 binder/android/os/IVold.aidl \
40 VoldNativeService.cpp \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070041
42common_c_includes := \
Daniel Rosenberge82df162014-08-15 22:19:23 +000043 system/extras/f2fs_utils \
Paul Lawrence87999172014-02-20 12:21:31 -080044 external/scrypt/lib/crypto \
Paul Crowleyf71ace32016-06-02 11:01:19 -070045 external/f2fs-tools/include \
Paul Lawrence69f4ebd2014-04-14 12:17:14 -070046 frameworks/native/include \
47 system/security/keystore \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070048
49common_shared_libraries := \
50 libsysutils \
Paul Lawrence87999172014-02-20 12:21:31 -080051 libbinder \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070052 libcutils \
Elliott Hughesc3bda182017-05-09 17:01:04 -070053 libkeyutils \
Ying Wang741a1692013-04-09 22:05:28 -070054 liblog \
Kenny Rootacc9e7d2010-06-18 19:06:50 -070055 libdiskconfig \
Ken Sumrall5d4c68e2011-01-30 19:06:03 -080056 libhardware_legacy \
Rom Lemarchand2ba45aa2013-01-16 12:29:28 -080057 liblogwrap \
Ken Sumrall5cf759a2013-08-14 20:15:17 -070058 libext4_utils \
Daniel Rosenberge82df162014-08-15 22:19:23 +000059 libf2fs_sparseblock \
Mattias Nisslerdc803232016-03-31 16:32:59 +020060 libcrypto_utils \
Robert Craigb9e3ba52014-02-04 10:53:00 -050061 libcrypto \
Paul Lawrence87999172014-02-20 12:21:31 -080062 libselinux \
Paul Lawrence69f4ebd2014-04-14 12:17:14 -070063 libutils \
64 libhardware \
Paul Crowley1ef25582016-01-21 20:26:12 +000065 libbase \
Janis Danisevskis8e537b82016-10-26 14:27:10 +010066 libhwbinder \
67 libhidlbase \
68 android.hardware.keymaster@3.0 \
69 libkeystore_binder
Kenny Rootacc9e7d2010-06-18 19:06:50 -070070
Kenny Rootc4c70f12013-06-14 12:11:38 -070071common_static_libraries := \
Yabin Cui1fb59662016-06-24 14:48:49 -070072 libbootloader_message \
Kenny Rootc4c70f12013-06-14 12:11:38 -070073 libfs_mgr \
Sami Tolvanenefe67cd2015-06-01 15:38:29 +010074 libfec \
75 libfec_rs \
Mohamad Ayyashc489d7f2015-04-06 18:15:53 -070076 libsquashfs_utils \
Geremy Condrac49f0f22013-08-07 13:12:41 -070077 libscrypt_static \
Paul Crowley1ef25582016-01-21 20:26:12 +000078 libbatteryservice \
bowgotsai58bdac82017-01-07 00:44:35 +080079 libavb \
Kenny Rootc4c70f12013-06-14 12:11:38 -070080
Jeff Sharkey32ebb732017-03-27 16:18:50 -060081# TODO: include "cert-err34-c" once we move to Binder
82# TODO: include "cert-err58-cpp" once 36656327 is fixed
Jeff Sharkey83b559c2017-09-12 16:30:52 -060083common_local_tidy_enabled := true
Jeff Sharkey32ebb732017-03-27 16:18:50 -060084common_local_tidy_flags := -warnings-as-errors=clang-analyzer-security*,cert-*
85common_local_tidy_checks := -*,clang-analyzer-security*,cert-*,-cert-err34-c,-cert-err58-cpp
86
Dan Albertc07fa3f2014-12-18 10:00:55 -080087vold_conlyflags := -std=c11
Jeff Sharkeydeb24052015-03-02 21:01:40 -080088vold_cflags := -Werror -Wall -Wno-missing-field-initializers -Wno-unused-variable -Wno-unused-parameter
Dan Albertc07fa3f2014-12-18 10:00:55 -080089
Adrien Schildknechte0f409c2016-11-21 15:14:37 -080090required_modules :=
91ifeq ($(TARGET_USERIMAGES_USE_EXT4), true)
Jin Qianb678d7c2017-08-15 16:44:04 -070092 required_modules += mke2fs
Adrien Schildknechte0f409c2016-11-21 15:14:37 -080093endif
94
San Mehatf1b736b2009-10-10 17:22:08 -070095include $(CLEAR_VARS)
96
Dan Albertb2aaf3a2014-09-12 10:48:12 -070097LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Kenny Rootacc9e7d2010-06-18 19:06:50 -070098LOCAL_MODULE := libvold
Dan Albertc07fa3f2014-12-18 10:00:55 -080099LOCAL_CLANG := true
Jeff Sharkey83b559c2017-09-12 16:30:52 -0600100LOCAL_TIDY := $(common_local_tidy_enabled)
Jeff Sharkey32ebb732017-03-27 16:18:50 -0600101LOCAL_TIDY_FLAGS := $(common_local_tidy_flags)
102LOCAL_TIDY_CHECKS := $(common_local_tidy_checks)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700103LOCAL_SRC_FILES := $(common_src_files)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700104LOCAL_C_INCLUDES := $(common_c_includes)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700105LOCAL_SHARED_LIBRARIES := $(common_shared_libraries)
Kenny Rootc4c70f12013-06-14 12:11:38 -0700106LOCAL_STATIC_LIBRARIES := $(common_static_libraries)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700107LOCAL_MODULE_TAGS := eng tests
Dan Albertc07fa3f2014-12-18 10:00:55 -0800108LOCAL_CFLAGS := $(vold_cflags)
109LOCAL_CONLYFLAGS := $(vold_conlyflags)
Adrien Schildknechte0f409c2016-11-21 15:14:37 -0800110LOCAL_REQUIRED_MODULES := $(required_modules)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700111
112include $(BUILD_STATIC_LIBRARY)
113
114include $(CLEAR_VARS)
San Mehatf1b736b2009-10-10 17:22:08 -0700115
Dan Albertb2aaf3a2014-09-12 10:48:12 -0700116LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Jeff Sharkey47695b22016-02-01 17:02:29 -0700117LOCAL_MODULE := vold
Dan Albertc07fa3f2014-12-18 10:00:55 -0800118LOCAL_CLANG := true
Jeff Sharkey83b559c2017-09-12 16:30:52 -0600119LOCAL_TIDY := $(common_local_tidy_enabled)
Jeff Sharkey32ebb732017-03-27 16:18:50 -0600120LOCAL_TIDY_FLAGS := $(common_local_tidy_flags)
121LOCAL_TIDY_CHECKS := $(common_local_tidy_checks)
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700122LOCAL_SRC_FILES := \
123 main.cpp \
124 $(common_src_files)
125
Tom Cherrya2859842015-08-14 13:06:45 -0700126LOCAL_INIT_RC := vold.rc
127
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700128LOCAL_C_INCLUDES := $(common_c_includes)
Dan Albertc07fa3f2014-12-18 10:00:55 -0800129LOCAL_CFLAGS := $(vold_cflags)
130LOCAL_CONLYFLAGS := $(vold_conlyflags)
San Mehatf1b736b2009-10-10 17:22:08 -0700131
Kenny Rootacc9e7d2010-06-18 19:06:50 -0700132LOCAL_SHARED_LIBRARIES := $(common_shared_libraries)
Kenny Rootc4c70f12013-06-14 12:11:38 -0700133LOCAL_STATIC_LIBRARIES := $(common_static_libraries)
Adrien Schildknechte0f409c2016-11-21 15:14:37 -0800134LOCAL_REQUIRED_MODULES := $(required_modules)
Ken Sumrallf0679f02012-04-01 23:58:44 -0700135
Jeff Sharkey068c6be2017-09-06 13:47:40 -0600136LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
137
San Mehatf1b736b2009-10-10 17:22:08 -0700138include $(BUILD_EXECUTABLE)
139
140include $(CLEAR_VARS)
Kenny Root7b18a7b2010-03-15 13:13:41 -0700141
Dan Albertb2aaf3a2014-09-12 10:48:12 -0700142LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Dan Albertc07fa3f2014-12-18 10:00:55 -0800143LOCAL_CLANG := true
Jeff Sharkey83b559c2017-09-12 16:30:52 -0600144LOCAL_TIDY := $(common_local_tidy_enabled)
Jeff Sharkey32ebb732017-03-27 16:18:50 -0600145LOCAL_TIDY_FLAGS := $(common_local_tidy_flags)
146LOCAL_TIDY_CHECKS := $(common_local_tidy_checks)
Jeff Sharkey47695b22016-02-01 17:02:29 -0700147LOCAL_SRC_FILES := vdc.cpp
148LOCAL_MODULE := vdc
149LOCAL_SHARED_LIBRARIES := libcutils libbase
Dan Albertc07fa3f2014-12-18 10:00:55 -0800150LOCAL_CFLAGS := $(vold_cflags)
151LOCAL_CONLYFLAGS := $(vold_conlyflags)
Tom Cherrya2859842015-08-14 13:06:45 -0700152LOCAL_INIT_RC := vdc.rc
San Mehatf1b736b2009-10-10 17:22:08 -0700153
154include $(BUILD_EXECUTABLE)
Paul Crowley5bd0daf2015-05-19 17:31:39 +0100155
156include $(CLEAR_VARS)
157
158LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
159LOCAL_CLANG := true
Jeff Sharkey83b559c2017-09-12 16:30:52 -0600160LOCAL_TIDY := $(common_local_tidy_enabled)
Jeff Sharkey32ebb732017-03-27 16:18:50 -0600161LOCAL_TIDY_FLAGS := $(common_local_tidy_flags)
162LOCAL_TIDY_CHECKS := $(common_local_tidy_checks)
Paul Crowley03f89d32017-06-16 09:37:31 -0700163LOCAL_SRC_FILES:= \
164 FileDeviceUtils.cpp \
165 secdiscard.cpp \
166
Paul Crowley5bd0daf2015-05-19 17:31:39 +0100167LOCAL_MODULE:= secdiscard
Paul Crowley8bb8fcf2016-01-11 12:26:44 +0000168LOCAL_SHARED_LIBRARIES := libbase
Paul Crowley5bd0daf2015-05-19 17:31:39 +0100169LOCAL_CFLAGS := $(vold_cflags)
170LOCAL_CONLYFLAGS := $(vold_conlyflags)
171
172include $(BUILD_EXECUTABLE)
Paul Crowley4315c6a2016-12-06 08:22:04 -0800173
174include $(LOCAL_PATH)/tests/Android.mk