diff --git a/build/builder/commands/build.py b/build/builder/commands/build.py index e8240f31ca464e74d2e362caaaf5ebac7540ec92..9209e8c194b7e65027a99624e2b19f7bde1ca51a 100755 --- a/build/builder/commands/build.py +++ b/build/builder/commands/build.py @@ -57,7 +57,7 @@ class Builder: librarys = os.listdir(os.path.join(self.build_output_dir, 'common/common/')) for lib in librarys: if '.so' in lib: - exec_sys_command(['cp', '-rf', os.path.join(self.build_output_dir, 'common/common/', lib), "/usr/lib64/"])[0] + exec_sys_command(['sudo', 'cp', '-rf', os.path.join(self.build_output_dir, 'common/common/', lib), "/usr/lib64/"])[0] return True def launch_gn(self) -> bool: diff --git a/build/gn/BUILD.gn b/build/gn/BUILD.gn index c94879108ad2608b94123c377b155dcd612c4937..0da0214d1a7ed70d347870bf15790a12d35652fb 100644 --- a/build/gn/BUILD.gn +++ b/build/gn/BUILD.gn @@ -33,6 +33,7 @@ group("ft_test") { "//display_server/frameworks/surface/test/ft_build:test", "//display_server/rosen/samples/composer/ft_build:hello_composer", "//display_server/rosen/modules/render_service_client/test/ft_build:render_service_client_rs_demo", + "//display_server/rosen/modules/render_service_client/test/ft_build:render_service_client_gravity_demo", "//display_server/drivers/hal/test:gpu_backend_test", ] diff --git a/config.gni b/config.gni index 95a2459df34fdf5f50af2311849e4347fe174c49..1b830b72cba52d2dedcbdc31acab50b4e8df71dd 100644 --- a/config.gni +++ b/config.gni @@ -12,6 +12,6 @@ # limitations under the License declare_args() { - display_server_path = "//display_server" + display_server_root = "//display_server" window_manager_path = "//window_manager" } diff --git a/display_server/ft_build/ds_config.gni b/display_server/ft_build/ds_config.gni index 60dc3dce3ed0e34c948ee0023df79a9502ca6194..53c47d054f2138158458ee7d707339057081fac7 100644 --- a/display_server/ft_build/ds_config.gni +++ b/display_server/ft_build/ds_config.gni @@ -10,13 +10,13 @@ # 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("//config.gni") declare_args() { graphic_standard_feature_ace_enable_gpu = false graphic_standard_feature_rs_enable_eglimage = false graphic_standard_feature_rs_enable_uni_render = false graphic_standard_feature_enable_afbc = false - rs_main_executable = false } if (graphic_standard_feature_ace_enable_gpu) { @@ -49,5 +49,4 @@ if (graphic_standard_feature_enable_afbc) { gpu_defines += [ "RS_ENABLE_AFBC" ] } -display_server_root = "//display_server" rosen_root = "//display_server/rosen" diff --git a/display_server/rosen/modules/render_service/core/pipeline/rs_render_service.h b/display_server/rosen/modules/render_service/core/pipeline/rs_render_service.h index 9b2f3bc93083039ec411fbae76879e78f321658c..18fe54c3b7d0327b3be97652ec9bf81a306341f4 100644 --- a/display_server/rosen/modules/render_service/core/pipeline/rs_render_service.h +++ b/display_server/rosen/modules/render_service/core/pipeline/rs_render_service.h @@ -33,18 +33,9 @@ class RSSyncTask; class RSRenderServiceConnection; class RSRenderService : public SystemAbility, public RSRenderServiceStub { -#ifndef RS_MAIN_EXECUTABLE DECLARE_DELAYED_SINGLETON(RSRenderService); -#endif // RS_MAIN_EXECUTABLE DECLARE_SYSTEM_ABILITY(RSRenderService); public: -#ifdef RS_MAIN_EXECUTABLE - RSRenderService(); - ~RSRenderService() noexcept; - - RSRenderService(const RSRenderService&) = delete; - RSRenderService& operator=(const RSRenderService&) = delete; -#endif // RS_MAIN_EXECUTABLE bool Init(); void Run(); diff --git a/display_server/rosen/modules/render_service/ft_build/BUILD.gn b/display_server/rosen/modules/render_service/ft_build/BUILD.gn index 9b26976a199025927a80d06fc7461ed49a9166a0..cac004621ad7ec268c6905db8b10b0b1823fdef3 100644 --- a/display_server/rosen/modules/render_service/ft_build/BUILD.gn +++ b/display_server/rosen/modules/render_service/ft_build/BUILD.gn @@ -17,19 +17,8 @@ import("//display_server/ft_build/ds_config.gni") # On the openEuler platform, display_server and window_manager are in the same process # Use sa_main.bin instead of render_service.bin -config("render_service_config") { - if (rs_main_executable) { - defines += [ "RS_MAIN_EXECUTABLE" ] - } -} - group("render_service_group") { deps = [ ":librender_service" ] - - if (rs_main_executable) { - print("[GN INFO] Enable RS exec building.") - deps += [ ":render_service" ] - } } ft_shared_library("librender_service") { @@ -72,6 +61,10 @@ ft_shared_library("librender_service") { "../core/transaction/rs_render_service_stub.cpp", ] + if (rs_enable_eglimage) { + sources += [ "../core/pipeline/rs_egl_image_manager.cpp" ] + } + include_dirs = [ "../core", "$display_server_root/frameworks/surface/include", @@ -83,6 +76,7 @@ ft_shared_library("librender_service") { "$display_server_root/utils/log", "$display_server_root/rosen/modules/render_service_base/src/platform/fangtian/include", "$display_server_root/utils/socketpair/export", + "$rosen_root/modules/2d_graphics/src", ] deps = [ @@ -102,23 +96,5 @@ ft_shared_library("librender_service") { "//build/gn/configs/system_libs:image", ] - public_configs = [ ":render_service_config" ] - - libs = ["png"] -} - -if (rs_main_executable) { - ft_executable("render_service") { - sources = [ "../core/main.cpp" ] - - include_dirs = [ "../core" ] - - deps = [ - ":librender_service", - "//display_server/rosen/modules/composer/ft_build:libcomposer", - "//display_server/rosen/modules/render_service_base/ft_build:librender_service_base", - ] - - configs = [ ":render_service_config" ] - } + libs = ["png", "EGL", "GLESv2" ] } diff --git a/display_server/rosen/modules/render_service_client/test/ft_build/BUILD.gn b/display_server/rosen/modules/render_service_client/test/ft_build/BUILD.gn index f364f5e35c7ff3303dec8eab93a55a9890fbd717..daf48fd66c566d22af183843c6aa5f03bd06bbc0 100644 --- a/display_server/rosen/modules/render_service_client/test/ft_build/BUILD.gn +++ b/display_server/rosen/modules/render_service_client/test/ft_build/BUILD.gn @@ -12,14 +12,15 @@ # limitations under the License. import("//build/gn/fangtian.gni") +import("//display_server/ft_build/ds_config.gni") ft_executable("render_service_client_rs_demo") { sources = [ "../render_service_client_rs_demo.cpp" ] include_dirs = [ - "//display_server/rosen/modules/render_service_base/src", - "//display_server/rosen/include", - "//display_server/drivers/interfaces", + "$display_server_root/rosen/modules/render_service_base/src", + "$display_server_root/rosen/include", + "$display_server_root/drivers/interfaces", ] deps = [ @@ -31,3 +32,30 @@ ft_executable("render_service_client_rs_demo") { "//build/gn/configs/system_libs:image", ] } + +ft_executable("render_service_client_gravity_demo") { + sources = [ "../render_service_client_gravity_demo.cpp" ] + + cflags = [ "-Wno-c++11-narrowing" ] + + include_dirs = [ + "$window_manager_path/interfaces/innerkits", + "//display_server/rosen/modules/2d_graphics/src", + ] + + deps = [ + "$rosen_root/modules/render_service_base/ft_build:librender_service_base", + "$rosen_root/modules/render_service_client/ft_build:librender_service_client", + "$rosen_root/modules/animation/window_animation/ft_build:window_animation", + "$display_server_root/utils/buffer_handle/ft_build:buffer_handle", + "$window_manager_path/wm/ft_build:libwm", + "$window_manager_path/utils/ft_build:libwmutil", + "$window_manager_path/wmserver/ft_build:libwms", + "$window_manager_path/dmserver/ft_build:libdms", + "$window_manager_path/dm/ft_build:libdm", + "//build/gn/configs/system_libs:skia", + "//build/gn/configs/system_libs:c_utils", + "//build/gn/configs/system_libs:ipc_core", + ] + libs = [ "EGL", "GLESv2" ] +} diff --git a/display_server/rosen/modules/render_service_client/test/render_service_client_rs_demo.cpp b/display_server/rosen/modules/render_service_client/test/render_service_client_rs_demo.cpp index 77aceae6ee9b42162774a36d8977611546842ba9..c7189aa089a98a406e456bb32d11583fe181ee2b 100644 --- a/display_server/rosen/modules/render_service_client/test/render_service_client_rs_demo.cpp +++ b/display_server/rosen/modules/render_service_client/test/render_service_client_rs_demo.cpp @@ -282,7 +282,7 @@ public: isGPU_ = false; #endif - DisplayId id = DmsMock::GetInstance().GetDefaultDisplayId(); + id = DmsMock::GetInstance().GetDefaultDisplayId(); std::cout << "RS default screen id is " << id << ".\n"; auto activeModeInfo = DmsMock::GetInstance().GetDisplayActiveMode(id); if (activeModeInfo) { @@ -334,6 +334,7 @@ public: RSDisplayNodeConfig config; RSDisplayNode::SharedPtr displayNode = RSDisplayNode::Create(config); + displayNode->SetScreenId(id); displayNode->SetBounds(0, 0, screenWidth_, screenheight_); displayNode->AddChild(surfaceNode1, -1); displayNode->AddChild(surfaceNode2, -1); @@ -373,6 +374,7 @@ private: int screenWidth_ = 0; int screenheight_ = 0; int screenRefreshRate_ = 0; + DisplayId id; }; // class RSDemoTestCase } // namespace OHOS::Rosen diff --git a/window_manager/dm/ft_build/BUILD.gn b/window_manager/dm/ft_build/BUILD.gn index 0324c3beefa06352f3e6743bdd6f11e6bef8ebf6..946224da5e9ca47bba998ee224522a71ce109a95 100644 --- a/window_manager/dm/ft_build/BUILD.gn +++ b/window_manager/dm/ft_build/BUILD.gn @@ -21,8 +21,8 @@ config("libdm_private_config") { "$window_manager_path/dm/include", "$window_manager_path/dmserver/include", "$window_manager_path/ft_adapter", - "$display_server_path/utils/buffer_handle/export", - "$display_server_path/rosen/modules/composer/vsync/include", + "$display_server_root/utils/buffer_handle/export", + "$display_server_root/rosen/modules/composer/vsync/include", ] } @@ -53,7 +53,7 @@ ft_shared_library("libdm") { public_configs = [ ":libdm_public_config" ] deps = [ - "$display_server_path/rosen/modules/render_service_client/ft_build:librender_service_client", + "$display_server_root/rosen/modules/render_service_client/ft_build:librender_service_client", "$window_manager_path/utils/ft_build:libwmutil", "//build/gn/configs/system_libs:image", diff --git a/window_manager/dmserver/ft_build/BUILD.gn b/window_manager/dmserver/ft_build/BUILD.gn index 66948996e256421be3413c52c6d1965e18f25e5e..951e759ec9e492dea1acd961726ca577edd5d8d6 100644 --- a/window_manager/dmserver/ft_build/BUILD.gn +++ b/window_manager/dmserver/ft_build/BUILD.gn @@ -21,8 +21,8 @@ config("libdms_private_config") { "$window_manager_path/dm/include", "$window_manager_path/interfaces/innerkits/dm", "$window_manager_path/ft_adapter", - "$display_server_path/utils/buffer_handle/export", - "$display_server_path/rosen/modules/composer/vsync/include", + "$display_server_root/utils/buffer_handle/export", + "$display_server_root/rosen/modules/composer/vsync/include", "/usr/include/libxml2", ] } @@ -62,9 +62,9 @@ ft_shared_library("libdms") { libs = [ "xml2" ] deps = [ - "$display_server_path/frameworks/surface/ft_build:surface", - "$display_server_path/rosen/modules/render_service_base/ft_build:librender_service_base", - "$display_server_path/rosen/modules/render_service_client/ft_build:librender_service_client", + "$display_server_root/frameworks/surface/ft_build:surface", + "$display_server_root/rosen/modules/render_service_base/ft_build:librender_service_base", + "$display_server_root/rosen/modules/render_service_client/ft_build:librender_service_client", "$window_manager_path/utils/ft_build:libwmutil", "//build/gn/configs/system_libs:hitrace_meter", diff --git a/window_manager/utils/ft_build/BUILD.gn b/window_manager/utils/ft_build/BUILD.gn index a82d52badb2cd1e90400e89252b521d45ad40fab..d1eb192bbf9803f0bde7545de10f007c48946a6f 100644 --- a/window_manager/utils/ft_build/BUILD.gn +++ b/window_manager/utils/ft_build/BUILD.gn @@ -22,10 +22,10 @@ config("libwmutil_private_config") { "$window_manager_path/interfaces/innerkits/dm", "$window_manager_path/interfaces/innerkits/wm", "$window_manager_path/ft_adapter", - "$display_server_path/rosen/modules/composer/vsync/include", - "$display_server_path/utils/buffer_handle/export", - "$display_server_path/rosen/modules/2d_graphics/include", - "$display_server_path/rosen/modules/2d_graphics/src", + "$display_server_root/rosen/modules/composer/vsync/include", + "$display_server_root/utils/buffer_handle/export", + "$display_server_root/rosen/modules/2d_graphics/include", + "$display_server_root/rosen/modules/2d_graphics/src", ] } @@ -64,8 +64,8 @@ ft_shared_library("libwmutil") { public_configs = [ ":libwmutil_public_config" ] deps = [ - "$display_server_path/frameworks/surface/ft_build:surface", - "$display_server_path/rosen/modules/render_service_client/ft_build:librender_service_client", + "$display_server_root/frameworks/surface/ft_build:surface", + "$display_server_root/rosen/modules/render_service_client/ft_build:librender_service_client", "//build/gn/configs/system_libs:samgr", "//build/gn/configs/system_libs:eventhandler", diff --git a/window_manager/wm/ft_build/BUILD.gn b/window_manager/wm/ft_build/BUILD.gn index 566380145b83fcf2531c4be4ffa02129915dce3f..c17d74bbde9b08d97598ca865b6ba6b8589a3ff6 100644 --- a/window_manager/wm/ft_build/BUILD.gn +++ b/window_manager/wm/ft_build/BUILD.gn @@ -24,8 +24,8 @@ config("libwm_private_config") { "$window_manager_path/wmserver/include", "$window_manager_path/interfaces/innerkits/dm", "$window_manager_path/ft_adapter", - "$display_server_path/utils/buffer_handle/export", - "$display_server_path/rosen/modules/composer/vsync/include", + "$display_server_root/utils/buffer_handle/export", + "$display_server_root/rosen/modules/composer/vsync/include", ] } @@ -64,9 +64,9 @@ ft_shared_library("libwm") { public_configs = [ ":libwm_public_config" ] deps = [ - "$display_server_path/rosen/modules/animation/window_animation/ft_build:window_animation", - "$display_server_path/rosen/modules/render_service_base/ft_build:librender_service_base", - "$display_server_path/rosen/modules/render_service_client/ft_build:librender_service_client", + "$display_server_root/rosen/modules/animation/window_animation/ft_build:window_animation", + "$display_server_root/rosen/modules/render_service_base/ft_build:librender_service_base", + "$display_server_root/rosen/modules/render_service_client/ft_build:librender_service_client", "$window_manager_path/dm/ft_build:libdm", "$window_manager_path/utils/ft_build:libwmutil", diff --git a/window_manager/wmserver/ft_build/BUILD.gn b/window_manager/wmserver/ft_build/BUILD.gn index e9fc17a1963774da765d94317f4b62ffcdfd58d6..5eed6d5d4e50d39086c481069140657a2c0d44f3 100644 --- a/window_manager/wmserver/ft_build/BUILD.gn +++ b/window_manager/wmserver/ft_build/BUILD.gn @@ -28,10 +28,10 @@ config("libwms_config") { "$window_manager_path/wm/include", "$window_manager_path/utils/include", "$window_manager_path/dm/include", - "$display_server_path/utils/buffer_handle/export", - "$display_server_path/rosen/modules/composer/vsync/include", - "$display_server_path/rosen/modules/2d_graphics/include", - "$display_server_path/rosen/modules/2d_graphics/src", + "$display_server_root/utils/buffer_handle/export", + "$display_server_root/rosen/modules/composer/vsync/include", + "$display_server_root/rosen/modules/2d_graphics/include", + "$display_server_root/rosen/modules/2d_graphics/src", "/usr/include/libxml2", ] } @@ -86,9 +86,9 @@ ft_shared_library("libwms") { libs = [ "xml2" ] deps = [ - "$display_server_path/rosen/modules/animation/window_animation/ft_build:window_animation", - "$display_server_path/rosen/modules/render_service_base/ft_build:librender_service_base", - "$display_server_path/rosen/modules/render_service_client/ft_build:librender_service_client", + "$display_server_root/rosen/modules/animation/window_animation/ft_build:window_animation", + "$display_server_root/rosen/modules/render_service_base/ft_build:librender_service_base", + "$display_server_root/rosen/modules/render_service_client/ft_build:librender_service_client", "$window_manager_path/dmserver/ft_build:libdms", "$window_manager_path/utils/ft_build:libwmutil", "$window_manager_path/wm/ft_build:libwm",