CMake/Source/CTest
Joan Bruguera Micó ff077af032 ctest: Set close-on-exec for jobserver FIFO
Set the close-on-exec flag to prevent the jobserver FIFO file
descriptor from leaking to subprocesses spawned by `ctest`.

This leak is usually harmless, but can cause `make test -jN` to hang
at the end of the build if a test leaves a background process running
with the jobserver FIFO file descriptor open.

Fixes: #26027
2024-06-05 09:37:05 -04:00
..
cmCTestBinPacker.cxx clang-tidy: fix readability-static-definition-in-anonymous-namespace lints 2022-05-24 09:09:44 -04:00
cmCTestBinPacker.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestBuildAndTestHandler.cxx cmCTest: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestBuildAndTestHandler.h Source: Replace C headers with C++ ones 2021-11-02 14:45:29 -04:00
cmCTestBuildCommand.cxx cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly 2023-11-07 09:13:25 -05:00
cmCTestBuildCommand.h cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly 2023-11-07 09:13:25 -05:00
cmCTestBuildHandler.cxx cmCTestLaunchReporter: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestBuildHandler.h cmCTestLaunchReporter: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestBZR.cxx Source: Reduce vector entry allocations and copies 2023-10-23 11:18:32 -04:00
cmCTestBZR.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestConfigureCommand.cxx IWYU: Update for Debian 12 CI job 2023-07-28 09:14:08 -04:00
cmCTestConfigureCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestConfigureHandler.cxx cmCTest: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestConfigureHandler.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestCoverageCommand.cxx cmCTest*Command:: Use cm::optional for keyword argument presence 2022-07-05 16:55:40 -04:00
cmCTestCoverageCommand.h cmArgumentParser: Model maybe-empty and non-empty lists with wrapper types 2022-07-07 09:48:58 -04:00
cmCTestCoverageHandler.cxx cmUVProcessChain: Simplify SetExternalStream usage 2024-01-24 16:59:49 -05:00
cmCTestCoverageHandler.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestCurl.cxx Source: use C++11 nullptr 2023-02-14 14:34:03 -05:00
cmCTestCurl.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestCVS.cxx Source: Reduce vector entry allocations and copies 2023-10-23 11:18:32 -04:00
cmCTestCVS.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestEmptyBinaryDirectoryCommand.cxx ctest_empty_binary_directory: Report more detail in failure message 2023-11-09 09:11:55 -05:00
cmCTestEmptyBinaryDirectoryCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestGenericHandler.cxx Merge topic 'ctest-error-newlines' 2023-01-12 09:25:18 -05:00
cmCTestGenericHandler.h CTest: Use std::string arguments 2023-01-03 07:49:22 -05:00
cmCTestGIT.cxx Source: Avoid out-of-range inputs to std::isspace() 2024-01-17 10:17:06 -05:00
cmCTestGIT.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestGlobalVC.cxx Revise include order using clang-format-6.0 2019-10-01 12:26:36 -04:00
cmCTestGlobalVC.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestHandlerCommand.cxx ctest: Add missing newlines on several error messages 2023-01-11 15:52:37 -05:00
cmCTestHandlerCommand.h cmCTestHandlerCommand: Capture list of parsed keywords via binding 2022-07-25 13:52:11 -04:00
cmCTestHG.cxx Source: Reduce vector entry allocations and copies 2023-10-23 11:18:32 -04:00
cmCTestHG.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestLaunch.cxx cmUVProcessChain: Simplify SetExternalStream usage 2024-01-24 16:59:49 -05:00
cmCTestLaunch.h cmCTestLaunchReporter: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestLaunchReporter.cxx cmCTestLaunchReporter: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestLaunchReporter.h cmCTestLaunchReporter: Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestMemCheckCommand.cxx ctest: Add support for writing test results in JUnit XML format 2021-04-26 08:55:22 -04:00
cmCTestMemCheckCommand.h ctest: Add support for writing test results in JUnit XML format 2021-04-26 08:55:22 -04:00
cmCTestMemCheckHandler.cxx codespell: Match valgrind output without repeating a spelling error 2023-11-17 09:58:21 -05:00
cmCTestMemCheckHandler.h ctest: support <CTestMeasurement> for runtime measurements 2021-07-01 15:16:23 -04:00
cmCTestMultiProcessHandler.cxx ctest: Restore enforcement of RESOURCE_LOCK test property 2024-04-01 12:22:29 -04:00
cmCTestMultiProcessHandler.h ctest: Restore enforcement of RESOURCE_LOCK test property 2024-04-01 12:22:29 -04:00
cmCTestP4.cxx Source: Reduce vector entry allocations and copies 2023-10-23 11:18:32 -04:00
cmCTestP4.h cmProcessTools::RunProcess(): Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestReadCustomFilesCommand.cxx cmCTest: Members accept std::string parameters 2020-07-27 10:58:39 -04:00
cmCTestReadCustomFilesCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestResourceAllocator.cxx CTest: Rename hardware -> resources for source code 2019-11-05 12:08:35 -05:00
cmCTestResourceAllocator.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestResourceGroupsLexerHelper.cxx clang-tidy: fix readability-qualified-auto warnings 2021-01-27 08:45:45 -05:00
cmCTestResourceGroupsLexerHelper.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestResourceSpec.cxx presets: Improve JSON parser and error messages 2023-03-29 10:41:19 -04:00
cmCTestResourceSpec.h presets: Improve JSON parser and error messages 2023-03-29 10:41:19 -04:00
cmCTestRunScriptCommand.cxx Source: Reduce c_str() usage 2021-03-13 07:36:07 -05:00
cmCTestRunScriptCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestRunTest.cxx cmCTestMultiProcessHandler: Simplify test startup batching 2023-11-21 12:40:13 -05:00
cmCTestRunTest.h cmCTestMultiProcessHandler: Simplify test startup batching 2023-11-21 12:40:13 -05:00
cmCTestScriptHandler.cxx ctest_empty_binary_directory: Report more detail in failure message 2023-11-09 09:11:55 -05:00
cmCTestScriptHandler.h ctest_empty_binary_directory: Report more detail in failure message 2023-11-09 09:11:55 -05:00
cmCTestSleepCommand.cxx Revise include order using clang-format-6.0 2019-10-01 12:26:36 -04:00
cmCTestSleepCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestStartCommand.cxx Rename cmProp in cmValue 2021-09-21 17:14:04 +02:00
cmCTestStartCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestSubmitCommand.cxx CMake code rely on cmList class for CMake lists management (part. 1) 2023-04-24 10:41:10 +02:00
cmCTestSubmitCommand.h cmArgumentParser: Model maybe-empty and non-empty lists with wrapper types 2022-07-07 09:48:58 -04:00
cmCTestSubmitHandler.cxx ctest: allow HTTP headers via command line 2024-01-08 14:11:40 -05:00
cmCTestSubmitHandler.h ctest: allow HTTP headers via command line 2024-01-08 14:11:40 -05:00
cmCTestSVN.cxx Source: Reduce vector entry allocations and copies 2023-10-23 11:18:32 -04:00
cmCTestSVN.h cmProcessTools::RunProcess(): Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestTestCommand.cxx ctest: Allow passing -j without value to choose a contextual default 2024-03-10 11:41:39 -04:00
cmCTestTestCommand.h ctest: Allow passing -j without value to choose a contextual default 2024-03-10 11:41:39 -04:00
cmCTestTestHandler.cxx Merge topic 'ctest-j-default' into release-3.29 2024-03-11 10:18:49 -04:00
cmCTestTestHandler.h ctest: Honor tests-from-file options with empty input 2024-03-08 16:06:35 -05:00
cmCTestTestMeasurementXMLParser.cxx ctest: support <CTestMeasurement> for runtime measurements 2021-07-01 15:16:23 -04:00
cmCTestTestMeasurementXMLParser.h ctest: support <CTestMeasurement> for runtime measurements 2021-07-01 15:16:23 -04:00
cmCTestTypes.h ctest: add option for output truncation 2022-03-08 08:18:02 -05:00
cmCTestUpdateCommand.cxx Use new SetOption signatures 2021-09-15 18:08:19 +02:00
cmCTestUpdateCommand.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestUpdateHandler.cxx cmValue: Use operator* explicitly to convert to std::string; avoid extra call 2023-01-15 23:39:02 -05:00
cmCTestUpdateHandler.h cmCTestGenericHandler::GetOption returns cmProp 2021-09-13 11:29:07 +02:00
cmCTestUploadCommand.cxx cmCTest*Command:: Use cm::optional for keyword argument presence 2022-07-05 16:55:40 -04:00
cmCTestUploadCommand.h cmArgumentParser: Model maybe-empty and non-empty lists with wrapper types 2022-07-07 09:48:58 -04:00
cmCTestUploadHandler.cxx Revise include order using clang-format-6.0 2019-10-01 12:26:36 -04:00
cmCTestUploadHandler.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmCTestVC.cxx cmProcessTools::RunProcess(): Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmCTestVC.h cmProcessTools::RunProcess(): Replace cmsysProcess with cmUVProcessChain 2023-08-29 10:51:30 -04:00
cmParseBlanketJSCoverage.cxx Code style: add missed explicit 'this->' 2021-01-05 14:32:36 +02:00
cmParseBlanketJSCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseCacheCoverage.cxx cmParseCacheCoverage: use cmSystemTools::SplitString 2020-04-13 11:26:03 -04:00
cmParseCacheCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseCoberturaCoverage.cxx Code style: add missed explicit 'this->' 2021-01-05 14:32:36 +02:00
cmParseCoberturaCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseDelphiCoverage.cxx Code style: add missed explicit 'this->' 2021-01-05 14:32:36 +02:00
cmParseDelphiCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseGTMCoverage.cxx IWYU: Update for Debian 12 CI job 2023-07-28 09:14:08 -04:00
cmParseGTMCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseJacocoCoverage.cxx Revise include order using clang-format-6.0 2019-10-01 12:26:36 -04:00
cmParseJacocoCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParseMumpsCoverage.cxx replace std::string::substr() with operations that do not allocate memory 2020-03-23 22:41:44 +01:00
cmParseMumpsCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmParsePHPCoverage.cxx Modernize memory management 2020-03-08 16:32:44 +01:00
cmParsePHPCoverage.h Modernize: Use #pragma once in all header files 2020-09-03 09:30:21 -04:00
cmProcess.cxx IWYU: Update for Debian 12 CI job 2023-07-28 09:14:08 -04:00
cmProcess.h ctest: Optionally terminate tests with a custom signal on timeout 2023-06-02 06:51:13 -04:00
cmUVJobServerClient.cxx ctest: Set close-on-exec for jobserver FIFO 2024-06-05 09:37:05 -04:00
cmUVJobServerClient.h cmUVJobServerClient: Add libuv-based job server integration client 2023-12-03 08:30:06 -05:00