-
Notifications
You must be signed in to change notification settings - Fork 20
/
README
28 lines (24 loc) · 1.09 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Phosg is a basic C++ wrapper library around some common C routines.
A short summary of its contents:
- Byteswapping and encoding functions (base64, rot13)
- Directory listing, smart-pointer fopen and stat, file and path manipulation
- Hash functions (fnv1a64, sha1, sha256, md5)
- Basic image manipulation/drawing
- JSON (de)serialization
- Network helpers (IP address parsing/formatting, listen/connect sockets)
- OS random data sources
- Process utilities (list processes, name <> PID mapping, subprocess execution)
- Time conversions
- std::string helpers like printf, split, time/size formatting, etc.
- 2D, 3D, 4D vectors and basic vector math
- KD-tree and LRU set data structures
Phosg also includes an executable (jsonformat) that reformats JSON.
Building & installing on macOS, Linux, or Windows (in a Cygwin bash shell):
- Install CMake, zlib (zlib-devel on Cygwin), and Python 3.
- `cmake .`
- `make`
- `make test`
- `sudo make install`
The Windows build does not have continuous integration, so I may accidentally
break it and not know for a while. Feel free to file a GitHub issue if it
doesn't work.