tinymetabobjloader 2.0.0rc9.dev0__tar.gz → 2.0.0rc14.dev2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. tinymetabobjloader-2.0.0rc14.dev2/.cirrus.yml +30 -0
  2. tinymetabobjloader-2.0.0rc14.dev2/.clang-format +7 -0
  3. tinymetabobjloader-2.0.0rc14.dev2/.drone.yml +10 -0
  4. tinymetabobjloader-2.0.0rc14.dev2/.github/FUNDING.yml +15 -0
  5. tinymetabobjloader-2.0.0rc14.dev2/.github/ISSUE_TEMPLATE/config.yml +1 -0
  6. tinymetabobjloader-2.0.0rc14.dev2/.github/ISSUE_TEMPLATE/issue-report.md +28 -0
  7. tinymetabobjloader-2.0.0rc14.dev2/.github/workflows/cron.yml +22 -0
  8. tinymetabobjloader-2.0.0rc14.dev2/.github/workflows/python.yml +192 -0
  9. tinymetabobjloader-2.0.0rc14.dev2/.gitignore +8 -0
  10. tinymetabobjloader-2.0.0rc14.dev2/.travis.yml +56 -0
  11. tinymetabobjloader-2.0.0rc14.dev2/BUILD.bazel +9 -0
  12. tinymetabobjloader-2.0.0rc14.dev2/CMakeLists.txt +221 -0
  13. tinymetabobjloader-2.0.0rc14.dev2/LICENSE +42 -0
  14. tinymetabobjloader-2.0.0rc14.dev2/MANIFEST.in +8 -0
  15. tinymetabobjloader-2.0.0rc14.dev2/MODULE.bazel +9 -0
  16. tinymetabobjloader-2.0.0rc14.dev2/PKG-INFO +469 -0
  17. tinymetabobjloader-2.0.0rc14.dev2/README.md +443 -0
  18. tinymetabobjloader-2.0.0rc14.dev2/appveyor.yml +22 -0
  19. tinymetabobjloader-2.0.0rc14.dev2/azure-pipelines.yml +21 -0
  20. tinymetabobjloader-2.0.0rc14.dev2/bootstrap-cmake-linux-with-pyhthon.sh +20 -0
  21. tinymetabobjloader-2.0.0rc14.dev2/build.ninja +53 -0
  22. tinymetabobjloader-2.0.0rc14.dev2/cmake/ClangClCMakeCompileRules.cmake +9 -0
  23. tinymetabobjloader-2.0.0rc14.dev2/cmake/aarch64-linux-gnu.toolchain +14 -0
  24. tinymetabobjloader-2.0.0rc14.dev2/cmake/clang-cl-msvc-windows.cmake +327 -0
  25. tinymetabobjloader-2.0.0rc14.dev2/cmake/clang-cl-msvc-wsl.cmake +327 -0
  26. tinymetabobjloader-2.0.0rc14.dev2/cmake/linux_i386.toolchain.cmake +17 -0
  27. tinymetabobjloader-2.0.0rc14.dev2/cmake/llvm-mingw-cross.cmake +24 -0
  28. tinymetabobjloader-2.0.0rc14.dev2/cmake/llvm-mingw-win64.cmake +20 -0
  29. tinymetabobjloader-2.0.0rc14.dev2/cmake/mingw64-cross.cmake +20 -0
  30. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/FindASan.cmake +59 -0
  31. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/FindMSan.cmake +57 -0
  32. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/FindSanitizers.cmake +94 -0
  33. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/FindTSan.cmake +65 -0
  34. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/FindUBSan.cmake +46 -0
  35. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/asan-wrapper +55 -0
  36. tinymetabobjloader-2.0.0rc14.dev2/cmake/sanitizers/sanitize-helpers.cmake +177 -0
  37. tinymetabobjloader-2.0.0rc14.dev2/cmake_uninstall.cmake.in +21 -0
  38. tinymetabobjloader-2.0.0rc14.dev2/deps/cpplint.py +6323 -0
  39. tinymetabobjloader-2.0.0rc14.dev2/examples/callback_api/Makefile +2 -0
  40. tinymetabobjloader-2.0.0rc14.dev2/examples/callback_api/main.cc +171 -0
  41. tinymetabobjloader-2.0.0rc14.dev2/examples/obj_sticher/obj_sticher.cc +163 -0
  42. tinymetabobjloader-2.0.0rc14.dev2/examples/obj_sticher/obj_writer.cc +164 -0
  43. tinymetabobjloader-2.0.0rc14.dev2/examples/obj_sticher/obj_writer.h +8 -0
  44. tinymetabobjloader-2.0.0rc14.dev2/examples/obj_sticher/premake4.lua +38 -0
  45. tinymetabobjloader-2.0.0rc14.dev2/examples/skin_weight/Makefile +2 -0
  46. tinymetabobjloader-2.0.0rc14.dev2/examples/skin_weight/README.md +7 -0
  47. tinymetabobjloader-2.0.0rc14.dev2/examples/skin_weight/main.cc +103 -0
  48. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/.gitignore +1 -0
  49. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/CMakeLists.txt +29 -0
  50. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/README.md +45 -0
  51. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/premake4.lua +44 -0
  52. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/stb_image.h +7897 -0
  53. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/trackball.cc +292 -0
  54. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/trackball.h +75 -0
  55. tinymetabobjloader-2.0.0rc14.dev2/examples/viewer/viewer.cc +1205 -0
  56. tinymetabobjloader-2.0.0rc14.dev2/examples/voxelize/Makefile +2 -0
  57. tinymetabobjloader-2.0.0rc14.dev2/examples/voxelize/README.md +5 -0
  58. tinymetabobjloader-2.0.0rc14.dev2/examples/voxelize/main.cc +75 -0
  59. tinymetabobjloader-2.0.0rc14.dev2/examples/voxelize/voxelizer.h +764 -0
  60. tinymetabobjloader-2.0.0rc14.dev2/experimental/README.md +26 -0
  61. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/Allocator.hpp +89 -0
  62. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/ChunkList.hpp +116 -0
  63. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/LICENSE +21 -0
  64. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/Pool.hpp +48 -0
  65. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/PoolDispatcher.hpp +79 -0
  66. tinymetabobjloader-2.0.0rc14.dev2/experimental/lfpAlloc/Utils.hpp +20 -0
  67. tinymetabobjloader-2.0.0rc14.dev2/experimental/premake5.lua +94 -0
  68. tinymetabobjloader-2.0.0rc14.dev2/experimental/tinyobj_loader_opt.h +1722 -0
  69. tinymetabobjloader-2.0.0rc14.dev2/experimental/trackball.cc +292 -0
  70. tinymetabobjloader-2.0.0rc14.dev2/experimental/trackball.h +75 -0
  71. tinymetabobjloader-2.0.0rc14.dev2/experimental/viewer.cc +748 -0
  72. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/README.md +51 -0
  73. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/afl.tar.gz +0 -0
  74. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/fuzz_ParseFromString.cc +26 -0
  75. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/regression_runner/Makefile +2 -0
  76. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/regression_runner/README.md +11 -0
  77. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/regressions/clusterfuzz-testcase-minimized-fuzz_ParseFromString-4877060179886080 +0 -0
  78. tinymetabobjloader-2.0.0rc14.dev2/fuzzer/runner.py +21 -0
  79. tinymetabobjloader-2.0.0rc14.dev2/images/rungholt.jpg +0 -0
  80. tinymetabobjloader-2.0.0rc14.dev2/images/sanmugel.png +0 -0
  81. tinymetabobjloader-2.0.0rc14.dev2/jni/Android.mk +12 -0
  82. tinymetabobjloader-2.0.0rc14.dev2/jni/Application.mk +2 -0
  83. tinymetabobjloader-2.0.0rc14.dev2/jni/Makefile +2 -0
  84. tinymetabobjloader-2.0.0rc14.dev2/jni/README +1 -0
  85. tinymetabobjloader-2.0.0rc14.dev2/loader_example.cc +437 -0
  86. tinymetabobjloader-2.0.0rc14.dev2/mapbox/LICENSE +15 -0
  87. tinymetabobjloader-2.0.0rc14.dev2/mapbox/earcut.hpp +820 -0
  88. tinymetabobjloader-2.0.0rc14.dev2/models/catmark_torus_creases0.obj +101 -0
  89. tinymetabobjloader-2.0.0rc14.dev2/models/colorspace-issue-184.mtl +9 -0
  90. tinymetabobjloader-2.0.0rc14.dev2/models/colorspace-issue-184.obj +7 -0
  91. tinymetabobjloader-2.0.0rc14.dev2/models/cornell_box.mtl +24 -0
  92. tinymetabobjloader-2.0.0rc14.dev2/models/cornell_box.obj +145 -0
  93. tinymetabobjloader-2.0.0rc14.dev2/models/cornell_box_multimaterial.obj +146 -0
  94. tinymetabobjloader-2.0.0rc14.dev2/models/cube-vertex-w-component.obj +31 -0
  95. tinymetabobjloader-2.0.0rc14.dev2/models/cube-vertexcol.obj +31 -0
  96. tinymetabobjloader-2.0.0rc14.dev2/models/cube.mtl +24 -0
  97. tinymetabobjloader-2.0.0rc14.dev2/models/cube.obj +32 -0
  98. tinymetabobjloader-2.0.0rc14.dev2/models/cube_w_BOM.mtl +24 -0
  99. tinymetabobjloader-2.0.0rc14.dev2/models/cube_w_BOM.obj +32 -0
  100. tinymetabobjloader-2.0.0rc14.dev2/models/invalid-face-definition.mtl +24 -0
  101. tinymetabobjloader-2.0.0rc14.dev2/models/invalid-face-definition.obj +18 -0
  102. tinymetabobjloader-2.0.0rc14.dev2/models/invalid-relative-texture-index.obj +2 -0
  103. tinymetabobjloader-2.0.0rc14.dev2/models/invalid-relative-vertex-index.obj +1 -0
  104. tinymetabobjloader-2.0.0rc14.dev2/models/issue-138.mtl +23 -0
  105. tinymetabobjloader-2.0.0rc14.dev2/models/issue-138.obj +51 -0
  106. tinymetabobjloader-2.0.0rc14.dev2/models/issue-140-zero-face-idx.mtl +2 -0
  107. tinymetabobjloader-2.0.0rc14.dev2/models/issue-140-zero-face-idx.obj +17 -0
  108. tinymetabobjloader-2.0.0rc14.dev2/models/issue-161-inconsistent-f.obj +37 -0
  109. tinymetabobjloader-2.0.0rc14.dev2/models/issue-162-smoothing-group.mtl +23 -0
  110. tinymetabobjloader-2.0.0rc14.dev2/models/issue-162-smoothing-group.obj +51 -0
  111. tinymetabobjloader-2.0.0rc14.dev2/models/issue-235-usemtl-then-o.obj +21 -0
  112. tinymetabobjloader-2.0.0rc14.dev2/models/issue-235.mtl +11 -0
  113. tinymetabobjloader-2.0.0rc14.dev2/models/issue-244-mtl-searchpaths.obj +22 -0
  114. tinymetabobjloader-2.0.0rc14.dev2/models/issue-246-usemtl-whitespace.mtl +4 -0
  115. tinymetabobjloader-2.0.0rc14.dev2/models/issue-246-usemtl-whitespace.obj +17 -0
  116. tinymetabobjloader-2.0.0rc14.dev2/models/issue-248-texres-texopt.mtl +25 -0
  117. tinymetabobjloader-2.0.0rc14.dev2/models/issue-248-texres-texopt.obj +32 -0
  118. tinymetabobjloader-2.0.0rc14.dev2/models/issue-295-trianguation-failure.obj +38 -0
  119. tinymetabobjloader-2.0.0rc14.dev2/models/issue-319-002.obj +39 -0
  120. tinymetabobjloader-2.0.0rc14.dev2/models/issue-319-003.obj +27 -0
  121. tinymetabobjloader-2.0.0rc14.dev2/models/issue-330.obj +12 -0
  122. tinymetabobjloader-2.0.0rc14.dev2/models/issue-356-leading-spaces-newmtl.mtl +2 -0
  123. tinymetabobjloader-2.0.0rc14.dev2/models/issue-356-leading-spaces-newmtl.obj +2 -0
  124. tinymetabobjloader-2.0.0rc14.dev2/models/issue-389-comment.obj +44 -0
  125. tinymetabobjloader-2.0.0rc14.dev2/models/issue-391.mtl +4 -0
  126. tinymetabobjloader-2.0.0rc14.dev2/models/issue-391.obj +9 -0
  127. tinymetabobjloader-2.0.0rc14.dev2/models/issue-92.mtl +6 -0
  128. tinymetabobjloader-2.0.0rc14.dev2/models/issue-92.obj +7 -0
  129. tinymetabobjloader-2.0.0rc14.dev2/models/issue-95-2.mtl +5 -0
  130. tinymetabobjloader-2.0.0rc14.dev2/models/issue-95-2.obj +7 -0
  131. tinymetabobjloader-2.0.0rc14.dev2/models/issue-95.mtl +5 -0
  132. tinymetabobjloader-2.0.0rc14.dev2/models/issue-95.obj +7 -0
  133. tinymetabobjloader-2.0.0rc14.dev2/models/leading-decimal-dot-issue-201.mtl +5 -0
  134. tinymetabobjloader-2.0.0rc14.dev2/models/leading-decimal-dot-issue-201.obj +7 -0
  135. tinymetabobjloader-2.0.0rc14.dev2/models/leading-zero-in-exponent-notation-issue-210.mtl +5 -0
  136. tinymetabobjloader-2.0.0rc14.dev2/models/leading-zero-in-exponent-notation-issue-210.obj +7 -0
  137. tinymetabobjloader-2.0.0rc14.dev2/models/line-prim.obj +16 -0
  138. tinymetabobjloader-2.0.0rc14.dev2/models/map-bump.mtl +10 -0
  139. tinymetabobjloader-2.0.0rc14.dev2/models/map-bump.obj +817 -0
  140. tinymetabobjloader-2.0.0rc14.dev2/models/missing_material_file.obj +145 -0
  141. tinymetabobjloader-2.0.0rc14.dev2/models/mtl filename with whitespace issue46.mtl +4 -0
  142. tinymetabobjloader-2.0.0rc14.dev2/models/mtl filename with whitespace issue46.obj +31 -0
  143. tinymetabobjloader-2.0.0rc14.dev2/models/mtllib-multiple-files-issue-112.mtl +6 -0
  144. tinymetabobjloader-2.0.0rc14.dev2/models/mtllib-multiple-files-issue-112.obj +7 -0
  145. tinymetabobjloader-2.0.0rc14.dev2/models/no_material.obj +133 -0
  146. tinymetabobjloader-2.0.0rc14.dev2/models/norm-texopt.mtl +7 -0
  147. tinymetabobjloader-2.0.0rc14.dev2/models/norm-texopt.obj +7 -0
  148. tinymetabobjloader-2.0.0rc14.dev2/models/pbr-mat-ext.mtl +19 -0
  149. tinymetabobjloader-2.0.0rc14.dev2/models/pbr-mat-ext.obj +10 -0
  150. tinymetabobjloader-2.0.0rc14.dev2/models/points-prim.obj +15 -0
  151. tinymetabobjloader-2.0.0rc14.dev2/models/refl.mtl +25 -0
  152. tinymetabobjloader-2.0.0rc14.dev2/models/refl.obj +32 -0
  153. tinymetabobjloader-2.0.0rc14.dev2/models/skin-weight.obj +43 -0
  154. tinymetabobjloader-2.0.0rc14.dev2/models/smoothing-group-two-squares.obj +22 -0
  155. tinymetabobjloader-2.0.0rc14.dev2/models/smoothing-normal.mtl +24 -0
  156. tinymetabobjloader-2.0.0rc14.dev2/models/smoothing-normal.obj +35 -0
  157. tinymetabobjloader-2.0.0rc14.dev2/models/test-nan.obj +145 -0
  158. tinymetabobjloader-2.0.0rc14.dev2/models/texture-filename-with-whitespace.mtl +28 -0
  159. tinymetabobjloader-2.0.0rc14.dev2/models/texture-filename-with-whitespace.obj +31 -0
  160. tinymetabobjloader-2.0.0rc14.dev2/models/texture-options-issue-85.mtl +36 -0
  161. tinymetabobjloader-2.0.0rc14.dev2/models/texture-options-issue-85.obj +7 -0
  162. tinymetabobjloader-2.0.0rc14.dev2/models/tr-and-d-issue-43.mtl +13 -0
  163. tinymetabobjloader-2.0.0rc14.dev2/models/tr-and-d-issue-43.obj +817 -0
  164. tinymetabobjloader-2.0.0rc14.dev2/models/usemtl-issue-104.obj +30 -0
  165. tinymetabobjloader-2.0.0rc14.dev2/models/usemtl-issue-68.mtl +9 -0
  166. tinymetabobjloader-2.0.0rc14.dev2/models/usemtl-issue-68.obj +817 -0
  167. tinymetabobjloader-2.0.0rc14.dev2/pbr-mtl.md +29 -0
  168. tinymetabobjloader-2.0.0rc14.dev2/premake4.lua +29 -0
  169. tinymetabobjloader-2.0.0rc14.dev2/pyproject.toml +55 -0
  170. tinymetabobjloader-2.0.0rc14.dev2/python/LICENSE +21 -0
  171. tinymetabobjloader-2.0.0rc14.dev2/python/Makefile +7 -0
  172. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2/python}/README.md +9 -7
  173. tinymetabobjloader-2.0.0rc14.dev2/python/_version.py +4 -0
  174. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2/python}/bindings.cc +95 -10
  175. tinymetabobjloader-2.0.0rc14.dev2/python/sample.py +138 -0
  176. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2/python}/tiny_obj_loader.cc +4 -1
  177. tinymetabobjloader-2.0.0rc14.dev2/setup.py +64 -0
  178. tinymetabobjloader-2.0.0rc14.dev2/tests/LICENSE.acutest.txt +22 -0
  179. tinymetabobjloader-2.0.0rc14.dev2/tests/Makefile +17 -0
  180. tinymetabobjloader-2.0.0rc14.dev2/tests/README.md +37 -0
  181. tinymetabobjloader-2.0.0rc14.dev2/tests/acutest.h +1514 -0
  182. tinymetabobjloader-2.0.0rc14.dev2/tests/assets/issue-244.mtl +11 -0
  183. tinymetabobjloader-2.0.0rc14.dev2/tests/config-msvc.py +52 -0
  184. tinymetabobjloader-2.0.0rc14.dev2/tests/config-posix.py +53 -0
  185. tinymetabobjloader-2.0.0rc14.dev2/tests/issue-177.mtl +24 -0
  186. tinymetabobjloader-2.0.0rc14.dev2/tests/issue-177.obj +31 -0
  187. tinymetabobjloader-2.0.0rc14.dev2/tests/kuroga.py +312 -0
  188. tinymetabobjloader-2.0.0rc14.dev2/tests/python/README.md +3 -0
  189. tinymetabobjloader-2.0.0rc14.dev2/tests/python/pyproject.toml +12 -0
  190. tinymetabobjloader-2.0.0rc14.dev2/tests/python/tinyobjloader_tests/__init__.py +0 -0
  191. tinymetabobjloader-2.0.0rc14.dev2/tests/python/tinyobjloader_tests/loader.py +33 -0
  192. tinymetabobjloader-2.0.0rc14.dev2/tests/python/tinyobjloader_tests/test_loader.py +176 -0
  193. tinymetabobjloader-2.0.0rc14.dev2/tests/python/uv.lock +303 -0
  194. tinymetabobjloader-2.0.0rc14.dev2/tests/tester.cc +1636 -0
  195. tinymetabobjloader-2.0.0rc14.dev2/tests/vcbuild.bat +4 -0
  196. tinymetabobjloader-2.0.0rc14.dev2/tiny_obj_loader.cc +2 -0
  197. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2}/tiny_obj_loader.h +682 -266
  198. tinymetabobjloader-2.0.0rc14.dev2/tinymetabobjloader.egg-info/PKG-INFO +469 -0
  199. tinymetabobjloader-2.0.0rc14.dev2/tinymetabobjloader.egg-info/SOURCES.txt +204 -0
  200. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2}/tinymetabobjloader.egg-info/top_level.txt +1 -0
  201. tinymetabobjloader-2.0.0rc14.dev2/tinyobjloader-config.cmake.in +9 -0
  202. tinymetabobjloader-2.0.0rc14.dev2/tinyobjloader.pc.in +15 -0
  203. tinymetabobjloader-2.0.0rc14.dev2/tools/windows/premake5.exe +0 -0
  204. tinymetabobjloader-2.0.0rc14.dev2/vcsetup.bat +1 -0
  205. tinymetabobjloader-2.0.0rc9.dev0/MANIFEST.in +0 -6
  206. tinymetabobjloader-2.0.0rc9.dev0/PKG-INFO +0 -107
  207. tinymetabobjloader-2.0.0rc9.dev0/pyproject.toml +0 -2
  208. tinymetabobjloader-2.0.0rc9.dev0/setup.py +0 -109
  209. tinymetabobjloader-2.0.0rc9.dev0/tinymetabobjloader.egg-info/PKG-INFO +0 -107
  210. tinymetabobjloader-2.0.0rc9.dev0/tinymetabobjloader.egg-info/SOURCES.txt +0 -12
  211. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2}/setup.cfg +0 -0
  212. {tinymetabobjloader-2.0.0rc9.dev0 → tinymetabobjloader-2.0.0rc14.dev2}/tinymetabobjloader.egg-info/dependency_links.txt +0 -0
