compiletools 8.2.2__tar.gz → 8.3.0__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 (440) hide show
  1. {compiletools-8.2.2 → compiletools-8.3.0}/PKG-INFO +11 -5
  2. {compiletools-8.2.2 → compiletools-8.3.0}/pyproject.toml +12 -5
  3. compiletools-8.3.0/scripts/ct-build-docs +52 -0
  4. compiletools-8.3.0/scripts/ct-pytest-monitor +171 -0
  5. compiletools-8.3.0/scripts/ct-termux-install +282 -0
  6. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.cleanup-remote-locks.rst +1 -1
  7. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.create-documentation.rst +1 -1
  8. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-backends.rst +1 -1
  9. compiletools-8.3.0/src/compiletools/README.ct-build-docs.rst +64 -0
  10. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build-dynamic-library.rst +1 -1
  11. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build-static-library.rst +1 -1
  12. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build.rst +1 -1
  13. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cake.rst +1 -1
  14. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cleanup-locks.rst +1 -1
  15. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-commandline.rst +1 -1
  16. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-compilation-database.rst +1 -1
  17. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-config.rst +1 -1
  18. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cppdeps.rst +1 -1
  19. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-create-makefile.rst +1 -1
  20. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-doc.rst +2 -1
  21. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-filelist.rst +1 -1
  22. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-findtargets.rst +1 -1
  23. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-git-sha-report.rst +1 -1
  24. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-gitroot.rst +1 -1
  25. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-headertree.rst +1 -1
  26. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-jobs.rst +1 -1
  27. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-list-backends.rst +1 -1
  28. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-list-variants.rst +1 -1
  29. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-lock-helper.rst +2 -2
  30. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-magicflags.rst +1 -1
  31. compiletools-8.3.0/src/compiletools/README.ct-pytest-monitor.rst +170 -0
  32. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-release.rst +1 -1
  33. compiletools-8.3.0/src/compiletools/README.ct-termux-install.rst +153 -0
  34. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-timing-report.rst +43 -8
  35. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-trim-cache.rst +1 -1
  36. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-watch-build.rst +1 -1
  37. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.profile-ct-cake-worktree.rst +1 -1
  38. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_backend.py +50 -3
  39. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_graph.py +31 -9
  40. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_timer.py +77 -25
  41. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cleanup_locks.py +1 -1
  42. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/conftest.py +19 -0
  43. compiletools-8.3.0/src/compiletools/jobs.py +56 -0
  44. compiletools-8.3.0/src/compiletools/lock_utils.py +257 -0
  45. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/locking.py +19 -9
  46. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/makefile_backend.py +14 -5
  47. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/namer.py +31 -6
  48. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ninja_backend.py +14 -3
  49. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_backend.py +151 -4
  50. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_graph.py +19 -0
  51. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_timer.py +140 -0
  52. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cake.py +3 -2
  53. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cleanup_locks.py +5 -5
  54. compiletools-8.3.0/src/compiletools/test_docs_build.py +28 -0
  55. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headerdeps.py +4 -1
  56. compiletools-8.3.0/src/compiletools/test_jobs.py +103 -0
  57. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_locking.py +24 -22
  58. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_makefile_backend.py +198 -9
  59. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_multiuser_cache.py +16 -9
  60. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_namer.py +77 -0
  61. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_ninja_backend.py +78 -0
  62. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_shake_backend.py +66 -0
  63. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_shared_cache_low_mtime_resolution.py +2 -2
  64. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_slurm_backend.py +44 -1
  65. compiletools-8.3.0/src/compiletools/test_timing_timeline.py +337 -0
  66. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_trim_cache.py +95 -4
  67. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_tup_backend.py +30 -0
  68. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/testhelper.py +27 -4
  69. compiletools-8.3.0/src/compiletools/timing_timeline.py +743 -0
  70. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/timing_tui.py +10 -3
  71. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trace_backend.py +26 -4
  72. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trim_cache.py +44 -13
  73. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/tup_backend.py +2 -0
  74. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/version.py +1 -1
  75. compiletools-8.2.2/src/compiletools/jobs.py +0 -84
  76. compiletools-8.2.2/src/compiletools/lock_utils.py +0 -188
  77. compiletools-8.2.2/src/compiletools/test_jobs.py +0 -117
  78. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/create-documentation +0 -0
  79. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build +0 -0
  80. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build-dynamic-library +0 -0
  81. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build-static-library +0 -0
  82. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-release +0 -0
  83. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-watch-build +0 -0
  84. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct +0 -0
  85. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct-cake-modes +0 -0
  86. {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct-cake-worktree +0 -0
  87. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/__init__.py +0 -0
  88. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/apptools.py +0 -0
  89. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/bazel_backend.py +0 -0
  90. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_context.py +0 -0
  91. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cake.py +0 -0
  92. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cleanup_locks_main.py +0 -0
  93. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cmake_backend.py +0 -0
  94. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/compilation_database.py +0 -0
  95. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/compiler_macros.py +0 -0
  96. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/config.py +0 -0
  97. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/configutils.py +0 -0
  98. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cppdeps.py +0 -0
  99. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/blank.conf +0 -0
  100. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/blank.release.conf +0 -0
  101. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/clang.debug.conf +0 -0
  102. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/clang.release.conf +0 -0
  103. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/ct.conf +0 -0
  104. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/gcc.debug.conf +0 -0
  105. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/gcc.release.conf +0 -0
  106. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct_lock_helper.py +0 -0
  107. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/doc.py +0 -0
  108. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/file_analyzer.py +0 -0
  109. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/filelist.py +0 -0
  110. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/filesystem_utils.py +0 -0
  111. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/findtargets.py +0 -0
  112. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/git_sha_report.py +0 -0
  113. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/git_utils.py +0 -0
  114. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/global_hash_registry.py +0 -0
  115. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/headerdeps.py +0 -0
  116. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/headertree.py +0 -0
  117. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/hunter.py +0 -0
  118. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/listbackends.py +0 -0
  119. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/listvariants.py +0 -0
  120. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/magicflags.py +0 -0
  121. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/preprocessing_cache.py +0 -0
  122. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/preprocessor.py +0 -0
  123. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/add.C +0 -0
  124. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/add.H +0 -0
  125. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/calculator.cpp +0 -0
  126. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/calculator.h +0 -0
  127. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/main.cpp +0 -0
  128. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/default_extra.h +0 -0
  129. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/linux_extra.h +0 -0
  130. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/main.cpp +0 -0
  131. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/windows_extra.h +0 -0
  132. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/linux_header.h +0 -0
  133. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/main.cpp +0 -0
  134. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/windows_header.h +0 -0
  135. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/aarch64_feature.hpp +0 -0
  136. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_feature.hpp +0 -0
  137. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_preprocessor_header.hpp +0 -0
  138. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_preprocessor_test.cpp +0 -0
  139. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/alt_form_feature.hpp +0 -0
  140. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/arm_feature.hpp +0 -0
  141. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/armcc_feature.hpp +0 -0
  142. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/avx2_optimization.hpp +0 -0
  143. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/basic_feature.hpp +0 -0
  144. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cache_profiler.hpp +0 -0
  145. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/certificate_validation.hpp +0 -0
  146. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cflags_feature.hpp +0 -0
  147. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/clang_feature.hpp +0 -0
  148. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/combined_features.hpp +0 -0
  149. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/compiler_builtin_header.hpp +0 -0
  150. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/compiler_builtin_test.cpp +0 -0
  151. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/conditional_header.hpp +0 -0
  152. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cppflags_feature.hpp +0 -0
  153. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cpu_profiler.hpp +0 -0
  154. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/custom_allocator.hpp +0 -0
  155. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cxxflags_feature.hpp +0 -0
  156. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/default_feature.hpp +0 -0
  157. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/detailed_profiler.hpp +0 -0
  158. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/elif_header.hpp +0 -0
  159. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/elif_test.cpp +0 -0
  160. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/emscripten_feature.hpp +0 -0
  161. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/expert_feature.hpp +0 -0
  162. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/expert_mode_base.hpp +0 -0
  163. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/fma_optimization.hpp +0 -0
  164. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/gcc_feature.hpp +0 -0
  165. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/high_optimization.hpp +0 -0
  166. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/intel_feature.hpp +0 -0
  167. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/leak_detector.hpp +0 -0
  168. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_advanced.hpp +0 -0
  169. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_epoll_threading.hpp +0 -0
  170. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_feature.hpp +0 -0
  171. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/main.cpp +0 -0
  172. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/memory_profiler.hpp +0 -0
  173. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/memory_tracker.hpp +0 -0
  174. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/msvc_feature.hpp +0 -0
  175. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/multi_flag_header.hpp +0 -0
  176. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/multi_flag_test.cpp +0 -0
  177. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/nested_macros_header.hpp +0 -0
  178. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/nested_macros_test.cpp +0 -0
  179. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/networking_base.hpp +0 -0
  180. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/numa_threading.hpp +0 -0
  181. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/partial_features.hpp +0 -0
  182. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/profiling_base.hpp +0 -0
  183. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/riscv_feature.hpp +0 -0
  184. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/simd_optimization.hpp +0 -0
  185. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/ssl_networking.hpp +0 -0
  186. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/stack_tracer.hpp +0 -0
  187. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/strict_cert_validation.hpp +0 -0
  188. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/tcc_feature.hpp +0 -0
  189. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/temp_defined.hpp +0 -0
  190. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/temp_still_defined.hpp +0 -0
  191. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version1_feature.hpp +0 -0
  192. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version2_feature.hpp +0 -0
  193. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version3_feature.hpp +0 -0
  194. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version_205_plus.hpp +0 -0
  195. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version_ge_2_feature.hpp +0 -0
  196. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_advanced.hpp +0 -0
  197. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_iocp.hpp +0 -0
  198. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_iocp_threading.hpp +0 -0
  199. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/x86_64_feature.hpp +0 -0
  200. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform.cpp +0 -0
  201. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform.hpp +0 -0
  202. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform_lin.cpp +0 -0
  203. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform_win.cpp +0 -0
  204. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/test_source.cpp +0 -0
  205. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_a.hpp +0 -0
  206. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_b.hpp +0 -0
  207. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_c.hpp +0 -0
  208. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d1/d1.cpp +0 -0
  209. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d1/d1.hpp +0 -0
  210. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d2/d2.cpp +0 -0
  211. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d2/d2.hpp +0 -0
  212. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/dottypaths.cpp +0 -0
  213. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/duplicate_flags/main.cpp +0 -0
  214. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/README.md +0 -0
  215. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/base.hpp +0 -0
  216. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/conditional.hpp +0 -0
  217. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/dependency.hpp +0 -0
  218. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/main.cpp +0 -0
  219. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/a_widget.cpp +0 -0
  220. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/a_widget.hpp +0 -0
  221. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/red_herring_c_style_2.hpp +0 -0
  222. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/test_factory.cpp +0 -0
  223. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget.hpp +0 -0
  224. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget_factory.cpp +0 -0
  225. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget_factory.hpp +0 -0
  226. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/z_widget.cpp +0 -0
  227. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/z_widget.hpp +0 -0
  228. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/database.h +0 -0
  229. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/feature_config.h +0 -0
  230. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/graphics.h +0 -0
  231. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/logging.h +0 -0
  232. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/main.cpp +0 -0
  233. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/networking.h +0 -0
  234. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/main.cpp +0 -0
  235. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/optional_feature.h +0 -0
  236. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/stdheader_extras.h +0 -0
  237. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/README.md +0 -0
  238. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/header_a.hpp +0 -0
  239. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/header_b.hpp +0 -0
  240. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/main.cpp +0 -0
  241. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/README.md +0 -0
  242. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/app.cpp +0 -0
  243. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/config.h +0 -0
  244. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/renderer.h +0 -0
  245. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/isystem_include_bug/fake_system_include/system/version.h +0 -0
  246. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/isystem_include_bug/main.cpp +0 -0
  247. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/conditional_ldflags_test.cpp +0 -0
  248. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/macro_expanded_ldflags.cpp +0 -0
  249. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/version_dependent_ldflags.cpp +0 -0
  250. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/version_macro.hpp +0 -0
  251. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/build.sh +0 -0
  252. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/main.cpp +0 -0
  253. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_double.cpp +0 -0
  254. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_double.hpp +0 -0
  255. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_int.cpp +0 -0
  256. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_int.hpp +0 -0
  257. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_numbers.cpp +0 -0
  258. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_numbers.hpp +0 -0
  259. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/lotsofmagic/lotsofmagic.cpp +0 -0
  260. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_header.hpp +0 -0
  261. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_x_impl.cpp +0 -0
  262. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_y_impl.cpp +0 -0
  263. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/main.cpp +0 -0
  264. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/README.md +0 -0
  265. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/clean_main.cpp +0 -0
  266. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/config.h +0 -0
  267. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/core.h +0 -0
  268. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/debug.h +0 -0
  269. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/feature.h +0 -0
  270. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/main.cpp +0 -0
  271. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/module_b.h +0 -0
  272. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/release.h +0 -0
  273. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/sample.cpp +0 -0
  274. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/complex_header.h +0 -0
  275. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/complex_test.cpp +0 -0
  276. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/macro_header.h +0 -0
  277. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/test_macro_transform.cpp +0 -0
  278. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/traits_header.h +0 -0
  279. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/main.cpp +0 -0
  280. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir/important.hpp +0 -0
  281. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir2/important2.hpp +0 -0
  282. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir3/important3.hpp +0 -0
  283. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicpkgconfig/main.cpp +0 -0
  284. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicpkgconfig_fake/main.cpp +0 -0
  285. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/some_header.hpp +0 -0
  286. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/another_header.hpp +0 -0
  287. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/the_code_lin.cpp +0 -0
  288. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/the_code_win.cpp +0 -0
  289. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/main.cpp +0 -0
  290. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/movingheaders/main.cpp +0 -0
  291. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/movingheaders/someheader.hpp +0 -0
  292. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/gcc.debug.conf +0 -0
  293. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/nc.cpp +0 -0
  294. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/subdir/gcc.debug.conf +0 -0
  295. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/subdir/nc.cpp +0 -0
  296. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_double.cpp +0 -0
  297. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_double.hpp +0 -0
  298. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_int.cpp +0 -0
  299. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_int.hpp +0 -0
  300. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_numbers.cpp +0 -0
  301. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_numbers.hpp +0 -0
  302. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/test_direct_include.cpp +0 -0
  303. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/test_library.cpp +0 -0
  304. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/common_file.cpp +0 -0
  305. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/conditional_include.hpp +0 -0
  306. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/entry_point_1.cpp +0 -0
  307. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/entry_point_2.cpp +0 -0
  308. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/hash_map.hpp +0 -0
  309. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/hash_utility.hpp +0 -0
  310. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/intermediate.cpp +0 -0
  311. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pch/pch_user.cpp +0 -0
  312. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pch/stdafx.h +0 -0
  313. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/README.md +0 -0
  314. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/header_with_macros.hpp +0 -0
  315. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/header_with_pkgconfig.hpp +0 -0
  316. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/main_header.hpp +0 -0
  317. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/src/test.cpp +0 -0
  318. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgconfig/main.cpp +0 -0
  319. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/conditional.pc +0 -0
  320. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/leaked-macro-pkg.pc +0 -0
  321. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/linux-path-pkg.pc +0 -0
  322. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/macro-in-output.pc +0 -0
  323. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/modified.pc +0 -0
  324. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/nested.pc +0 -0
  325. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/transitive-deps.pc +0 -0
  326. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/linux_func.cpp +0 -0
  327. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/linux_func.hpp +0 -0
  328. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/platform_main.cpp +0 -0
  329. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/windows_func.cpp +0 -0
  330. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/windows_func.hpp +0 -0
  331. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/project_pkgconfig_override/ct.conf.d/pkgconfig/conditional.pc +0 -0
  332. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/project_pkgconfig_override/main.cpp +0 -0
  333. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/README.txt +0 -0
  334. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/createfile.cpp +0 -0
  335. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/createfile.hpp +0 -0
  336. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/filename.hpp +0 -0
  337. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/obtainlock.cpp +0 -0
  338. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/obtainlock.hpp +0 -0
  339. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/test_flock_1.cpp +0 -0
  340. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/test_flock_2.cpp +0 -0
  341. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/helloworld_c.c +0 -0
  342. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/helloworld_cpp.cpp +0 -0
  343. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/test_cflags.c +0 -0
  344. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/main.cpp +0 -0
  345. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/one.cpp +0 -0
  346. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/two.cpp +0 -0
  347. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/README.md +0 -0
  348. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/a-game.cpp +0 -0
  349. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/b-game.cpp +0 -0
  350. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/background_task.hpp +0 -0
  351. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/event_handler.hpp +0 -0
  352. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/memory_buffer.hpp +0 -0
  353. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/event_loop.cpp +0 -0
  354. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/event_loop.hpp +0 -0
  355. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/audio_system.cpp +0 -0
  356. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/audio_system.hpp +0 -0
  357. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/input_system.cpp +0 -0
  358. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/input_system.hpp +0 -0
  359. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/render_system.cpp +0 -0
  360. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/render_system.hpp +0 -0
  361. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/task_scheduler.cpp +0 -0
  362. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/task_scheduler.hpp +0 -0
  363. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/README.md +0 -0
  364. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/cleans_up.hpp +0 -0
  365. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/defines_macro.hpp +0 -0
  366. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/main.cpp +0 -0
  367. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/should_be_included.hpp +0 -0
  368. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/uses_conditional.hpp +0 -0
  369. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/api_config.h +0 -0
  370. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/api_config_new.h +0 -0
  371. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/test_main.cpp +0 -0
  372. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/test_main_new.cpp +0 -0
  373. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/version.h +0 -0
  374. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/version_new.h +0 -0
  375. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/simple_preprocessor.py +0 -0
  376. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/stringzilla_utils.py +0 -0
  377. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_apptools.py +0 -0
  378. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_backend_integration.py +0 -0
  379. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_base.py +0 -0
  380. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_bazel_backend.py +0 -0
  381. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cake_backend.py +0 -0
  382. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cap.py +0 -0
  383. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cmake_backend.py +0 -0
  384. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_compilation_database.py +0 -0
  385. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_compiler_macros.py +0 -0
  386. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_config.py +0 -0
  387. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_configutils.py +0 -0
  388. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cppdeps.py +0 -0
  389. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_ct_lock_helper.py +0 -0
  390. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_doc.py +0 -0
  391. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_empty_macro_bug.py +0 -0
  392. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_environment_assumptions.py +0 -0
  393. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_fd_fix_integration.py +0 -0
  394. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_analyzer.py +0 -0
  395. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_analyzer_integration.py +0 -0
  396. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_locking.py +0 -0
  397. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_open_efficiency.py +0 -0
  398. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_filelist_sample_output.py +0 -0
  399. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_filesystem_utils.py +0 -0
  400. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_findtargets.py +0 -0
  401. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_git_sha_report.py +0 -0
  402. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_global_hash_registry.py +0 -0
  403. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headerdeps_extract.py +0 -0
  404. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headertree.py +0 -0
  405. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headertree_hunter_agreement.py +0 -0
  406. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_hunter.py +0 -0
  407. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_hunter_macro_propagation.py +0 -0
  408. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_library.py +0 -0
  409. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_listbackends.py +0 -0
  410. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_listvariants.py +0 -0
  411. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_locking_contract.py +0 -0
  412. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_dependency.py +0 -0
  413. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_isolation.py +0 -0
  414. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_pollution.py +0 -0
  415. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags.py +0 -0
  416. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags_styles.py +0 -0
  417. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags_unit.py +0 -0
  418. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicinclude.py +0 -0
  419. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicpkgconfig.py +0 -0
  420. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_makefile.py +0 -0
  421. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_movingheaders.py +0 -0
  422. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_noop_rebuild.py +0 -0
  423. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_parse_order_macro_bug.py +0 -0
  424. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_pkg_config_header_deps.py +0 -0
  425. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_preprocessing_cache.py +0 -0
  426. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_preprocessor.py +0 -0
  427. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_serialisetests.py +0 -0
  428. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_simple_preprocessor.py +0 -0
  429. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_stringzilla_utils.py +0 -0
  430. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_testhelper.py +0 -0
  431. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_timing_report.py +0 -0
  432. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_transitive_cache_bug.py +0 -0
  433. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_tree.py +0 -0
  434. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_undef_bug_sample.py +0 -0
  435. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_utils.py +0 -0
  436. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/timing_report.py +0 -0
  437. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/tree.py +0 -0
  438. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trim_cache_main.py +0 -0
  439. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/utils.py +0 -0
  440. {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/wrappedos.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: compiletools
3
- Version: 8.2.2
3
+ Version: 8.3.0
4
4
  Summary: Tools to make compiling C/C++ projects easy
5
5
  Keywords: c++,make,development
6
6
  Author: DrGeoff
@@ -17,24 +17,29 @@ Classifier: Programming Language :: Python :: 3.12
17
17
  Classifier: Programming Language :: Python :: 3.13
18
18
  Requires-Dist: configargparse>=1.5.3
19
19
  Requires-Dist: appdirs>=1.4.4
20
- Requires-Dist: psutil>=5.9.0
21
20
  Requires-Dist: rich>=12.0.0
22
21
  Requires-Dist: rich-rst>=1.1.7
23
22
  Requires-Dist: stringzilla>=3.0.0
24
23
  Requires-Dist: bump-my-version>=0.26.0 ; extra == 'dev'
25
- Requires-Dist: twine>=5.0.0 ; extra == 'dev'
26
- Requires-Dist: pytest>=8.2.2 ; extra == 'dev'
24
+ Requires-Dist: pytest>=8.3.0 ; extra == 'dev'
27
25
  Requires-Dist: pytest-xdist>=3.5 ; extra == 'dev'
28
26
  Requires-Dist: ruff>=0.14.0 ; extra == 'dev'
29
27
  Requires-Dist: pyright>=1.1 ; extra == 'dev'
30
28
  Requires-Dist: pre-commit>=4.0 ; extra == 'dev'
31
29
  Requires-Dist: pytest-cov>=6.0 ; extra == 'dev'
32
30
  Requires-Dist: textual>=0.40.0 ; extra == 'dev'
31
+ Requires-Dist: sphinx>=7 ; extra == 'docs'
32
+ Requires-Dist: furo ; extra == 'docs'
33
+ Requires-Dist: sphinx-copybutton ; extra == 'docs'
34
+ Requires-Dist: tomli ; python_full_version < '3.11' and extra == 'docs'
35
+ Requires-Dist: twine>=5.0.0 ; extra == 'release'
33
36
  Requires-Dist: textual>=0.40.0 ; extra == 'tui'
34
37
  Requires-Python: >=3.10
35
38
  Project-URL: Download, https://github.com/DrGeoff/compiletools/archive/v{version}.tar.gz
36
39
  Project-URL: Homepage, http://drgeoff.github.io/compiletools/
37
40
  Provides-Extra: dev
41
+ Provides-Extra: docs
42
+ Provides-Extra: release
38
43
  Provides-Extra: tui
39
44
  Description-Content-Type: text/x-rst
40
45
 
@@ -55,7 +60,7 @@ C/C++ build tools that requires almost no configuration.
55
60
 
56
61
  :Author: drgeoffathome@gmail.com
57
62
  :Date: 2025-12-17
58
- :Version: 8.2.2
63
+ :Version: 8.3.0
59
64
  :Manual section: 1
60
65
  :Manual group: developers
61
66
 
@@ -211,6 +216,7 @@ SEE ALSO
211
216
  ========
212
217
  * ct-backends (7) -- build backend architecture and selection guide
213
218
  * ct-build
219
+ * ct-build-docs
214
220
  * ct-build-dynamic-library
215
221
  * ct-build-static-library
216
222
  * ct-cake
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "compiletools"
3
- version = "8.2.2"
3
+ version = "8.3.0"
4
4
  description = "Tools to make compiling C/C++ projects easy"
5
5
  readme = "src/compiletools/README.ct-doc.rst"
6
6
  requires-python = ">=3.10"
@@ -23,7 +23,6 @@ classifiers = [
23
23
  dependencies = [
24
24
  "configargparse>=1.5.3",
25
25
  "appdirs>=1.4.4",
26
- "psutil>=5.9.0",
27
26
  "rich>=12.0.0",
28
27
  "rich_rst>=1.1.7",
29
28
  "stringzilla>=3.0.0",
@@ -35,8 +34,7 @@ tui = [
35
34
  ]
36
35
  dev = [
37
36
  "bump-my-version>=0.26.0",
38
- "twine>=5.0.0",
39
- "pytest>=8.2.2",
37
+ "pytest>=8.3.0",
40
38
  "pytest-xdist>=3.5",
41
39
  "ruff>=0.14.0",
42
40
  "pyright>=1.1",
@@ -44,6 +42,15 @@ dev = [
44
42
  "pytest-cov>=6.0",
45
43
  "textual>=0.40.0",
46
44
  ]
45
+ release = [
46
+ "twine>=5.0.0",
47
+ ]
48
+ docs = [
49
+ "sphinx>=7",
50
+ "furo",
51
+ "sphinx-copybutton",
52
+ "tomli; python_version < '3.11'",
53
+ ]
47
54
 
48
55
  [project.urls]
49
56
  Homepage = "http://drgeoff.github.io/compiletools/"
@@ -96,7 +103,7 @@ include = [
96
103
  ]
97
104
 
98
105
  [tool.bumpversion]
99
- current_version = "8.2.2"
106
+ current_version = "8.3.0"
100
107
  parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
101
108
  serialize = ["{major}.{minor}.{patch}"]
102
109
  search = "{current_version}"
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/bash
2
+ set -euo pipefail
3
+
4
+ SCRIPT_NAME=$(basename "$0")
5
+
6
+ # Find README: check installed location first, then development location
7
+ if [[ -f "/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst" ]]; then
8
+ README_PATH="/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst"
9
+ else
10
+ README_PATH="$(dirname "$(readlink -f "$0")")/../src/compiletools/README.${SCRIPT_NAME}.rst"
11
+ fi
12
+
13
+ show_help() {
14
+ echo "Usage: ${SCRIPT_NAME}"
15
+ echo ""
16
+ if [[ -f "$README_PATH" ]]; then
17
+ cat "$README_PATH"
18
+ else
19
+ echo "No documentation available for ${SCRIPT_NAME}"
20
+ echo "See: https://github.com/DrGeoff/compiletools"
21
+ fi
22
+ exit 0
23
+ }
24
+
25
+ for arg in "$@"; do
26
+ case "$arg" in
27
+ --help|-h) show_help ;;
28
+ esac
29
+ done
30
+
31
+ # Ensure sphinx-build is available
32
+ if ! command -v sphinx-build >/dev/null 2>&1; then
33
+ echo "Error: sphinx-build not found." >&2
34
+ echo "Install the [docs] extra:" >&2
35
+ echo " uv pip install -e \".[docs]\"" >&2
36
+ exit 1
37
+ fi
38
+
39
+ REPO_ROOT="$(git -C "$(dirname "$(readlink -f "$0")")" rev-parse --show-toplevel)"
40
+ DOCS_SRC="${REPO_ROOT}/docs"
41
+ DOCS_OUT="${REPO_ROOT}/docs/_build/html"
42
+
43
+ if [[ ! -f "${DOCS_SRC}/conf.py" ]]; then
44
+ echo "Error: ${DOCS_SRC}/conf.py not found" >&2
45
+ exit 1
46
+ fi
47
+
48
+ echo "Building docs from ${DOCS_SRC} -> ${DOCS_OUT}"
49
+ sphinx-build -W -b html "${DOCS_SRC}" "${DOCS_OUT}"
50
+
51
+ echo ""
52
+ echo "Done. Open: ${DOCS_OUT}/index.html"
@@ -0,0 +1,171 @@
1
+ #!/usr/bin/env bash
2
+ # ct-pytest-monitor -- run pytest with crash-survivable diagnostics.
3
+ #
4
+ # On constrained devices (notably Termux on Android), the kernel OOM-killer
5
+ # can SIGKILL the entire shell mid-test. This script monitors test progress
6
+ # and host memory and writes both to disk -- before each kill arrives -- so
7
+ # post-mortem inspection can identify the offending test and the memory
8
+ # pressure leading up to it. It does NOT retry crashed runs or stress the
9
+ # system; it is a single pytest invocation with durable side channels.
10
+ #
11
+ # What gets written to the log directory:
12
+ #
13
+ # checkpoint.log -- one line per test, fsync'd BEFORE the test body runs.
14
+ # The last line is the test that was running when the
15
+ # kernel killed us.
16
+ # pytest.log -- full unbuffered pytest output (verbose).
17
+ # meminfo.log -- /proc/meminfo + top RSS consumers, sampled periodically.
18
+ # system.log -- one-shot snapshot of host state at startup.
19
+ # summary.log -- post-run summary (last test seen, final memory state).
20
+ #
21
+ # Run from anywhere; the script auto-detects the repo root from its own
22
+ # location.
23
+ set -euo pipefail
24
+
25
+ SCRIPT_NAME=$(basename "$0")
26
+ SCRIPT_DIR=$(cd "$(dirname "$(readlink -f "$0")")" && pwd)
27
+ REPO_ROOT=$(cd "$SCRIPT_DIR/.." && pwd)
28
+
29
+ if [[ -f "/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst" ]]; then
30
+ README_PATH="/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst"
31
+ else
32
+ README_PATH="${REPO_ROOT}/src/compiletools/README.${SCRIPT_NAME}.rst"
33
+ fi
34
+
35
+ # ---------- options --------------------------------------------------------
36
+
37
+ LOG_DIR=""
38
+ INTERVAL=2
39
+ PYTEST_ARGS=()
40
+
41
+ show_help() {
42
+ echo "Usage: ${SCRIPT_NAME} [--logdir DIR] [--interval SECONDS] [-h|--help] [-- pytest args...]"
43
+ echo ""
44
+ if [[ -f "$README_PATH" ]]; then
45
+ cat "$README_PATH"
46
+ else
47
+ echo "No documentation available for ${SCRIPT_NAME}"
48
+ echo "See: https://github.com/drgeoffathome/compiletools"
49
+ fi
50
+ exit 0
51
+ }
52
+
53
+ while [[ $# -gt 0 ]]; do
54
+ case "$1" in
55
+ --logdir) LOG_DIR="$2"; shift 2 ;;
56
+ --interval) INTERVAL="$2"; shift 2 ;;
57
+ -h|--help) show_help ;;
58
+ --) shift; PYTEST_ARGS+=("$@"); break ;;
59
+ *) PYTEST_ARGS+=("$1"); shift ;;
60
+ esac
61
+ done
62
+
63
+ # ---------- log dir --------------------------------------------------------
64
+
65
+ if [[ -z "$LOG_DIR" ]]; then
66
+ LOG_DIR="${TMPDIR:-/tmp}/ct-pytest-monitor-$(date +%Y%m%d-%H%M%S)"
67
+ fi
68
+ mkdir -p "$LOG_DIR"
69
+ LOG_DIR=$(cd "$LOG_DIR" && pwd)
70
+
71
+ CHECKPOINT_LOG="${LOG_DIR}/checkpoint.log"
72
+ PYTEST_LOG="${LOG_DIR}/pytest.log"
73
+ MEMINFO_LOG="${LOG_DIR}/meminfo.log"
74
+ SYSTEM_LOG="${LOG_DIR}/system.log"
75
+ SUMMARY_LOG="${LOG_DIR}/summary.log"
76
+
77
+ : > "$CHECKPOINT_LOG"
78
+ : > "$PYTEST_LOG"
79
+ : > "$MEMINFO_LOG"
80
+
81
+ # ---------- one-shot system snapshot ---------------------------------------
82
+
83
+ {
84
+ echo "=== ct-pytest-monitor started at $(date -Is) ==="
85
+ echo "=== uname -a ==="
86
+ uname -a
87
+ if [[ -n "${TERMUX_VERSION:-}" ]]; then
88
+ echo "=== TERMUX_VERSION=${TERMUX_VERSION} ==="
89
+ fi
90
+ echo "=== /proc/meminfo (initial) ==="
91
+ cat /proc/meminfo 2>/dev/null || echo "/proc/meminfo not available"
92
+ echo "=== free -h ==="
93
+ free -h 2>/dev/null || true
94
+ echo "=== python ==="
95
+ python --version 2>&1 || true
96
+ echo "=== pytest ==="
97
+ python -m pytest --version 2>&1 || true
98
+ echo "=== argv ==="
99
+ printf '%q ' "${PYTEST_ARGS[@]}"
100
+ echo
101
+ } > "$SYSTEM_LOG"
102
+
103
+ # ---------- background memory sampler --------------------------------------
104
+ #
105
+ # Each iteration opens, writes, and closes the log so a hard kill leaves the
106
+ # file flushed up to the last completed sample.
107
+
108
+ sampler_loop() {
109
+ while :; do
110
+ {
111
+ echo "--- $(date -Is) ---"
112
+ grep -E '^(MemTotal|MemFree|MemAvailable|Buffers|Cached|SwapTotal|SwapFree|AnonPages|Active|Inactive):' \
113
+ /proc/meminfo 2>/dev/null || true
114
+ echo "--- top RSS consumers (pid rss_kb cmd) ---"
115
+ ps -eo pid,rss,comm --no-headers 2>/dev/null | sort -k2 -nr | head -10 || true
116
+ } >> "$MEMINFO_LOG"
117
+ sleep "$INTERVAL"
118
+ done
119
+ }
120
+
121
+ sampler_loop &
122
+ SAMPLER_PID=$!
123
+
124
+ # ---------- cleanup --------------------------------------------------------
125
+
126
+ cleanup() {
127
+ local exit_code=$?
128
+ if kill -0 "$SAMPLER_PID" 2>/dev/null; then
129
+ kill "$SAMPLER_PID" 2>/dev/null || true
130
+ wait "$SAMPLER_PID" 2>/dev/null || true
131
+ fi
132
+ {
133
+ echo "=== ct-pytest-monitor ended at $(date -Is) (exit ${exit_code}) ==="
134
+ echo "=== last test seen (checkpoint tail) ==="
135
+ tail -n 5 "$CHECKPOINT_LOG" 2>/dev/null || true
136
+ echo "=== last 20 lines of pytest.log ==="
137
+ tail -n 20 "$PYTEST_LOG" 2>/dev/null || true
138
+ echo "=== final /proc/meminfo ==="
139
+ cat /proc/meminfo 2>/dev/null || true
140
+ } > "$SUMMARY_LOG"
141
+ cat <<EOF
142
+
143
+ ct-pytest-monitor logs in: ${LOG_DIR}
144
+ checkpoint.log -- last line = test running when shell died
145
+ pytest.log -- full pytest output
146
+ meminfo.log -- memory snapshots every ${INTERVAL}s
147
+ system.log -- initial state
148
+ summary.log -- end-of-run summary
149
+
150
+ If the shell was SIGKILLed: tail -n1 "${CHECKPOINT_LOG}"
151
+ EOF
152
+ exit "$exit_code"
153
+ }
154
+ trap cleanup EXIT INT TERM
155
+
156
+ # ---------- run pytest -----------------------------------------------------
157
+
158
+ cd "$REPO_ROOT"
159
+
160
+ export CT_PYTEST_CHECKPOINT="$CHECKPOINT_LOG"
161
+ export PYTHONUNBUFFERED=1
162
+
163
+ # `stdbuf -oL -eL` keeps tee's input line-buffered so each line reaches the
164
+ # log file as soon as pytest emits it. Lines that pass through tee may still
165
+ # be lost on SIGKILL if they sit in tee's userspace buffer; the checkpoint
166
+ # file (fsync'd by the conftest hook) is the authoritative crash record.
167
+ if command -v stdbuf >/dev/null 2>&1; then
168
+ stdbuf -oL -eL python -u -m pytest -v "${PYTEST_ARGS[@]}" 2>&1 | tee "$PYTEST_LOG"
169
+ else
170
+ python -u -m pytest -v "${PYTEST_ARGS[@]}" 2>&1 | tee "$PYTEST_LOG"
171
+ fi
@@ -0,0 +1,282 @@
1
+ #!/usr/bin/env bash
2
+ # ct-termux-install -- bootstrap a compiletools dev environment on Termux.
3
+ #
4
+ # Performs the recipe documented in INSTALL section 6:
5
+ # 1. install required Termux pkgs (clang, nodejs, ruff, uv, git, ...)
6
+ # 2. create a venv if missing
7
+ # 3. install stringzilla with the clang-21+ CFLAGS workaround
8
+ # 4. install compiletools (editable) and dev tooling, EXCLUDING ruff
9
+ # (ruff is satisfied by the Termux pkg; building it from sdist via
10
+ # cargo OOM-kills the device at the LTO link stage)
11
+ #
12
+ # Run from anywhere; the script auto-detects the repo root from its own
13
+ # location.
14
+ set -euo pipefail
15
+
16
+ SCRIPT_NAME=$(basename "$0")
17
+ SCRIPT_DIR=$(cd "$(dirname "$(readlink -f "$0")")" && pwd)
18
+ REPO_ROOT=$(cd "$SCRIPT_DIR/.." && pwd)
19
+
20
+ # Find README: check installed location first, then development location.
21
+ if [[ -f "/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst" ]]; then
22
+ README_PATH="/usr/share/doc/compiletools/README.${SCRIPT_NAME}.rst"
23
+ else
24
+ README_PATH="${REPO_ROOT}/src/compiletools/README.${SCRIPT_NAME}.rst"
25
+ fi
26
+
27
+ # ---------- options --------------------------------------------------------
28
+
29
+ SKIP_PKG=0
30
+ SKIP_VENV=0
31
+ DRY_RUN=0
32
+ ASSUME_YES=0
33
+
34
+ show_help() {
35
+ echo "Usage: ${SCRIPT_NAME} [--skip-pkg] [--skip-venv] [--dry-run] [-y|--yes] [-h|--help]"
36
+ echo ""
37
+ if [[ -f "$README_PATH" ]]; then
38
+ cat "$README_PATH"
39
+ else
40
+ echo "No documentation available for ${SCRIPT_NAME}"
41
+ echo "See: https://github.com/drgeoffathome/compiletools"
42
+ fi
43
+ exit 0
44
+ }
45
+
46
+ while [[ $# -gt 0 ]]; do
47
+ case "$1" in
48
+ --skip-pkg) SKIP_PKG=1 ;;
49
+ --skip-venv) SKIP_VENV=1 ;;
50
+ --dry-run) DRY_RUN=1 ;;
51
+ -y|--yes) ASSUME_YES=1 ;;
52
+ -h|--help) show_help ;;
53
+ *) echo "Error: unknown option: $1" >&2; exit 2 ;;
54
+ esac
55
+ shift
56
+ done
57
+
58
+ # ---------- helpers --------------------------------------------------------
59
+
60
+ if [[ -t 1 ]]; then
61
+ C_RED=$'\033[31m'; C_GREEN=$'\033[32m'; C_YELLOW=$'\033[33m'
62
+ C_BOLD=$'\033[1m'; C_RESET=$'\033[0m'
63
+ else
64
+ C_RED=''; C_GREEN=''; C_YELLOW=''; C_BOLD=''; C_RESET=''
65
+ fi
66
+
67
+ info() { printf '%s==>%s %s\n' "$C_BOLD" "$C_RESET" "$*"; }
68
+ warn() { printf '%sWARN:%s %s\n' "$C_YELLOW" "$C_RESET" "$*" >&2; }
69
+ err() { printf '%sERROR:%s %s\n' "$C_RED" "$C_RESET" "$*" >&2; }
70
+ ok() { printf '%sOK%s %s\n' "$C_GREEN" "$C_RESET" "$*"; }
71
+
72
+ run() {
73
+ printf ' %s$%s %s\n' "$C_BOLD" "$C_RESET" "$*"
74
+ if [[ "$DRY_RUN" -eq 0 ]]; then
75
+ "$@"
76
+ fi
77
+ }
78
+
79
+ confirm() {
80
+ local prompt=$1 answer
81
+ if [[ "$ASSUME_YES" -eq 1 ]]; then
82
+ return 0
83
+ fi
84
+ read -rp "$prompt [y/N] " answer
85
+ [[ "${answer,,}" == y || "${answer,,}" == yes ]]
86
+ }
87
+
88
+ require_cmd() {
89
+ command -v "$1" >/dev/null 2>&1 || {
90
+ err "required command not found: $1"
91
+ exit 1
92
+ }
93
+ }
94
+
95
+ # ---------- preflight ------------------------------------------------------
96
+
97
+ # Refuse to run anywhere except Termux: the recipe is Termux-specific and
98
+ # would clobber a non-Termux dev environment with the wrong CFLAGS.
99
+ if [[ -z "${TERMUX_VERSION-}" ]] && [[ ! -d /data/data/com.termux ]]; then
100
+ err "this script is Termux-only (no TERMUX_VERSION env var, no /data/data/com.termux dir)."
101
+ err "for other platforms, see INSTALL."
102
+ exit 1
103
+ fi
104
+
105
+ # Confirm we are sitting in a compiletools checkout.
106
+ if [[ ! -f "$REPO_ROOT/pyproject.toml" ]]; then
107
+ err "cannot find $REPO_ROOT/pyproject.toml -- is this a compiletools checkout?"
108
+ exit 1
109
+ fi
110
+ if ! grep -q '^name = "compiletools"' "$REPO_ROOT/pyproject.toml"; then
111
+ err "$REPO_ROOT/pyproject.toml does not look like compiletools"
112
+ exit 1
113
+ fi
114
+
115
+ # Memory check: cargo+rustc routinely needs 3+GB; warn if very tight.
116
+ if command -v free >/dev/null 2>&1; then
117
+ avail_mb=$(free -m | awk '/^Mem:/ {print $7}')
118
+ swap_mb=$(free -m | awk '/^Swap:/ {print $4}')
119
+ avail_mb=${avail_mb:-0}
120
+ swap_mb=${swap_mb:-0}
121
+ if (( avail_mb + swap_mb < 2048 )); then
122
+ warn "low memory: ${avail_mb}MB available + ${swap_mb}MB free swap"
123
+ warn "stringzilla compile or pip resolution may OOM. Close other apps."
124
+ confirm "Continue anyway?" || { err "aborted by user"; exit 1; }
125
+ fi
126
+ fi
127
+
128
+ info "compiletools repo root: $REPO_ROOT"
129
+ [[ "$DRY_RUN" -eq 1 ]] && info "DRY RUN -- no commands will be executed"
130
+
131
+ # ---------- step 1: Termux pkgs --------------------------------------------
132
+
133
+ # 'ruff' is essential here -- there is no aarch64-android wheel on PyPI,
134
+ # and building from sdist uses cargo+rustc with -C lto=fat which OOMs.
135
+ # 'nodejs' is needed by pyright at runtime.
136
+ # 'clang' is needed to compile stringzilla.
137
+ TERMUX_PKGS=(python clang nodejs ruff uv git)
138
+
139
+ if [[ "$SKIP_PKG" -eq 1 ]]; then
140
+ info "skipping pkg install (--skip-pkg)"
141
+ else
142
+ require_cmd pkg
143
+ info "installing Termux prerequisites: ${TERMUX_PKGS[*]}"
144
+ # 'pkg install' is idempotent; already-installed pkgs are no-ops.
145
+ run pkg install -y "${TERMUX_PKGS[@]}"
146
+ fi
147
+
148
+ # Whether or not we ran pkg install, the binaries we depend on must now exist.
149
+ if [[ "$DRY_RUN" -eq 0 ]]; then
150
+ for cmd in clang node ruff uv git python3; do
151
+ require_cmd "$cmd"
152
+ done
153
+ ok "all required tools on PATH"
154
+ fi
155
+
156
+ # ---------- step 2: venv ---------------------------------------------------
157
+
158
+ VENV_DIR="$REPO_ROOT/.venv"
159
+
160
+ if [[ "$SKIP_VENV" -eq 1 ]]; then
161
+ info "skipping venv creation (--skip-venv)"
162
+ if [[ "$DRY_RUN" -eq 0 && ! -x "$VENV_DIR/bin/python" ]]; then
163
+ err "--skip-venv given but $VENV_DIR/bin/python is missing"
164
+ exit 1
165
+ fi
166
+ elif [[ -x "$VENV_DIR/bin/python" ]]; then
167
+ info "reusing existing venv: $VENV_DIR"
168
+ else
169
+ info "creating venv at $VENV_DIR"
170
+ run uv venv "$VENV_DIR"
171
+ fi
172
+
173
+ # Activate. The activation script is bash-compatible and only sets a few env
174
+ # vars, so 'set -u' is fine after sourcing.
175
+ # shellcheck source=/dev/null
176
+ [[ "$DRY_RUN" -eq 0 ]] && source "$VENV_DIR/bin/activate"
177
+
178
+ # Hardlinks across Termux's bind-mounted home don't always work; copy mode is
179
+ # safe and only marginally slower.
180
+ export UV_LINK_MODE=copy
181
+
182
+ # ---------- step 3: stringzilla --------------------------------------------
183
+
184
+ # Clang 21+ promotes two stringzilla source issues from warnings to errors:
185
+ # incompatible function pointer types in the CPython slot tables, and
186
+ # const-discarding free()/realloc()/munmap() calls. Downgrading them keeps
187
+ # the build going; the wheel is functionally correct.
188
+ STRINGZILLA_CFLAGS=(
189
+ "-Wno-error=incompatible-function-pointer-types"
190
+ "-Wno-error=incompatible-pointer-types"
191
+ "-Wno-error=incompatible-pointer-types-discards-qualifiers"
192
+ "-Wno-incompatible-function-pointer-types"
193
+ )
194
+
195
+ if [[ "$DRY_RUN" -eq 0 ]] && python -c 'import stringzilla' 2>/dev/null; then
196
+ sz_ver=$(python -c 'import stringzilla; print(stringzilla.__version__)')
197
+ info "stringzilla already installed (${sz_ver}); skipping rebuild"
198
+ else
199
+ info "installing stringzilla with clang-21 CFLAGS workaround"
200
+ # CFLAGS only need to be live for stringzilla's compile. Save+restore
201
+ # any pre-existing parent-shell value so we don't clobber it (`unset`
202
+ # would drop it entirely rather than restoring it).
203
+ if [[ -v CFLAGS ]]; then
204
+ _saved_cflags="$CFLAGS"
205
+ _had_cflags=1
206
+ else
207
+ _had_cflags=0
208
+ fi
209
+ export CFLAGS="${STRINGZILLA_CFLAGS[*]}"
210
+ run uv pip install "stringzilla>=4.6.0"
211
+ if [[ "$_had_cflags" -eq 1 ]]; then
212
+ export CFLAGS="$_saved_cflags"
213
+ else
214
+ unset CFLAGS
215
+ fi
216
+ unset _saved_cflags _had_cflags
217
+ fi
218
+
219
+ # ---------- step 4: compiletools + dev tooling -----------------------------
220
+
221
+ info "installing compiletools (editable, runtime deps only)"
222
+ run uv pip install -e "$REPO_ROOT"
223
+
224
+ # DEV deps minus ruff. Ruff is provided by the Termux pkg installed in
225
+ # step 1; do not let pip try to build it from sdist (cargo OOM).
226
+ DEV_PKGS=(
227
+ bump-my-version
228
+ pytest
229
+ pytest-xdist
230
+ pytest-cov
231
+ pyright
232
+ pre-commit
233
+ textual
234
+ )
235
+
236
+ info "installing dev tooling (excluding ruff): ${DEV_PKGS[*]}"
237
+ run uv pip install "${DEV_PKGS[@]}"
238
+
239
+ # ---------- verify ---------------------------------------------------------
240
+
241
+ if [[ "$DRY_RUN" -eq 1 ]]; then
242
+ ok "dry run complete"
243
+ exit 0
244
+ fi
245
+
246
+ info "verifying install"
247
+
248
+ verify_failed=0
249
+ verify() {
250
+ local label=$1
251
+ shift
252
+ if "$@" >/dev/null 2>&1; then
253
+ ok "$label"
254
+ else
255
+ err "$label FAILED: $*"
256
+ verify_failed=1
257
+ fi
258
+ }
259
+
260
+ verify "stringzilla import" python -c 'import stringzilla; assert stringzilla.hash(b"abc") != 0'
261
+ verify "compiletools import" python -c 'import compiletools'
262
+ verify "ruff on PATH" ruff --version
263
+ verify "pre-commit installed" pre-commit --version
264
+ verify "pytest installed" pytest --version
265
+ verify "pyright installed" pyright --version
266
+
267
+ if [[ "$verify_failed" -ne 0 ]]; then
268
+ err "one or more verification steps failed; see messages above"
269
+ exit 1
270
+ fi
271
+
272
+ cat <<EOF
273
+
274
+ ${C_GREEN}${C_BOLD}Termux dev install complete.${C_RESET}
275
+
276
+ Activate the venv: source $VENV_DIR/bin/activate
277
+ Install hooks: pre-commit install
278
+ Run tests: pytest -n auto
279
+
280
+ Note: ruff lives on the system PATH (Termux pkg), not inside the venv.
281
+ Pre-commit hooks and 'ruff check src/compiletools/' will find it normally.
282
+ EOF
@@ -8,7 +8,7 @@ Legacy helper for pruning stale lockdir directories remotely
8
8
 
9
9
  :Author: drgeoffathome@gmail.com
10
10
  :Date: 2025-11-26
11
- :Version: 8.2.2
11
+ :Version: 8.3.0
12
12
  :Manual section: 1
13
13
  :Manual group: developers
14
14
 
@@ -8,7 +8,7 @@ Generate man(1) pages from the reStructuredText source tree
8
8
 
9
9
  :Author: drgeoffathome@gmail.com
10
10
  :Date: 2025-11-26
11
- :Version: 8.2.2
11
+ :Version: 8.3.0
12
12
  :Manual section: 1
13
13
  :Manual group: developers
14
14
 
@@ -8,7 +8,7 @@ Build backend architecture and selection guide
8
8
 
9
9
  :Author: drgeoffathome@gmail.com
10
10
  :Date: 2026-04-02
11
- :Version: 8.2.2
11
+ :Version: 8.3.0
12
12
  :Manual section: 7
13
13
  :Manual group: developers
14
14