17c804472Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd. 27c804472Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 37c804472Sopenharmony_ci# you may not use this file except in compliance with the License. 47c804472Sopenharmony_ci# You may obtain a copy of the License at 57c804472Sopenharmony_ci# 67c804472Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 77c804472Sopenharmony_ci# 87c804472Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 97c804472Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 107c804472Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 117c804472Sopenharmony_ci# See the License for the specific language governing permissions and 127c804472Sopenharmony_ci# limitations under the License. 137c804472Sopenharmony_ci 147c804472Sopenharmony_ciimport("//build/ohos.gni") 157c804472Sopenharmony_ciimport("//foundation/arkui/ace_engine/adapter/preview/build/component_test.gni") 167c804472Sopenharmony_ciimport("//foundation/arkui/ace_engine_lite/simulator.gni") 177c804472Sopenharmony_ciimport("../gn/config.gni") 187c804472Sopenharmony_ci 197c804472Sopenharmony_ciconfig("jsapp_config") { 207c804472Sopenharmony_ci cflags = [ 217c804472Sopenharmony_ci "-std=c++17", 227c804472Sopenharmony_ci "-Wall", 237c804472Sopenharmony_ci "-Wno-deprecated-declarations", 247c804472Sopenharmony_ci ] 257c804472Sopenharmony_ci cflags_cc = cflags 267c804472Sopenharmony_ci} 277c804472Sopenharmony_ci 287c804472Sopenharmony_ciconfig("jsapp_config_rich") { 297c804472Sopenharmony_ci visibility = [ ":*" ] 307c804472Sopenharmony_ci 317c804472Sopenharmony_ci include_dirs = [ "rich" ] 327c804472Sopenharmony_ci} 337c804472Sopenharmony_ci 347c804472Sopenharmony_ciohos_source_set("jsapp_rich") { 357c804472Sopenharmony_ci defines = [] 367c804472Sopenharmony_ci if (platform == "mingw_x86_64" && defined(enable_component_test) && 377c804472Sopenharmony_ci enable_component_test) { 387c804472Sopenharmony_ci defines += [ "COMPONENT_TEST_ENABLED" ] 397c804472Sopenharmony_ci } 407c804472Sopenharmony_ci configs = [ ":jsapp_config" ] 417c804472Sopenharmony_ci sources = [ 427c804472Sopenharmony_ci "JsApp.cpp", 437c804472Sopenharmony_ci "rich/JsAppImpl.cpp", 447c804472Sopenharmony_ci ] 457c804472Sopenharmony_ci include_dirs = [ 467c804472Sopenharmony_ci ".", 477c804472Sopenharmony_ci "rich/", 487c804472Sopenharmony_ci "../mock/rich/", 497c804472Sopenharmony_ci "../cli/", 507c804472Sopenharmony_ci "../util/", 517c804472Sopenharmony_ci "../mock/", 527c804472Sopenharmony_ci "./external/", 537c804472Sopenharmony_ci ] 547c804472Sopenharmony_ci include_dirs += os_include_dirs 557c804472Sopenharmony_ci deps = [ 567c804472Sopenharmony_ci "rich/external:ide_extension", 577c804472Sopenharmony_ci "//third_party/libwebsockets:websockets_static", 587c804472Sopenharmony_ci ] 597c804472Sopenharmony_ci external_deps = [ 607c804472Sopenharmony_ci "ace_engine:libace_compatible", 617c804472Sopenharmony_ci "graphic_2d:librender_service_client", 627c804472Sopenharmony_ci "window_manager:previewer_window", 637c804472Sopenharmony_ci ] 647c804472Sopenharmony_ci if (platform != "linux_x64") { 657c804472Sopenharmony_ci external_deps += [ "ability_runtime:ability_simulator" ] 667c804472Sopenharmony_ci } 677c804472Sopenharmony_ci part_name = "previewer" 687c804472Sopenharmony_ci subsystem_name = "ide" 697c804472Sopenharmony_ci} 707c804472Sopenharmony_ci 717c804472Sopenharmony_ciohos_source_set("jsapp_lite") { 727c804472Sopenharmony_ci defines = [ "ENABLE_ICU" ] 737c804472Sopenharmony_ci if (build_lite_full) { 747c804472Sopenharmony_ci defines += [ "LITEWEARABLE_SUPPORTED=1" ] 757c804472Sopenharmony_ci } 767c804472Sopenharmony_ci configs = [ ":jsapp_config" ] 777c804472Sopenharmony_ci configs += [ "//third_party/freetype:freetype_config" ] 787c804472Sopenharmony_ci sources = [ 797c804472Sopenharmony_ci "JsApp.cpp", 807c804472Sopenharmony_ci "lite/JsAppImpl.cpp", 817c804472Sopenharmony_ci "lite/TimerTaskHandler.cpp", 827c804472Sopenharmony_ci ] 837c804472Sopenharmony_ci include_dirs = [ 847c804472Sopenharmony_ci ".", 857c804472Sopenharmony_ci "lite/", 867c804472Sopenharmony_ci "../mock/lite/", 877c804472Sopenharmony_ci "../util/", 887c804472Sopenharmony_ci "../mock/", 897c804472Sopenharmony_ci "../cli", 907c804472Sopenharmony_ci "//foundation/arkui/ui_lite/interfaces/innerkits/", 917c804472Sopenharmony_ci "//foundation/arkui/ui_lite/interfaces/kits/", 927c804472Sopenharmony_ci "//foundation/graphic/graphic_utils_lite/interfaces/innerkits/", 937c804472Sopenharmony_ci "//foundation/graphic/graphic_utils_lite/interfaces/kits/", 947c804472Sopenharmony_ci "//foundation/arkui/ui_lite/frameworks/", 957c804472Sopenharmony_ci "//foundation/arkui/ui_lite/frameworks/dock/", 967c804472Sopenharmony_ci "//foundation/arkui/ui_lite/interfaces/innerkits/dock/", 977c804472Sopenharmony_ci ] 987c804472Sopenharmony_ci if (build_lite_full) { 997c804472Sopenharmony_ci include_dirs += [ 1007c804472Sopenharmony_ci "//base/sensors/sensorjs_lite/sensor_lite/interfaces/js/builtin/sensor/include/", 1017c804472Sopenharmony_ci "//base/location/interfaces/kits/geo_lite/js/builtin/include/", 1027c804472Sopenharmony_ci ] 1037c804472Sopenharmony_ci } 1047c804472Sopenharmony_ci deps = [ 1057c804472Sopenharmony_ci "//foundation/arkui/ace_engine_lite/frameworks/targets/simulator:ace_lite", 1067c804472Sopenharmony_ci "//third_party/libwebsockets:websockets_static", 1077c804472Sopenharmony_ci ] 1087c804472Sopenharmony_ci part_name = "previewer" 1097c804472Sopenharmony_ci subsystem_name = "ide" 1107c804472Sopenharmony_ci} 111