1# Copyright (c) 2020-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 14if (defined(ohos_lite)) { 15 copy("ohos.para") { 16 sources = [ "//base/startup/init/services/etc/param/ohos.para" ] 17 outputs = [ "$root_out_dir/system/etc/param/ohos.para" ] 18 } 19 20 copy("ohos.para.dac") { 21 sources = [ "//base/startup/init/services/etc/param/ohos.para.dac" ] 22 outputs = [ "$root_out_dir/system/etc/param/ohos.para.dac" ] 23 } 24 copy("ohos.const") { 25 sources = 26 [ "//base/startup/init/services/etc_lite/param/ohos_const/ohos.para" ] 27 outputs = [ "$root_out_dir/system/etc/param/ohos_const/ohos.para" ] 28 } 29 30 copy("ohos.passwd") { 31 sources = [ "//base/startup/init/services/etc_lite/passwd" ] 32 outputs = [ "$root_out_dir/etc/passwd" ] 33 } 34 copy("ohos.group") { 35 sources = [ "//base/startup/init/services/etc_lite/group" ] 36 outputs = [ "$root_out_dir/etc/group" ] 37 } 38 39 group("etc_files") { 40 deps = [ 41 ":ohos.const", 42 ":ohos.para", 43 ":ohos.para.dac", 44 ] 45 if (ohos_kernel_type == "linux") { 46 deps += [ 47 ":ohos.group", 48 ":ohos.passwd", 49 ] 50 } 51 } 52} else { 53 import("//base/startup/init/services/etc/param/param_fixer.gni") 54 import("//build/ohos.gni") 55 56 # init etc files group 57 ohos_prebuilt_etc("init.cfg") { 58 if (!enable_ramdisk) { 59 source = "//base/startup/init/services/etc/init.without_two_stages.cfg" 60 } else { 61 source = "//base/startup/init/services/etc/init.cfg" 62 } 63 output = "init.cfg" 64 part_name = "init" 65 subsystem_name = "startup" 66 } 67 68 ohos_prebuilt_etc("watchdog.cfg") { 69 source = "//base/startup/init/services/etc/watchdog.cfg" 70 relative_install_dir = "init" 71 part_name = "init" 72 subsystem_name = "startup" 73 } 74 75 ohos_prebuilt_etc("console.cfg") { 76 image_name = [ "system" ] 77 if (build_variant == "user") { 78 source = "//base/startup/init/services/etc/console.user.cfg" 79 image_name += [ "eng_system" ] 80 } else if (build_variant == "root") { 81 source = "//base/startup/init/services/etc/console.cfg" 82 } 83 install_images = image_name 84 output = "console.cfg" 85 relative_install_dir = "init" 86 part_name = "init" 87 subsystem_name = "startup" 88 } 89 90 ohos_prebuilt_etc("ueventd.cfg") { 91 source = "//base/startup/init/services/etc/ueventd.cfg" 92 relative_install_dir = "init" 93 part_name = "init" 94 subsystem_name = "startup" 95 } 96 97 ohos_prebuilt_etc("passwd") { 98 source = "//base/startup/init/services/etc/passwd" 99 install_images = [ 100 "system", 101 "updater", 102 ] 103 part_name = "init" 104 subsystem_name = "startup" 105 } 106 107 ohos_prebuilt_etc("group") { 108 source = "//base/startup/init/services/etc/group" 109 install_images = [ 110 "system", 111 "updater", 112 ] 113 part_name = "init" 114 subsystem_name = "startup" 115 } 116 117 ohos_prebuilt_etc("init.usb.cfg") { 118 source = "//base/startup/init/services/etc/init.usb.cfg" 119 part_name = "init" 120 subsystem_name = "startup" 121 } 122 123 ohos_prebuilt_para("ohos.para") { 124 source = "//base/startup/init/services/etc/param/ohos.para" 125 install_images = [ 126 "system", 127 "updater", 128 ] 129 part_name = "init" 130 subsystem_name = "startup" 131 extra_paras = [] 132 if (target_cpu == "arm64") { 133 extra_paras += [ "const.product.cpu.abilist=arm64-v8a" ] 134 } 135 if (target_cpu == "x86_64") { 136 extra_paras += [ "const.product.cpu.abilist=x86_64" ] 137 } 138 if (target_cpu == "riscv64") { 139 extra_paras += [ "const.product.cpu.abilist=riscv64" ] 140 } 141 if (build_variant == "user") { 142 extra_paras += [ 143 "const.secure=1", 144 "const.debuggable=0", 145 ] 146 } else if (build_variant == "root") { 147 extra_paras += [ 148 "const.secure=0", 149 "const.debuggable=1", 150 ] 151 } 152 if (device_type != "default") { 153 extra_paras += [ 154 "const.product.devicetype=${device_type}", 155 "const.build.characteristics=${device_type}", 156 ] 157 } 158 module_install_dir = "etc/param" 159 } 160 161 ohos_prebuilt_para("ohos.startup.para") { 162 source = "//base/startup/init/services/etc/param/ohos.startup.para" 163 install_images = [ 164 "system", 165 "updater", 166 ] 167 part_name = "init" 168 subsystem_name = "startup" 169 module_install_dir = "etc/param" 170 } 171 172 ohos_prebuilt_para("ohos.para.dac") { 173 source = "//base/startup/init/services/etc/param/ohos.para.dac" 174 install_images = [ 175 "system", 176 "updater", 177 ] 178 part_name = "init" 179 subsystem_name = "startup" 180 module_install_dir = "etc/param" 181 } 182 183 ohos_prebuilt_para("ohos_const.para") { 184 source = "//base/startup/init/services/etc/param/ohos_const/ohos.para" 185 part_name = "init" 186 subsystem_name = "startup" 187 module_install_dir = "etc/param/ohos_const" 188 } 189 190 ohos_prebuilt_para("ohos.para.size") { 191 source = "//base/startup/init/services/etc/param/ohos.para.size" 192 install_images = [ 193 "system", 194 "updater", 195 ] 196 part_name = "init" 197 subsystem_name = "startup" 198 module_install_dir = "etc/param" 199 } 200 201 ohos_prebuilt_etc("boot.group") { 202 source = "//base/startup/init/services/etc/device.boot.group.cfg" 203 part_name = "init" 204 subsystem_name = "startup" 205 } 206 207 ohos_prebuilt_etc("syscap.para") { 208 source = "${preloader_output_dir}/system/etc/param/syscap.para" 209 module_install_dir = "etc/param/" 210 part_name = "init" 211 subsystem_name = "startup" 212 } 213 214 ohos_prebuilt_etc("syscap.json") { 215 source = "${preloader_output_dir}/system/etc/syscap.json" 216 part_name = "init" 217 subsystem_name = "startup" 218 } 219 220 ohos_prebuilt_etc("systemcapability.json") { 221 source = "${preloader_output_dir}/system/etc/SystemCapability.json" 222 part_name = "init" 223 subsystem_name = "startup" 224 } 225 226 ohos_prebuilt_etc("features.json") { 227 source = "${preloader_output_dir}/features.json" 228 part_name = "init" 229 subsystem_name = "startup" 230 } 231 232 ohos_prebuilt_etc("init.reboot") { 233 source = "//base/startup/init/services/etc/init.reboot.cfg" 234 part_name = "init" 235 subsystem_name = "startup" 236 module_install_dir = "etc/init" 237 } 238 239 group("etc_files") { 240 deps = [ 241 ":boot.group", 242 ":console.cfg", 243 ":features.json", 244 ":group", 245 ":init.cfg", 246 ":init.reboot", 247 ":init.usb.cfg", 248 ":ohos.para", 249 ":ohos.para.dac", 250 ":ohos.para.size", 251 ":ohos.startup.para", 252 ":ohos_const.para", 253 ":passwd", 254 ":syscap.json", 255 ":syscap.para", 256 ":systemcapability.json", 257 ] 258 } 259} 260