CMakeLists.txt 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  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) 2006, Blender Foundation
  18. # All rights reserved.
  19. #
  20. # The Original Code is: all of this file.
  21. #
  22. # Contributor(s): Jacques Beaurai, Erwin Coumans
  23. #
  24. # ***** END GPL LICENSE BLOCK *****
  25. # NOTE: This file is automatically generated by bundle.sh script
  26. # If you're doing changes in this file, please update template
  27. # in that script too
  28. set(INC
  29. include
  30. )
  31. set(INC_SYS
  32. )
  33. set(SRC
  34. carve-capi.cc
  35. carve-util.cc
  36. lib/carve.cpp
  37. lib/convex_hull.cpp
  38. lib/csg_collector.cpp
  39. lib/csg.cpp
  40. lib/face.cpp
  41. lib/geom2d.cpp
  42. lib/geom3d.cpp
  43. lib/intersect_classify_edge.cpp
  44. lib/intersect_classify_group.cpp
  45. lib/intersect.cpp
  46. lib/intersect_debug.cpp
  47. lib/intersect_face_division.cpp
  48. lib/intersect_group.cpp
  49. lib/intersect_half_classify_group.cpp
  50. lib/intersection.cpp
  51. lib/math.cpp
  52. lib/mesh.cpp
  53. lib/octree.cpp
  54. lib/pointset.cpp
  55. lib/polyhedron.cpp
  56. lib/polyline.cpp
  57. lib/tag.cpp
  58. lib/timing.cpp
  59. lib/triangulator.cpp
  60. carve-capi.h
  61. carve-util.h
  62. lib/csg_collector.hpp
  63. lib/csg_data.hpp
  64. lib/csg_detail.hpp
  65. lib/intersect_classify_common.hpp
  66. lib/intersect_classify_common_impl.hpp
  67. lib/intersect_common.hpp
  68. lib/intersect_debug.hpp
  69. include/carve/aabb.hpp
  70. include/carve/aabb_impl.hpp
  71. include/carve/carve.hpp
  72. include/carve/cbrt.h
  73. include/carve/classification.hpp
  74. include/carve/collection.hpp
  75. include/carve/collection_types.hpp
  76. include/carve/collection/unordered/boost_impl.hpp
  77. include/carve/collection/unordered/fallback_impl.hpp
  78. include/carve/collection/unordered.hpp
  79. include/carve/collection/unordered/libstdcpp_impl.hpp
  80. include/carve/collection/unordered/std_impl.hpp
  81. include/carve/collection/unordered/tr1_impl.hpp
  82. include/carve/collection/unordered/vcpp_impl.hpp
  83. include/carve/colour.hpp
  84. include/carve/convex_hull.hpp
  85. include/carve/csg.hpp
  86. include/carve/csg_triangulator.hpp
  87. include/carve/debug_hooks.hpp
  88. include/carve/djset.hpp
  89. include/carve/edge_decl.hpp
  90. include/carve/edge_impl.hpp
  91. include/carve/exact.hpp
  92. include/carve/face_decl.hpp
  93. include/carve/face_impl.hpp
  94. include/carve/faceloop.hpp
  95. include/carve/geom2d.hpp
  96. include/carve/geom3d.hpp
  97. include/carve/geom.hpp
  98. include/carve/geom_impl.hpp
  99. include/carve/gnu_cxx.h
  100. include/carve/heap.hpp
  101. include/carve/input.hpp
  102. include/carve/interpolator.hpp
  103. include/carve/intersection.hpp
  104. include/carve/iobj.hpp
  105. include/carve/kd_node.hpp
  106. include/carve/math_constants.hpp
  107. include/carve/math.hpp
  108. include/carve/matrix.hpp
  109. include/carve/mesh.hpp
  110. include/carve/mesh_impl.hpp
  111. include/carve/mesh_ops.hpp
  112. include/carve/mesh_simplify.hpp
  113. include/carve/octree_decl.hpp
  114. include/carve/octree_impl.hpp
  115. include/carve/pointset_decl.hpp
  116. include/carve/pointset.hpp
  117. include/carve/pointset_impl.hpp
  118. include/carve/pointset_iter.hpp
  119. include/carve/poly_decl.hpp
  120. include/carve/polyhedron_base.hpp
  121. include/carve/polyhedron_decl.hpp
  122. include/carve/polyhedron_impl.hpp
  123. include/carve/poly.hpp
  124. include/carve/poly_impl.hpp
  125. include/carve/polyline_decl.hpp
  126. include/carve/polyline.hpp
  127. include/carve/polyline_impl.hpp
  128. include/carve/polyline_iter.hpp
  129. include/carve/rescale.hpp
  130. include/carve/rtree.hpp
  131. include/carve/spacetree.hpp
  132. include/carve/tag.hpp
  133. include/carve/timing.hpp
  134. include/carve/tree.hpp
  135. include/carve/triangle_intersection.hpp
  136. include/carve/triangulator.hpp
  137. include/carve/triangulator_impl.hpp
  138. include/carve/util.hpp
  139. include/carve/vcpp_config.h
  140. include/carve/vector.hpp
  141. include/carve/vertex_decl.hpp
  142. include/carve/vertex_impl.hpp
  143. include/carve/win32.h
  144. )
  145. if(WITH_BOOST)
  146. if(NOT MSVC)
  147. # Boost is setting as preferred collections library in the Carve code when using MSVC compiler
  148. add_definitions(
  149. -DHAVE_BOOST_UNORDERED_COLLECTIONS
  150. )
  151. endif()
  152. add_definitions(
  153. -DCARVE_SYSTEM_BOOST
  154. -DHAVE_BOOST_LIBRARY
  155. )
  156. list(APPEND INC_SYS
  157. ${BOOST_INCLUDE_DIR}
  158. )
  159. endif()
  160. blender_add_lib(extern_carve "${SRC}" "${INC}" "${INC_SYS}")