@@ -0,0 +1,30 @@
1
+ build_and_store_wheels: &BUILD_AND_STORE_WHEELS
2
+ install_cibuildwheel_script:
3
+ - python -m pip install cibuildwheel==2.16.2
4
+ run_cibuildwheel_script:
5
+ - cibuildwheel
6
+ wheels_artifacts:
7
+ path: "wheelhouse/*"
8
+
9
+ # Upload only for tagged commit
10
+ only_if: $CIRRUS_TAG != ''
11
+ publish_script:
12
+ - python -m pip install twine
13
+ - python -m twine upload --repository-url https://upload.pypi.org/legacy/ --username __token__ wheelhouse/*.whl
14
+
15
+
16
+ linux_aarch64_task:
17
+ name: Build Linux aarch64 wheels.
18
+ compute_engine_instance:
19
+ image_project: cirrus-images
20
+ image: family/docker-builder-arm64
21
+ architecture: arm64
22
+ platform: linux
23
+ cpu: 4
24
+ memory: 4G
25
+ environment:
26
+ TWINE_PASSWORD: ENCRYPTED[ade2037764e68fea251152f7585f3f77cdd748af06dc0f06942c45a8a8770fff19032c985f8dc193229c8adb2c0fecb9]
27
+
28
+ install_pre_requirements_script:
29
+ - apt install -y python3-venv python-is-python3
30
+ <<: *BUILD_AND_STORE_WHEELS
@@ -0,0 +1,7 @@
1
+ ---
2
+ BasedOnStyle: Google
3
+ IndentWidth: 2
4
+ TabWidth: 2
5
+ UseTab: Never
6
+ BreakBeforeBraces: Attach
7
+ Standard: Cpp03
@@ -0,0 +1,10 @@
1
+ image: syoyo/ubu-dev
2
+ script:
3
+ - curl -L -o premake4 https://github.com/syoyo/orebuildenv/blob/master/build/linux/bin/premake4?raw=true
4
+ - chmod +x ./premake4
5
+ - ./premake4 gmake
6
+ - make
7
+ notify:
8
+ email:
9
+ recipients:
10
+ - syoyo@lighttransport.com
@@ -0,0 +1,15 @@
1
+ # These are supported funding model platforms
2
+
3
+ github: syoyo # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4
+ patreon: # Replace with a single Patreon username
5
+ open_collective: # Replace with a single Open Collective username
6
+ ko_fi: # Replace with a single Ko-fi username
7
+ tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8
+ community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9
+ liberapay: # Replace with a single Liberapay username
10
+ issuehunt: # Replace with a single IssueHunt username
11
+ lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
12
+ polar: # Replace with a single Polar username
13
+ buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
14
+ thanks_dev: # Replace with a single thanks.dev username
15
+ custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
@@ -0,0 +1 @@
1
+ blank_issues_enabled: false
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: Issue report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the issue**
11
+ A clear and concise description of what the issue is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Compile TinyObjLoader with '...'
16
+ 2. Load .obj file '...'
17
+ 3. See error
18
+
19
+ Please attach minimal and reproducible files(source codes, .obj/.mtl files, etc)
20
+
21
+ **Expected behavior**
22
+ A clear and concise description of what you expected to happen.
23
+
24
+ **Environment**
25
+ - TinyObjLoader version
26
+ - OS: [e.g. Linux]
27
+ - Compiler [e.g. gcc 7.3]
28
+ - Other environment [e.g. Python version if you use python binding]
@@ -0,0 +1,22 @@
1
+ name: Close inactive issues
2
+ on:
3
+ schedule:
4
+ - cron: "30 1 * * *"
5
+
6
+ jobs:
7
+ close-issues:
8
+ runs-on: ubuntu-latest
9
+ permissions:
10
+ issues: write
11
+ pull-requests: write
12
+ steps:
13
+ - uses: actions/stale@v9
14
+ with:
15
+ days-before-issue-stale: 14
16
+ days-before-issue-close: 14
17
+ stale-issue-label: "stale"
18
+ stale-issue-message: "This issue is stale because it has been open for 14 days with no activity."
19
+ close-issue-message: "This issue was closed because it has been inactive for 14 days since being marked as stale."
20
+ days-before-pr-stale: -1
21
+ days-before-pr-close: -1
22
+ repo-token: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,192 @@
1
+ name: Python
2
+
3
+ on:
4
+ pull_request:
5
+ push:
6
+ branches:
7
+ - release
8
+ tags:
9
+ - v[0-9]*
10
+
11
+ jobs:
12
+ check_format:
13
+ name: Check Python code format
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - name: Install uv
19
+ uses: astral-sh/setup-uv@v4
20
+ with:
21
+ version: "latest"
22
+
23
+ - name: Set up Python and install dependencies
24
+ working-directory: tests/python
25
+ run: uv sync --project . --python 3.13
26
+
27
+ - name: Check code format
28
+ working-directory: tests/python
29
+ run: uv run --project . black --check ../..
30
+
31
+ build_wheels_quick:
32
+ name: Build wheels for quick testing
33
+ runs-on: ubuntu-latest
34
+ steps:
35
+ - uses: actions/checkout@v4
36
+ with:
37
+ fetch-depth: 0
38
+ fetch-tags: true # Optional, use if you use setuptools_scm
39
+
40
+ - name: Build wheels
41
+ uses: pypa/cibuildwheel@v3.3.1
42
+ env:
43
+ # These are the only wheels we need for the `test_wheels` job. For
44
+ # faster iteration times, we limit the job to only build these wheels.
45
+ CIBW_BUILD: "*manylinux_x86_64"
46
+
47
+ - uses: actions/upload-artifact@v4
48
+ with:
49
+ name: cibw-wheels-quick
50
+ path: ./wheelhouse/*.whl
51
+
52
+ test_wheels:
53
+ name: Test wheels with Python ${{ matrix.python-version }} and NumPy ${{ matrix.numpy-version }}
54
+ needs: [build_wheels_quick]
55
+ runs-on: ubuntu-latest
56
+ strategy:
57
+ fail-fast: false
58
+ matrix:
59
+ include:
60
+ - python-version: "3.9"
61
+ numpy-version: "1.25.2"
62
+ - python-version: "3.10"
63
+ numpy-version: "1.26.4"
64
+ - python-version: "3.11"
65
+ numpy-version: "1.26.4"
66
+ - python-version: "3.12"
67
+ numpy-version: "1.26.4"
68
+ - python-version: "3.11"
69
+ numpy-version: "2.4.2"
70
+ - python-version: "3.12"
71
+ numpy-version: "2.4.2"
72
+
73
+ steps:
74
+ - uses: actions/checkout@v4
75
+
76
+ - name: Install uv
77
+ uses: astral-sh/setup-uv@v4
78
+ with:
79
+ version: "latest"
80
+
81
+ - name: Download wheel artifacts
82
+ uses: actions/download-artifact@v4
83
+ with:
84
+ pattern: cibw-wheels-quick
85
+ path: dist
86
+ merge-multiple: true
87
+
88
+ - name: Set up Python ${{ matrix.python-version }} and install dependencies
89
+ working-directory: tests/python
90
+ run: uv sync --project . --python ${{ matrix.python-version }}
91
+
92
+ - name: Install NumPy ${{ matrix.numpy-version }}
93
+ working-directory: tests/python
94
+ run: |
95
+ uv pip install --project . --only-binary :all: numpy==${{ matrix.numpy-version }}
96
+
97
+ - name: Install manylinux wheel built for Python ${{ matrix.python-version }}
98
+ working-directory: tests/python
99
+ run: uv pip install --project . ../../dist/*cp$(echo ${{ matrix.python-version }} | tr -d .)*.whl
100
+
101
+ - name: Run tests
102
+ working-directory: tests/python
103
+ run: uv run --project . pytest
104
+
105
+ build_wheels_main:
106
+ name: Build remaining wheels on ${{ matrix.os }}
107
+ runs-on: ${{ matrix.os }}
108
+ strategy:
109
+ matrix:
110
+ os: [ubuntu-latest, windows-latest, macos-latest]
111
+
112
+ steps:
113
+ - uses: actions/checkout@v4
114
+ with:
115
+ fetch-depth: 0
116
+ fetch-tags: true # Optional, use if you use setuptools_scm
117
+
118
+ - name: Build wheels
119
+ uses: pypa/cibuildwheel@v3.3.1
120
+ env:
121
+ CIBW_ARCHS_WINDOWS: "AMD64"
122
+ # The quick build has already taken care of manylinux.
123
+ CIBW_SKIP: "*-manylinux_x86_64"
124
+
125
+ - uses: actions/upload-artifact@v4
126
+ with:
127
+ name: cibw-wheels-main-${{ matrix.os }}-${{ strategy.job-index }}
128
+ path: ./wheelhouse/*.whl
129
+
130
+ # It looks cibuildwheels did not clean build folder(CMake), and it results to Windows arm64 build failure(trying to reuse x86 build of .obj)
131
+ # So supply separated build job for Windows ARM64 build
132
+ # TODO: clean build folder using CIBW_BEFORE_ALL?
133
+ build_wheels_win_arm64:
134
+ name: Build ARM64 wheels on Windows
135
+ runs-on: windows-latest
136
+ steps:
137
+ - uses: actions/checkout@v4
138
+ with:
139
+ fetch-depth: 0
140
+ fetch-tags: true # Optional, use if you use setuptools_scm
141
+
142
+ - name: Build wheels
143
+ uses: pypa/cibuildwheel@v3.3.1
144
+ env:
145
+ CIBW_ARCHS_WINDOWS: "ARM64"
146
+
147
+ - uses: actions/upload-artifact@v4
148
+ with:
149
+ name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
150
+ path: ./wheelhouse/*.whl
151
+
152
+ make_sdist:
153
+ name: Make SDist
154
+ runs-on: ubuntu-latest
155
+ steps:
156
+ - uses: actions/checkout@v4
157
+ with:
158
+ fetch-depth: 0 # Optional, use if you use setuptools_scm
159
+ fetch-tags: true # Optional, use if you use setuptools_scm
160
+
161
+ - name: Build SDist
162
+ run: pipx run build --sdist
163
+
164
+ - uses: actions/upload-artifact@v4
165
+ with:
166
+ name: cibw-sdist
167
+ path: dist/*.tar.gz
168
+
169
+ upload_all:
170
+ needs: [build_wheels_quick, build_wheels_main, build_wheels_win_arm64, make_sdist]
171
+ runs-on: ubuntu-latest
172
+ environment: release
173
+ permissions:
174
+ # IMPORTANT: this permission is mandatory for trusted publishing
175
+ id-token: write
176
+ # Upload to PyPI on every tag starting with 'v'.
177
+ # TODO: Make it work only using Github `environment` feature.
178
+ if: github.ref_type == 'tag'
179
+ steps:
180
+ - uses: actions/download-artifact@v4
181
+ with:
182
+ pattern: cibw-*
183
+ path: dist
184
+ merge-multiple: true
185
+
186
+ - uses: pypa/gh-action-pypi-publish@release/v1
187
+ with:
188
+ # Use Trusted Publisher feature:
189
+ # https://docs.pypi.org/trusted-publishers/
190
+ # Avoid race condition when using multiple CIs
191
+ skip-existing: true
192
+ verbose: true
@@ -0,0 +1,8 @@
1
+ #Common folder for building objects
2
+ build/
3
+ /python/dist/
4
+ /python/*.egg-info
5
+ /python/.eggs
6
+ /python/tiny_obj_loader.h
7
+ /tests/tester
8
+ /tests/tester.dSYM
@@ -0,0 +1,56 @@
1
+ language: cpp
2
+ sudo: required
3
+ matrix:
4
+ include:
5
+ - addons: &1
6
+ apt:
7
+ sources:
8
+ - george-edison55-precise-backports
9
+ - ubuntu-toolchain-r-test
10
+ - llvm-toolchain-precise-3.7
11
+ packages:
12
+ - cmake
13
+ - cmake-data
14
+ - ninja-build
15
+ - g++-4.9
16
+ - clang-3.7
17
+ compiler: clang
18
+ env: DEPLOY_BUILD=1 COMPILER_VERSION=3.7 BUILD_TYPE=Debug
19
+ - addons: *1
20
+ compiler: clang
21
+ env: COMPILER_VERSION=3.7 BUILD_TYPE=Release
22
+ - addons: &2
23
+ apt:
24
+ sources:
25
+ - george-edison55-precise-backports
26
+ - ubuntu-toolchain-r-test
27
+ packages:
28
+ - cmake
29
+ - cmake-data
30
+ - ninja-build
31
+ - g++-4.9
32
+ compiler: gcc
33
+ env: COMPILER_VERSION=4.9 BUILD_TYPE=Debug
34
+ - addons: *2
35
+ compiler: gcc
36
+ env: COMPILER_VERSION=4.9 BUILD_TYPE=Release
37
+ - addons: *1
38
+ compiler: clang
39
+ env: COMPILER_VERSION=3.7 BUILD_TYPE=Debug
40
+ before_install:
41
+ - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew upgrade; fi
42
+ - if [ -n "$REPORT_COVERAGE" ]; then sudo apt-get update python; fi
43
+ - if [ -n "$REPORT_COVERAGE" ]; then sudo apt-get install python-dev libffi-dev libssl-dev; fi
44
+ - if [ -n "$REPORT_COVERAGE" ]; then sudo pip install --upgrade pip; fi
45
+ - if [ -n "$REPORT_COVERAGE" ]; then CXX=g++ pip install --user requests[security]; fi
46
+ - if [ -n "$REPORT_COVERAGE" ]; then CXX=g++ pip install --user cpp-coveralls; fi
47
+ script:
48
+ - cd tests
49
+ - make check
50
+ - if [ -n "$REPORT_COVERAGE" ]; then coveralls -b . -r .. -e examples -e tools -e
51
+ jni -e python -e images -E ".*CompilerId.*" -E ".*feature_tests.*" ; fi
52
+ - cd ..
53
+ - rm -rf dist
54
+ - mkdir dist
55
+ - cp tiny_obj_loader.h dist/
56
+
@@ -0,0 +1,9 @@
1
+ cc_library(
2
+ name = "tinyobjloader",
3
+ hdrs = ["tiny_obj_loader.h"],
4
+ copts = select({
5
+ "@platforms//os:windows": [],
6
+ "//conditions:default": ["-Wno-maybe-uninitialized"],
7
+ }),
8
+ visibility = ["//visibility:public"],
9
+ )
@@ -0,0 +1,221 @@
1
+ #Tiny Object Loader Cmake configuration file.
2
+ #This configures the Cmake system with multiple properties, depending
3
+ #on the platform and configuration it is set to build in.
4
+ cmake_minimum_required(VERSION 3.16)
5
+ project(tinyobjloader CXX)
6
+ set(TINYOBJLOADER_SOVERSION 2)
7
+ set(TINYOBJLOADER_VERSION 2.0.0-rc.13)
8
+ set(PY_TARGET "pytinyobjloader")
9
+
10
+ #optional double precision support
11
+ option(TINYOBJLOADER_USE_DOUBLE "Build library with double precision instead of single (float)" OFF)
12
+ option(TINYOBJLOADER_WITH_PYTHON "Build Python module(for developer). Use pyproject.toml/setup.py to build Python module for end-users" OFF)
13
+ option(TINYOBJLOADER_PREFER_LOCAL_PYTHON_INSTALLATION
14
+ "Prefer locally-installed Python interpreter than system or conda/brew installed Python. Please specify your Python interpreter with `Python3_EXECUTABLE` cmake option if you enable this option."
15
+ OFF)
16
+
17
+ list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
18
+ list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/sanitizers)
19
+ find_package(Sanitizers) # Address sanitizer (-DSANITIZE_ADDRESS=ON)
20
+
21
+
22
+ if(TINYOBJLOADER_USE_DOUBLE)
23
+ set(LIBRARY_NAME ${PROJECT_NAME}_double)
24
+ else()
25
+ set(LIBRARY_NAME ${PROJECT_NAME})
26
+ endif()
27
+
28
+ #Folder Shortcuts
29
+ set(TINYOBJLOADEREXAMPLES_DIR ${CMAKE_CURRENT_SOURCE_DIR}/examples)
30
+
31
+ set(tinyobjloader-Source
32
+ ${CMAKE_CURRENT_SOURCE_DIR}/tiny_obj_loader.h
33
+ ${CMAKE_CURRENT_SOURCE_DIR}/tiny_obj_loader.cc
34
+ )
35
+
36
+ set(tinyobjloader-Example-Source
37
+ ${CMAKE_CURRENT_SOURCE_DIR}/loader_example.cc
38
+ )
39
+
40
+ set(tinyobjloader-examples-objsticher
41
+ ${TINYOBJLOADEREXAMPLES_DIR}/obj_sticher/obj_writer.h
42
+ ${TINYOBJLOADEREXAMPLES_DIR}/obj_sticher/obj_writer.cc
43
+ ${TINYOBJLOADEREXAMPLES_DIR}/obj_sticher/obj_sticher.cc
44
+ )
45
+
46
+ #Install destinations
47
+ include(GNUInstallDirs)
48
+
49
+ set(TINYOBJLOADER_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake)
50
+ set(TINYOBJLOADER_DOC_DIR ${CMAKE_INSTALL_DOCDIR})
51
+ set(TINYOBJLOADER_INCLUDE_DIR ${CMAKE_INSTALL_INCLUDEDIR})
52
+ set(TINYOBJLOADER_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR})
53
+ set(TINYOBJLOADER_PKGCONFIG_DIR ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
54
+ set(TINYOBJLOADER_RUNTIME_DIR ${CMAKE_INSTALL_BINDIR})
55
+
56
+ option(TINYOBJLOADER_BUILD_TEST_LOADER "Build Example Loader Application" OFF)
57
+
58
+ set(CMAKE_CXX_STANDARD 11)
59
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
60
+ set(CMAKE_CXX_EXTENSIONS OFF)
61
+
62
+ # Build standalone .so for Python binding(for developer)
63
+ if (TINYOBJLOADER_WITH_PYTHON)
64
+
65
+ if(TINYOBJLOADER_PREFER_LOCAL_PYTHON_INSTALLATION)
66
+ #message(STATUS "Local Python")
67
+ set(Python3_FIND_FRAMEWORK NEVER) # Do not search framework python
68
+ set(Python3_FIND_STRATEGY LOCATION)
69
+ set(Python3_FIND_REGISTRY NEVER) # Windows only
70
+ else()
71
+ set(Python3_FIND_FRAMEWORK LAST
72
+ )# Prefer Brew/Conda to Apple framework python
73
+ endif()
74
+
75
+ find_package(
76
+ Python3
77
+ COMPONENTS Interpreter Development
78
+ REQUIRED)
79
+
80
+ find_package(pybind11 CONFIG REQUIRED)
81
+
82
+ endif()
83
+
84
+
85
+
86
+ add_library(${LIBRARY_NAME} ${tinyobjloader-Source})
87
+ add_sanitizers(${LIBRARY_NAME})
88
+
89
+ if(BUILD_SHARED_LIBS)
90
+ set_target_properties(${LIBRARY_NAME} PROPERTIES
91
+ SOVERSION ${TINYOBJLOADER_SOVERSION}
92
+ WINDOWS_EXPORT_ALL_SYMBOLS ON
93
+ )
94
+ endif()
95
+
96
+ if(TINYOBJLOADER_USE_DOUBLE)
97
+ target_compile_definitions(${LIBRARY_NAME} PUBLIC TINYOBJLOADER_USE_DOUBLE)
98
+ endif()
99
+
100
+ set_target_properties(${LIBRARY_NAME} PROPERTIES VERSION ${TINYOBJLOADER_VERSION})
101
+
102
+ target_include_directories(${LIBRARY_NAME} INTERFACE
103
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
104
+ $<INSTALL_INTERFACE:${TINYOBJLOADER_INCLUDE_DIR}>
105
+ )
106
+
107
+ export(TARGETS ${LIBRARY_NAME} FILE ${PROJECT_NAME}-targets.cmake)
108
+
109
+ if(TINYOBJLOADER_BUILD_TEST_LOADER)
110
+ add_executable(test_loader ${tinyobjloader-Example-Source})
111
+ target_link_libraries(test_loader ${LIBRARY_NAME})
112
+ endif()
113
+
114
+ option(TINYOBJLOADER_BUILD_OBJ_STICHER "Build OBJ Sticher Application" OFF)
115
+ if(TINYOBJLOADER_BUILD_OBJ_STICHER)
116
+ add_executable(obj_sticher ${tinyobjloader-examples-objsticher})
117
+ target_link_libraries(obj_sticher ${LIBRARY_NAME})
118
+
119
+ install(TARGETS
120
+ obj_sticher
121
+ DESTINATION
122
+ ${TINYOBJLOADER_RUNTIME_DIR}
123
+ )
124
+ endif()
125
+
126
+ if (TINYOBJLOADER_WITH_PYTHON)
127
+ # pybind11 method:
128
+ pybind11_add_module(${PY_TARGET} ${CMAKE_SOURCE_DIR}/python/bindings.cc ${CMAKE_SOURCE_DIR}/python/tiny_obj_loader.cc)
129
+
130
+ add_sanitizers(${PY_TARGET})
131
+ set_target_properties(${PY_TARGET} PROPERTIES OUTPUT_NAME "tinyobjloader")
132
+
133
+ # copy .so to jdepp/
134
+ add_custom_command(
135
+ TARGET ${PY_TARGET}
136
+ POST_BUILD
137
+ COMMAND "${CMAKE_COMMAND}" -E copy "$<TARGET_FILE:${PY_TARGET}>"
138
+ "${CMAKE_SOURCE_DIR}/python/$<TARGET_FILE_NAME:${PY_TARGET}>"
139
+ COMMENT "copying tinyobjloader native python module file to python/"
140
+ VERBATIM)
141
+
142
+ endif()
143
+
144
+ #Write CMake package config files
145
+ include(CMakePackageConfigHelpers)
146
+
147
+ configure_package_config_file(
148
+ ${PROJECT_NAME}-config.cmake.in
149
+ ${PROJECT_NAME}-config.cmake
150
+ INSTALL_DESTINATION
151
+ ${TINYOBJLOADER_CMAKE_DIR}
152
+ PATH_VARS
153
+ TINYOBJLOADER_INCLUDE_DIR
154
+ TINYOBJLOADER_LIBRARY_DIR
155
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
156
+ )
157
+
158
+ write_basic_package_version_file(${PROJECT_NAME}-config-version.cmake
159
+ VERSION
160
+ ${TINYOBJLOADER_VERSION}
161
+ COMPATIBILITY
162
+ SameMajorVersion
163
+ )
164
+
165
+ #pkg-config file
166
+ configure_file(${PROJECT_NAME}.pc.in ${LIBRARY_NAME}.pc @ONLY)
167
+
168
+ if(DEFINED ENV{LIB_FUZZING_ENGINE})
169
+ add_executable(fuzz_ParseFromString fuzzer/fuzz_ParseFromString.cc)
170
+ target_link_libraries(fuzz_ParseFromString ${LIBRARY_NAME} $ENV{LIB_FUZZING_ENGINE})
171
+ endif()
172
+
173
+ #Installation
174
+ install(TARGETS
175
+ ${LIBRARY_NAME}
176
+ EXPORT ${PROJECT_NAME}-targets
177
+ DESTINATION
178
+ ${TINYOBJLOADER_LIBRARY_DIR}
179
+ PUBLIC_HEADER DESTINATION
180
+ ${TINYOBJLOADER_INCLUDE_DIR}
181
+ RUNTIME DESTINATION
182
+ ${TINYOBJLOADER_RUNTIME_DIR}
183
+ )
184
+ install(EXPORT
185
+ ${PROJECT_NAME}-targets
186
+ NAMESPACE
187
+ tinyobjloader::
188
+ DESTINATION
189
+ ${TINYOBJLOADER_CMAKE_DIR}
190
+ )
191
+ install(FILES
192
+ tiny_obj_loader.h
193
+ DESTINATION
194
+ ${TINYOBJLOADER_INCLUDE_DIR}
195
+ )
196
+ install(FILES
197
+ LICENSE
198
+ DESTINATION
199
+ ${TINYOBJLOADER_DOC_DIR}
200
+ )
201
+ install(FILES
202
+ "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake"
203
+ "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake"
204
+ DESTINATION
205
+ ${TINYOBJLOADER_CMAKE_DIR}
206
+ )
207
+ install(FILES
208
+ "${CMAKE_CURRENT_BINARY_DIR}/${LIBRARY_NAME}.pc"
209
+ DESTINATION
210
+ ${TINYOBJLOADER_PKGCONFIG_DIR}
211
+ )
212
+
213
+ if(NOT TARGET uninstall)
214
+ configure_file(
215
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in
216
+ ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake IMMEDIATE @ONLY)
217
+
218
+ add_custom_target(
219
+ uninstall COMMAND ${CMAKE_COMMAND} -P
220
+ ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
221
+ endif()
@@ -0,0 +1,42 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2012-2019 Syoyo Fujita and many contributors.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
22
+
23
+ ----------------------------------
24
+
25
+ mapbox/earcut.hpp
26
+
27
+ ISC License
28
+
29
+ Copyright (c) 2015, Mapbox
30
+
31
+ Permission to use, copy, modify, and/or distribute this software for any purpose
32
+ with or without fee is hereby granted, provided that the above copyright notice
33
+ and this permission notice appear in all copies.
34
+
35
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
36
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
37
+ FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
38
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
39
+ OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
40
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
41
+ THIS SOFTWARE.
42
+
@@ -0,0 +1,8 @@
1
+ include pyproject.toml
2
+ include setup.py
3
+ include README.md
4
+ include LICENSE
5
+ include python/sample.py
6
+ include python/bindings.cc
7
+ include python/tiny_obj_loader.cc
8
+ include tiny_obj_loader.h
@@ -0,0 +1,9 @@
1
+ module(
2
+ name = "tinyobjloader",
3
+ compatibility_level = 1,
4
+ )
5
+
6
+ bazel_dep(
7
+ name = "platforms",
8
+ version = "0.0.8",
9
+ )