1# Copyright (c) 2021-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 14# args of this module 15SUBSYSTEM_DIR = "//foundation/communication" 16NETMANAGER_EXT_ROOT = "$SUBSYSTEM_DIR/netmanager_ext" 17 18# args of frameworks 19FRAMEWORKS_SRC = "$NETMANAGER_EXT_ROOT/frameworks/native/externalvpnclient/src" 20ETHERNETMANAGER_INNERKITS_SOURCE_DIR = 21 "$NETMANAGER_EXT_ROOT/frameworks/native/ethernetclient" 22NETWORKSHAREMANAGER_INNERKITS_SOURCE_DIR = 23 "$NETMANAGER_EXT_ROOT/frameworks/native/netshareclient" 24VPN_INNERKITS_SOURCE_DIR = "$NETMANAGER_EXT_ROOT/frameworks/native/netvpnclient" 25 26# args of interfaces 27INTERFACES_INCLUDE = 28 "$NETMANAGER_EXT_ROOT/interfaces/innerkits/externalvpnclient/include" 29INTERFACES_DIR = "$NETMANAGER_EXT_ROOT/interfaces/innerkits/externalvpnclient" 30EXT_INNERKITS_ROOT = "$NETMANAGER_EXT_ROOT/interfaces/innerkits" 31MDNSINTERFACE_INCLUDE = "$NETMANAGER_EXT_ROOT/interfaces/innerkits/mdnsclient" 32 33# args of services 34SERVICES_EXTERNALVPNMANAGER = "$NETMANAGER_EXT_ROOT/services/externalvpnmanager" 35ETHERNETMANAGER_SOURCE_DIR = "$NETMANAGER_EXT_ROOT/services/ethernetmanager" 36NETWORKSHAREMANAGER_SOURCE_DIR = 37 "$NETMANAGER_EXT_ROOT/services/networksharemanager" 38MDNSMANAGER_SOURCE_DIR = "$NETMANAGER_EXT_ROOT/services/mdnsmanager" 39VPNMANAGER_SOURCE_DIR = "$NETMANAGER_EXT_ROOT/services/vpnmanager" 40 41# args of uitls 42NETWORKSHAREMANAGER_UTILS_DIR = "$NETMANAGER_EXT_ROOT/utils" 43 44# args of base module 45NETMANAGER_BASE_ROOT = "$SUBSYSTEM_DIR/netmanager_base" 46 47# args of base modules'frameworks 48NETCONNMANAGER_INNERKITS_SOURCE_DIR = 49 "$NETMANAGER_BASE_ROOT/frameworks/native/netconnclient" 50 51# args of base modules' interfaces 52BASE_INNERKITS_ROOT = "$NETMANAGER_BASE_ROOT/interfaces/innerkits" 53 54# args of base module's services 55NETCONNMANAGER_COMMON_DIR = "$NETMANAGER_BASE_ROOT/services/common" 56NETSYSCONTROLLER_ROOT_DIR = "$NETMANAGER_BASE_ROOT/services/netsyscontroller" 57NETCONNMANAGER_SOURCE_DIR = "$NETMANAGER_BASE_ROOT/services/netconnmanager" 58NETMANAGERNATIVE_ROOT = "$NETMANAGER_BASE_ROOT/services/netmanagernative" 59 60# args of base module's utils 61NETCONNMANAGER_UTILS_DIR = "$NETMANAGER_BASE_ROOT/utils" 62 63# NETMANAGER_PREBUILTS_DIR = "$NETMANAGER_BASE_ROOT/prebuilts" 64 65# args of other module 66DHCP_MANAGER_ROOT = "//foundation/communication/dhcp" 67WIFI_MANAGER_ROOT = "//foundation/communication/wifi/wifi" 68WIFI_MANAGER_INNERKITS_DIR = "$WIFI_MANAGER_ROOT/interfaces/kits/c" 69WIFI_FRAMEWORK_NATIVE_INCLUDE = "$WIFI_MANAGER_ROOT/frameworks/native/include" 70BLUETOOTH_ROOT = "//foundation/communication/bluetooth" 71USB_MANAGER_ROOT = "//base/usb/usb_manager" 72SAMGR_MANAGER_ROOT = "//foundation/systemabilitymgr/samgr" 73UTILS_ROOT = "//utils" 74THIRD_PARTY_ROOT = "//third_party" 75C_UTILS_ROOT = "//commonlibrary/c_utils" 76 77use_js_debug = false 78declare_args() { 79 enable_netmgr_ext_debug = true 80 netmanager_ext_feature_ethernet = true 81 netmanager_ext_feature_share = true 82 netmanager_ext_feature_mdns = true 83 netmanager_ext_feature_vpn = true 84} 85 86memory_optimization_cflags = [ 87 "-fvisibility=hidden", 88 "-fdata-sections", 89 "-ffunction-sections", 90 "-Os", 91] 92 93memory_optimization_cflags_cc = [ 94 "-fvisibility-inlines-hidden", 95 "-Os", 96] 97 98memory_optimization_ldflags = [ 99 "-Wl,--exclude-libs=ALL", 100 "-Wl,--gc-sections", 101] 102