• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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