1 LOCAL_PATH := $(call my-dir) 2 3 common_src_files := commands.cpp globals.cpp utils.cpp 4 common_cflags := -Wall -Werror 5 6 # 7 # Static library used in testing and executable 8 # 9 10 include $(CLEAR_VARS) 11 LOCAL_MODULE := libinstalld 12 LOCAL_MODULE_TAGS := eng tests 13 LOCAL_SRC_FILES := $(common_src_files) 14 LOCAL_CFLAGS := $(common_cflags) 15 LOCAL_SHARED_LIBRARIES := \ 16 libbase \ 17 liblogwrap \ 18 libselinux \ 19 20 LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk 21 LOCAL_CLANG := true 22 include $(BUILD_STATIC_LIBRARY) 23 24 # 25 # Executable 26 # 27 28 include $(CLEAR_VARS) 29 LOCAL_MODULE := installd 30 LOCAL_MODULE_TAGS := optional 31 LOCAL_CFLAGS := $(common_cflags) 32 LOCAL_SRC_FILES := installd.cpp $(common_src_files) 33 LOCAL_SHARED_LIBRARIES := \ 34 libbase \ 35 libcutils \ 36 liblog \ 37 liblogwrap \ 38 libselinux \ 39 40 LOCAL_STATIC_LIBRARIES := libdiskusage 41 LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk 42 LOCAL_INIT_RC := installd.rc 43 LOCAL_CLANG := true 44 include $(BUILD_EXECUTABLE) 45 46 # 47 # OTA Executable 48 # 49 50 include $(CLEAR_VARS) 51 LOCAL_MODULE := otapreopt 52 LOCAL_MODULE_TAGS := optional 53 LOCAL_CFLAGS := $(common_cflags) 54 55 # Base & ASLR boundaries for boot image creation. 56 ifndef LIBART_IMG_HOST_MIN_BASE_ADDRESS_DELTA 57 LOCAL_LIBART_IMG_HOST_MIN_BASE_ADDRESS_DELTA := -0x1000000 58 else 59 LOCAL_LIBART_IMG_HOST_MIN_BASE_ADDRESS_DELTA := $(LIBART_IMG_HOST_MIN_BASE_ADDRESS_DELTA) 60 endif 61 ifndef LIBART_IMG_HOST_MAX_BASE_ADDRESS_DELTA 62 LOCAL_LIBART_IMG_HOST_MAX_BASE_ADDRESS_DELTA := 0x1000000 63 else 64 LOCAL_LIBART_IMG_HOST_MAX_BASE_ADDRESS_DELTA := $(LIBART_IMG_HOST_MAX_BASE_ADDRESS_DELTA) 65 endif 66 LOCAL_CFLAGS += -DART_BASE_ADDRESS=$(LIBART_IMG_HOST_BASE_ADDRESS) 67 LOCAL_CFLAGS += -DART_BASE_ADDRESS_MIN_DELTA=$(LOCAL_LIBART_IMG_HOST_MIN_BASE_ADDRESS_DELTA) 68 LOCAL_CFLAGS += -DART_BASE_ADDRESS_MAX_DELTA=$(LOCAL_LIBART_IMG_HOST_MAX_BASE_ADDRESS_DELTA) 69 70 LOCAL_SRC_FILES := otapreopt.cpp $(common_src_files) 71 LOCAL_SHARED_LIBRARIES := \ 72 libbase \ 73 libcutils \ 74 liblog \ 75 liblogwrap \ 76 libselinux \ 77 78 LOCAL_STATIC_LIBRARIES := libdiskusage 79 LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk 80 LOCAL_CLANG := true 81 include $(BUILD_EXECUTABLE) 82 83 # OTA chroot tool 84 85 include $(CLEAR_VARS) 86 LOCAL_MODULE := otapreopt_chroot 87 LOCAL_MODULE_TAGS := optional 88 LOCAL_CFLAGS := $(common_cflags) 89 90 LOCAL_SRC_FILES := otapreopt_chroot.cpp 91 LOCAL_SHARED_LIBRARIES := \ 92 libbase \ 93 liblog \ 94 95 LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk 96 LOCAL_CLANG := true 97 include $(BUILD_EXECUTABLE) 98 99 # OTA slot script 100 101 include $(CLEAR_VARS) 102 LOCAL_MODULE:= otapreopt_slot 103 LOCAL_MODULE_TAGS := optional 104 LOCAL_MODULE_CLASS := EXECUTABLES 105 LOCAL_SRC_FILES := otapreopt_slot.sh 106 LOCAL_INIT_RC := otapreopt.rc 107 108 include $(BUILD_PREBUILT) 109 110 # OTA postinstall script 111 112 include $(CLEAR_VARS) 113 LOCAL_MODULE:= otapreopt_script 114 LOCAL_MODULE_TAGS := optional 115 LOCAL_MODULE_CLASS := EXECUTABLES 116 LOCAL_SRC_FILES := otapreopt_script.sh 117 118 # Let this depend on otapreopt, the chroot tool and the slot script, so we just have to mention one 119 # in a configuration. 120 LOCAL_REQUIRED_MODULES := otapreopt otapreopt_chroot otapreopt_slot 121 122 include $(BUILD_PREBUILT) 123 124 # Tests. 125 126 include $(LOCAL_PATH)/tests/Android.mk