1# Copyright (c) 2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//base/startup/init/begetd.gni") 15import("//build/ohos.gni") 16 17ohos_shared_library("selinuxadp") { 18 sources = [ "selinux_adp.c" ] 19 defines = [ "_GNU_SOURCE" ] 20 include_dirs = [ 21 ".", 22 "..", 23 "../init_hook", 24 "//base/startup/init/interfaces/innerkits/include", 25 "//base/startup/init/interfaces/innerkits/include/param", 26 ] 27 deps = [ "//base/startup/init/interfaces/innerkits/init_module_engine:libinit_module_engine" ] 28 29 external_deps = [ 30 "bounds_checking_function:libsec_shared", 31 "cJSON:cjson", 32 "selinux:libselinux", 33 "selinux_adapter:libload_policy", 34 "selinux_adapter:librestorecon", 35 ] 36 37 part_name = "init" 38 subsystem_name = "startup" 39 if (target_cpu == "arm64" || target_cpu == "x86_64" || 40 target_cpu == "riscv64") { 41 module_install_dir = "lib64/init" 42 } else { 43 module_install_dir = "lib/init" 44 } 45 install_images = [ 46 "system", 47 "updater", 48 ] 49} 50 51config("selinux_static_config") { 52 include_dirs = [ "." ] 53} 54 55ohos_source_set("libselinuxadp_static") { 56 sources = [ "selinux_static.c" ] 57 defines = [ "_GNU_SOURCE" ] 58 include_dirs = [ 59 ".", 60 "..", 61 "../init_hook", 62 "//base/startup/init/interfaces/innerkits/include/param", 63 ] 64 external_deps = [ "cJSON:cjson" ] 65 public_external_deps = [ 66 "selinux:libselinux", 67 "selinux_adapter:libselinux_parameter_static", 68 ] 69 public_configs = [ ":selinux_static_config" ] 70 public_configs += [ "//base/startup/init/interfaces/innerkits/init_module_engine:init_module_engine_exported_config" ] 71} 72