summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/Support/ProgramTest.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Fix Clang-tidy modernize-deprecated-headers warnings in remaining ↵Duncan P. N. Exon Smith2016-04-051-10/+4
| | | | | | | | | | files; other minor fixes." This reverts commit r265454 since it broke the build. E.g.: http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental_build/22413/ llvm-svn: 265459
* Fix Clang-tidy modernize-deprecated-headers warnings in remaining files; ↵Eugene Zelenko2016-04-051-4/+10
| | | | | | | | | | | | other minor fixes. Some Include What You Use suggestions were used too. Use anonymous namespaces in source files. Differential revision: http://reviews.llvm.org/D18778 llvm-svn: 265454
* Silence -Wsign-conversion issue in ProgramTest.cppReid Kleckner2016-02-031-3/+3
| | | | | | | | Unfortunately, ProgramInfo::ProcessId is signed on Unix and unsigned on Windows, breaking the standard fix of using '0U' in the gtest expectation. llvm-svn: 259704
* Fix unit tests on Windows: handle env vars with non-ASCII chars.Pawel Bylica2015-11-041-38/+70
| | | | | | | | | | | | Summary: On Windows we have to take UTF16 encoded env vars and convert them to UTF8. This patch fixes CopyEnvironment helper function used by process unit tests. Reviewers: yaron.keren Subscribers: yaron.keren, llvm-commits Differential Revision: http://reviews.llvm.org/D14278 llvm-svn: 252039
* More long path name support on Windows, this time in program execution.Paul Robinson2014-11-241-0/+50
| | | | | | | Allows long paths for the executable and redirected stdin/stdout/stderr. Addresses PR21563. llvm-svn: 222671
* Add writeFileWithSystemEncoding to LibLLVMSuppor.Rafael Espindola2014-09-031-0/+50
| | | | | | | | | | | | | | | | | | | | This patch adds to LLVMSupport the capability of writing files with international characters encoded in the current system encoding. This is relevant for Windows, where we can either use UTF16 or the current code page (the legacy Windows international characters). On UNIX, the file is always saved in UTF8. This will be used in a patch for clang to thoroughly support response files creation when calling other tools, addressing PR15171. On Windows, to correctly support internationalization, we need the ability to write response files both in UTF16 or the current code page, depending on the tool we will call. GCC for mingw, for instance, requires files to be encoded in the current code page. MSVC tools requires files to be encoded in UTF16. Patch by Rafael Auler! llvm-svn: 217068
* [C++11] Use 'nullptr'.Craig Topper2014-06-081-18/+18
| | | | llvm-svn: 210442
* Fix the behavior of ExecuteAndWait with a non-zero timeout.Peter Collingbourne2014-05-311-0/+30
| | | | llvm-svn: 209951
* Re-sort all of the includes with ./utils/sort_includes.py so thatChandler Carruth2014-01-071-1/+0
| | | | | | | | | | subsequent changes are easier to review. About to fix some layering issues, and wanted to separate out the necessary churn. Also comment and sink the include of "Windows.h" in three .inc files to match the usage in Memory.inc. llvm-svn: 198685
* Add non-blocking Wait() for launched processesTareq A. Siraj2013-10-011-0/+103
| | | | | | | | | | | | | | | | | - New ProcessInfo class to encapsulate information about child processes. - Generalized the Wait() to support non-blocking wait on child processes. - ExecuteNoWait() now returns a ProcessInfo object with information about the launched child. Users will be able to use this object to perform non-blocking wait. - ExecuteNoWait() now accepts an ExecutionFailed param that tells if execution failed or not. These changes will allow users to implement basic process parallel tools. Differential Revision: http://llvm-reviews.chandlerc.com/D1728 llvm-svn: 191763
* Fixed typo in CreateProcessTrailingSlash testTareq A. Siraj2013-09-201-1/+1
| | | | | | | | --gtest_filter was filtering an invalid name for the test. Differential Revision: http://llvm-reviews.chandlerc.com/D1733 llvm-svn: 191100
* Remove unused includes.Rafael Espindola2013-06-261-1/+0
| | | | | | llvm itself is now PathV1 clean. llvm-svn: 184947
* Port GetMainExecutable over to PathV2.Rafael Espindola2013-06-261-2/+4
| | | | | | I will remove the V1 version as soon as I change clang in the next commit. llvm-svn: 184914
* Avoid using PathV1.h in Program.h.Rafael Espindola2013-06-131-6/+7
| | | | llvm-svn: 183940
* Remove the program class.Rafael Espindola2013-06-121-3/+3
| | | | | | | It was only used to implement ExecuteAndWait and ExecuteNoWait. Expose just those two functions and make Execute and Wait implementations details. llvm-svn: 183864
* Try to fix ProgramTest on FreeBSDReid Kleckner2013-04-301-3/+4
| | | | | | | This seemed like the cleanest way to find the test executable. Also fix the file mode. llvm-svn: 180770
* Don't forward declare environ on WindowsReid Kleckner2013-04-241-4/+2
| | | | | | | | | That seems to interact poorly with the environ and _environ macros defined in MSVC's <stdlib.h>. Also remove the incorrect comment about _NSGetEnviron(). llvm-svn: 180200
* Un-revert the environ copy in ProgramTest after fixing it on OS XReid Kleckner2013-04-231-2/+29
| | | | | | | | | | This was r180041 and r180046, which was reverted in r180066. Re-committing this should fix the dragonegg bootstrap, which I presume needs LD_LIBRARY_PATH to be propagated to the child. Tested on Linux, Windows, and Mac OS 10.6. llvm-svn: 180099
* Revert "Add a missing reference on a std::vector<> out param"Michael Gottesman2013-04-221-17/+2
| | | | | | | | | | | | | Revert "[Support] Propagate the environment into the test child process" This reverts commit r180046. This reverts commit r180041. These have broken buildbots for ~3 hours: http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/763 llvm-svn: 180066
* Add a missing reference on a std::vector<> out paramReid Kleckner2013-04-221-1/+1
| | | | | | | Pointed out by Eli. The test passes for me either way, so I missed this. llvm-svn: 180046
* [Support] Propagate the environment into the test child processReid Kleckner2013-04-221-2/+17
| | | | | | | Should fix the dragonegg bootstrap builder, which reasonably needs LD_LIBRARY_PATH to be set. llvm-svn: 180041
* [Support] Fix argv string escape bug on WindowsReid Kleckner2013-04-221-0/+63
Summary: This is http://llvm.org/PR15802. Backslashes preceding double quotes in arguments must be escaped. The interesting bit is that all other backslashes should *not* be escaped, because the un-escaping logic is only triggered by the presence of a double quote character. Reviewers: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D705 llvm-svn: 180035
OpenPOWER on IntegriCloud