harfang3d/extern/tiny-process-library
2021-12-15 20:23:12 +01:00
..
tests Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
.clang-format Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
.gitignore Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
.gitlab-ci.yml Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
CMakeLists.txt Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
examples.cpp Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
LICENSE Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
process_unix.cpp Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
process_win.cpp 3.1.0 release. 2021-12-15 20:23:12 +01:00
process.cpp Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
process.hpp Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00
README.md Official 3.0.0 release source code. 2021-10-13 14:40:31 +02:00

This project has moved to https://gitlab.com/eidheim/tiny-process-library.

tiny-process-library

A small platform independent library making it simple to create and stop new processes in C++, as well as writing to stdin and reading from stdout and stderr of a new process.

This library was created for, and is used by the C++ IDE project juCi++.

Features

  • No external dependencies
  • Simple to use
  • Platform independent
    • Creating processes using executables is supported on all platforms
    • Creating processes using functions is only possible on Unix-like systems
  • Read separately from stdout and stderr using anonymous functions
  • Write to stdin
  • Kill a running process (SIGTERM is supported on Unix-like systems)
  • Correctly closes file descriptors/handles

Usage

See examples.cpp.

Get, compile and run

Unix-like systems

git clone http://gitlab.com/eidheim/tiny-process-library
cd tiny-process-library
mkdir build
cd build
cmake ..
make
./examples

Windows with MSYS2 (https://msys2.github.io/)

git clone http://gitlab.com/eidheim/tiny-process-library
cd tiny-process-library
mkdir build
cd build
cmake -G"MSYS Makefiles" ..
make
./examples