From e35b44151cd624a8ca94204edef24e8f417f6a10 Mon Sep 17 00:00:00 2001 From: TaowerfulMAX Date: Mon, 14 Apr 2025 20:24:08 +0800 Subject: [PATCH] feat: sdk build into system Signed-off-by: TaowerfulMAX --- BUILD.gn | 13 ++++++++++++- bundle.json | 5 +++-- src/daemon/etc/BUILD.gn | 10 ++++++++++ src/daemon/etc/hdc.cfg | 34 ++++++++++++++++++++++++++++++++++ 4 files changed, 59 insertions(+), 3 deletions(-) create mode 100644 src/daemon/etc/hdc.cfg diff --git a/BUILD.gn b/BUILD.gn index fcc1e23b..1baa2108 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -324,7 +324,18 @@ template("build_hdc") { part_name = "hdc" } } - + if (image_name == "system" && product_name != "ohos-sdk") { + ohos_prebuilt_executable("hdc_server") { + deps = [ ":hdc" ] + output = "${image_name}/hdc" + install_enable = true + subsystem_name = "developtools" + part_name = "hdc" + source = "${root_out_dir}/${subsystem_name}/${part_name}/hdc" + module_install_dir = "bin" + install_images = [ "system" ] + } + } ohos_prebuilt_executable("hdcd_${image_name}") { deps = [ ":hdcd_${image_name}_exe" ] output = "${image_name}/hdcd" diff --git a/bundle.json b/bundle.json index 3f75e74a..bb05dce5 100644 --- a/bundle.json +++ b/bundle.json @@ -42,7 +42,7 @@ "user_auth_framework", "pin_auth", "rust_rust-openssl", - "huks" + "huks" ], "third_party": [] }, @@ -53,7 +53,8 @@ "//developtools/hdc:hdc_register", "//developtools/hdc:hdcd_updater", "//developtools/hdc:hdc_updater", - "//developtools/hdc/sudo:sudo" + "//developtools/hdc/sudo:sudo", + "//developtools/hdc:hdc_server" ], "inner_kits": [ { diff --git a/src/daemon/etc/BUILD.gn b/src/daemon/etc/BUILD.gn index 3b9687ee..23741d4d 100644 --- a/src/daemon/etc/BUILD.gn +++ b/src/daemon/etc/BUILD.gn @@ -16,6 +16,7 @@ import("//developtools/hdc/hdc.gni") group("daemon_etc") { deps = [ + ":hdc.cfg", ":hdc.para", ":hdc.para.dac", ":hdcd.cfg", @@ -37,6 +38,15 @@ ohos_prebuilt_etc("hdcd.cfg") { subsystem_name = "developtools" } +ohos_prebuilt_etc("hdc.cfg") { + source = "hdc.cfg" + relative_install_dir = "init" + install_images = [ "system" ] + output = "hdc.cfg" + part_name = "hdc" + subsystem_name = "developtools" +} + ohos_prebuilt_etc("hdc.para") { source = "hdc.root.para" if (build_variant == "user") { diff --git a/src/daemon/etc/hdc.cfg b/src/daemon/etc/hdc.cfg new file mode 100644 index 00000000..5da349ee --- /dev/null +++ b/src/daemon/etc/hdc.cfg @@ -0,0 +1,34 @@ +{ + "jobs" : [{ + "name" : "post-fs-data", + "cmds" : [ + "mkdir /data/service/el1/public/hdc_server 0775 root shell", + "restorecon /data/service/el1/public/hdc_server" + ] + } + ], + "services" : [{ + "name" : "hdc_server", + "path" : ["/system/bin/hdc", "-m"], + "uid" : "hdc_server", + "gid" : [ "hdc_server", "file_manager", "netsys_socket", "usb_host"], + "socket" : [{ + "name" : "hdc", + "family" : "AF_UNIX", + "type" : "SOCK_SEQPACKET", + "protocol" : "default", + "permissions" : "0660", + "uid" : "hdc_server", + "gid" : "hdc_server" + }], + "critical" : [ 0, 10, 10 ], + "apl" : "normal", + "permission" : [], + "permission_acls" : [], + "sandbox" : 0, + "start-mode" : "condition", + "secon" : "u:r:normal_hap:s0", + "disabled" : 1 + } + ] +} -- Gitee