1 /* 2 * Copyright (c) 2020-2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef OHOS_ACELITE_CONFIG_H 17 #define OHOS_ACELITE_CONFIG_H 18 19 // some features depend on the low layer configuration 20 #include "graphic_config.h" 21 22 #if (ENABLE_OHOS_ACELITE_PRODUCT_CONFIG == 1) 23 #include "product_acelite_config.h" 24 #endif 25 /** 26 * ================================================================================================ 27 * config for wearable 28 * ================================================================================================ 29 */ 30 /** 31 * the flag indicating watch product 32 */ 33 #ifndef OHOS_ACELITE_PRODUCT_WATCH 34 #define OHOS_ACELITE_PRODUCT_WATCH 1 35 #endif 36 37 // delete this after jerry porting is ready 38 #ifndef JERRY_PORTING_DEPENDENCY 39 #define JERRY_PORTING_DEPENDENCY 1 40 #endif 41 42 /** 43 * enable Canvas component Feature API on ipcamera real devices 44 */ 45 #ifndef FEATURE_COMPONENT_CANVAS 46 #define FEATURE_COMPONENT_CANVAS 1 47 #endif 48 49 /** 50 * enable edittext component Feature 51 */ 52 #ifndef FEATURE_COMPONENT_EDITTEXT 53 #define FEATURE_COMPONENT_EDITTEXT 1 54 #endif 55 56 /** 57 * enable QRcode component 58 */ 59 #ifndef FEATURE_COMPONENT_QRCODE 60 #define FEATURE_COMPONENT_QRCODE 1 61 #endif 62 63 /** 64 * support terminate() API from JS 65 */ 66 #ifndef FEATURE_TERMINATE_ABILITY 67 #define FEATURE_TERMINATE_ABILITY 1 68 #endif 69 70 /** 71 * support screenOnVisible() API from JS 72 */ 73 #ifndef FEATURE_SCREEN_ON_VISIBLE 74 #define FEATURE_SCREEN_ON_VISIBLE 1 75 #endif 76 77 /** 78 * enable FeatureAbility API 79 */ 80 #ifndef FEATURE_FEATURE_ABILITY_MODULE 81 #define FEATURE_FEATURE_ABILITY_MODULE 1 82 #endif 83 84 /** 85 * enable syscap JS API 86 */ 87 #ifndef FEATURE_SYSCAP_MODULE 88 #define FEATURE_SYSCAP_MODULE 1 89 #endif 90 91 /** 92 * enable timer JS API 93 */ 94 #ifndef FEATURE_TIMER_MODULE 95 #define FEATURE_TIMER_MODULE 1 96 #endif 97 98 /** 99 * enable localization feature 100 */ 101 #ifndef FEATURE_LOCALIZATION_MODULE 102 #define FEATURE_LOCALIZATION_MODULE 1 103 #endif 104 105 #ifndef FEATURE_ACELITE_HI_LOG_PRINTF 106 #define FEATURE_ACELITE_HI_LOG_PRINTF 1 107 #endif 108 109 /** 110 * support mc ace log module trace 111 */ 112 #ifndef FEATURE_ACELITE_MC_LOG_PRINTF 113 #define FEATURE_ACELITE_MC_LOG_PRINTF 0 114 #endif 115 116 /** 117 * support mc ace event and error code print 118 */ 119 #ifndef FEATURE_ACELITE_MC_EVENT_ERROR_CODE_PRINT 120 #define FEATURE_ACELITE_MC_EVENT_ERROR_CODE_PRINT 1 121 #endif 122 123 /** 124 * support mc console log 125 */ 126 #ifndef FEATURE_USER_MC_LOG_PRINTF 127 #define FEATURE_USER_MC_LOG_PRINTF 1 128 #endif 129 130 /** 131 * support config for product JS modules 132 */ 133 #ifndef FEATURE_PRODUCT_MODULE 134 #define FEATURE_PRODUCT_MODULE 1 135 #endif 136 137 /** 138 * support config for private JS modules 139 */ 140 #ifndef FEATURE_PRIVATE_MODULE 141 #define FEATURE_PRIVATE_MODULE 1 142 #endif 143 144 /** 145 * support using memory pool from product side 146 */ 147 #ifndef FEATURE_ACELITE_PRODUCT_MEMORY_POOL 148 #define FEATURE_ACELITE_PRODUCT_MEMORY_POOL 1 149 #endif 150 151 /** 152 * define the max length of user's console log 153 */ 154 #ifndef CONSOLE_LOG_LINE_MAX_LENGTH 155 #define CONSOLE_LOG_LINE_MAX_LENGTH (96) 156 #endif 157 158 #ifndef ACELITE_DEPENDENCY_IS_READY 159 #define ACELITE_DEPENDENCY_IS_READY 1 160 #endif 161 /** 162 * support mc ace dfx module 163 */ 164 #ifndef FEATURE_ACELITE_DFX_MODULE 165 #define FEATURE_ACELITE_DFX_MODULE 1 166 #endif 167 168 #ifndef FEATURE_ACELITE_LITE_DFX_MODULE 169 #define FEATURE_ACELITE_LITE_DFX_MODULE 1 170 #endif 171 172 /** 173 * support mc lazy loading 174 */ 175 #ifndef FEATURE_LAZY_LOADING_MODULE 176 #define FEATURE_LAZY_LOADING_MODULE 1 177 #endif 178 179 /** 180 * support fatal error handling on device which not support process 181 */ 182 #ifndef FEATURE_FATAL_ERROR_HANDLING 183 #define FEATURE_FATAL_ERROR_HANDLING 1 184 #endif 185 186 /** 187 * support intl module 188 */ 189 #ifndef FEATURE_INTL_MODULE 190 #define FEATURE_INTL_MODULE 1 191 #endif 192 193 /** 194 * supoort number format module 195 */ 196 #ifndef FEATURE_NUMBER_FORMAT 197 #define FEATURE_NUMBER_FORMAT 1 198 #endif 199 200 /** 201 * date time module 202 */ 203 #ifndef FEATURE_DATE_FORMAT 204 #define FEATURE_DATE_FORMAT 1 205 #endif 206 207 #ifndef FEATURE_API_VERSION 208 #define FEATURE_API_VERSION 1 209 #endif 210 211 #ifndef JS_ENGINE_STATIC_MULTI_CONTEXTS_ENABLED 212 #define JS_ENGINE_STATIC_MULTI_CONTEXTS_ENABLED 1 213 #ifndef JERRY_FOR_IAR_CONFIG 214 #define JERRY_FOR_IAR_CONFIG 215 #endif 216 #endif 217 218 #ifndef FEATURE_MODULE_STORAGE 219 #define FEATURE_MODULE_STORAGE 0 220 #endif 221 222 #ifndef FEATURE_MODULE_AUDIO 223 #define FEATURE_MODULE_AUDIO 0 224 #endif 225 226 #ifndef FEATURE_MODULE_DEVICE 227 #define FEATURE_MODULE_DEVICE 0 228 #endif 229 230 #ifndef FEATURE_SUPPORT_HTTP 231 #define FEATURE_SUPPORT_HTTP 0 232 #endif 233 234 #ifndef FEATURE_MODULE_GEO 235 #define FEATURE_MODULE_GEO 0 236 #endif 237 238 #ifndef FEATURE_MODULE_SENSOR 239 #define FEATURE_MODULE_SENSOR 0 240 #endif 241 242 #ifndef FEATURE_MODULE_BRIGHTNESS 243 #define FEATURE_MODULE_BRIGHTNESS 0 244 #endif 245 246 #ifndef FEATURE_MODULE_BATTERY 247 #ifdef ACE_ENGINE_LITE_BATTERY_LITE_ENABLE 248 #define FEATURE_MODULE_BATTERY 0 249 #endif 250 #endif 251 252 #ifndef FEATURE_MODULE_CONFIGURATION 253 #define FEATURE_MODULE_CONFIGURATION 0 254 #endif 255 256 /** 257 * support key store module 258 */ 259 #ifdef ENABLE_HUKS_ACE_LITE_FEATURE 260 #ifndef FEATURE_ACELITE_HUKS 261 #define FEATURE_ACELITE_HUKS 1 262 #endif 263 #endif 264 265 /** 266 * support js profiler 267 */ 268 #ifndef FEATURE_ACELITE_MC_JS_PROFILER 269 #define FEATURE_ACELITE_MC_JS_PROFILER 1 270 #endif 271 272 #ifndef DEFAULT_PROFILER_MSG_PATH 273 #define DEFAULT_PROFILER_MSG_PATH "user/log/" 274 #endif 275 276 #ifndef PROFILER_ENABLE_FLAG_FILE 277 #define PROFILER_ENABLE_FLAG_FILE "user/data/profiler_enable" 278 #endif 279 280 #ifndef RUNTIME_MODE_FILE_PATH 281 #define RUNTIME_MODE_FILE_PATH "user/data/jsparser_enable" 282 #endif 283 284 /** 285 * Rotation API feature 286 */ 287 #if (ENABLE_ROTATE_INPUT == 1) 288 // low layer supports 289 #ifndef FEATURE_ROTATION_API 290 #define FEATURE_ROTATION_API 1 291 #endif 292 #endif // (ENABLE_ROTATE_INPUT == 1) 293 294 #endif // OHOS_ACELITE_CONFIG_H 295