1# 2# Copyright (C) 2021 Huawei Technologies Co, Ltd. 3# 4 5# 6# Plugin library. 7# 8 9add_library(SceneAPI INTERFACE) 10set_target_properties(SceneAPI PROPERTIES 11 CXX_STANDARD 17 12 CXX_EXTENSIONS off 13 CXX_VISIBILITY_PRESET hidden 14 VISIBILITY_INLINES_HIDDEN 1) 15 16target_sources(SceneAPI PUBLIC 17 scene/base/namespace.h 18 scene/base/types.h 19 scene/ext/component_fwd.h 20 scene/ext/component_util.h 21 scene/ext/intf_component.h 22 scene/ext/intf_component_factory.h 23 scene/ext/intf_create_entity.h 24 scene/ext/intf_ecs_context.h 25 scene/ext/intf_ecs_event_listener.h 26 scene/ext/intf_ecs_object.h 27 scene/ext/intf_ecs_object_access.h 28 scene/ext/intf_internal_camera.h 29 scene/ext/intf_internal_scene.h 30 scene/ext/util.h 31 scene/interface/intf_bitmap.h 32 scene/interface/intf_camera.h 33 scene/interface/intf_environment.h 34 scene/interface/intf_layer.h 35 scene/interface/intf_light.h 36 scene/interface/intf_material.h 37 scene/interface/intf_mesh.h 38 scene/interface/intf_mesh_resource.h 39 scene/interface/intf_node.h 40 scene/interface/intf_node_import.h 41 scene/interface/intf_postprocess.h 42 scene/interface/intf_raycast.h 43 scene/interface/intf_scene.h 44 scene/interface/intf_scene_manager.h 45 scene/interface/intf_shader.h 46 scene/interface/intf_text.h 47 scene/interface/intf_texture.h 48 scene/interface/intf_transform.h 49 scene/interface/postprocess/intf_bloom.h 50 scene/interface/postprocess/intf_postprocess_effect.h 51 scene/interface/postprocess/intf_tonemap.h 52) 53 54target_include_directories(SceneAPI INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/) 55add_library(Scene::API ALIAS SceneAPI) 56 57get_target_property(API_PATH Scene::API INTERFACE_INCLUDE_DIRECTORIES) 58get_target_property(API_SOURCES Scene::API INTERFACE_SOURCES) 59source_group(TREE ${API_PATH} PREFIX "Api Headers" FILES ${API_SOURCES} ) 60