123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- # Copyright 2005 The Android Open Source Project
- LOCAL_PATH:= $(call my-dir)
- -include system/sepolicy/policy_version.mk
- # --
- ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
- init_options += \
- -DALLOW_LOCAL_PROP_OVERRIDE=1 \
- -DALLOW_PERMISSIVE_SELINUX=1 \
- -DREBOOT_BOOTLOADER_ON_PANIC=1 \
- -DWORLD_WRITABLE_KMSG=1 \
- -DDUMP_ON_UMOUNT_FAILURE=1
- else
- init_options += \
- -DALLOW_LOCAL_PROP_OVERRIDE=0 \
- -DALLOW_PERMISSIVE_SELINUX=0 \
- -DREBOOT_BOOTLOADER_ON_PANIC=0 \
- -DWORLD_WRITABLE_KMSG=0 \
- -DDUMP_ON_UMOUNT_FAILURE=0
- endif
- ifneq (,$(filter eng,$(TARGET_BUILD_VARIANT)))
- init_options += \
- -DSHUTDOWN_ZERO_TIMEOUT=1
- else
- init_options += \
- -DSHUTDOWN_ZERO_TIMEOUT=0
- endif
- init_options += -DLOG_UEVENTS=0 \
- -DSEPOLICY_VERSION=$(POLICYVERS)
- init_cflags += \
- $(init_options) \
- -Wall -Wextra \
- -Wno-unused-parameter \
- -Werror \
- # --
- # Do not build this even with mmma if we're system-as-root, otherwise it will overwrite the symlink.
- ifneq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true)
- include $(CLEAR_VARS)
- LOCAL_CPPFLAGS := $(init_cflags)
- LOCAL_SRC_FILES := \
- devices.cpp \
- first_stage_init.cpp \
- first_stage_main.cpp \
- first_stage_mount.cpp \
- mount_namespace.cpp \
- reboot_utils.cpp \
- selinux.cpp \
- switch_root.cpp \
- uevent_listener.cpp \
- util.cpp \
- LOCAL_MODULE := init_first_stage
- LOCAL_MODULE_STEM := init
- LOCAL_FORCE_STATIC_EXECUTABLE := true
- LOCAL_MODULE_PATH := $(TARGET_RAMDISK_OUT)
- LOCAL_UNSTRIPPED_PATH := $(TARGET_RAMDISK_OUT_UNSTRIPPED)
- # Install adb_debug.prop into debug ramdisk.
- # This allows adb root on a user build, when debug ramdisk is used.
- LOCAL_REQUIRED_MODULES := \
- adb_debug.prop \
- # Set up the same mount points on the ramdisk that system-as-root contains.
- LOCAL_POST_INSTALL_CMD := mkdir -p \
- $(TARGET_RAMDISK_OUT)/apex \
- $(TARGET_RAMDISK_OUT)/debug_ramdisk \
- $(TARGET_RAMDISK_OUT)/dev \
- $(TARGET_RAMDISK_OUT)/mnt \
- $(TARGET_RAMDISK_OUT)/proc \
- $(TARGET_RAMDISK_OUT)/sys \
- LOCAL_STATIC_LIBRARIES := \
- libc++fs \
- libfs_avb \
- libfs_mgr \
- libfec \
- libfec_rs \
- libsquashfs_utils \
- liblogwrap \
- libext4_utils \
- libfscrypt \
- libseccomp_policy \
- libcrypto_utils \
- libsparse \
- libavb \
- libkeyutils \
- liblp \
- libcutils \
- libbase \
- liblog \
- libcrypto \
- libdl \
- libz \
- libselinux \
- libcap \
- libgsi \
- libcom.android.sysprop.apex \
- liblzma \
- libdexfile_support \
- libunwindstack \
- libbacktrace \
- LOCAL_SANITIZE := signed-integer-overflow
- # First stage init is weird: it may start without stdout/stderr, and no /proc.
- LOCAL_NOSANITIZE := hwaddress
- include $(BUILD_EXECUTABLE)
- endif
- include $(CLEAR_VARS)
- LOCAL_MODULE := init_system
- LOCAL_REQUIRED_MODULES := \
- init_second_stage \
- include $(BUILD_PHONY_PACKAGE)
- include $(CLEAR_VARS)
- LOCAL_MODULE := init_vendor
- ifneq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true)
- LOCAL_REQUIRED_MODULES := \
- init_first_stage \
- endif
- include $(BUILD_PHONY_PACKAGE)
|