blob: adf478f00afbbf02de65f3bff656932f9f68bc47 [file] [log] [blame]
Joe Onorato6396e702012-05-31 23:21:46 -07001# Copyright (C) 2007 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://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,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -080014
Joe Onorato6396e702012-05-31 23:21:46 -070015LOCAL_PATH := $(call my-dir)
16
Tao Bao1d866052017-04-10 16:55:57 -070017# Needed by build/make/core/Makefile.
18RECOVERY_API_VERSION := 3
19RECOVERY_FSTAB_VERSION := 2
20
Tao Baod80a9982016-03-03 11:43:47 -080021# libfusesideload (static library)
22# ===============================
Joe Onorato6396e702012-05-31 23:21:46 -070023include $(CLEAR_VARS)
Tao Bao0d4e0022015-07-19 08:40:37 -070024LOCAL_SRC_FILES := fuse_sideload.cpp
Tao Bao80e46e02015-06-03 10:49:29 -070025LOCAL_CLANG := true
Elliott Hughes63a31922016-06-09 17:41:22 -070026LOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter -Werror
Doug Zongker18a78e02014-07-10 07:31:46 -070027LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
Doug Zongker18a78e02014-07-10 07:31:46 -070028LOCAL_MODULE := libfusesideload
Josh Gao073164f2016-08-05 15:59:05 -070029LOCAL_STATIC_LIBRARIES := libcutils libc libcrypto
Doug Zongker18a78e02014-07-10 07:31:46 -070030include $(BUILD_STATIC_LIBRARY)
31
Elliott Hughes63a31922016-06-09 17:41:22 -070032# libmounts (static library)
33# ===============================
34include $(CLEAR_VARS)
35LOCAL_SRC_FILES := mounts.cpp
Tao Bao5f85d1f2017-03-28 21:12:36 -070036LOCAL_CFLAGS := \
37 -Wall \
38 -Werror
Elliott Hughes63a31922016-06-09 17:41:22 -070039LOCAL_MODULE := libmounts
Tao Bao5f85d1f2017-03-28 21:12:36 -070040LOCAL_STATIC_LIBRARIES := libbase
Elliott Hughes63a31922016-06-09 17:41:22 -070041include $(BUILD_STATIC_LIBRARY)
42
Tao Bao1d866052017-04-10 16:55:57 -070043# librecovery (static library)
44# ===============================
45include $(CLEAR_VARS)
46LOCAL_SRC_FILES := \
47 install.cpp
48LOCAL_CFLAGS := -Wno-unused-parameter -Werror
49LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
Tao Bao7fdcb192017-04-12 23:52:20 -070050
51ifeq ($(AB_OTA_UPDATER),true)
52 LOCAL_CFLAGS += -DAB_OTA_UPDATER=1
53endif
54
Tao Bao1d866052017-04-10 16:55:57 -070055LOCAL_MODULE := librecovery
56LOCAL_STATIC_LIBRARIES := \
57 libminui \
Tao Bao919d2c92017-04-10 16:55:57 -070058 libvintf_recovery \
Tao Bao1d866052017-04-10 16:55:57 -070059 libcrypto_utils \
60 libcrypto \
61 libbase
62
63include $(BUILD_STATIC_LIBRARY)
64
Tao Baod80a9982016-03-03 11:43:47 -080065# recovery (static executable)
66# ===============================
Doug Zongker18a78e02014-07-10 07:31:46 -070067include $(CLEAR_VARS)
68
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -080069LOCAL_SRC_FILES := \
Doug Zongker945fc682014-07-10 10:50:39 -070070 adb_install.cpp \
Elliott Hughes9e7ae8a2015-04-09 13:40:31 -070071 asn1_decoder.cpp \
Elliott Hughes9e7ae8a2015-04-09 13:40:31 -070072 device.cpp \
Tao Bao0d4e0022015-07-19 08:40:37 -070073 fuse_sdcard_provider.cpp \
Elliott Hughes9e7ae8a2015-04-09 13:40:31 -070074 recovery.cpp \
75 roots.cpp \
Tianjie Xue113e4d2016-10-21 17:46:13 -070076 rotate_logs.cpp \
Elliott Hughes9e7ae8a2015-04-09 13:40:31 -070077 screen_ui.cpp \
78 ui.cpp \
79 verifier.cpp \
Tao Bao337db142015-08-20 14:52:57 -070080 wear_ui.cpp \
Prashant Malani9020e0f2016-03-11 11:57:10 -080081 wear_touch.cpp \
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -080082
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -080083LOCAL_MODULE := recovery
84
85LOCAL_FORCE_STATIC_EXECUTABLE := true
86
Tao Baof6835122015-10-27 21:53:18 -070087ifeq ($(TARGET_USERIMAGES_USE_F2FS),true)
Ji-Hwan Leeb9afc2b2014-06-19 02:02:50 +090088ifeq ($(HOST_OS),linux)
89LOCAL_REQUIRED_MODULES := mkfs.f2fs
90endif
Tao Baof6835122015-10-27 21:53:18 -070091endif
JP Abgrall37aedb32014-06-16 19:07:39 -070092
Doug Zongkerfb2e3af2009-06-17 17:29:40 -070093LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
Tianjie Xu17e316c2016-09-28 11:42:17 -070094LOCAL_CFLAGS += -Wno-unused-parameter -Werror
Tao Bao80e46e02015-06-03 10:49:29 -070095LOCAL_CLANG := true
Doug Zongkerfb2e3af2009-06-17 17:29:40 -070096
Dan Albert1ddd3502015-02-18 15:58:15 -080097LOCAL_C_INCLUDES += \
98 system/vold \
Dan Albert1ddd3502015-02-18 15:58:15 -080099 system/core/adb \
Adrien Grassein3cd669f2014-11-06 14:53:50 +0100100
Joe Onorato6396e702012-05-31 23:21:46 -0700101LOCAL_STATIC_LIBRARIES := \
Tao Bao1d866052017-04-10 16:55:57 -0700102 librecovery \
Yabin Cui53e7a062016-02-17 12:21:52 -0800103 libbatterymonitor \
Yabin Cui2f272c02016-06-24 18:22:02 -0700104 libbootloader_message \
Alex Deymo31653662017-01-11 14:02:13 -0800105 libext4_utils \
Alex Deymo67f3aa82017-01-11 14:38:20 -0800106 libsparse \
Tianjie Xu8cf5c8f2016-09-08 20:10:11 -0700107 libziparchive \
108 libotautil \
Elliott Hughes63a31922016-06-09 17:41:22 -0700109 libmounts \
Joe Onorato6396e702012-05-31 23:21:46 -0700110 libz \
Joe Onorato6396e702012-05-31 23:21:46 -0700111 libminadbd \
Doug Zongker18a78e02014-07-10 07:31:46 -0700112 libfusesideload \
Joe Onorato6396e702012-05-31 23:21:46 -0700113 libminui \
Joe Onorato6396e702012-05-31 23:21:46 -0700114 libpng \
Ken Sumrallf35d1ce2013-02-13 12:59:35 -0800115 libfs_mgr \
Josh Gao073164f2016-08-05 15:59:05 -0700116 libcrypto_utils \
117 libcrypto \
Tao Bao919d2c92017-04-10 16:55:57 -0700118 libvintf_recovery \
119 libvintf \
120 libtinyxml2 \
Elliott Hughes8fd86d72015-04-13 14:36:02 -0700121 libbase \
Joe Onorato6396e702012-05-31 23:21:46 -0700122 libcutils \
Yabin Cui53e7a062016-02-17 12:21:52 -0800123 libutils \
Ying Wang4e214822013-04-09 21:41:29 -0700124 liblog \
Kenny Root7eb75672012-10-16 10:47:27 -0700125 libselinux \
Stephen Hines91eb7212012-08-23 15:20:16 -0700126 libm \
Joe Onorato6396e702012-05-31 23:21:46 -0700127 libc
Doug Zongker49c73a72010-06-29 17:36:28 -0700128
Yabin Cui53e7a062016-02-17 12:21:52 -0800129LOCAL_HAL_STATIC_LIBRARIES := libhealthd
130
Elliott Hughes01fcbe12016-05-23 17:43:41 -0700131ifeq ($(AB_OTA_UPDATER),true)
132 LOCAL_CFLAGS += -DAB_OTA_UPDATER=1
133endif
134
Ying Wang5a50b1b2015-03-10 11:56:56 -0700135LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -0800136
Doug Zongkerddd6a282009-06-09 12:22:33 -0700137ifeq ($(TARGET_RECOVERY_UI_LIB),)
Doug Zongkerdaefc1d2011-10-31 09:34:15 -0700138 LOCAL_SRC_FILES += default_device.cpp
Doug Zongkerddd6a282009-06-09 12:22:33 -0700139else
140 LOCAL_STATIC_LIBRARIES += $(TARGET_RECOVERY_UI_LIB)
141endif
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -0800142
Mark Salyzyna4f701a2016-03-09 14:58:16 -0800143ifeq ($(BOARD_CACHEIMAGE_PARTITION_SIZE),)
144LOCAL_REQUIRED_MODULES := recovery-persist recovery-refresh
145endif
146
147include $(BUILD_EXECUTABLE)
148
149# recovery-persist (system partition dynamic executable run after /data mounts)
150# ===============================
151include $(CLEAR_VARS)
Tianjie Xue113e4d2016-10-21 17:46:13 -0700152LOCAL_SRC_FILES := \
153 recovery-persist.cpp \
154 rotate_logs.cpp
Mark Salyzyna4f701a2016-03-09 14:58:16 -0800155LOCAL_MODULE := recovery-persist
156LOCAL_SHARED_LIBRARIES := liblog libbase
157LOCAL_CFLAGS := -Werror
158LOCAL_INIT_RC := recovery-persist.rc
159include $(BUILD_EXECUTABLE)
160
161# recovery-refresh (system partition dynamic executable run at init)
162# ===============================
163include $(CLEAR_VARS)
Tianjie Xue113e4d2016-10-21 17:46:13 -0700164LOCAL_SRC_FILES := \
165 recovery-refresh.cpp \
166 rotate_logs.cpp
Mark Salyzyna4f701a2016-03-09 14:58:16 -0800167LOCAL_MODULE := recovery-refresh
Tianjie Xue113e4d2016-10-21 17:46:13 -0700168LOCAL_SHARED_LIBRARIES := liblog libbase
Mark Salyzyna4f701a2016-03-09 14:58:16 -0800169LOCAL_CFLAGS := -Werror
170LOCAL_INIT_RC := recovery-refresh.rc
The Android Open Source Projectc24a8e62009-03-03 19:28:42 -0800171include $(BUILD_EXECUTABLE)
172
Tao Baod80a9982016-03-03 11:43:47 -0800173# libverifier (static library)
174# ===============================
Kenny Root7a4adb52013-10-09 10:14:35 -0700175include $(CLEAR_VARS)
176LOCAL_MODULE := libverifier
177LOCAL_MODULE_TAGS := tests
178LOCAL_SRC_FILES := \
Kenny Root7a4adb52013-10-09 10:14:35 -0700179 asn1_decoder.cpp \
Tao Baod7bf82e2017-03-18 09:24:11 -0700180 verifier.cpp
Tao Bao0ecbd762017-01-16 21:16:58 -0800181LOCAL_STATIC_LIBRARIES := \
Tao Bao0ecbd762017-01-16 21:16:58 -0800182 libcrypto_utils \
183 libcrypto \
184 libbase
Tianjie Xu17e316c2016-09-28 11:42:17 -0700185LOCAL_CFLAGS := -Werror
Jed Estep43291862016-02-03 17:02:09 -0800186include $(BUILD_STATIC_LIBRARY)
Doug Zongker73ae31c2009-12-09 17:01:45 -0800187
Yabin Cui2f272c02016-06-24 18:22:02 -0700188include \
189 $(LOCAL_PATH)/applypatch/Android.mk \
Alex Deymofb00d822016-11-08 15:46:07 -0800190 $(LOCAL_PATH)/boot_control/Android.mk \
Yabin Cui2f272c02016-06-24 18:22:02 -0700191 $(LOCAL_PATH)/bootloader_message/Android.mk \
192 $(LOCAL_PATH)/edify/Android.mk \
Joe Onorato6396e702012-05-31 23:21:46 -0700193 $(LOCAL_PATH)/minadbd/Android.mk \
Yabin Cui2f272c02016-06-24 18:22:02 -0700194 $(LOCAL_PATH)/minui/Android.mk \
Yabin Cui2f272c02016-06-24 18:22:02 -0700195 $(LOCAL_PATH)/otafault/Android.mk \
Tianjie Xu8176cf22016-10-18 14:13:07 -0700196 $(LOCAL_PATH)/otautil/Android.mk \
Kenny Root7a4adb52013-10-09 10:14:35 -0700197 $(LOCAL_PATH)/tests/Android.mk \
Joe Onorato6396e702012-05-31 23:21:46 -0700198 $(LOCAL_PATH)/tools/Android.mk \
Doug Zongker76adfc52014-01-13 10:04:25 -0800199 $(LOCAL_PATH)/uncrypt/Android.mk \
Joe Onorato6396e702012-05-31 23:21:46 -0700200 $(LOCAL_PATH)/updater/Android.mk \
Tao Bao7197ee02015-12-05 21:21:27 -0800201 $(LOCAL_PATH)/update_verifier/Android.mk \