LibiglDownloadExternal.cmake 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. ################################################################################
  2. include(DownloadProject)
  3. # Shortcut function
  4. function(igl_download_project name)
  5. download_project(
  6. PROJ ${name}
  7. SOURCE_DIR ${LIBIGL_EXTERNAL}/${name}
  8. DOWNLOAD_DIR ${LIBIGL_EXTERNAL}/.cache/${name}
  9. QUIET
  10. ${ARGN}
  11. )
  12. endfunction()
  13. # Shortcut function
  14. function(igl_download_data folder name)
  15. download_project(
  16. PROJ ${name}
  17. SOURCE_DIR ${folder}/data
  18. DOWNLOAD_DIR ${folder}/.cache/data
  19. QUIET
  20. ${ARGN}
  21. )
  22. endfunction()
  23. ################################################################################
  24. ## CGAL
  25. function(igl_download_cgal)
  26. igl_download_project(cgal
  27. GIT_REPOSITORY https://github.com/CGAL/cgal.git
  28. GIT_TAG f7c3c8212b56c0d6dae63787efc99093f4383415
  29. )
  30. endfunction()
  31. ## CoMISo
  32. function(igl_download_comiso)
  33. igl_download_project(CoMISo
  34. GIT_REPOSITORY https://github.com/libigl/CoMISo.git
  35. GIT_TAG fea3ee0ba7d42ee3eca202d484e4fad855e4d6aa
  36. )
  37. endfunction()
  38. ## Cork
  39. function(igl_download_cork)
  40. igl_download_project(cork
  41. GIT_REPOSITORY https://github.com/libigl/cork.git
  42. GIT_TAG 27ad8a285838f5a480d856429e39d3d56d4338f9
  43. )
  44. endfunction()
  45. ## Eigen
  46. function(igl_download_eigen)
  47. igl_download_project(eigen
  48. URL http://bitbucket.org/eigen/eigen/get/3.2.10.tar.gz
  49. URL_MD5 8ad10ac703a78143a4062c9bda9d8fd3
  50. )
  51. endfunction()
  52. ## Embree
  53. function(igl_download_embree)
  54. igl_download_project(embree
  55. URL https://github.com/embree/embree/archive/v2.17.4.tar.gz
  56. URL_MD5 2038f3216b1d626e87453aee72c470e5
  57. # GIT_REPOSITORY https://github.com/embree/embree.git
  58. # GIT_TAG cb61322db3bb7082caed21913ad14869b436fe78
  59. )
  60. endfunction()
  61. ## glad
  62. function(igl_download_glad)
  63. igl_download_project(glad
  64. GIT_REPOSITORY https://github.com/libigl/libigl-glad.git
  65. GIT_TAG 71e35fe685a0cc160068a2f2f971c40b82d14af0
  66. )
  67. endfunction()
  68. ## GLFW
  69. function(igl_download_glfw)
  70. igl_download_project(glfw
  71. GIT_REPOSITORY https://github.com/glfw/glfw.git
  72. GIT_TAG 58cc4b2c5c2c9a245e09451437dd6f5af4d60c84
  73. )
  74. endfunction()
  75. ## ImGui
  76. function(igl_download_imgui)
  77. igl_download_project(imgui
  78. GIT_REPOSITORY https://github.com/ocornut/imgui.git
  79. GIT_TAG bc6ac8b2aee0614debd940e45bc9cd0d9b355c86
  80. )
  81. igl_download_project(libigl-imgui
  82. GIT_REPOSITORY https://github.com/libigl/libigl-imgui.git
  83. GIT_TAG a37e6e59e72fb07bd787dc7e90f72b9e1928dae7
  84. )
  85. endfunction()
  86. ## pybind11
  87. function(igl_download_pybind11)
  88. igl_download_project(pybind11
  89. GIT_REPOSITORY https://github.com/pybind/pybind11.git
  90. GIT_TAG 2d0507db43cd5a117f7843e053b17dffca114107
  91. )
  92. endfunction()
  93. ## stb_image
  94. function(igl_download_stb)
  95. igl_download_project(stb
  96. GIT_REPOSITORY https://github.com/libigl/libigl-stb.git
  97. GIT_TAG e671ceb3def5e7029a23de14c55dc16301ad4dab
  98. )
  99. endfunction()
  100. ## TetGen
  101. function(igl_download_tetgen)
  102. igl_download_project(tetgen
  103. GIT_REPOSITORY https://github.com/libigl/tetgen.git
  104. GIT_TAG d2dcc33cb8551f16e302c8130ce12fa52992cd09
  105. )
  106. endfunction()
  107. ## TinyXML
  108. function(igl_download_tinyxml2)
  109. igl_download_project(tinyxml2
  110. GIT_REPOSITORY https://github.com/leethomason/tinyxml2.git
  111. GIT_TAG d175e9de0be0d4db75d0a8cf065599a435a87eb6
  112. )
  113. endfunction()
  114. ## Triangle
  115. function(igl_download_triangle)
  116. igl_download_project(triangle
  117. GIT_REPOSITORY https://github.com/libigl/triangle.git
  118. GIT_TAG d6761dd691e2e1318c83bf7773fea88d9437464a
  119. )
  120. endfunction()
  121. ## Google test
  122. function(igl_download_googletest)
  123. igl_download_project(googletest
  124. GIT_REPOSITORY https://github.com/google/googletest
  125. GIT_TAG release-1.8.1
  126. )
  127. endfunction()
  128. ################################################################################
  129. ## Test data
  130. function(igl_download_test_data)
  131. set(IGL_TEST_DATA ${LIBIGL_EXTERNAL}/../tests/data)
  132. download_project(
  133. PROJ test_data
  134. SOURCE_DIR ${IGL_TEST_DATA}
  135. DOWNLOAD_DIR ${LIBIGL_EXTERNAL}/.cache/test_data
  136. QUIET
  137. GIT_REPOSITORY https://github.com/libigl/libigl-tests-data
  138. GIT_TAG bdb158c9695d5932bb6fc1cde078d8210bb13436
  139. )
  140. endfunction()
  141. ## Tutorial data
  142. function(igl_download_tutorial_data)
  143. set(IGL_TUTORIAL_DATA ${LIBIGL_EXTERNAL}/../tutorial/data)
  144. download_project(
  145. PROJ tutorial_data
  146. SOURCE_DIR ${IGL_TUTORIAL_DATA}
  147. DOWNLOAD_DIR ${LIBIGL_EXTERNAL}/.cache/tutorial_data
  148. QUIET
  149. GIT_REPOSITORY https://github.com/libigl/libigl-tutorial-data
  150. GIT_TAG 5c6a1ea809c043d71e5595775709c15325a7158c
  151. )
  152. endfunction()