From 7aa47681e17926be40f9ef7074377816fdc76efe Mon Sep 17 00:00:00 2001 From: peng_langyuan Date: Fri, 16 Jun 2023 10:09:08 +0800 Subject: [PATCH 1/3] feat:add safwk compile gn target --- .../systemabilitymgr/safwk/bundle.json | 58 +++++++++++++++++++ .../safwk/interfaces/innerkits/safwk/BUILD.gn | 41 +++++++++++++ .../safwk/services/safwk/BUILD.gn | 22 +++++++ 3 files changed, 121 insertions(+) create mode 100644 openeuler/compiler_gn/foundation/systemabilitymgr/safwk/bundle.json create mode 100644 openeuler/compiler_gn/foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk/BUILD.gn create mode 100644 openeuler/compiler_gn/foundation/systemabilitymgr/safwk/services/safwk/BUILD.gn diff --git a/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/bundle.json b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/bundle.json new file mode 100644 index 0000000..1964532 --- /dev/null +++ b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/bundle.json @@ -0,0 +1,58 @@ +{ + "name": "@ohos/systemabilitymgr_safwk", + "description": "system ability framework", + "homePage": "https://gitee.com/openharmony", + "version": "3.1", + "license": "Apache License 2.0", + "repository": "https://gitee.com/openharmony/systemabilitymgr_safwk", + "publishAs": "code-segment", + "segment": { + "destPath": "foundation/systemabilitymgr/safwk" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "safwk", + "subsystem": "systemabilitymgr", + "features": [ "safwk_feature_coverage = false" ], + "adapted_system_type": [ + "standard" + ], + "rom": "200KB", + "ram": "7130KB", + "deps": { + "components": [ + "hitrace_native", + "hiviewdfx_hilog_native", + "ipc", + "samgr", + "c_utils" + ], + "third_party": [ "libxml2" ] + }, + "build": { + "group_type": { + "base_group": [ + "//foundation/systemabilitymgr/safwk/services/safwk:sa_main", + "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk" + ], + "fwk_group": [], + "service_group": [] + }, + "inner_kits": [ + { + "header": { + "header_base": "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk", + "header_files": [ + "system_ability.h" + ] + }, + "name": "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk" + } + ], + "test": [ + "//foundation/systemabilitymgr/safwk/test:unittest" + ] + } + } +} diff --git a/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk/BUILD.gn b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk/BUILD.gn new file mode 100644 index 0000000..57dcce2 --- /dev/null +++ b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk/BUILD.gn @@ -0,0 +1,41 @@ +# Copyright (c) 2021 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. + +import("//build/ohos.gni") +import("//build/ohos_var.gni") + +# 建立所需头文件链接 +exec_script("//build/openeuler/script/link.py", [ "--src_target", "/usr/include/safwk/system_ability.h", "--dest_target", + rebase_path("//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk/system_ability.h") ], "string") + +exec_script("//build/openeuler/script/link.py", [ "--src_target", "/usr/include/safwk", "--dest_target", + rebase_path("//foundation/systemabilitymgr/safwk/services/safwk/include") ], "string") + +config("system_ability_config") { + visibility = [ ":*" ] + include_dirs = [ + "../../../services/safwk/include", + "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk", + ] +} + +ohos_prebuilt_shared_library("system_ability_fwk") { + source = "/usr/lib64/libsystem_ability_fwk.z.so" + + public_configs = [ ":system_ability_config" ] + + install_images = [ system_base_dir ] + relative_install_dir = "platformsdk" + part_name = "safwk" + subsystem_name = "systemabilitymgr" +} \ No newline at end of file diff --git a/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/services/safwk/BUILD.gn b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/services/safwk/BUILD.gn new file mode 100644 index 0000000..a258444 --- /dev/null +++ b/openeuler/compiler_gn/foundation/systemabilitymgr/safwk/services/safwk/BUILD.gn @@ -0,0 +1,22 @@ +# Copyright (c) 2021 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. + +import("//build/ohos.gni") + +ohos_prebuilt_executable("sa_main") { + source = "/usr/bin/sa_main" + install_enable = true + + part_name = "safwk" + subsystem_name = "systemabilitymgr" +} \ No newline at end of file -- 2.33.0