BUILD.gn 3.1 KB
Newer Older
M
mamingshuai 已提交
1 2 3 4 5 6 7 8 9 10 11 12
# Copyright (c) 2020 Huawei Device Co., Ltd.
# 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.
Z
zhong_ning 已提交
13 14
if (defined(ohos_lite)) {
  # feature: init
15 16
  executable("init_lite") {
    output_name = "init"
Z
zhong_ning 已提交
17 18
    defines = [
      "_GNU_SOURCE",  #syscall function need this macro definition
Z
zhong_ning 已提交
19
      "OHOS_LITE",
Z
zhong_ning 已提交
20 21 22 23 24 25 26 27 28 29 30
    ]
    sources = [
      "src/init_adapter.c",
      "src/init_cmds.c",
      "src/init_jobs.c",
      "src/init_read_cfg.c",
      "src/init_service.c",
      "src/init_service_manager.c",
      "src/init_signal_handler.c",
      "src/main.c",
    ]
M
mamingshuai 已提交
31

Z
zhong_ning 已提交
32 33 34 35 36 37
    include_dirs = [
      "include",
      "//third_party/cJSON",
      "//third_party/bounds_checking_function/include",
      "//base/startup/syspara_lite/interfaces/kits",
    ]
M
mamingshuai 已提交
38

Z
zhong_ning 已提交
39
    cflags = [ "-Wall" ]
M
mamingshuai 已提交
40

Z
zhong_ning 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
    deps = [
      "//base/startup/syspara_lite/frameworks/parameter:parameter",
      "//build/lite/config/component/cJSON:cjson_shared",
      "//third_party/bounds_checking_function:libsec_shared",
    ]
    ldflags = []
    if (ohos_kernel_type == "liteos_a") {
      include_dirs += [ "//kernel/liteos_a/syscall" ]
    }
    if (ohos_kernel_type == "linux") {
      defines += [ "NEED_EXEC_RCS_LINUX" ]
      ldflags += [
        "-lm",
        "-lpthread",
      ]
56 57 58 59
      deps = [
        "//third_party/mksh",
        "//third_party/toybox",
      ]
Z
zhong_ning 已提交
60 61
    }
  }
M
mamingshuai 已提交
62

Z
zhong_ning 已提交
63 64
  if (ohos_build_type == "debug") {
    group("unittest") {
65 66
      deps =
          [ "//base/startup/init_lite/services/test/unittest/common:unittest" ]
Z
zhong_ning 已提交
67 68 69 70
    }
  }
} else {
  import("//build/ohos.gni")
M
mamingshuai 已提交
71

Z
zhong_ning 已提交
72
  ohos_executable("updaterueventd") {
73 74 75 76 77 78 79 80 81 82 83
    sources = [
      "src/list.c",
      "src/uevent.c",
    ]
    include_dirs = [
      "include",
      "//third_party/bounds_checking_function/include",
    ]
    deps = [ "//third_party/bounds_checking_function:libsec_static" ]
    install_enable = true
    part_name = "updater"
M
mamingshuai 已提交
84 85
  }

Z
zhong_ning 已提交
86
  ohos_executable("updaterinit") {
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
    sources = [
      "src/device.c",
      "src/init_adapter.c",
      "src/init_cmds.c",
      "src/init_jobs.c",
      "src/init_read_cfg.c",
      "src/init_service.c",
      "src/init_service_manager.c",
      "src/init_signal_handler.c",
      "src/main.c",
    ]
    include_dirs = [
      "include",
      "//third_party/cJSON",
      "//third_party/bounds_checking_function/include",
    ]
    deps = [
      "//third_party/bounds_checking_function:libsec_static",
      "//third_party/cJSON:cjson_static",
    ]
    install_enable = true
    part_name = "updater"
M
mamingshuai 已提交
109 110
  }

Z
zhong_ning 已提交
111
  ohos_prebuilt_etc("init.cfg") {
112 113 114
    source = "//device/hisilicon/hi3516dv300/updater/init.cfg"
    relative_install_dir = "init"
    subsystem_name = "updater"
M
mamingshuai 已提交
115 116
  }
}