CMakeLists.txt 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. # ***** BEGIN GPL LICENSE BLOCK *****
  2. #
  3. # This program is free software; you can redistribute it and/or
  4. # modify it under the terms of the GNU General Public License
  5. # as published by the Free Software Foundation; either version 2
  6. # of the License, or (at your option) any later version.
  7. #
  8. # This program is distributed in the hope that it will be useful,
  9. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. # GNU General Public License for more details.
  12. #
  13. # You should have received a copy of the GNU General Public License
  14. # along with this program; if not, write to the Free Software Foundation,
  15. # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  16. #
  17. # The Original Code is Copyright (C) 2014, Blender Foundation
  18. # All rights reserved.
  19. #
  20. # The Original Code is: all of this file.
  21. #
  22. # Contributor(s): Joshua Leung, Lukas Toenne
  23. #
  24. # ***** END GPL LICENSE BLOCK *****
  25. set(INC
  26. .
  27. ../blenkernel
  28. ../blenlib
  29. ../bmesh
  30. ../makesdna
  31. ../makesrna
  32. ../modifiers
  33. ../windowmanager
  34. ../../../intern/atomic
  35. ../../../intern/guardedalloc
  36. )
  37. set(INC_SYS
  38. )
  39. set(SRC
  40. intern/builder/deg_builder.cc
  41. intern/builder/deg_builder_cycle.cc
  42. intern/builder/deg_builder_nodes.cc
  43. intern/builder/deg_builder_nodes_rig.cc
  44. intern/builder/deg_builder_nodes_scene.cc
  45. intern/builder/deg_builder_pchanmap.cc
  46. intern/builder/deg_builder_relations.cc
  47. intern/builder/deg_builder_relations_keys.cc
  48. intern/builder/deg_builder_relations_rig.cc
  49. intern/builder/deg_builder_relations_scene.cc
  50. intern/builder/deg_builder_transitive.cc
  51. intern/debug/deg_debug_graphviz.cc
  52. intern/eval/deg_eval.cc
  53. intern/eval/deg_eval_debug.cc
  54. intern/eval/deg_eval_flush.cc
  55. intern/nodes/deg_node.cc
  56. intern/nodes/deg_node_component.cc
  57. intern/nodes/deg_node_operation.cc
  58. intern/depsgraph.cc
  59. intern/depsgraph_build.cc
  60. intern/depsgraph_debug.cc
  61. intern/depsgraph_eval.cc
  62. intern/depsgraph_query.cc
  63. intern/depsgraph_tag.cc
  64. intern/depsgraph_type_defines.cc
  65. DEG_depsgraph.h
  66. DEG_depsgraph_build.h
  67. DEG_depsgraph_debug.h
  68. DEG_depsgraph_query.h
  69. intern/builder/deg_builder.h
  70. intern/builder/deg_builder_cycle.h
  71. intern/builder/deg_builder_nodes.h
  72. intern/builder/deg_builder_pchanmap.h
  73. intern/builder/deg_builder_relations.h
  74. intern/builder/deg_builder_transitive.h
  75. intern/eval/deg_eval.h
  76. intern/eval/deg_eval_debug.h
  77. intern/eval/deg_eval_flush.h
  78. intern/nodes/deg_node.h
  79. intern/nodes/deg_node_component.h
  80. intern/nodes/deg_node_operation.h
  81. intern/depsgraph.h
  82. intern/depsgraph_intern.h
  83. intern/depsgraph_types.h
  84. util/deg_util_foreach.h
  85. util/deg_util_function.h
  86. )
  87. if(WITH_CXX11)
  88. add_definitions(-DDEG_STD_UNORDERED_MAP)
  89. elseif(HAVE_STD_UNORDERED_MAP_HEADER)
  90. if(HAVE_UNORDERED_MAP_IN_STD_NAMESPACE)
  91. add_definitions(-DDEG_STD_UNORDERED_MAP)
  92. else()
  93. if(HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE)
  94. add_definitions(-DDEG_STD_UNORDERED_MAP_IN_TR1_NAMESPACE)
  95. else()
  96. add_definitions(-DDEG_NO_UNORDERED_MAP)
  97. message(STATUS "Replacing unordered_map/set with map/set (warning: slower!)")
  98. endif()
  99. endif()
  100. else()
  101. if(HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE)
  102. add_definitions(-DDEG_TR1_UNORDERED_MAP)
  103. else()
  104. add_definitions(-DDEG_NO_UNORDERED_MAP)
  105. message(STATUS "Replacing unordered_map/set with map/set (warning: slower!)")
  106. endif()
  107. endif()
  108. if(WITH_LEGACY_DEPSGRAPH)
  109. add_definitions(-DWITH_LEGACY_DEPSGRAPH)
  110. endif()
  111. if(WITH_BOOST)
  112. list(APPEND INC_SYS
  113. ${BOOST_INCLUDE_DIR}
  114. )
  115. add_definitions(-DHAVE_BOOST_FUNCTION_BINDINGS)
  116. endif()
  117. if(WITH_OPENSUBDIV)
  118. add_definitions(-DWITH_OPENSUBDIV)
  119. endif()
  120. blender_add_lib(bf_depsgraph "${SRC}" "${INC}" "${INC_SYS}")