• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
14import("//build/ohos.gni")
15import("//foundation/graphic/graphic_2d/graphic_config.gni")
16
17## Build librender_service.so
18ohos_shared_library("librender_service") {
19  defines = []
20  if (graphic_standard_feature_color_gamut_enable) {
21    defines += [ "PADDING_HEIGHT_32" ]
22  } else {
23    defines += []
24  }
25  defines += gpu_defines
26
27  if (use_musl) {
28    defines += [ "FRAME_AWARE_TRACE" ]
29  }
30  sources = [
31    "core/pipeline/rs_base_render_engine.cpp",
32    "core/pipeline/rs_base_render_util.cpp",
33    "core/pipeline/rs_cold_start_thread.cpp",
34    "core/pipeline/rs_composer_adapter.cpp",
35    "core/pipeline/rs_divided_render_util.cpp",
36    "core/pipeline/rs_main_thread.cpp",
37    "core/pipeline/rs_physical_screen_processor.cpp",
38    "core/pipeline/rs_processor.cpp",
39    "core/pipeline/rs_processor_factory.cpp",
40    "core/pipeline/rs_qos_thread.cpp",
41    "core/pipeline/rs_render_engine.cpp",
42    "core/pipeline/rs_render_service.cpp",
43    "core/pipeline/rs_render_service_connection.cpp",
44    "core/pipeline/rs_render_service_listener.cpp",
45    "core/pipeline/rs_render_service_visitor.cpp",
46    "core/pipeline/rs_surface_capture_task.cpp",
47    "core/pipeline/rs_uni_render_engine.cpp",
48    "core/pipeline/rs_uni_render_judgement.cpp",
49    "core/pipeline/rs_uni_render_listener.cpp",
50    "core/pipeline/rs_uni_render_mirror_processor.cpp",
51    "core/pipeline/rs_uni_render_processor.cpp",
52    "core/pipeline/rs_uni_render_util.cpp",
53    "core/pipeline/rs_uni_render_visitor.cpp",
54    "core/pipeline/rs_unmarshal_thread.cpp",
55    "core/pipeline/rs_virtual_screen_processor.cpp",
56    "core/screen_manager/rs_screen.cpp",
57    "core/screen_manager/rs_screen_manager.cpp",
58    "core/transaction/rs_render_service_connection_stub.cpp",
59    "core/transaction/rs_render_service_stub.cpp",
60  ]
61
62  if (rs_enable_eglimage) {
63    sources += [ "core/pipeline/rs_egl_image_manager.cpp" ]
64  }
65
66  include_dirs = [
67    "core",
68    "//foundation/graphic/graphic_2d/frameworks/surface/include",
69    "//foundation/graphic/graphic_2d/rosen/include",
70    "//foundation/graphic/graphic_2d/rosen/modules/composer/vsync/include",
71    "$graphic_2d_root/rosen/modules/render_frame_trace/include",
72    "//foundation/graphic/graphic_2d/rosen/modules/render_service_base/src",
73    "//foundation/graphic/graphic_2d/rosen/modules/utils",
74    "//commonlibrary/c_utils/base/include",
75    "//utils/system/safwk/native/include",
76    "//foundation/graphic/graphic_2d/utils/log",
77    "//foundation/barrierfree/accessibility/interfaces/innerkits/acfwk/include",
78  ]
79
80  deps = [
81    "//foundation/barrierfree/accessibility/interfaces/innerkits/acfwk:accessibilityconfig",
82    "//foundation/graphic/graphic_2d:libsurface",
83    "//foundation/graphic/graphic_2d/rosen/modules/composer:libcomposer",
84    "$graphic_2d_root/rosen/modules/render_frame_trace:render_frame_trace",
85    "//foundation/graphic/graphic_2d/rosen/modules/render_service_base:librender_service_base",
86    "//foundation/resourceschedule/resource_schedule_service/soc_perf:socperf_client",
87    "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk",
88  ]
89
90  public_deps = [
91    "//third_party/flutter/build/skia:ace_skia_ohos",
92    "//third_party/libpng:libpng",
93  ]
94
95  external_deps = [
96    "c_utils:utils",
97    "eventhandler:libeventhandler",
98    "hicollie_native:libhicollie",
99    "hitrace_native:hitrace_meter",
100    "init:libbegetutil",
101    "ipc:ipc_core",
102    "samgr:samgr_proxy",
103  ]
104
105  part_name = "graphic_standard"
106  subsystem_name = "graphic"
107}
108
109## Build render_service.bin
110ohos_executable("render_service") {
111  sources = [ "core/main.cpp" ]
112
113  include_dirs = [
114    "core",
115    "//commonlibrary/c_utils/base/include",
116  ]
117
118  deps = [
119    ":librender_service",
120    "//foundation/graphic/graphic_2d/rosen/modules/composer:libcomposer",
121    "//foundation/graphic/graphic_2d/rosen/modules/render_service_base:librender_service_base",
122  ]
123
124  part_name = "graphic_standard"
125  subsystem_name = "graphic"
126}
127