Skip to content

Commit 067dbeb

Browse files
committed
Update readme to include build instructions and document windows support
show make commands and explain that the windows implementation uses CFFI.
1 parent baf9f9e commit 067dbeb

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

README.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,62 @@
11
# async-process
22

3+
A Common Lisp library for creating and managing asynchronous processes with PTY support.
4+
5+
## Platform Support
6+
7+
- **Linux**: Full support via C library using PTY
8+
- **BSD**: Full support via C library using PTY
9+
- **macOS**: Full support via C library using PTY
10+
- **Windows**: Full support via pure Lisp CFFI implementation (no C compilation required)
11+
12+
## Installation
13+
14+
### Unix-like Systems (Linux, FreeBSD, macOS)
15+
using GNU make, `gmake` on Freebsd and macOS.
16+
17+
```bash
18+
git clone https://github.com/soppelmann/async-process.git
19+
cd async-process
20+
make
21+
sudo make install
22+
```
23+
24+
The library installs to `/usr/local` by default. To install elsewhere:
25+
26+
```bash
27+
make install PREFIX=/usr
28+
make install PREFIX=$HOME/.local
29+
```
30+
31+
#### Configuration options
32+
Build as a static library as follows
33+
34+
```bash
35+
make
36+
./configure --enable-static
37+
make all
38+
sudo make install
39+
```
40+
41+
### Windows
42+
43+
On Windows, no C compilation is required. The library uses a pure Lisp implementation via CFFI:
44+
45+
```bash
46+
git clone https://github.com/soppelmann/async-process.git
47+
cd async-process
48+
```
49+
50+
Then simply load the library in your Lisp environment:
51+
52+
```lisp
53+
(ql:quickload :async-process)
54+
```
55+
56+
The ASDF system will automatically load the Windows-specific implementation (`src/async-process_windows.lisp`) when on Windows platforms.
57+
58+
## Usage
59+
360
```
461
CL-USER> (ql:quickload :async-process)
562
To load "async-process":

0 commit comments

Comments
 (0)