Merge c72b234cae060f03fc723accc4c6361925faa6e5 into 1392c47cbbf519bd02ddafb5871526c16b7f2dd1

This commit is contained in:
TheMarpe 2023-02-08 13:18:12 +02:00 committed by GitHub
commit 3014718815
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 4 deletions

View File

@ -4,6 +4,10 @@ project(subprocess CXX)
set(CMAKE_CXX_STANDARD 11)
# Options
option(BUILD_TESTING "Build tests" OFF)
# Tests
include(CTest)
if(BUILD_TESTING)
add_subdirectory(test)

View File

@ -22,11 +22,11 @@ and they will be fixed as they are reported.
Subprocess library has just a single source `subprocess.hpp` present at the top directory of this repository. All you need to do is add
```cpp
#inlcude "cpp-subprocess/subprocess.hpp"
#include "cpp-subprocess/subprocess.hpp"
using namespace subprocess;
// OR
// namespace sp = subprocess;
// namespace sp = subprocess;
// Or give any other alias you like.
```
to the files where you want to make use of subprocessing. Make sure to add necessary switches to add C++11 support (-std=c++11 in g++ and clang).
@ -35,7 +35,7 @@ Checkout http://templated-thoughts.blogspot.in/2016/03/sub-processing-with-moder
## Compiler Support
Linux - g++ 4.8 and above
Mac OS - Clang 3.4 and later
Mac OS - Clang 3.4 and later
Windows - MSVC 2015 and above
## Examples

View File

@ -786,7 +786,7 @@ struct input
}
explicit input(IOTYPE typ) {
assert (typ == PIPE && "STDOUT/STDERR not allowed");
#ifndef __USING_WINDOWS__
#ifndef __USING_WINDOWS__
std::tie(rd_ch_, wr_ch_) = util::pipe_cloexec();
#endif
}
@ -2050,6 +2050,11 @@ int call(const std::string& arg, Args&&... args)
return (detail::call_impl(arg, std::forward<Args>(args)...));
}
template <typename... Args>
int call(std::vector<std::string> plist, Args &&... args)
{
return (detail::call_impl(plist, std::forward<Args>(args)...));
}
/*!
* Run the command with arguments and wait for it to complete.