You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
171 lines
4.1 KiB
171 lines
4.1 KiB
// |
|
// Copyright (C) 2017 The Android Open Source Project |
|
// |
|
// Licensed under the Apache License, Version 2.0 (the "License"); |
|
// you may not use this file except in compliance with the License. |
|
// You may obtain a copy of the License at |
|
// |
|
// http://www.apache.org/licenses/LICENSE-2.0 |
|
// |
|
// Unless required by applicable law or agreed to in writing, software |
|
// distributed under the License is distributed on an "AS IS" BASIS, |
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
// See the License for the specific language governing permissions and |
|
// limitations under the License. |
|
// |
|
|
|
cc_defaults { |
|
name: "init_defaults", |
|
cpp_std: "experimental", |
|
sanitize: { |
|
misc_undefined: ["signed-integer-overflow"], |
|
}, |
|
cppflags: [ |
|
"-DLOG_UEVENTS=0", |
|
"-Wall", |
|
"-Wextra", |
|
"-Wno-unused-parameter", |
|
"-Werror", |
|
"-DALLOW_LOCAL_PROP_OVERRIDE=0", |
|
"-DALLOW_PERMISSIVE_SELINUX=0", |
|
"-DREBOOT_BOOTLOADER_ON_PANIC=0", |
|
"-DWORLD_WRITABLE_KMSG=0", |
|
"-DDUMP_ON_UMOUNT_FAILURE=0", |
|
"-DSHUTDOWN_ZERO_TIMEOUT=0", |
|
], |
|
product_variables: { |
|
debuggable: { |
|
cppflags: [ |
|
"-UALLOW_LOCAL_PROP_OVERRIDE", |
|
"-DALLOW_LOCAL_PROP_OVERRIDE=1", |
|
"-UALLOW_PERMISSIVE_SELINUX", |
|
"-DALLOW_PERMISSIVE_SELINUX=1", |
|
"-UREBOOT_BOOTLOADER_ON_PANIC", |
|
"-DREBOOT_BOOTLOADER_ON_PANIC=1", |
|
"-UWORLD_WRITABLE_KMSG", |
|
"-DWORLD_WRITABLE_KMSG=1", |
|
"-UDUMP_ON_UMOUNT_FAILURE", |
|
"-DDUMP_ON_UMOUNT_FAILURE=1", |
|
], |
|
}, |
|
eng: { |
|
cppflags: [ |
|
"-USHUTDOWN_ZERO_TIMEOUT", |
|
"-DSHUTDOWN_ZERO_TIMEOUT=1", |
|
], |
|
}, |
|
}, |
|
} |
|
|
|
cc_library_static { |
|
name: "libinit", |
|
defaults: ["init_defaults"], |
|
srcs: [ |
|
"action.cpp", |
|
"capabilities.cpp", |
|
"descriptors.cpp", |
|
"devices.cpp", |
|
"firmware_handler.cpp", |
|
"import_parser.cpp", |
|
"init_parser.cpp", |
|
"log.cpp", |
|
"parser.cpp", |
|
"service.cpp", |
|
"uevent_listener.cpp", |
|
"ueventd_parser.cpp", |
|
"util.cpp", |
|
], |
|
whole_static_libs: ["libcap"], |
|
static_libs: [ |
|
"libbase", |
|
"libselinux", |
|
"liblog", |
|
"libprocessgroup", |
|
], |
|
} |
|
|
|
/* |
|
This is not yet ready, see the below TODOs for what is missing |
|
|
|
cc_binary { |
|
// TODO: Missing, |
|
//LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) |
|
//LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_UNSTRIPPED) |
|
|
|
name: "init", |
|
defaults: ["init_defaults"], |
|
required: [ |
|
"e2fsdroid", |
|
"mke2fs", |
|
], |
|
static_executable: true, |
|
srcs: [ |
|
"bootchart.cpp", |
|
"builtins.cpp", |
|
"init.cpp", |
|
"init_first_stage.cpp", |
|
"keychords.cpp", |
|
"property_service.cpp", |
|
"reboot.cpp", |
|
"signal_handler.cpp", |
|
"ueventd.cpp", |
|
"watchdogd.cpp", |
|
], |
|
include_dirs: [ |
|
"system/core/mkbootimg" |
|
], |
|
static_libs: [ |
|
"libinit", |
|
"libbootloader_message", |
|
"libfs_mgr", |
|
"libfec", |
|
"libfec_rs", |
|
"libsquashfs_utils", |
|
"liblogwrap", |
|
"libext4_utils", |
|
"libcutils", |
|
"libbase", |
|
"libc", |
|
"libselinux", |
|
"liblog", |
|
"libcrypto_utils", |
|
"libcrypto", |
|
"libc++_static", |
|
"libdl", |
|
"libsparse", |
|
"libz", |
|
"libprocessgroup", |
|
"libavb", |
|
"libkeyutils", |
|
], |
|
symlinks: [ |
|
"sbin/ueventd", |
|
"sbin/watchdogd", |
|
], |
|
} |
|
*/ |
|
|
|
// Tests |
|
// ------------------------------------------------------------------------------ |
|
|
|
cc_test { |
|
name: "init_tests", |
|
defaults: ["init_defaults"], |
|
srcs: [ |
|
"devices_test.cpp", |
|
"init_parser_test.cpp", |
|
"init_test.cpp", |
|
"property_service_test.cpp", |
|
"service_test.cpp", |
|
"ueventd_test.cpp", |
|
"util_test.cpp", |
|
], |
|
shared_libs: [ |
|
"libbase", |
|
"libcutils", |
|
"libselinux", |
|
], |
|
static_libs: ["libinit"], |
|
} |
|
|
|
subdirs = ["*"]
|
|
|