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.
- {compiletools-8.2.2 → compiletools-8.3.0}/PKG-INFO +11 -5
- {compiletools-8.2.2 → compiletools-8.3.0}/pyproject.toml +12 -5
- compiletools-8.3.0/scripts/ct-build-docs +52 -0
- compiletools-8.3.0/scripts/ct-pytest-monitor +171 -0
- compiletools-8.3.0/scripts/ct-termux-install +282 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.cleanup-remote-locks.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.create-documentation.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-backends.rst +1 -1
- compiletools-8.3.0/src/compiletools/README.ct-build-docs.rst +64 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build-dynamic-library.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build-static-library.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-build.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cake.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cleanup-locks.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-commandline.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-compilation-database.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-config.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-cppdeps.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-create-makefile.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-doc.rst +2 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-filelist.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-findtargets.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-git-sha-report.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-gitroot.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-headertree.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-jobs.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-list-backends.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-list-variants.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-lock-helper.rst +2 -2
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-magicflags.rst +1 -1
- compiletools-8.3.0/src/compiletools/README.ct-pytest-monitor.rst +170 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-release.rst +1 -1
- compiletools-8.3.0/src/compiletools/README.ct-termux-install.rst +153 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-timing-report.rst +43 -8
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-trim-cache.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.ct-watch-build.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/README.profile-ct-cake-worktree.rst +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_backend.py +50 -3
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_graph.py +31 -9
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_timer.py +77 -25
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cleanup_locks.py +1 -1
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/conftest.py +19 -0
- compiletools-8.3.0/src/compiletools/jobs.py +56 -0
- compiletools-8.3.0/src/compiletools/lock_utils.py +257 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/locking.py +19 -9
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/makefile_backend.py +14 -5
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/namer.py +31 -6
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ninja_backend.py +14 -3
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_backend.py +151 -4
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_graph.py +19 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_build_timer.py +140 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cake.py +3 -2
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cleanup_locks.py +5 -5
- compiletools-8.3.0/src/compiletools/test_docs_build.py +28 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headerdeps.py +4 -1
- compiletools-8.3.0/src/compiletools/test_jobs.py +103 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_locking.py +24 -22
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_makefile_backend.py +198 -9
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_multiuser_cache.py +16 -9
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_namer.py +77 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_ninja_backend.py +78 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_shake_backend.py +66 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_shared_cache_low_mtime_resolution.py +2 -2
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_slurm_backend.py +44 -1
- compiletools-8.3.0/src/compiletools/test_timing_timeline.py +337 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_trim_cache.py +95 -4
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_tup_backend.py +30 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/testhelper.py +27 -4
- compiletools-8.3.0/src/compiletools/timing_timeline.py +743 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/timing_tui.py +10 -3
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trace_backend.py +26 -4
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trim_cache.py +44 -13
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/tup_backend.py +2 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/version.py +1 -1
- compiletools-8.2.2/src/compiletools/jobs.py +0 -84
- compiletools-8.2.2/src/compiletools/lock_utils.py +0 -188
- compiletools-8.2.2/src/compiletools/test_jobs.py +0 -117
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/create-documentation +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build-dynamic-library +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-build-static-library +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-release +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/ct-watch-build +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct-cake-modes +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/scripts/profile-ct-cake-worktree +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/__init__.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/apptools.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/bazel_backend.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/build_context.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cake.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cleanup_locks_main.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cmake_backend.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/compilation_database.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/compiler_macros.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/config.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/configutils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/cppdeps.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/blank.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/blank.release.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/clang.debug.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/clang.release.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/ct.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/gcc.debug.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct.conf.d/gcc.release.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/ct_lock_helper.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/doc.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/file_analyzer.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/filelist.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/filesystem_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/findtargets.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/git_sha_report.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/git_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/global_hash_registry.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/headerdeps.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/headertree.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/hunter.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/listbackends.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/listvariants.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/magicflags.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/preprocessing_cache.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/preprocessor.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/add.C +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/add.H +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/calculator.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/calculator.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/calculator/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/default_extra.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/linux_extra.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/computed_include/windows_extra.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/linux_header.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/conditional_includes/windows_header.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/aarch64_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_preprocessor_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/advanced_preprocessor_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/alt_form_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/arm_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/armcc_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/avx2_optimization.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/basic_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cache_profiler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/certificate_validation.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cflags_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/clang_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/combined_features.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/compiler_builtin_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/compiler_builtin_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/conditional_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cppflags_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cpu_profiler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/custom_allocator.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/cxxflags_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/default_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/detailed_profiler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/elif_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/elif_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/emscripten_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/expert_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/expert_mode_base.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/fma_optimization.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/gcc_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/high_optimization.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/intel_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/leak_detector.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_advanced.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_epoll_threading.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/linux_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/memory_profiler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/memory_tracker.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/msvc_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/multi_flag_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/multi_flag_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/nested_macros_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/nested_macros_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/networking_base.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/numa_threading.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/partial_features.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/profiling_base.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/riscv_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/simd_optimization.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/ssl_networking.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/stack_tracer.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/strict_cert_validation.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/tcc_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/temp_defined.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/temp_still_defined.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version1_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version2_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version3_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version_205_plus.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/version_ge_2_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_advanced.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_iocp.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/windows_iocp_threading.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cppflags_macros/x86_64_feature.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform_lin.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/cross_platform_win.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cross_platform/test_source.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_a.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_b.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/cycle/cycle_c.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d1/d1.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d1/d1.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d2/d2.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/d2/d2.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/dottypaths/dottypaths.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/duplicate_flags/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/base.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/conditional.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/dependency.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/empty_macro_bug/libs/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/a_widget.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/a_widget.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/red_herring_c_style_2.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/test_factory.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget_factory.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/widget_factory.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/z_widget.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/factory/z_widget.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/database.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/feature_config.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/graphics.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/logging.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/feature_headers/networking.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/optional_feature.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/has_include/stdheader_extras.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/header_a.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/header_b.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/header_guard_bug/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/app.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/config.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/hunter_macro_propagation/renderer.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/isystem_include_bug/fake_system_include/system/version.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/isystem_include_bug/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/conditional_ldflags_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/macro_expanded_ldflags.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/version_dependent_ldflags.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/ldflags/version_macro.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/build.sh +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_double.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_double.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_int.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_int.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_numbers.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/library/mylib/get_numbers.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/lotsofmagic/lotsofmagic.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_x_impl.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/feature_y_impl.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_deps/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/clean_main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/config.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/core.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/debug.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/feature.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/module_b.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/release.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/macro_state_dependency/sample.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/complex_header.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/complex_test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/macro_header.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/test_macro_transform.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magic_processing_order/traits_header.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir/important.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir2/important2.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicinclude/subdir3/important3.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicpkgconfig/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicpkgconfig_fake/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/some_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/another_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/the_code_lin.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/include_dir/sub_dir/the_code_win.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/magicsourceinheader/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/movingheaders/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/movingheaders/someheader.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/gcc.debug.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/nc.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/subdir/gcc.debug.conf +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/nestedconfig/subdir/nc.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_double.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_double.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_int.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_int.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_numbers.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/get_numbers.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/test_direct_include.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/numbers/test_library.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/common_file.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/conditional_include.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/entry_point_1.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/entry_point_2.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/hash_map.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/hash_utility.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/parse_order_macro_bug/libs/intermediate.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pch/pch_user.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pch/stdafx.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/header_with_macros.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/header_with_pkgconfig.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/libs/main_header.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkg_config_header_deps/src/test.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgconfig/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/conditional.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/leaked-macro-pkg.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/linux-path-pkg.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/macro-in-output.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/modified.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/nested.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/pkgs/transitive-deps.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/linux_func.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/linux_func.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/platform_main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/windows_func.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/platform_has_include/windows_func.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/project_pkgconfig_override/ct.conf.d/pkgconfig/conditional.pc +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/project_pkgconfig_override/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/README.txt +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/createfile.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/createfile.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/filename.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/obtainlock.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/obtainlock.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/test_flock_1.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/serialise_tests/test_flock_2.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/helloworld_c.c +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/helloworld_cpp.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/simple/test_cflags.c +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/one.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/static_link_order/two.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/a-game.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/b-game.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/background_task.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/event_handler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/core/memory_buffer.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/event_loop.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/event_loop.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/audio_system.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/audio_system.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/input_system.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/input_system.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/render_system.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/render_system.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/task_scheduler.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/transitive_cache_bug/engine/systems/task_scheduler.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/README.md +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/cleans_up.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/defines_macro.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/should_be_included.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/undef_bug/uses_conditional.hpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/api_config.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/api_config_new.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/test_main.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/test_main_new.cpp +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/version.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/samples/version_dependent_api/version_new.h +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/simple_preprocessor.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/stringzilla_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_apptools.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_backend_integration.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_base.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_bazel_backend.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cake_backend.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cap.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cmake_backend.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_compilation_database.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_compiler_macros.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_config.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_configutils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_cppdeps.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_ct_lock_helper.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_doc.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_empty_macro_bug.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_environment_assumptions.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_fd_fix_integration.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_analyzer.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_analyzer_integration.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_locking.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_file_open_efficiency.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_filelist_sample_output.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_filesystem_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_findtargets.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_git_sha_report.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_global_hash_registry.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headerdeps_extract.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headertree.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_headertree_hunter_agreement.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_hunter.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_hunter_macro_propagation.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_library.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_listbackends.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_listvariants.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_locking_contract.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_dependency.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_isolation.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_macro_state_pollution.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags_styles.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicflags_unit.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicinclude.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_magicpkgconfig.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_makefile.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_movingheaders.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_noop_rebuild.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_parse_order_macro_bug.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_pkg_config_header_deps.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_preprocessing_cache.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_preprocessor.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_serialisetests.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_simple_preprocessor.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_stringzilla_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_testhelper.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_timing_report.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_transitive_cache_bug.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_tree.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_undef_bug_sample.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/test_utils.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/timing_report.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/tree.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/trim_cache_main.py +0 -0
- {compiletools-8.2.2 → compiletools-8.3.0}/src/compiletools/utils.py +0 -0
- {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.
|
|
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:
|
|
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.
|
|
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.
|
|
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
|
-
"
|
|
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.
|
|
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
|