mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-24 11:26:06 +00:00

Windows heuristics try to detect old installer programs and run them as elevated. These heuristics include checking for certain substrings in file names, e.g. "patch", "update", "setup". When lit tries to run affected executables, it produces "[WinError 740] The requested operation requires elevation" instead. Several tests have been affected by this issue (see https://reviews.llvm.org/D137772, https://reviews.llvm.org/D148988, https://reviews.llvm.org/D149004). We should set this environment variable to disable this heuristic once and for all, instead of setting it in inidividual test suites. There should be no lit tests that legitimately want to run as elevated. Differential Revision: https://reviews.llvm.org/D149064
=============================== lit - A Software Testing Tool =============================== About ===== *lit* is a portable tool for executing LLVM and Clang style test suites, summarizing their results, and providing indication of failures. *lit* is designed to be a lightweight testing tool with as simple a user interface as possible. Features ======== * Portable! * Flexible test discovery. * Parallel test execution. * Support for multiple test formats and test suite designs. Documentation ============= The official *lit* documentation is in the man page, available online at the LLVM Command Guide: http://llvm.org/cmds/lit.html. Source ====== The *lit* source is available as part of LLVM, in the LLVM source repository: https://github.com/llvm/llvm-project/tree/main/llvm/utils/lit Contributing to lit =================== Please browse the issues labeled *tools:llvm-lit* in LLVM's issue tracker for ideas on what to work on: https://github.com/llvm/llvm-project/labels/tools%3Allvm-lit Before submitting patches, run the test suite to ensure nothing has regressed:: # From within your LLVM source directory. utils/lit/lit.py \ --path /path/to/your/llvm/build/bin \ utils/lit/tests Note that lit's tests depend on ``not`` and ``FileCheck``, LLVM utilities. You will need to have built LLVM tools in order to run lit's test suite successfully. You'll also want to confirm that lit continues to work when testing LLVM. Follow the instructions in http://llvm.org/docs/TestingGuide.html to run the regression test suite: make check-llvm And be sure to run the llvm-lit wrapper script as well: /path/to/your/llvm/build/bin/llvm-lit utils/lit/tests Finally, make sure lit works when installed via setuptools: python utils/lit/setup.py install lit --path /path/to/your/llvm/build/bin utils/lit/tests